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
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
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
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
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
c28540fe89
Made unix mutexes recursive.
2005-09-20 04:01:36 +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
9f9800928d
Fixed unix.c to compile again on MacOS X.
2005-03-13 03:18:18 +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
01b8809162
Rewrote MacOSX/Darwin CD detection to use IOKit, for accurate results.
2003-05-24 03:36:36 +00:00
Ryan C. Gordon
8701e4d98d
Added hack for OSX bundles, from Eric Wing.
2003-01-04 23:24:50 +00:00
Ryan C. Gordon
c79285af0e
Minor fix for odd PATH entries.
2002-11-30 04:50:49 +00:00
Ryan C. Gordon
9852dec8eb
Attempt to fix pthread-to-ui64 cast issue.
2002-08-09 19:47:06 +00:00
Ryan C. Gordon
0c05876240
Whoops; the pthread-disabling condition was flipped. Fixed.
2002-07-25 23:22:29 +00:00
Ryan C. Gordon
2b0cecee7c
First step towards getting __PHYSFS_platformGetThreadID() to work universally.
2002-07-25 17:42:21 +00:00
Ryan C. Gordon
cdac19f131
Stub code for platforms without functional pthreads.
2002-07-25 17:13:03 +00:00
Ryan C. Gordon
1ce70462bd
Can now disable CD-ROM code on Unix systems at build time if need be. The
...
configure option is not exposed, but the configure script can check this
on a system by system basis.
2002-07-25 05:21:00 +00:00
Ryan C. Gordon
248b3381bf
Generalized CD-ROM routine selection.
2002-07-20 00:19:53 +00:00
Ryan C. Gordon
c02838ad5e
FreeBSD patches; appears to be fully functional now.
2002-07-17 23:25:18 +00:00
Ryan C. Gordon
0b0c57d1be
Removed extra #endif
2002-07-11 08:44:27 +00:00
Ryan C. Gordon
99a03b9452
Build system corrections for BeOS and Cygwin.
2002-07-10 21:14:33 +00:00
Ryan C. Gordon
3df9dda733
Fixed buffer overflow in CD-ROM detection code.
2002-06-29 22:25:57 +00:00
Ryan C. Gordon
3b0f1c896f
Patched to compile on Cygwin.
2002-06-29 10:23:17 +00:00
Ryan C. Gordon
a1b30e8103
Fixed incorrect free() in Darwin CD detection code.
2002-06-08 20:59:29 +00:00
Ryan C. Gordon
2ea62ae1fb
Split some of the unix.c code out to posix.c for BeOS to use.
2002-05-24 09:23:23 +00:00
Ryan C. Gordon
769b2a5464
FIXME removal.
2002-05-21 11:29:00 +00:00
Ryan C. Gordon
a2c89d7ad2
Fixed OpenAppend to actually open for append. Used "wb+" instead of "ab".
2002-05-16 07:08:59 +00:00
Ryan C. Gordon
a2bec46a6b
Initial autoconf support.
2002-05-10 09:25:25 +00:00
Ryan C. Gordon
cd7021ba43
Darwin patches.
2002-04-06 23:49:17 +00:00
Ryan C. Gordon
566b6229c9
Darwin fixes.
2002-04-06 21:05:14 +00:00
Ryan C. Gordon
42a386c247
Added some malloc() failure checks in CD-ROM detection code.
2002-04-05 08:45:08 +00:00
Ryan C. Gordon
39406cbacc
First shot at thread-safety.
2002-03-30 16:44:09 +00:00
Ryan C. Gordon
f6b15061c8
Abstracted file deletion, so we don't rely on C library for it anymore.
2002-03-25 05:02:12 +00:00
Ryan C. Gordon
dfe65649df
Quick fix.
2002-03-25 04:02:27 +00:00
Ryan C. Gordon
f2887cf047
Added typedefs and platform-specific i/o.
2002-03-24 19:47:33 +00:00
Ryan C. Gordon
419d5cd017
Added __PHYSFS_platformInit() and __PHYSFS_platformDeinit().
2002-03-24 06:36:48 +00:00
Ryan C. Gordon
cb2a15d302
Darwin support by Patrick Stein.
2002-03-05 19:16:38 +00:00
Ryan C. Gordon
734b665b8d
Changed timeslice implementation to use something more portable (thanks to
...
Patrick Stein and his Darwin work for this one).
2002-03-05 01:35:54 +00:00
Ryan C. Gordon
c3a00ee94b
Patches from David Hedbor to handle missing current working directories.
...
"The attached patch makes PhysFS handle the case when the current
directory (as returned by getcwd()) has been deleted.
Fix 1, platform/unix.c:
Only retry getcwd if the error is ERANGE. Before it retried till the
malloc failed in the case of the directory not existing.
Fix 2: physfs.c:
If __PHYSFS_platformCurrentDir() return's NULL, use the root as the
base dir. Bad solution but the best I can think of (alternative :
use /tmp or Windows TEMP dir?)."
2001-09-14 22:59:53 +00:00
Ryan C. Gordon
00267d4023
Fixed base directory determination.
2001-08-29 03:31:43 +00:00
Ryan C. Gordon
3deb942440
Whoops. Forgot to declare a variable.
2001-08-23 15:39:07 +00:00
Ryan C. Gordon
f0c09894c8
Updates, corrections and enhancements to get this ported to win32.
2001-08-23 15:23:21 +00:00
Ryan C. Gordon
e6bebfa32c
Fixed a potential free()ing of a NULL pointer in
...
__PHYSFS_platformEnumerateFiles.
2001-08-23 15:06:15 +00:00