~supertux-dev/supertux/+git/external-physfs:old_master

Last commit made on 2017-04-17
Get this branch:
git clone -b old_master https://git.launchpad.net/~supertux-dev/supertux/+git/external-physfs

Branch merges

Branch information

Name:
old_master
Repository:
lp:~supertux-dev/supertux/+git/external-physfs

Recent commits

b617766... by Ryan C. Gordon

Updated copyright to 2017.

14a3b87... by Ryan C. Gordon

Removed unused variable in extras/ignorecase.c ...

0a1b2b8... by Ryan C. Gordon

Added a mostly-harmless FIXME.

da04a05... by Ryan C. Gordon

Added support for password-protected .zip files.

To use: mount a .zip file as usual, open a file as usual, but append '$' plus
the password to the end of the path, like so:

    PHYSFS_File *f = PHYSFS_openRead("/path/to/my/file.txt$MyPassword");

Note that this is the "traditional" PKWARE crypto, like you might get from
PkZip 2.04g or Info-ZIP. They have more advanced cryptography in the modern
.zip spec, but that's not implemented here. If you've ever tried to unzip
an archive and were prompted for a password, you probably saw the traditional
crypto at work.

Note that this is NOT a secure thing: if you ship an app that contains a
password, someone with a debugger can retrieve it. Note also that this
password could be available to any code registered as a PHYSFS_Archiver, and
that due to how archives combine into a single file tree, the wrong archiver
can get the password, at a minimum causing it to fail because passwords don't
match.

In short: make sure you know what you're doing before you use this!

5c7a8f0... by Ryan C. Gordon

Platform deinit should happen last, since other deinit bits might depend on it.

ac1df5f... by Ryan C. Gordon

Fixed miniz code that triggers recent GCCs' -Wmisleading-indentation.

a007128... by Ryan C. Gordon

Removed one more rude thing from the comments. :/

74c0821... by Ryan C. Gordon

extras/ignorecase.h: Fixed some typos.

daa3f06... by Ryan C. Gordon

Fixed some documentation typos (thanks, Paul!).

7805899... by Ryan C. Gordon

Replace unsigned long cast with cast to size_t (thanks, David!).

When targeting MinGW-w64's x86_64 target, unsigned long is 4 bytes but void* is
8 bytes. This mismatch triggers the pointer-to-int-cast warning.

(This patch was originally David Yip's work, with uintptr_t instead of size_t).