Commit Graph

1126 Commits

Author SHA1 Message Date
Ryan C. Gordon 49c576280d Man, I knew I would need getOSInfo() as soon as I deleted it!
Apparently Win9x has the Unicode entry points, they just don't work, so
 only do a real lookup on NT-based platforms, and just force the
 fallbacks on 95/98/ME systems.
2007-03-26 07:51:57 +00:00
Ryan C. Gordon c771a650ce Ignore Visual C++ 6.0 build files. 2007-03-26 06:46:03 +00:00
Ryan C. Gordon aad1408594 Whoops, forgot to uncomment this from my testing... 2007-03-26 06:38:36 +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 da2d3ede59 Reworked getExePath() to remove some FIXMEs and respect Unicode. 2007-03-25 06:26:53 +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 71e6a8dc3f Patched to compile on MSVC. 2007-03-25 04:59:11 +00:00
Ryan C. Gordon 75a4f4ffe1 Pushed a bunch of FIXMEs into the Windows platform layer. 2007-03-25 00:38:14 +00:00
Ryan C. Gordon 4fe2134a3c Updated. 2007-03-24 05:42:29 +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 4396d7b3ba Added some FIXME comments. 2007-03-24 05:13:54 +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 80ec45d88a Apparently this is how you do 64-bit literals in MSVC...untested. 2007-03-21 20:19:20 +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 030e84f356 Cleanups in calculateBaseDir. 2007-03-21 05:22:48 +00:00
Ryan C. Gordon 075e6769e2 Split out Mac OS X code from unix.c and added some Carbon-specific code...
moved some stuff around and implemented a few things in BeOS and POSIX bits
 to accomodate this.
2007-03-21 05:03:17 +00:00
Ryan C. Gordon 03fe5bb823 Replaced manual management of recursive pthread mutexes with
PTHREAD_MUTEX_RECURSIVE.
2007-03-21 04:31:13 +00:00
Ryan C. Gordon 857d9bc84d Since all the platform layers were using the same cut-and-paste of the
malloc/realloc/free allocator, I moved it into physfs.c as a default, which
 is used if the platform layer doesn't offer a platform-specific default
 allocator, which none do at this point, but will soon.
2007-03-20 18:33:56 +00:00
Ryan C. Gordon bb1d757244 Removed __PHYSFS_platformTimeslice()...we don't actually use this anymore. 2007-03-20 17:57:45 +00:00
Ryan C. Gordon 7703202ee5 Fixed a FIXME in the documentation comments. 2007-03-20 17:53:42 +00:00
Ryan C. Gordon 75e467576d Removed skeleton.c from the repository...it's out of date. 2007-03-20 11:11:36 +00:00
Ryan C. Gordon 5eab0737b8 Updated. 2007-03-19 20:15:16 +00:00
Ryan C. Gordon b68495e760 Try to use /proc/self/exe to determine the base dir. This lets systems with a
Linux-like /proc filesystem work with PHYSFS_init(NULL). Other cleanups in
 Unix basedir calculation.
2007-03-19 20:15:09 +00:00
Ryan C. Gordon 4530776d5b PHYSFS_init() should fail if argv0 is NULL and we can't do without it. 2007-03-19 20:13:37 +00:00
Ryan C. Gordon 2ce4b64a73 Added a FIXME. 2007-03-19 20:12:54 +00:00
Ryan C. Gordon fde676b2dc Updated. 2007-03-19 07:45:28 +00:00
Ryan C. Gordon 6fe37fd840 Patched to compile with latest Platform SDK. 2007-03-19 07:44:04 +00:00
Ryan C. Gordon f6c383ff24 More svn:ignore for CMake Visual Studio output. 2007-03-19 06:58:49 +00:00
Ryan C. Gordon 8a3220fa1b Updated svn:ignore for some CMake/cygwin output. 2007-03-19 06:39:14 +00:00
Ryan C. Gordon 2caa3b94e3 Whoops, switched two strings in CMakeLists.txt 2007-03-19 04:30:10 +00:00
Ryan C. Gordon 733f59cd8c Removed the strict-ANSI crap. 2007-03-18 22:16:26 +00:00
Ryan C. Gordon 5bc21ecf59 Fixed Doxygen comments for UTF-8 functions. 2007-03-16 23:48:19 +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 503fafad9b Updated. 2007-03-15 08:19:17 +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 52cb5bac69 More Mac Classic removal. 2007-03-15 07:33:14 +00:00
Ryan C. Gordon 5331c984da Updated. 2007-03-14 08:03:22 +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 31ff24a38f Mac Classic platform layer: don't strcmp() a NULL string. 2007-03-14 06:39:17 +00:00
Ryan C. Gordon 5908057d71 Minor comment removal. 2007-03-14 06:30:52 +00:00
Ryan C. Gordon a600edf8ab Patched to compile on Mac OS X. 2007-03-14 06:30:20 +00:00
Ryan C. Gordon 1a6f1787fa Fixes for BeOS and gcc2. 2007-03-12 03:41:20 +00:00
Ryan C. Gordon 1da70fd66b Updated. 2007-03-12 01:07:45 +00:00
Ryan C. Gordon a3a0846701 First shot at updating makeos2.cmd for Innotek/kLIBC's build tools. Farewell,
EMX, you have served me well. Thanks to Dave Yeo for the details on this.

(This is untested at the moment.)
2007-03-12 01:01:58 +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 839f7334a8 Minor OS 9 note. 2007-03-11 10:52:35 +00:00
Ryan C. Gordon 6731c7b0e5 Cleaned out some TODOs. 2007-03-11 10:30:43 +00:00
Ryan C. Gordon b133b5dfce Moved more files from FILENAME to FILENAME.txt ... 2007-03-11 10:19:52 +00:00
Ryan C. Gordon 230c63cfb3 Updated. 2007-03-11 10:17:37 +00:00