Commit Graph

43 Commits

Author SHA1 Message Date
Ryan C. Gordon 3b0e1d7471 Various archiver swap and compare functions now check if they are
swapping/comparing an item against itself, for efficiency and to prevent
 overlapping memcpy() calls.
2008-02-20 12:24:10 +00:00
Ryan C. Gordon 7501090a5b Minor Windows fix (thanks, fydo!). 2008-02-13 05:48:57 +00:00
Ryan C. Gordon ac277daac4 Date: Sat, 2 Feb 2008 14:28:02 +1300
From: eH
To: physfs@icculus.org
Subject: [physfs] lzma.c msvc, etc. patch

I came across a few bugs compiling PhysFS with msvc9 - I've created a patch which seems to fix them:
SzFileReadImp / SzFileSeekImp:
Problem: Can't preform arithmatic on 'void *'
Fix:        Cast 'object' to unsigned long

LZMA_enumerateFiles:
Problem: There is no error handling if the directory 'dname' doesn't exist
Fix:         Check the return value of 'lzma_find_file()' before using it

LZMA_isDirectory:
Problem: return (file->item->IsDirectory) is illegal if 'file' doesn't exist
Fix:         Make sure 'file' isn't null before returning
2008-02-02 02:32:48 +00:00
Ryan C. Gordon ee9e106555 Added zlib README and updated license notes. 2008-01-23 05:01:50 +00:00
Ryan C. Gordon 77a2c5009c Updated for lzma changes. 2008-01-23 05:00:07 +00:00
Ryan C. Gordon a863c128be Fixed allocation size when converting from UTF-8 to UCS-2. 2008-01-22 04:11:27 +00:00
Ryan C. Gordon a928ba2763 Corrected credit in Changelog. 2008-01-22 03:46:44 +00:00
Ryan C. Gordon 0ea431927e Fixed HTTP header in physfshttpd.c. 2008-01-22 03:44:49 +00:00
Ryan C. Gordon 1aa0511f7b Fixed wrong dir test in Windows code in both 1.0 and 1.1 (thanks, Dennis!). 2007-12-11 18:54:10 +00:00
Ryan C. Gordon 565f973e2e Mingw32 fix for 64-bit literals. 2007-10-01 15:47:40 +00:00
Ryan C. Gordon 827b643f49 Fixed missing alloc macro on mingw32, I think. 2007-07-12 08:58:09 +00:00
Ryan C. Gordon c5ee3d965c Fixed crash on zero-byte read/write (thanks, Ensiform!). 2007-07-11 22:11:29 +00:00
Ryan C. Gordon c27fd9639f Updated. 2007-05-27 14:34:29 +00:00
Ryan C. Gordon 711d9ec926 Minor documentation fix. 2007-05-11 20:12:10 +00:00
Ryan C. Gordon 05e44324c8 Fixed zip archiver: could do bogus seek if a small, non-zip file got put
through isArchive().
2007-05-05 05:52:43 +00:00
Ryan C. Gordon 35dcb89748 Minor const correctness tweak in zip archiver. 2007-04-29 08:16:30 +00:00
Ryan C. Gordon 8db7b0a622 Updated. 2007-04-03 05:24:08 +00:00
Ryan C. Gordon ad430a8816 Updated. 2007-04-03 05:01:23 +00:00
Ryan C. Gordon 6ee992c1d9 Improved Doxygen comments. 2007-04-02 23:35:09 +00:00
Ryan C. Gordon 40ab6d277f Added initial work on a wxWidgets-based test app. 2007-04-02 20:57:39 +00:00
Ryan C. Gordon 0d45ce01c4 Added PHYSFS_symbolicLinksPermitted(). 2007-04-01 22:06:37 +00:00
Ryan C. Gordon 777eec4254 Added PHYSFS_isInit() function. 2007-04-01 21:24:19 +00:00
Ryan C. Gordon 9af599504d Symlink support for Windows Vista. Untested code. 2007-03-31 23:44:42 +00:00
Ryan C. Gordon 45967499d0 Updated. 2007-03-31 06:59:02 +00:00
Ryan C. Gordon 60dfcae88b Try the DIR archiver first, since there's no sense in trying to open a
directory as a file in all the other archivers first.
2007-03-31 06:52:27 +00:00
Ryan C. Gordon a8de53670d Added a simple unpacker example. 2007-03-31 06:34:51 +00:00
Ryan C. Gordon 0e3233a205 Don't put comments in BAIL_* macros where we want an empty argument...
apparently it aggravates some compilers. Thanks to Chris Taylor for this one.
2007-03-29 05:39:16 +00:00
Ryan C. Gordon 1e6550292d 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.
2007-03-28 17:29:52 +00:00
Ryan C. Gordon d8845b0be5 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. Other minor Windows
 cleanups and corrections.
2007-03-26 06:36:39 +00:00
Ryan C. Gordon dc0d27228c Improved dynamic loader and initial Unicode work in windows.c ... 2007-03-25 05:17:08 +00:00
Ryan C. Gordon 63f9a21c44 Replaced BeOS mutex implementation. Now all platforms have recursive mutexes. 2007-03-24 05:42:22 +00:00
Ryan C. Gordon 7386320811 Replaced some Malloc and all the alloca() calls with __PHYSFS_smallAlloc(),
which will stack allocate small (128 or less bytes) blocks and Malloc the
 rest...naturally these now have to be paired with __PHYSFS_smallFree() calls,
 so you can't be as lazy as a basic alloca() would let you be. The benefit is
 both less malloc pressure for those temporary allocations and better stack
 overflow safety (so if some jerk tries to push a 78 megabyte string through
 the library as a filename, we won't try to strcpy it to the stack).
2007-03-24 03:54:58 +00:00
Ryan C. Gordon b2f9b61715 Replaced LONGLONGLITERAL with __PHYSFS_UI64/__PHYSFS_SI64. 2007-03-21 20:14:46 +00:00
Ryan C. Gordon 68027001f8 Updated. 2007-03-21 20:06:29 +00:00
Ryan C. Gordon 5eab0737b8 Updated. 2007-03-19 20:15:16 +00:00
Ryan C. Gordon fde676b2dc Updated. 2007-03-19 07:45:28 +00:00
Ryan C. Gordon 2caa3b94e3 Whoops, switched two strings in CMakeLists.txt 2007-03-19 04:30:10 +00:00
Ryan C. Gordon 237170ebcb Changed PHYSFS_file from a typedef to a #define for legacy code. 2007-03-16 22:06:04 +00:00
Ryan C. Gordon 607d39a1d3 Bunch of work on Unicode...added case-folding stricmp, removed
platform-specific stricmp implementations, changed appropriate calls to an
ASCII-only stricmp that ignores locale. Fixed case on UTF-8 API entry points.
2007-03-15 08:16:23 +00:00
Ryan C. Gordon 0ed7bbc3cf Dropped classic Mac OS support. Mac OS X remains supported, though. 2007-03-14 07:20:59 +00:00
Ryan C. Gordon 1da70fd66b Updated. 2007-03-12 01:07:45 +00:00
Ryan C. Gordon 69598e49ab Now compiles everything whether we need it or not, removing whole files with
#ifdefs...this will make it easier to "embed" this library in other projects
 or use a different build system: just push everything through the compiler
 with preprocessor defines for the parts you want/need...platform modules are
 determined automatically without the build system needing to intervene, so
 you just have to #define the archivers, etc that you want.
2007-03-11 22:50:53 +00:00
Ryan C. Gordon b133b5dfce Moved more files from FILENAME to FILENAME.txt ... 2007-03-11 10:19:52 +00:00