Explorar o código

Fixed logic error in QPAK archiver.

Should haved tested for a failed seek, but was testing for success instead.
Ryan C. Gordon %!s(int64=15) %!d(string=hai) anos
pai
achega
706f50be0a
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      src/archiver_qpak.c

+ 1 - 1
src/archiver_qpak.c

@@ -261,7 +261,7 @@ static void *QPAK_openArchive(PHYSFS_Io *io, const char *name, int forWriting)
     BAIL_IF_MACRO((count % 64) != 0, ERR_CORRUPTED, NULL);
     BAIL_IF_MACRO((count % 64) != 0, ERR_CORRUPTED, NULL);
     count /= 64;
     count /= 64;
 
 
-    BAIL_IF_MACRO(io->seek(io, pos), NULL, NULL);
+    BAIL_IF_MACRO(!io->seek(io, pos), NULL, NULL);
 
 
     info = (QPAKinfo *) allocator.Malloc(sizeof (QPAKinfo));
     info = (QPAKinfo *) allocator.Malloc(sizeof (QPAKinfo));
     BAIL_IF_MACRO(info == NULL, ERR_OUT_OF_MEMORY, NULL);
     BAIL_IF_MACRO(info == NULL, ERR_OUT_OF_MEMORY, NULL);