1.1 --- a/rpm.c Sat Apr 05 00:44:45 2008 -0400
1.2 +++ b/rpm.c Sun Apr 06 19:34:58 2008 -0400
1.3 @@ -188,15 +188,19 @@
1.4
1.5 /* Look up dir names now so we can index them directly. */
1.6 name = razor_rpm_get_indirect(rpm, RPMTAG_DIRNAMES, &count);
1.7 - if (name == NULL) {
1.8 - fprintf(stderr, "old filename style not handled\n");
1.9 - return NULL;
1.10 - }
1.11 -
1.12 - rpm->dirs = calloc(count, sizeof *rpm->dirs);
1.13 - for (i = 0; i < count; i++) {
1.14 - rpm->dirs[i] = name;
1.15 - name += strlen(name) + 1;
1.16 + if (name) {
1.17 + rpm->dirs = calloc(count, sizeof *rpm->dirs);
1.18 + for (i = 0; i < count; i++) {
1.19 + rpm->dirs[i] = name;
1.20 + name += strlen(name) + 1;
1.21 + }
1.22 + } else {
1.23 + name = razor_rpm_get_indirect(rpm, RPMTAG_OLDFILENAMES,
1.24 + &count);
1.25 + if (name) {
1.26 + fprintf(stderr, "old filenames not supported\n");
1.27 + return NULL;
1.28 + }
1.29 }
1.30
1.31 return rpm;