diff options
author | René Scharfe <rene.scharfe@lsrfire.ath.cx> | 2012-09-04 22:23:38 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-09-04 14:06:18 -0700 |
commit | 2162bd8cc461d6c3a12ab81c5db5a44bf5ecabc3 (patch) | |
tree | d34f1c81ff5dcb84fb7ed5e64610ffb2df5bb029 /credential-cache--daemon.c | |
parent | Prepare for 1.7.11.6 (diff) | |
download | tgif-2162bd8cc461d6c3a12ab81c5db5a44bf5ecabc3.tar.xz |
archive-zip: support UTF-8 paths
Set general purpose flag 11 if we encounter a path that contains
non-ASCII characters. We assume that all paths are given as UTF-8; no
conversion is done.
The flag seems to be ignored by unzip unless we also mark the archive
entry as coming from a Unix system. This is done by setting the field
creator_version ("version made by" in the standard[1]) to 0x03NN.
The NN part represents the version of the standard supported by us, and
this patch sets it to 3f (for version 6.3) for Unix paths. We keep
creator_version set to 0 (FAT filesystem, standard version 0) in the
non-special cases, as before.
But when we declare a file to have a Unix path, then we have to set the
file mode as well, or unzip will extract the files with the permission
set 0000, i.e. inaccessible by all.
[1] http://www.pkware.com/documents/casestudies/APPNOTE.TXT
Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'credential-cache--daemon.c')
0 files changed, 0 insertions, 0 deletions