Fixed zip archiver: could do bogus seek if a small, non-zip file got put

through isArchive().
This commit is contained in:
Ryan C. Gordon 2007-05-05 05:52:43 +00:00
parent 35dcb89748
commit 05e44324c8
2 changed files with 4 additions and 0 deletions

View File

@ -2,6 +2,8 @@
* CHANGELOG.
*/
05052007 - Fixed zip archiver: could do bogus seek if a small, non-zip file
got put through isArchive().
04292007 - Minor const correctness tweak in zip archiver.
04032007 - Added a "make dist" target for packing up source code releases.
Reverted Unix recursive mutex code. There were some portability

View File

@ -447,6 +447,8 @@ static PHYSFS_sint64 zip_find_end_of_central_dir(void *in, PHYSFS_sint64 *len)
break;
filepos -= (maxread - 4);
if (filepos < 0)
filepos = 0;
} /* while */
BAIL_IF_MACRO(!found, ERR_NOT_AN_ARCHIVE, -1);