Rev 2500: Switch to using an offset rather than doing a list splice in http://bzr.arbash-meinel.com/branches/bzr/0.17-dev/dirstate_pyrex
John Arbash Meinel
john at arbash-meinel.com
Fri May 4 20:26:48 BST 2007
At http://bzr.arbash-meinel.com/branches/bzr/0.17-dev/dirstate_pyrex
------------------------------------------------------------
revno: 2500
revision-id: john at arbash-meinel.com-20070504192637-1tzys0ugbgy21fw9
parent: john at arbash-meinel.com-20070504192326-5f9kzev4v57if01r
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: dirstate_pyrex
timestamp: Fri 2007-05-04 14:26:37 -0500
message:
Switch to using an offset rather than doing a list splice
modified:
bzrlib/compiled/dirstate_helpers.pyx dirstate_helpers.pyx-20070503201057-u425eni465q4idwn-3
-------------- next part --------------
=== modified file 'bzrlib/compiled/dirstate_helpers.pyx'
--- a/bzrlib/compiled/dirstate_helpers.pyx 2007-05-04 19:23:26 +0000
+++ b/bzrlib/compiled/dirstate_helpers.pyx 2007-05-04 19:26:37 +0000
@@ -182,7 +182,7 @@
return cur
-cdef object _fields_to_entry_0_parents(object fields):
+cdef object _fields_to_entry_0_parents(object fields, int offset):
cdef object path_name_file_id_key
cdef char *size_str
cdef unsigned long int size
@@ -190,27 +190,27 @@
cdef object is_executable
if not PyList_CheckExact(fields):
raise TypeError('fields must be a list')
- path_name_file_id_key = (_List_GetItem_Incref(fields, 0),
- _List_GetItem_Incref(fields, 1),
- _List_GetItem_Incref(fields, 2),
+ path_name_file_id_key = (_List_GetItem_Incref(fields, offset+0),
+ _List_GetItem_Incref(fields, offset+1),
+ _List_GetItem_Incref(fields, offset+2),
)
size_str = PyString_AS_STRING_void(
- PyList_GetItem_object_void(fields, 5))
+ PyList_GetItem_object_void(fields, offset+5))
size = strtoul(size_str, NULL, 10)
executable_str = PyString_AS_STRING_void(
- PyList_GetItem_object_void(fields, 6))
+ PyList_GetItem_object_void(fields, offset+6))
if executable_str[0] == c'y':
is_executable = True
else:
is_executable = False
return (path_name_file_id_key, [
( # Current tree
- _List_GetItem_Incref(fields, 3),# minikind
- _List_GetItem_Incref(fields, 4),# fingerprint
- size, # size
- is_executable, # executable
- _List_GetItem_Incref(fields, 7),# packed_stat or revision_id
+ _List_GetItem_Incref(fields, offset+3),# minikind
+ _List_GetItem_Incref(fields, offset+4),# fingerprint
+ size, # size
+ is_executable, # executable
+ _List_GetItem_Incref(fields, offset+7),# packed_stat or revision_id
)])
@@ -231,7 +231,7 @@
current_dirname_size = 0
while pos < field_count:
- entry = _fields_to_entry_0_parents(fields[pos:pos+entry_size])
+ entry = _fields_to_entry_0_parents(fields, pos)
pos = pos + entry_size
dirname = PyTuple_GetItem_void_void(
PyTuple_GetItem_void_void(<void*>entry, 0), 0)
More information about the bazaar-commits
mailing list