X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=rpm-etc_dir.patch;h=20664070c07be719c36a61d49fc0c62087137d67;hb=55217583b8c676ecfd094f2a18e9028d14263974;hp=5b789a446f88f6eee3a6a49a0b2e80b34f05f950;hpb=411771bd3d14cd7aafdefd4e8e691cc8ee805891;p=packages%2Frpm.git diff --git a/rpm-etc_dir.patch b/rpm-etc_dir.patch index 5b789a4..2066407 100644 --- a/rpm-etc_dir.patch +++ b/rpm-etc_dir.patch @@ -1,16 +1,16 @@ 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] == '/') { -+ const char * etc_dir = getenv("ETC_DIR"); ++ const char * etc_dir = getenv("HOME_ETC"); const char * home = getenv("HOME"); - if (home == NULL) { + if (etc_dir) { + if (strlen(etc_dir) > (sizeof(fn) - strlen(r))) { -+ rpmError(RPMERR_RPMRC, _("Cannot read %s, ETC_DIR is too large.\n"),r); ++ rpmError(RPMERR_RPMRC, _("Cannot read %s, HOME_ETC is too large.\n"),r); + rc = 1; + break; + } @@ -18,7 +18,6 @@ diff -Nru rpm-4.1/lib/rpmrc.c rpm-4.1.new/lib/rpmrc.c + 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 */ @@ -60,35 +59,16 @@ diff -Nru rpm-4.1/lib/rpmrc.c rpm-4.1.new/lib/rpmrc.c /* 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("ETC_DIR"); +--- 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:1809 ++msgid "Cannot read %s, HOME_ETC is too large.\n" ++msgstr "Nie mo¿na odczytaæ %s, HOME_ETC jest zbyt du¿e.\n" + -+ 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); + #: lib/rpmrc.c:1810 + #, c-format + msgid "Cannot expand %s\n"