Logic bug in MVL/HOG/GRP archivers: these archives never contain subdirs...but they

only enumerated their files when looking in a directory other than the root,
 instead of enumerating only for the root. Thanks to Chris Taylor for the
 catch.
This commit is contained in:
Ryan C. Gordon 2007-03-28 17:29:52 +00:00
parent ded10c9238
commit 1e6550292d
4 changed files with 6 additions and 3 deletions

View File

@ -2,6 +2,9 @@
* CHANGELOG. * 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 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 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. for 95/98/ME, tapdancing around the system codepage if it has to.

View File

@ -295,7 +295,7 @@ static void GRP_enumerateFiles(dvoid *opaque, const char *dname,
const char *origdir, void *callbackdata) const char *origdir, void *callbackdata)
{ {
/* no directories in GRP files. */ /* no directories in GRP files. */
if (*dname != '\0') if (*dname == '\0')
{ {
GRPinfo *info = (GRPinfo *) opaque; GRPinfo *info = (GRPinfo *) opaque;
GRPentry *entry = info->entries; GRPentry *entry = info->entries;

View File

@ -334,7 +334,7 @@ static void HOG_enumerateFiles(dvoid *opaque, const char *dname,
const char *origdir, void *callbackdata) const char *origdir, void *callbackdata)
{ {
/* no directories in HOG files. */ /* no directories in HOG files. */
if (*dname != '\0') if (*dname == '\0')
{ {
HOGinfo *info = (HOGinfo *) opaque; HOGinfo *info = (HOGinfo *) opaque;
HOGentry *entry = info->entries; HOGentry *entry = info->entries;

View File

@ -291,7 +291,7 @@ static void MVL_enumerateFiles(dvoid *opaque, const char *dname,
const char *origdir, void *callbackdata) const char *origdir, void *callbackdata)
{ {
/* no directories in MVL files. */ /* no directories in MVL files. */
if (*dname != '\0') if (*dname == '\0')
{ {
MVLinfo *info = ((MVLinfo *) opaque); MVLinfo *info = ((MVLinfo *) opaque);
MVLentry *entry = info->entries; MVLentry *entry = info->entries;