Ryan C. Gordon
21b2fd39f2
Made PHYSFS_caseFold() a public API.
2017-08-20 02:02:08 -04:00
Ryan C. Gordon
bc2ddf0a53
Added some warnings to the docs about converting bad Unicode strings.
2017-08-20 02:01:50 -04:00
Ryan C. Gordon
9f8ecb91cb
unicode: Added UTF-16 and UCS-4 stricmp functions.
2017-08-20 01:18:41 -04:00
Ryan C. Gordon
eb75883226
OS/2: Fixed NULL pointer dereference.
2017-08-20 01:18:05 -04:00
Ryan C. Gordon
689333dc8f
Clarified some documentation.
2017-08-20 00:35:25 -04:00
Ryan C. Gordon
6ad71878fe
Updated PHYSFS_Archiver with PHYSFS_EnumerateCallbackResult change.
2017-08-19 11:19:28 -04:00
Ryan C. Gordon
4e0d3d55e9
Make PHYSFS_EnumerateCallback return an enum instead of an int.
2017-08-19 10:40:27 -04:00
Ryan C. Gordon
5fb9119ebc
windows: Disable _CRT_SECURE_NO_WARNINGS again.
2017-08-16 21:19:16 -04:00
Ryan C. Gordon
7607eeeb00
Cleaned up some header inclusion politics.
2017-08-16 20:03:24 -04:00
Ryan C. Gordon
e19422cc06
qnx: Added more proper support for QNX.
2017-08-16 20:02:54 -04:00
Ryan C. Gordon
cd0ccf64ed
Bump version to 2.1.1, since we've been at 2.1.0 for 8.5 years. :)
...
There isn't going to be an official 2.1.1 (or 2.1.0) release; we'll let this
marinate a little and jump to 3.0!
2017-08-15 02:08:24 -04:00
Ryan C. Gordon
98278f787b
physfshttpd: serve up directory listings, a few other cleanups.
2017-08-14 22:47:02 -04:00
Ryan C. Gordon
2270b3c3c2
physfshttpd: removed deprecated PHYSFS_getLastError() calls.
2017-08-14 21:59:56 -04:00
Ryan C. Gordon
b311ee44ad
Fixed one more Visual Studio compiler warning.
2017-08-14 21:22:30 -04:00
Ryan C. Gordon
735fd14ea4
Whoops, patched to compile.
2017-08-14 21:17:22 -04:00
Ryan C. Gordon
8dfd3cff8d
Fixed some compiler warnings on Visual Studio.
...
(and maybe made a few new ones...)
2017-08-14 21:15:58 -04:00
Ryan C. Gordon
692d5e8219
Fixed some warnings that Xcode brought up.
2017-08-14 19:58:56 -04:00
Ryan C. Gordon
a65a7ed7a5
Updated TODO.txt
2017-08-14 17:10:01 -04:00
Ryan C. Gordon
0d1a73fce4
zip: add some zip_resolve() calls, deal with DirTree-inserted parent dirs.
2017-08-14 16:24:19 -04:00
Ryan C. Gordon
395ea71990
This appears to have been fixed at some point.
2017-08-14 14:06:43 -04:00
Ryan C. Gordon
660171f79f
Don't fail enumeration if a directory isn't available in a given archive.
...
That shouldn't be a fatal error, that's a normal case.
2017-08-14 14:05:06 -04:00
Ryan C. Gordon
f425f051db
Little tweaks to __PHYSFS_initSmallAlloc().
2017-08-14 13:57:57 -04:00
Ryan C. Gordon
8db27a1236
Fix symlink filtering for enumeration under a virtual mount point.
2017-08-14 11:43:18 -04:00
Ryan C. Gordon
cfe3f0180b
Make PHYSFS_exists() work with mounts from PHYSFS_mountIo(io, NULL, ...)
...
(Actually, from any mount function that accepts a bogus/NULL filename.)
2017-08-14 03:06:42 -04:00
Ryan C. Gordon
3b7ee3974c
Don't set readonly if PHYSFS_stat()'ing something not in the write dir.
...
This API is meant to report what the archivers think about an item and not
actually tell you if a PHYSFS_openWrite() will succeed on it.
2017-08-14 02:46:07 -04:00
Ryan C. Gordon
63277e500c
Turns out we were doing this for a (maybe not good, but reasonable) reason.
2017-08-14 02:42:13 -04:00
Ryan C. Gordon
3078acd1eb
Archivers can now specify whether an archive definitely was intended for them.
...
So if a zip file goes to the zip archiver but is corrupted, the system can now
know not to bother trying other archivers once the zip archiver has had a shot
at it, and just as important: it can report the real error from that archiver
instead of a generic "unsupported."
2017-08-14 02:28:00 -04:00
Ryan C. Gordon
2a6215394b
Reduced some FIXME-3.0 tags to normal FIXME. They can wait.
2017-08-14 01:35:10 -04:00
Ryan C. Gordon
88e7f3eb0f
Sanity check archivers that should only have low-ASCII filename.
2017-08-14 01:29:45 -04:00
Ryan C. Gordon
9c9325c2c5
Filled in more documentation.
2017-08-14 01:28:30 -04:00
Ryan C. Gordon
dd68246737
7z: do global initialization once without risking a race condition.
2017-08-13 22:53:38 -04:00
Ryan C. Gordon
1364f6a915
PHYSFS_setSaneConfig uses enum callbacks now.
2017-08-13 19:45:31 -04:00
Ryan C. Gordon
0d61295781
Improved some documentation.
2017-08-13 17:11:14 -04:00
Ryan C. Gordon
cc3ac9539e
Patched to compile on various platforms and compilers.
2017-08-12 03:10:19 -04:00
Ryan C. Gordon
7fcddfb741
Don't mark the PHYSFS_EnumFilesCallback _typedef_ as deprecated.
...
It upsets several compilers when building PhysicsFS itself.
2017-08-12 03:06:06 -04:00
Ryan C. Gordon
6da5bea804
Updated docs to use PHYSFS_getLastErrorCode() instead of PHYSFS_getLastError().
...
(a few other documentation fixes probably slipped in here, too.)
2017-08-12 02:39:24 -04:00
Ryan C. Gordon
f6a8533ba2
FIXME removal: document enumerateFiles() sorting promises.
2017-08-12 02:24:38 -04:00
Ryan C. Gordon
db2201e4e1
Added some FIXMEs and deprecated PHYSFS_getLastError().
2017-08-12 02:21:11 -04:00
Ryan C. Gordon
ee9687bca9
Reworked enumeration to be more powerful.
...
Now callbacks can stop further enumeration and report errors, if they had a
catastrophic issue or just found what they needed and don't need to process
any more items.
Also, the actual enumerators can report errors instead of silently dropping
items. This led to several other fixes as all these implementations got
audited and reworked.
The original, non-callback enumerator now returns NULL if it can't produce a
complete list instead of dropping items and returning a partial list.
2017-08-12 02:19:22 -04:00
Ryan C. Gordon
b082bc3432
Removed __PHYSFS_stricmpASCII functions.
...
Nothing was using them, except one OS/2 thing that could live with stricmp.
2017-08-11 01:45:29 -04:00
Ryan C. Gordon
78c1a985ec
Made physfs_lzmasdk.h's include-once blockers match other files' formatting.
2017-08-11 01:29:38 -04:00
Ryan C. Gordon
15048fbb1d
ignorecase.c: use PHYSFS_utf8stricmp() now.
2017-08-11 01:39:58 -04:00
Ryan C. Gordon
d1f2637ca8
utf8: big improvements to case-insensitive UTF-8 string compare.
...
- Dramatically reduce RAM usage: uses between 8 and 11 kilobytes less static
memory for its internal case-folding tables.
- Actually works now. It would fail unconditionally if a codepoint folded
into multiple codepoints, even if the compared string contained those exact
codepoints.
- Now a public API!
- Removed __PHYSFS_utf8strnicmp(): nothing was using it, it was incorrect
anyhow, and what does 'n' represent when either string might case-fold to
something larger in-flight, anyhow?
2017-08-11 01:39:22 -04:00
Ryan C. Gordon
587ec88a0d
FIXME removal: this code is fine, I guess.
2017-08-10 12:31:41 -04:00
Ryan C. Gordon
1efdb62a8f
haiku: CD-ROM detection should report any mounted volume on a B_CD device.
...
Most discs only use the "raw" device, but it turns out the Haiku installation
"anyboot" images don't, and those would fail to detect here. If there's
some multi-partition disc thing and the OS mounted each separately, we should
report each of them.
2017-08-10 12:31:06 -04:00
Ryan C. Gordon
0e778b0b16
FIXME removal: it's okay for the PHYSFS_Io to be NULL here.
...
We use this technique in several other places, too.
2017-08-08 15:27:32 -04:00
Ryan C. Gordon
961c0604dc
apple: Patched to compile on XCode versions < 7.
2017-08-08 11:57:44 -04:00
Ryan C. Gordon
c52be25d1e
windows: minor cleanup.
2017-08-08 03:37:09 -04:00
Ryan C. Gordon
982411ec8a
apple: Start using some Cocoa APIs, clean up a few related things.
2017-08-08 03:36:56 -04:00
Ryan C. Gordon
0a730433ae
Rename physfs_platform_macos.c to physfs_platform_apple.m
...
It's not really "macOS," it's all of Apple's platforms (iOS, watchOS,
tvOS...AppleCarOS? heh), and second...we're about to need access to Cocoa
APIs, so we need it to be Objective-C. I fought as long as I could. :/
2017-08-08 02:34:25 -04:00