Commit Graph

26 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 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 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 53bbe35ddd Renamed LICENSE to LICENSE.txt 2007-03-11 10:10:28 +00:00
Ryan C. Gordon ca2489418e Removed config.h references from old autotools build system. 2007-03-11 09:44:21 +00:00
Ryan C. Gordon c81367d0ca Changed my email address. 2006-01-01 12:33:19 +00:00
Ryan C. Gordon 6e7e45cdaf API BREAKAGE: Changed PHYSFS_enumerateFilesCallback() to pass the originally
requested directory back to the app.
2005-09-18 21:44:42 +00:00
Ryan C. Gordon d840403c1c All memory management now goes through allocation hooks instead of directly to
C runtime malloc/realloc/free...
2005-03-14 11:49:30 +00:00
Ryan C. Gordon 389a4d826a Cleaned up some minor bloat with my new evil GOTO_*_MACRO macros. 2005-03-13 03:33:11 +00:00
Ryan C. Gordon 0492580bda Removed all the forward declaration cruft from the archivers. 2004-09-29 06:18:04 +00:00
Ryan C. Gordon c2765f8571 Added callback APIs and ripped up the internals everywhere to use them. 2004-09-29 06:09:29 +00:00
Ryan C. Gordon 90031c81f3 Did the same thing to FileHandles than I did to DirHandles, but this
triggered massive tweaking in physfs.c. A lot of code got little
cleanups, which was nice. Less malloc pressure, too, since opening a
file used to allocate a ton of crap and mush it together...now it's
basically down to one structure and the instance data in whatever
archiver.
2004-09-26 13:00:59 +00:00
Ryan C. Gordon 94759513d9 Cleaned up archiver interface to not deal with DirHandles anymore,
which simplifies things, removes some responsibility and code
duplication from the archivers, and trims some malloc pressure.
Also ripped up the allocation hook code a little. We'll try to screw
with memory locking later, since it makes everything ugly and
complex. Oh well.
2004-09-26 00:25:04 +00:00
Ryan C. Gordon 9dcb15fa2c Made QPAK archiver case insensitive again. 2003-11-09 21:06:15 +00:00
bhook 83cdb49cd3 *** empty log message *** 2003-08-09 02:37:21 +00:00
Ryan C. Gordon ccfa99fb61 Reimplemented qpak.c for relicensing. 2003-07-21 00:27:09 +00:00
Ryan C. Gordon 025aef8a15 Switched to zlib license. 2003-07-20 20:57:55 +00:00
Ryan C. Gordon f22dfbf214 Minor cosmetic tweak. 2003-03-30 20:46:25 +00:00
Ryan C. Gordon f3f15edb4a Made archiver case-insensitive for Quake 2 compatibility. 2003-03-12 09:02:02 +00:00
Ryan C. Gordon 9d82110b57 Some cleanups for PocketPC port. 2002-11-22 06:24:10 +00:00
Ryan C. Gordon 7606e3bf11 Win32 fixes. 2002-09-23 18:35:12 +00:00
Ryan C. Gordon 1f5b571be7 Bunch of tedious corrections, optimizations, and cleanups. 2002-08-21 02:59:15 +00:00
Ryan C. Gordon 1e2372b44c Generalized sorting routines, and removed individual implementations. 2002-08-20 01:34:27 +00:00
Ryan C. Gordon 50b40f22a9 Fixed memory leak. 2002-08-16 15:57:44 +00:00
Ryan C. Gordon 752b317ca4 Fixed logic bug. 2002-08-16 15:22:52 +00:00
Ryan C. Gordon bad1d8f061 Initial add. 2002-08-09 19:45:54 +00:00