Ryan C. Gordon
d9f0a87208
Merged 1001:b0c6f2f4f361 through 1003:a28d30d275e2 from default branch.
...
Fixes /proc/*/exe behaviour on Linux.
2009-07-08 17:59:29 -04:00
Ryan C. Gordon
43dbf3a22c
Haiku support.
2008-11-05 14:42:48 -05:00
Ryan C. Gordon
61749966b9
Fixed PHYSFS_openAppend() on Unix.
...
Apparently O_APPEND doesn't behave like I thought it did...all these years. :/
2008-04-03 05:05:48 +00:00
Ryan C. Gordon
1b042d124d
Yet another attempt to patch to compile.
2008-03-12 21:42:16 +00:00
Ryan C. Gordon
5c5e3d7e14
Patched to compile.
2008-03-12 21:35:54 +00:00
Ryan C. Gordon
53a9169400
Fixed aliasing bug in Windows platform layer (thanks, Dennis!).
2008-03-12 21:22:22 +00:00
Ryan C. Gordon
1ae24fd938
Fixed compiler warnings in win32 API calls (thanks, Dennis!).
2008-03-09 02:44:50 +00:00
Ryan C. Gordon
7501090a5b
Minor Windows fix (thanks, fydo!).
2008-02-13 05:48:57 +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
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
2296f69deb
Minor windows cleanups.
2007-10-01 15:47:07 +00:00
Ryan C. Gordon
515f409083
Reverted change r857:858...recursive mutex APIs sort of suck for portability.
2007-04-03 05:01:13 +00:00
Ryan C. Gordon
b572b556d2
Patched to compile, and work with pre-Vista versions of the Platform SDK.
2007-04-01 03:04:20 +00:00
Ryan C. Gordon
9af599504d
Symlink support for Windows Vista. Untested code.
2007-03-31 23:44:42 +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
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
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
75a4f4ffe1
Pushed a bunch of FIXMEs into the Windows platform layer.
2007-03-25 00:38:14 +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
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
75e467576d
Removed skeleton.c from the repository...it's out of date.
2007-03-20 11:11:36 +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
2ce4b64a73
Added a FIXME.
2007-03-19 20:12:54 +00:00
Ryan C. Gordon
6fe37fd840
Patched to compile with latest Platform SDK.
2007-03-19 07:44:04 +00:00
Ryan C. Gordon
733f59cd8c
Removed the strict-ANSI crap.
2007-03-18 22:16:26 +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
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
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
e029cb54e5
Fixed some comments.
2007-03-11 10:12:39 +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
6cdd5b5e57
Moved to CMake!
2007-03-10 06:32:52 +00:00
Ryan C. Gordon
d5327897cb
Updated PocketPC code to handle UTF-8 strings.
2007-03-09 08:15:47 +00:00
Ryan C. Gordon
a41e32d112
Ryanized the formatting in pocketpc.c
2007-03-08 22:37:51 +00:00
Ryan C. Gordon
f6790ee34e
Renamed win32.c to windows.c (since it would be used for Win64, too.)
2007-03-08 22:22:24 +00:00
Ryan C. Gordon
afd7163321
Apparently BeOS's BPath constructor doesn't actually _need_ leaf to be
...
manually split out.
2006-11-05 19:06:23 +00:00
Ryan C. Gordon
5a25658811
Silly comment typo.
2006-11-05 11:09:42 +00:00
Ryan C. Gordon
a66c36b42a
Cleaned up overflow checks in platform memory allocators (thanks to Nicolas
...
Lebedenco for pointing out the original issue with long long literals).
2006-01-01 12:19:44 +00:00