diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 75f6cc2..b7752d1 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -2,6 +2,9 @@ * CHANGELOG. */ +03282007 - Logic bug in MVL/HOG/GRP archivers: only enumerated files when + looking in a directory other than the root, instead of enumerating + only for the root (thanks, Chris!). 03262007 - Tons of Unicode work in windows.c ... should now use UCS-2 on NT/XP/Vista/etc versions of the OS, and fallback to "ANSI" versions for 95/98/ME, tapdancing around the system codepage if it has to. diff --git a/archivers/grp.c b/archivers/grp.c index bc9c66c..820a881 100644 --- a/archivers/grp.c +++ b/archivers/grp.c @@ -295,7 +295,7 @@ static void GRP_enumerateFiles(dvoid *opaque, const char *dname, const char *origdir, void *callbackdata) { /* no directories in GRP files. */ - if (*dname != '\0') + if (*dname == '\0') { GRPinfo *info = (GRPinfo *) opaque; GRPentry *entry = info->entries; diff --git a/archivers/hog.c b/archivers/hog.c index 1dcecf1..136b7cb 100644 --- a/archivers/hog.c +++ b/archivers/hog.c @@ -334,7 +334,7 @@ static void HOG_enumerateFiles(dvoid *opaque, const char *dname, const char *origdir, void *callbackdata) { /* no directories in HOG files. */ - if (*dname != '\0') + if (*dname == '\0') { HOGinfo *info = (HOGinfo *) opaque; HOGentry *entry = info->entries; diff --git a/archivers/mvl.c b/archivers/mvl.c index a566f9a..650b49b 100644 --- a/archivers/mvl.c +++ b/archivers/mvl.c @@ -291,7 +291,7 @@ static void MVL_enumerateFiles(dvoid *opaque, const char *dname, const char *origdir, void *callbackdata) { /* no directories in MVL files. */ - if (*dname != '\0') + if (*dname == '\0') { MVLinfo *info = ((MVLinfo *) opaque); MVLentry *entry = info->entries;