From: Kristian Høgsberg Date: Sat, 5 Apr 2008 05:02:12 +0000 (-0400) Subject: No dirnames more likely means 'no files', not old-style filenames. X-Git-Tag: 0.1~179 X-Git-Url: http://project.juiblex.co.uk/git/?a=commitdiff_plain;h=42a856f9e4c77cacc794b59243af44dc99b9aaa3;p=razor2.git%2F.git No dirnames more likely means 'no files', not old-style filenames. --- diff --git a/rpm.c b/rpm.c index 966d1fe..751253f 100644 --- a/rpm.c +++ b/rpm.c @@ -188,15 +188,19 @@ razor_rpm_open(const char *filename) /* Look up dir names now so we can index them directly. */ name = razor_rpm_get_indirect(rpm, RPMTAG_DIRNAMES, &count); - if (name == NULL) { - fprintf(stderr, "old filename style not handled\n"); - return NULL; - } - - rpm->dirs = calloc(count, sizeof *rpm->dirs); - for (i = 0; i < count; i++) { - rpm->dirs[i] = name; - name += strlen(name) + 1; + if (name) { + rpm->dirs = calloc(count, sizeof *rpm->dirs); + for (i = 0; i < count; i++) { + rpm->dirs[i] = name; + name += strlen(name) + 1; + } + } else { + name = razor_rpm_get_indirect(rpm, RPMTAG_OLDFILENAMES, + &count); + if (name) { + fprintf(stderr, "old filenames not supported\n"); + return NULL; + } } return rpm;