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