summaryrefslogtreecommitdiff
path: root/git/index
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2015-01-05 18:21:49 +0100
committerSebastian Thiel <byronimo@gmail.com>2015-01-05 18:21:49 +0100
commit4a67e4e49c4e7b82e416067df69c72656213e886 (patch)
treef7ab6a08f66768ed7a40f28dba7c3382ef881ecd /git/index
parent31b3673bdb9d8fb7feea8ae887be455c4a880f76 (diff)
downloadgitpython-4a67e4e49c4e7b82e416067df69c72656213e886.tar.gz
test_fun works
Diffstat (limited to 'git/index')
-rw-r--r--git/index/fun.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/git/index/fun.py b/git/index/fun.py
index 0e49ae8d..3e66a7ba 100644
--- a/git/index/fun.py
+++ b/git/index/fun.py
@@ -37,6 +37,7 @@ from .util import (
from gitdb.base import IStream
from gitdb.typ import str_tree_type
+from git.compat import defenc
__all__ = ('write_cache', 'read_cache', 'write_tree_from_cache', 'entry_key',
'stat_mode_to_index_mode', 'S_IFGITLINK')
@@ -86,9 +87,9 @@ def write_cache(entries, stream, extension_data=None, ShaStreamCls=IndexFileSHA1
flags = plen | (entry[2] & CE_NAMEMASK_INV) # clear possible previous values
write(pack(">LLLLLL20sH", entry[6], entry[7], entry[0],
entry[8], entry[9], entry[10], entry[1], flags))
- write(path)
+ write(path.encode(defenc))
real_size = ((tell() - beginoffset + 8) & ~7)
- write("\0" * ((beginoffset + real_size) - tell()))
+ write(b"\0" * ((beginoffset + real_size) - tell()))
# END for each entry
# write previously cached extensions data
@@ -102,7 +103,7 @@ def write_cache(entries, stream, extension_data=None, ShaStreamCls=IndexFileSHA1
def read_header(stream):
"""Return tuple(version_long, num_entries) from the given stream"""
type_id = stream.read(4)
- if type_id != "DIRC":
+ if type_id != b"DIRC":
raise AssertionError("Invalid index file header: %r" % type_id)
version, num_entries = unpack(">LL", stream.read(4 * 2))
@@ -142,7 +143,7 @@ def read_cache(stream):
(dev, ino, mode, uid, gid, size, sha, flags) = \
unpack(">LLLLLL20sH", read(20 + 4 * 6 + 2))
path_size = flags & CE_NAMEMASK
- path = read(path_size)
+ path = read(path_size).decode(defenc)
real_size = ((tell() - beginoffset + 8) & ~7)
read((beginoffset + real_size) - tell())