diff -Nru rpm-4.1/lib/rpmrc.c rpm-4.1.new/lib/rpmrc.c
--- rpm-4.1/lib/rpmrc.c Tue Aug 20 16:53:44 2002
+++ rpm-4.1.new/lib/rpmrc.c Tue Mar 11 18:41:48 2003
-@@ -1756,27 +1756,40 @@
+@@ -1756,27 +1756,39 @@
/* Expand ~/ to $HOME/ */
fn[0] = '\0';
if (r[0] == '~' && r[1] == '/') {
+ strncat(fn, "/", sizeof(fn) - strlen(fn));
+ r+=2;
+
-+ if (r[0] == '.') r++;
+ } else {
+ if (home == NULL) {
/* XXX Only /usr/lib/rpm/rpmrc must exist in default rcfiles list */
/* Read another rcfile */
fd = Fopen(fn, "r.fpio");
if (fd == NULL || Ferror(fd)) {
-diff -Nru rpm-4.1/rpmio/macro.c rpm-4.1.new/rpmio/macro.c
---- rpm-4.1/rpmio/macro.c Tue Sep 17 14:58:23 2002
-+++ rpm-4.1.new/rpmio/macro.c Tue Mar 11 18:21:59 2003
-@@ -1614,15 +1614,23 @@
- buf[0] = '\0';
- if (mfile[0] == '~' && mfile[1] == '/') {
- char *home;
-- if ((home = getenv("HOME")) != NULL) {
-- mfile += 2;
-- strncpy(buf, home, sizeof(buf));
-- strncat(buf, "/", sizeof(buf) - strlen(buf));
-+ char *etc_dir = getenv("HOME_ETC");
-+
-+ if (etc_dir) {
-+ mfile += 2;
-+ if (mfile[0] == '.') mfile++;
-+ strncpy(buf, etc_dir, sizeof(buf));
-+ strncat(buf, "/", sizeof(buf) - strlen(buf));
-+ } else {
-+ if ((home = getenv("HOME")) != NULL) {
-+ mfile += 2;
-+ strncpy(buf, home, sizeof(buf));
-+ strncat(buf, "/", sizeof(buf) - strlen(buf));
- }
-+ }
- }
- strncat(buf, mfile, sizeof(buf) - strlen(buf));
- buf[sizeof(buf)-1] = '\0';
--
- fd = Fopen(buf, "r.fpio");
- if (fd == NULL || Ferror(fd)) {
- if (fd) (void) Fclose(fd);
---- rpm-4.3/po/pl.po.orig 2003-06-10 23:59:11.000000000 +0200
-+++ rpm-4.3/po/pl.po 2003-06-11 00:06:16.000000000 +0200
-@@ -2834,6 +2834,10 @@
- msgid "Please contact rpm-list@redhat.com\n"
- msgstr "Proszê skontaktowaæ siê z rpm-list@redhat.com\n"
+--- rpm-4.4.5/po/pl.po.orig 2006-02-28 20:32:10.457815000 +0100
++++ rpm-4.4.5/po/pl.po 2006-02-28 21:31:38.132780750 +0100
+@@ -3188,6 +3188,10 @@
+ msgid "bad option '%s' at %s:%d\n"
+ msgstr "b³êdna opcja '%s' w %s:%d\n"
-+#: lib/rpmrc.c:1764
++#: lib/rpmrc.c:1809
+msgid "Cannot read %s, HOME_ETC is too large.\n"
+msgstr "Nie mo¿na odczytaæ %s, HOME_ETC jest zbyt du¿e.\n"
+
- #: lib/rpmrc.c:1765
+ #: lib/rpmrc.c:1810
#, c-format
msgid "Cannot expand %s\n"