Ryan C. Gordon
a0af6bbb71
Removed fallback for systems that have no userdir.
...
This would try to build something under the basedir for Windows 95, OS/2, etc,
but those targets are gone now. Modern systems provide this. If a given
system can't in the future, they can pull this code out of revision control
and use it in their implementation of __PHYSFS_platformCalcUserDir().
This change let me remove __PHYSFS_platformGetUserName(), too.
2012-03-22 00:27:46 -04:00
Ryan C. Gordon
b1d4afcbd3
Cleaned up some FIXMEs.
2012-03-22 00:21:28 -04:00
Ryan C. Gordon
59c6310e92
Removed a FIXME: use correct error code for writing to read-only archives.
2012-03-22 00:05:10 -04:00
Ryan C. Gordon
60aa0e460c
Make sure the prefdir has a final dirsep on it.
...
This matches the behaviour of PHYSFS_getBaseDir() and PHYSFS_getUserDir().
2012-03-21 23:59:43 -04:00
Ryan C. Gordon
43367c0c29
Fixed some brainfarts in the Windows version of PHYSFS_getPrefDir().
2012-03-21 23:52:44 -04:00
Ryan C. Gordon
629614838a
Patched to compile on Windows.
2012-03-21 23:51:11 -04:00
Ryan C. Gordon
3a5a780988
PHYSFS_setSaneConfig() now uses PHYSFS_getPrefDir().
2012-03-21 23:31:21 -04:00
Ryan C. Gordon
24d6a925d1
Added PHYSFS_getPrefDir().
2012-03-21 23:30:50 -04:00
Ryan C. Gordon
584119a4a0
Removed a FIXME.
2012-03-20 15:44:10 -04:00
Ryan C. Gordon
ba676b23e5
Reworked the error reporting API. Now we use error codes instead of strings.
...
This is based on work originally done by Christoph Nelles.
2012-03-20 15:38:12 -04:00
Ryan C. Gordon
8d7cf56651
Fixed mutex misuse.
2012-03-20 15:28:19 -04:00
Ryan C. Gordon
f5923f5cea
Check for mutex bugs.
2012-03-20 15:24:50 -04:00
Ryan C. Gordon
e34e67ff68
Use UTF-16 on Windows, not UCS-2.
2012-03-19 21:01:51 -04:00
Ryan C. Gordon
803730884a
Try to make a sane default for CD detection path by platform.
...
This is so this can work even when dropping PhysicsFS into another project
without CMake doing header tests and filling in the defines.
2012-03-19 20:42:41 -04:00
Ryan C. Gordon
2486105f4f
Make physfs_platforms.h define with a 1, so "#if X" works.
...
Added a few other pertinent platforms.
2012-03-19 20:41:14 -04:00
Ryan C. Gordon
d67e2c9207
Use our platform test macro for Solaris.
2012-03-19 20:40:22 -04:00
Ryan C. Gordon
f49c122784
Added Linux and Solaris tests.
2012-03-19 20:31:50 -04:00
Ryan C. Gordon
bb6c5e468c
Let's gamble that everything has assert.h.
...
(and we'll mask out specific platforms if we find one that doesn't.)
2012-03-19 20:27:28 -04:00
Ryan C. Gordon
e5fa9ab9fc
Minor code style cleanup in platform_beos.cpp ...
2012-03-19 02:58:41 -04:00
Ryan C. Gordon
52267fe380
Removed some unused code.
2012-03-19 02:46:38 -04:00
Ryan C. Gordon
82a6ce0abf
Use physfs_platforms.h in physfs_internal.h, to avoid repeated macro tests.
2012-03-19 02:04:27 -04:00
Ryan C. Gordon
1030e5d5ec
Removed llseek().
...
Use Linux's off64_t support instead.
2012-03-18 12:31:29 -04:00
Ryan C. Gordon
391f94681c
Fixed a comment. Cut and paste error, I guess?
2012-03-18 12:23:30 -04:00
Ryan C. Gordon
be4ae4d401
Removed __PHYSFS_platformCvtToDependent().
...
It's only used by archive_dir.c, and it's trivial to make it into
platform-independent code for that one module.
Bonus: less malloc() pressure...now every access to the native filesystem
doesn't require a temporary heap allocation.
2012-03-15 01:58:39 -04:00
Ryan C. Gordon
03dbc3f758
Make __PHYSFS_platformDirSeparator into a single char.
...
This multichar thing was always stupid. Pull it out of revision control if
you ever need it.
2012-03-15 01:54:57 -04:00
Ryan C. Gordon
aaf8868c8d
Removed __PHYSFS_convertToDependent(), as dead code.
2012-03-15 00:40:00 -04:00
Ryan C. Gordon
466f538926
Reworked BeOS CD detection code.
...
Cleaned up, removed a malloc(), removed unnecessary BAIL macros.
2012-03-14 21:24:32 -04:00
Ryan C. Gordon
abd2624c59
Added Evgeny Podjachev to the credits.
2012-03-14 05:47:42 -04:00
Ryan C. Gordon
624d7f3a42
Fixed PHYSFS_read() and PHYSFS_write() in the dev branch.
...
PHYSFS_read() and PHYSFS_write() should return number of objects written,
not object size.
Thanks to Evgeny Podjachev for the fix!
2012-03-14 05:47:15 -04:00
Ryan C. Gordon
519046db72
Removed check that .zip files are less than 4 gigabytes.
...
This would become a bogus check with zip64 support anyhow, but even here, if
you have a .zip that's close to 4 gigabytes, and a self-extracting program
prepended to it that pushes it over that limit, this test fails
incorrectly.
2012-03-13 08:21:02 -04:00
Ryan C. Gordon
a42ada1380
Fixed dereference of free()'d memory.
...
Thanks to Evgeny Podjachev for the fix!
2012-03-13 07:49:59 -04:00
Ryan C. Gordon
c57bd94f84
Apparently, __PHYSFS_platformCurrentDir() is dead code.
2012-03-13 04:25:05 -04:00
Ryan C. Gordon
0ae446d970
Move Windows CD-ROM detection to another thread that uses device notifications.
...
Fixes blocking when a disc is spinning up, except on initial call.
2012-03-12 04:05:31 -04:00
Ryan C. Gordon
16ff5c8aca
PhysicsFS works on Win64 now.
2012-03-12 03:48:34 -04:00
Ryan C. Gordon
5ad70036b2
Fixed stack smashing in newly-aligned __PHYSFS_smallAlloc().
2012-03-12 01:33:16 -04:00
Ryan C. Gordon
1d41608a64
More doc tweaks.
2012-03-11 05:05:02 -04:00
Ryan C. Gordon
611aeec61b
Removed __PHYSFS_platformRealPath().
...
It was an ugly piece of code, didn't work on The Hurd (apparently), likely
dangerous in its incomplete understanding of Windows paths, and only
used in places that should have given us normalized, absolute
paths in the first place anyhow.
2012-03-11 04:19:36 -04:00
Ryan C. Gordon
2aa0c5a278
Replace C++/C99 single-line comments in miniz with C98 /* comments */ ...
2012-03-11 03:56:24 -04:00
Ryan C. Gordon
c94d70ec0a
Moved __PHYSFS_platformCurrentDir() from Unix to POSIX sources.
...
getcwd() is part of POSIX, after all.
2012-03-11 03:43:07 -04:00
Ryan C. Gordon
b7e0ec7391
Change how Unix version of __PHYSFS_platformCurrentDir() allocates memory.
2012-03-11 03:39:57 -04:00
Ryan C. Gordon
7a8e3de103
Minor updates to the docs.
2012-03-11 03:09:07 -04:00
Ryan C. Gordon
df3c281014
Fixed some compiler warnings.
2012-03-10 03:18:33 -05:00
Ryan C. Gordon
700d94e577
Replaced zlib with a hacked up copy of miniz: http://code.google.com/p/miniz/
2012-03-10 02:31:58 -05:00
Ryan C. Gordon
c8fc8cf957
Merge with pocketpc removal.
2012-03-10 01:13:03 -05:00
Ryan C. Gordon
6e4279e76a
Bump the smallAlloc threshold up to 256 bytes.
2012-03-09 22:27:36 -05:00
Ryan C. Gordon
9dceda3d9f
Align smallAllocs to the native pointer size.
2012-03-09 22:27:51 -05:00
Ryan C. Gordon
a0b21c9ae9
Cleaned up all the readAll() cut and paste.
2012-03-09 04:50:27 -05:00
Ryan C. Gordon
25224b0e7a
We never use calloc() internally.
2012-03-09 03:55:23 -05:00
Ryan C. Gordon
eac0f11005
Cleaned up the updated TODO.txt, removed things that are already done, etc.
2012-03-09 03:55:04 -05:00
Ryan C. Gordon
86dbf54fc7
Updated TODO.txt from notes I had scratch down elsewhere over time.
2012-03-09 03:36:31 -05:00