~ubuntu-branches/ubuntu/karmic/bzr/karmic-proposed

« back to all changes in this revision

Viewing changes to bzrlib/_readdir_pyx.c

  • Committer: Bazaar Package Importer
  • Author(s): Martin Pool
  • Date: 2009-12-14 19:17:08 UTC
  • mfrom: (1.4.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20091214191708-dyay45g6mrsndc21
Tags: 2.0.2-0ubuntu1
* Proposed SRU, taking all changes from Bazaar's 2.0.2 new bugfix-only
  upstream release.
* Avoid "NoneType has no attribute st_mode" error when files disappear
  from a directory while it's being read. LP: #446033
* Content filters are now applied correctly after revert.
* Diff parsing handles "Binary files differ" hunks.  LP: #436325
* Fetching from stacked pre-2a repository via a smart server no longer
  fails intermittently with "second push failed to complete".
  LP: #437626
* Fix typos left after test_selftest refactoring.
  LP: #461149
* Fixed ``ObjectNotLocked`` errors during ``bzr log -r NNN somefile``.
  LP: #445171
* PreviewTree file names are not limited by the encoding of the temp
  directory's filesystem. LP: #436794
* ``bzr log`` now read-locks branches exactly once, so makes better use of
  data caches.
* Filtered views user documentation upgraded to refer to format 2a
  instead of pre-2.0 formats.
* ``bzr add`` in a tree that has files with ``\r`` or ``\n`` in the
  filename will issue a warning and skip over those files.
  LP: #3918
* bzr will attempt to authenticate with SSH servers that support
  ``keyboard-interactive`` auth but not ``password`` auth when using
  Paramiko.   LP: #433846
* Fixed fetches from a stacked branch on a smart server that were failing
  with some combinations of remote and local formats.  This was causing
  "unknown object type identifier 60" errors.  LP: #427736
* Fixed ``ObjectNotLocked`` errors when doing some log and diff operations
  on branches via a smart server.  LP: #389413
* Handle things like ``bzr add foo`` and ``bzr rm foo`` when the tree is
  at the root of a drive. ``osutils._cicp_canonical_relpath`` always
  assumed that ``abspath()`` returned a path that did not have a trailing
  ``/``, but that is not true when working at the root of the filesystem.
  LP: #322807
* Hide deprecation warnings for 'final' releases for python2.6.
  LP: #440062
* Improve the time for ``bzr log DIR`` for 2a format repositories.
  We had been using the same code path as for <2a formats, which required
  iterating over all objects in all revisions.
  LP: #374730
* Make sure that we unlock the tree if we fail to create a TreeTransform
  object when doing a merge, and there is limbo, or pending-deletions
  directory.  LP: #427773
* Occasional IndexError on renamed files have been fixed. Operations that
  set a full inventory in the working tree will now go via the
  apply_inventory_delta code path which is simpler and easier to
  understand than dirstates set_state_from_inventory method. This may
  have a small performance impact on operations built on _write_inventory,
  but such operations are already doing full tree scans, so no radical
  performance change should be observed. LP: #403322
* Retrieving file text or mtime from a _PreviewTree has good performance when
  there are many changes.
* The CHK index pages now use an unlimited cache size. With a limited
  cache and a large project, the random access of chk pages could cause us
  to download the entire cix file many times.
  LP: #402623
* When a file kind becomes unversionable after being added, a sensible
  error will be shown instead of a traceback. LP: #438569
* Improved README.
* Improved upgrade documentation for Launchpad branches.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* 0.9.7.2 on Thu Sep 10 16:57:38 2009 */
 
1
/* Generated by Pyrex 0.9.8.5 on Mon Nov  2 15:10:54 2009 */
2
2
 
3
3
#define PY_SSIZE_T_CLEAN
4
4
#include "Python.h"
13
13
  #define PyInt_FromSsize_t(z) PyInt_FromLong(z)
14
14
  #define PyInt_AsSsize_t(o)    PyInt_AsLong(o)
15
15
#endif
16
 
#ifndef WIN32
 
16
#if !defined(WIN32) && !defined(MS_WINDOWS)
17
17
  #ifndef __stdcall
18
18
    #define __stdcall
19
19
  #endif
38
38
#include "readdir.h"
39
39
 
40
40
 
41
 
typedef struct {PyObject **p; char *s;} __Pyx_InternTabEntry; /*proto*/
42
 
typedef struct {PyObject **p; char *s; long n;} __Pyx_StringTabEntry; /*proto*/
 
41
typedef struct {PyObject **p; int i; char *s; long n;} __Pyx_StringTabEntry; /*proto*/
43
42
 
44
43
static PyObject *__pyx_m;
45
44
static PyObject *__pyx_b;
49
48
 
50
49
static char __pyx_mdoc[] = "Wrapper for readdir which returns files ordered by inode.";
51
50
 
52
 
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list); /*proto*/
53
 
 
54
51
static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/
55
52
 
56
53
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
57
54
 
58
 
static PyObject *__Pyx_GetItemInt(PyObject *o, Py_ssize_t i); /*proto*/
59
 
 
60
 
static int __Pyx_InternStrings(__Pyx_InternTabEntry *t); /*proto*/
61
 
 
62
55
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/
63
56
 
64
57
static int __Pyx_SetVtable(PyObject *dict, void *vtable); /*proto*/
65
58
 
 
59
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list); /*proto*/
 
60
 
66
61
static void __Pyx_AddTraceback(char *funcname); /*proto*/
67
62
 
68
 
/* Declarations from _readdir_pyx */
69
 
 
70
 
struct __pyx_obj_12_readdir_pyx__Stat {
 
63
/* Declarations from bzrlib._readdir_pyx */
 
64
 
 
65
 
 
66
/* Declarations from implementation of bzrlib._readdir_pyx */
 
67
 
 
68
struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat {
71
69
  PyObject_HEAD
72
70
  struct stat _st;
73
71
};
74
72
 
75
 
struct __pyx_obj_12_readdir_pyx_UTF8DirReader {
 
73
struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader {
76
74
  PyObject_HEAD
77
 
  struct __pyx_vtabstruct_12_readdir_pyx_UTF8DirReader *__pyx_vtab;
 
75
  struct __pyx_vtabstruct_6bzrlib_12_readdir_pyx_UTF8DirReader *__pyx_vtab;
78
76
  PyObject *_safe_utf8;
79
77
  PyObject *_directory;
80
78
  PyObject *_chardev;
88
86
 
89
87
 
90
88
 
91
 
struct __pyx_vtabstruct_12_readdir_pyx_UTF8DirReader {
92
 
  PyObject *(*_kind_from_mode)(struct __pyx_obj_12_readdir_pyx_UTF8DirReader *,int);
 
89
struct __pyx_vtabstruct_6bzrlib_12_readdir_pyx_UTF8DirReader {
 
90
  PyObject *(*_kind_from_mode)(struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *,int);
93
91
};
94
 
static struct __pyx_vtabstruct_12_readdir_pyx_UTF8DirReader *__pyx_vtabptr_12_readdir_pyx_UTF8DirReader;
95
 
 
96
 
static PyTypeObject *__pyx_ptype_12_readdir_pyx__Stat = 0;
97
 
static PyTypeObject *__pyx_ptype_12_readdir_pyx_UTF8DirReader = 0;
98
 
static PyObject *__pyx_k15;
99
 
static PyObject *__pyx_f_12_readdir_pyx__read_dir(PyObject *); /*proto*/
100
 
 
101
 
 
102
 
/* Implementation of _readdir_pyx */
103
 
 
104
 
static char __pyx_k14[] = "";
105
 
 
106
 
static PyObject *__pyx_n_os;
107
 
static PyObject *__pyx_n_sys;
 
92
static struct __pyx_vtabstruct_6bzrlib_12_readdir_pyx_UTF8DirReader *__pyx_vtabptr_6bzrlib_12_readdir_pyx_UTF8DirReader;
 
93
 
 
94
static PyTypeObject *__pyx_ptype_6bzrlib_12_readdir_pyx__Stat = 0;
 
95
static PyTypeObject *__pyx_ptype_6bzrlib_12_readdir_pyx_UTF8DirReader = 0;
 
96
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx__read_dir(PyObject *); /*proto*/
 
97
 
 
98
static char __pyx_k1[] = "st_mode";
 
99
static char __pyx_k2[] = "st_size";
 
100
static char __pyx_k3[] = "st_mtime";
 
101
static char __pyx_k4[] = "st_ctime";
 
102
static char __pyx_k5[] = "osutils";
 
103
static char __pyx_k6[] = "safe_utf8";
 
104
static char __pyx_k7[] = "_directory";
 
105
static char __pyx_k8[] = "_chardev";
 
106
static char __pyx_k9[] = "_block";
 
107
static char __pyx_k10[] = "_file";
 
108
static char __pyx_k11[] = "_fifo";
 
109
static char __pyx_k12[] = "_symlink";
 
110
static char __pyx_k13[] = "_socket";
 
111
static char __pyx_k14[] = "_unknown";
 
112
static char __pyx_k15[] = "/";
 
113
static char __pyx_k16[] = "";
 
114
static char __pyx_k17[] = "failed to strcat";
 
115
static char __pyx_k18[] = ".";
 
116
static char __pyx_k19[] = "open: ";
 
117
static char __pyx_k20[] = "chdir: ";
 
118
static char __pyx_k21[] = "opendir: ";
 
119
static char __pyx_k22[] = "readdir: ";
 
120
static char __pyx_k23[] = "lstat: ";
 
121
static char __pyx_k24[] = "closedir: ";
 
122
static char __pyx_k25[] = "return to orig_dir: ";
 
123
static char __pyx_k26[] = "os";
 
124
static char __pyx_k27[] = "sys";
 
125
static char __pyx_k28[] = "directory";
 
126
static char __pyx_k29[] = "chardev";
 
127
static char __pyx_k30[] = "block";
 
128
static char __pyx_k31[] = "file";
 
129
static char __pyx_k32[] = "fifo";
 
130
static char __pyx_k33[] = "symlink";
 
131
static char __pyx_k34[] = "socket";
 
132
static char __pyx_k35[] = "unknown";
 
133
static char __pyx_k36[] = "missing";
 
134
static char __pyx_k37[] = "_missing";
 
135
static char __pyx_k38[] = "bzrlib";
 
136
 
 
137
static PyObject *__pyx_n__block;
 
138
static PyObject *__pyx_n__chardev;
108
139
static PyObject *__pyx_n__directory;
109
 
static PyObject *__pyx_n_directory;
110
 
static PyObject *__pyx_n__chardev;
111
 
static PyObject *__pyx_n_chardev;
112
 
static PyObject *__pyx_n__block;
113
 
static PyObject *__pyx_n_block;
 
140
static PyObject *__pyx_n__fifo;
114
141
static PyObject *__pyx_n__file;
115
 
static PyObject *__pyx_n_file;
116
 
static PyObject *__pyx_n__fifo;
117
 
static PyObject *__pyx_n_fifo;
 
142
static PyObject *__pyx_n__missing;
 
143
static PyObject *__pyx_n__socket;
118
144
static PyObject *__pyx_n__symlink;
119
 
static PyObject *__pyx_n_symlink;
120
 
static PyObject *__pyx_n__socket;
121
 
static PyObject *__pyx_n_socket;
122
145
static PyObject *__pyx_n__unknown;
123
 
static PyObject *__pyx_n_unknown;
124
 
static PyObject *__pyx_n__missing;
 
146
static PyObject *__pyx_n_block;
 
147
static PyObject *__pyx_n_bzrlib;
 
148
static PyObject *__pyx_n_chardev;
 
149
static PyObject *__pyx_n_directory;
 
150
static PyObject *__pyx_n_fifo;
 
151
static PyObject *__pyx_n_file;
125
152
static PyObject *__pyx_n_missing;
126
 
static PyObject *__pyx_n_bzrlib;
 
153
static PyObject *__pyx_n_os;
127
154
static PyObject *__pyx_n_osutils;
128
 
 
129
 
static PyObject *__pyx_k14p;
130
 
 
131
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_6st_dev___get__(PyObject *__pyx_v_self); /*proto*/
132
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_6st_dev___get__(PyObject *__pyx_v_self) {
133
 
  PyObject *__pyx_r;
134
 
  PyObject *__pyx_1 = 0;
135
 
  Py_INCREF(__pyx_v_self);
136
 
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_dev); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; goto __pyx_L1;}
137
 
  __pyx_r = __pyx_1;
138
 
  __pyx_1 = 0;
139
 
  goto __pyx_L0;
140
 
 
141
 
  __pyx_r = Py_None; Py_INCREF(Py_None);
142
 
  goto __pyx_L0;
143
 
  __pyx_L1:;
144
 
  Py_XDECREF(__pyx_1);
145
 
  __Pyx_AddTraceback("_readdir_pyx._Stat.st_dev.__get__");
146
 
  __pyx_r = 0;
147
 
  __pyx_L0:;
148
 
  Py_DECREF(__pyx_v_self);
149
 
  return __pyx_r;
150
 
}
151
 
 
152
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_6st_ino___get__(PyObject *__pyx_v_self); /*proto*/
153
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_6st_ino___get__(PyObject *__pyx_v_self) {
154
 
  PyObject *__pyx_r;
155
 
  PyObject *__pyx_1 = 0;
156
 
  Py_INCREF(__pyx_v_self);
157
 
  __pyx_1 = PyLong_FromUnsignedLong(((struct __pyx_obj_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_ino); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; goto __pyx_L1;}
158
 
  __pyx_r = __pyx_1;
159
 
  __pyx_1 = 0;
160
 
  goto __pyx_L0;
161
 
 
162
 
  __pyx_r = Py_None; Py_INCREF(Py_None);
163
 
  goto __pyx_L0;
164
 
  __pyx_L1:;
165
 
  Py_XDECREF(__pyx_1);
166
 
  __Pyx_AddTraceback("_readdir_pyx._Stat.st_ino.__get__");
167
 
  __pyx_r = 0;
168
 
  __pyx_L0:;
169
 
  Py_DECREF(__pyx_v_self);
170
 
  return __pyx_r;
171
 
}
172
 
 
173
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_7st_mode___get__(PyObject *__pyx_v_self); /*proto*/
174
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_7st_mode___get__(PyObject *__pyx_v_self) {
175
 
  PyObject *__pyx_r;
176
 
  PyObject *__pyx_1 = 0;
177
 
  Py_INCREF(__pyx_v_self);
178
 
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_mode); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; goto __pyx_L1;}
179
 
  __pyx_r = __pyx_1;
180
 
  __pyx_1 = 0;
181
 
  goto __pyx_L0;
182
 
 
183
 
  __pyx_r = Py_None; Py_INCREF(Py_None);
184
 
  goto __pyx_L0;
185
 
  __pyx_L1:;
186
 
  Py_XDECREF(__pyx_1);
187
 
  __Pyx_AddTraceback("_readdir_pyx._Stat.st_mode.__get__");
188
 
  __pyx_r = 0;
189
 
  __pyx_L0:;
190
 
  Py_DECREF(__pyx_v_self);
191
 
  return __pyx_r;
192
 
}
193
 
 
194
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_8st_ctime___get__(PyObject *__pyx_v_self); /*proto*/
195
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_8st_ctime___get__(PyObject *__pyx_v_self) {
196
 
  PyObject *__pyx_r;
197
 
  PyObject *__pyx_1 = 0;
198
 
  Py_INCREF(__pyx_v_self);
199
 
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_ctime); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; goto __pyx_L1;}
200
 
  __pyx_r = __pyx_1;
201
 
  __pyx_1 = 0;
202
 
  goto __pyx_L0;
203
 
 
204
 
  __pyx_r = Py_None; Py_INCREF(Py_None);
205
 
  goto __pyx_L0;
206
 
  __pyx_L1:;
207
 
  Py_XDECREF(__pyx_1);
208
 
  __Pyx_AddTraceback("_readdir_pyx._Stat.st_ctime.__get__");
209
 
  __pyx_r = 0;
210
 
  __pyx_L0:;
211
 
  Py_DECREF(__pyx_v_self);
212
 
  return __pyx_r;
213
 
}
214
 
 
215
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_8st_mtime___get__(PyObject *__pyx_v_self); /*proto*/
216
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_8st_mtime___get__(PyObject *__pyx_v_self) {
217
 
  PyObject *__pyx_r;
218
 
  PyObject *__pyx_1 = 0;
219
 
  Py_INCREF(__pyx_v_self);
220
 
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_mtime); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; goto __pyx_L1;}
221
 
  __pyx_r = __pyx_1;
222
 
  __pyx_1 = 0;
223
 
  goto __pyx_L0;
224
 
 
225
 
  __pyx_r = Py_None; Py_INCREF(Py_None);
226
 
  goto __pyx_L0;
227
 
  __pyx_L1:;
228
 
  Py_XDECREF(__pyx_1);
229
 
  __Pyx_AddTraceback("_readdir_pyx._Stat.st_mtime.__get__");
230
 
  __pyx_r = 0;
231
 
  __pyx_L0:;
232
 
  Py_DECREF(__pyx_v_self);
233
 
  return __pyx_r;
234
 
}
235
 
 
236
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_7st_size___get__(PyObject *__pyx_v_self); /*proto*/
237
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat_7st_size___get__(PyObject *__pyx_v_self) {
238
 
  PyObject *__pyx_r;
239
 
  PyObject *__pyx_1 = 0;
240
 
  Py_INCREF(__pyx_v_self);
241
 
  __pyx_1 = PyLong_FromUnsignedLongLong(((struct __pyx_obj_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_size); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; goto __pyx_L1;}
242
 
  __pyx_r = __pyx_1;
243
 
  __pyx_1 = 0;
244
 
  goto __pyx_L0;
245
 
 
246
 
  __pyx_r = Py_None; Py_INCREF(Py_None);
247
 
  goto __pyx_L0;
248
 
  __pyx_L1:;
249
 
  Py_XDECREF(__pyx_1);
250
 
  __Pyx_AddTraceback("_readdir_pyx._Stat.st_size.__get__");
251
 
  __pyx_r = 0;
252
 
  __pyx_L0:;
253
 
  Py_DECREF(__pyx_v_self);
254
 
  return __pyx_r;
255
 
}
256
 
 
 
155
static PyObject *__pyx_n_safe_utf8;
 
156
static PyObject *__pyx_n_socket;
 
157
static PyObject *__pyx_n_st_ctime;
257
158
static PyObject *__pyx_n_st_mode;
 
159
static PyObject *__pyx_n_st_mtime;
258
160
static PyObject *__pyx_n_st_size;
259
 
static PyObject *__pyx_n_st_mtime;
260
 
static PyObject *__pyx_n_st_ctime;
261
 
 
262
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat___repr__(PyObject *__pyx_v_self); /*proto*/
263
 
static PyObject *__pyx_f_12_readdir_pyx_5_Stat___repr__(PyObject *__pyx_v_self) {
 
161
static PyObject *__pyx_n_symlink;
 
162
static PyObject *__pyx_n_sys;
 
163
static PyObject *__pyx_n_unknown;
 
164
 
 
165
static PyObject *__pyx_k15p;
 
166
static PyObject *__pyx_k16p;
 
167
static PyObject *__pyx_k17p;
 
168
static PyObject *__pyx_k18p;
 
169
static PyObject *__pyx_k19p;
 
170
static PyObject *__pyx_k20p;
 
171
static PyObject *__pyx_k21p;
 
172
static PyObject *__pyx_k22p;
 
173
static PyObject *__pyx_k23p;
 
174
static PyObject *__pyx_k24p;
 
175
static PyObject *__pyx_k25p;
 
176
 
 
177
static __Pyx_StringTabEntry __pyx_string_tab[] = {
 
178
  {&__pyx_n__block, 1, __pyx_k9, sizeof(__pyx_k9)},
 
179
  {&__pyx_n__chardev, 1, __pyx_k8, sizeof(__pyx_k8)},
 
180
  {&__pyx_n__directory, 1, __pyx_k7, sizeof(__pyx_k7)},
 
181
  {&__pyx_n__fifo, 1, __pyx_k11, sizeof(__pyx_k11)},
 
182
  {&__pyx_n__file, 1, __pyx_k10, sizeof(__pyx_k10)},
 
183
  {&__pyx_n__missing, 1, __pyx_k37, sizeof(__pyx_k37)},
 
184
  {&__pyx_n__socket, 1, __pyx_k13, sizeof(__pyx_k13)},
 
185
  {&__pyx_n__symlink, 1, __pyx_k12, sizeof(__pyx_k12)},
 
186
  {&__pyx_n__unknown, 1, __pyx_k14, sizeof(__pyx_k14)},
 
187
  {&__pyx_n_block, 1, __pyx_k30, sizeof(__pyx_k30)},
 
188
  {&__pyx_n_bzrlib, 1, __pyx_k38, sizeof(__pyx_k38)},
 
189
  {&__pyx_n_chardev, 1, __pyx_k29, sizeof(__pyx_k29)},
 
190
  {&__pyx_n_directory, 1, __pyx_k28, sizeof(__pyx_k28)},
 
191
  {&__pyx_n_fifo, 1, __pyx_k32, sizeof(__pyx_k32)},
 
192
  {&__pyx_n_file, 1, __pyx_k31, sizeof(__pyx_k31)},
 
193
  {&__pyx_n_missing, 1, __pyx_k36, sizeof(__pyx_k36)},
 
194
  {&__pyx_n_os, 1, __pyx_k26, sizeof(__pyx_k26)},
 
195
  {&__pyx_n_osutils, 1, __pyx_k5, sizeof(__pyx_k5)},
 
196
  {&__pyx_n_safe_utf8, 1, __pyx_k6, sizeof(__pyx_k6)},
 
197
  {&__pyx_n_socket, 1, __pyx_k34, sizeof(__pyx_k34)},
 
198
  {&__pyx_n_st_ctime, 1, __pyx_k4, sizeof(__pyx_k4)},
 
199
  {&__pyx_n_st_mode, 1, __pyx_k1, sizeof(__pyx_k1)},
 
200
  {&__pyx_n_st_mtime, 1, __pyx_k3, sizeof(__pyx_k3)},
 
201
  {&__pyx_n_st_size, 1, __pyx_k2, sizeof(__pyx_k2)},
 
202
  {&__pyx_n_symlink, 1, __pyx_k33, sizeof(__pyx_k33)},
 
203
  {&__pyx_n_sys, 1, __pyx_k27, sizeof(__pyx_k27)},
 
204
  {&__pyx_n_unknown, 1, __pyx_k35, sizeof(__pyx_k35)},
 
205
  {&__pyx_k15p, 0, __pyx_k15, sizeof(__pyx_k15)},
 
206
  {&__pyx_k16p, 0, __pyx_k16, sizeof(__pyx_k16)},
 
207
  {&__pyx_k17p, 0, __pyx_k17, sizeof(__pyx_k17)},
 
208
  {&__pyx_k18p, 0, __pyx_k18, sizeof(__pyx_k18)},
 
209
  {&__pyx_k19p, 0, __pyx_k19, sizeof(__pyx_k19)},
 
210
  {&__pyx_k20p, 0, __pyx_k20, sizeof(__pyx_k20)},
 
211
  {&__pyx_k21p, 0, __pyx_k21, sizeof(__pyx_k21)},
 
212
  {&__pyx_k22p, 0, __pyx_k22, sizeof(__pyx_k22)},
 
213
  {&__pyx_k23p, 0, __pyx_k23, sizeof(__pyx_k23)},
 
214
  {&__pyx_k24p, 0, __pyx_k24, sizeof(__pyx_k24)},
 
215
  {&__pyx_k25p, 0, __pyx_k25, sizeof(__pyx_k25)},
 
216
  {0, 0, 0, 0}
 
217
};
 
218
 
 
219
static PyObject *__pyx_d1;
 
220
 
 
221
 
 
222
/* Implementation of bzrlib._readdir_pyx */
 
223
 
 
224
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_6st_dev___get__(PyObject *__pyx_v_self); /*proto*/
 
225
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_6st_dev___get__(PyObject *__pyx_v_self) {
 
226
  PyObject *__pyx_r;
 
227
  PyObject *__pyx_1 = 0;
 
228
  Py_INCREF(__pyx_v_self);
 
229
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_dev); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; goto __pyx_L1;}
 
230
  __pyx_r = __pyx_1;
 
231
  __pyx_1 = 0;
 
232
  goto __pyx_L0;
 
233
 
 
234
  __pyx_r = Py_None; Py_INCREF(Py_None);
 
235
  goto __pyx_L0;
 
236
  __pyx_L1:;
 
237
  Py_XDECREF(__pyx_1);
 
238
  __Pyx_AddTraceback("bzrlib._readdir_pyx._Stat.st_dev.__get__");
 
239
  __pyx_r = 0;
 
240
  __pyx_L0:;
 
241
  Py_DECREF(__pyx_v_self);
 
242
  return __pyx_r;
 
243
}
 
244
 
 
245
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_6st_ino___get__(PyObject *__pyx_v_self); /*proto*/
 
246
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_6st_ino___get__(PyObject *__pyx_v_self) {
 
247
  PyObject *__pyx_r;
 
248
  PyObject *__pyx_1 = 0;
 
249
  Py_INCREF(__pyx_v_self);
 
250
  __pyx_1 = PyLong_FromUnsignedLong(((struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_ino); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; goto __pyx_L1;}
 
251
  __pyx_r = __pyx_1;
 
252
  __pyx_1 = 0;
 
253
  goto __pyx_L0;
 
254
 
 
255
  __pyx_r = Py_None; Py_INCREF(Py_None);
 
256
  goto __pyx_L0;
 
257
  __pyx_L1:;
 
258
  Py_XDECREF(__pyx_1);
 
259
  __Pyx_AddTraceback("bzrlib._readdir_pyx._Stat.st_ino.__get__");
 
260
  __pyx_r = 0;
 
261
  __pyx_L0:;
 
262
  Py_DECREF(__pyx_v_self);
 
263
  return __pyx_r;
 
264
}
 
265
 
 
266
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_7st_mode___get__(PyObject *__pyx_v_self); /*proto*/
 
267
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_7st_mode___get__(PyObject *__pyx_v_self) {
 
268
  PyObject *__pyx_r;
 
269
  PyObject *__pyx_1 = 0;
 
270
  Py_INCREF(__pyx_v_self);
 
271
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_mode); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; goto __pyx_L1;}
 
272
  __pyx_r = __pyx_1;
 
273
  __pyx_1 = 0;
 
274
  goto __pyx_L0;
 
275
 
 
276
  __pyx_r = Py_None; Py_INCREF(Py_None);
 
277
  goto __pyx_L0;
 
278
  __pyx_L1:;
 
279
  Py_XDECREF(__pyx_1);
 
280
  __Pyx_AddTraceback("bzrlib._readdir_pyx._Stat.st_mode.__get__");
 
281
  __pyx_r = 0;
 
282
  __pyx_L0:;
 
283
  Py_DECREF(__pyx_v_self);
 
284
  return __pyx_r;
 
285
}
 
286
 
 
287
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_8st_ctime___get__(PyObject *__pyx_v_self); /*proto*/
 
288
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_8st_ctime___get__(PyObject *__pyx_v_self) {
 
289
  PyObject *__pyx_r;
 
290
  PyObject *__pyx_1 = 0;
 
291
  Py_INCREF(__pyx_v_self);
 
292
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_ctime); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; goto __pyx_L1;}
 
293
  __pyx_r = __pyx_1;
 
294
  __pyx_1 = 0;
 
295
  goto __pyx_L0;
 
296
 
 
297
  __pyx_r = Py_None; Py_INCREF(Py_None);
 
298
  goto __pyx_L0;
 
299
  __pyx_L1:;
 
300
  Py_XDECREF(__pyx_1);
 
301
  __Pyx_AddTraceback("bzrlib._readdir_pyx._Stat.st_ctime.__get__");
 
302
  __pyx_r = 0;
 
303
  __pyx_L0:;
 
304
  Py_DECREF(__pyx_v_self);
 
305
  return __pyx_r;
 
306
}
 
307
 
 
308
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_8st_mtime___get__(PyObject *__pyx_v_self); /*proto*/
 
309
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_8st_mtime___get__(PyObject *__pyx_v_self) {
 
310
  PyObject *__pyx_r;
 
311
  PyObject *__pyx_1 = 0;
 
312
  Py_INCREF(__pyx_v_self);
 
313
  __pyx_1 = PyInt_FromLong(((struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_mtime); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; goto __pyx_L1;}
 
314
  __pyx_r = __pyx_1;
 
315
  __pyx_1 = 0;
 
316
  goto __pyx_L0;
 
317
 
 
318
  __pyx_r = Py_None; Py_INCREF(Py_None);
 
319
  goto __pyx_L0;
 
320
  __pyx_L1:;
 
321
  Py_XDECREF(__pyx_1);
 
322
  __Pyx_AddTraceback("bzrlib._readdir_pyx._Stat.st_mtime.__get__");
 
323
  __pyx_r = 0;
 
324
  __pyx_L0:;
 
325
  Py_DECREF(__pyx_v_self);
 
326
  return __pyx_r;
 
327
}
 
328
 
 
329
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_7st_size___get__(PyObject *__pyx_v_self); /*proto*/
 
330
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat_7st_size___get__(PyObject *__pyx_v_self) {
 
331
  PyObject *__pyx_r;
 
332
  PyObject *__pyx_1 = 0;
 
333
  Py_INCREF(__pyx_v_self);
 
334
  __pyx_1 = PyLong_FromUnsignedLongLong(((struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *)__pyx_v_self)->_st.st_size); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; goto __pyx_L1;}
 
335
  __pyx_r = __pyx_1;
 
336
  __pyx_1 = 0;
 
337
  goto __pyx_L0;
 
338
 
 
339
  __pyx_r = Py_None; Py_INCREF(Py_None);
 
340
  goto __pyx_L0;
 
341
  __pyx_L1:;
 
342
  Py_XDECREF(__pyx_1);
 
343
  __Pyx_AddTraceback("bzrlib._readdir_pyx._Stat.st_size.__get__");
 
344
  __pyx_r = 0;
 
345
  __pyx_L0:;
 
346
  Py_DECREF(__pyx_v_self);
 
347
  return __pyx_r;
 
348
}
 
349
 
 
350
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat___repr__(PyObject *__pyx_v_self); /*proto*/
 
351
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_5_Stat___repr__(PyObject *__pyx_v_self) {
264
352
  PyObject *__pyx_r;
265
353
  PyObject *__pyx_1 = 0;
266
354
  PyObject *__pyx_2 = 0;
322
410
  Py_XDECREF(__pyx_8);
323
411
  Py_XDECREF(__pyx_9);
324
412
  Py_XDECREF(__pyx_10);
325
 
  __Pyx_AddTraceback("_readdir_pyx._Stat.__repr__");
 
413
  __Pyx_AddTraceback("bzrlib._readdir_pyx._Stat.__repr__");
326
414
  __pyx_r = 0;
327
415
  __pyx_L0:;
328
416
  Py_DECREF(__pyx_v_self);
329
417
  return __pyx_r;
330
418
}
331
419
 
332
 
static PyObject *__pyx_n_safe_utf8;
333
 
 
334
 
static int __pyx_f_12_readdir_pyx_13UTF8DirReader___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
335
 
static int __pyx_f_12_readdir_pyx_13UTF8DirReader___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
 
420
static int __pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
 
421
static int __pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
336
422
  int __pyx_r;
337
423
  PyObject *__pyx_1 = 0;
338
424
  PyObject *__pyx_2 = 0;
340
426
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "", __pyx_argnames)) return -1;
341
427
  Py_INCREF(__pyx_v_self);
342
428
 
343
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":172 */
 
429
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":172 */
344
430
  __pyx_1 = __Pyx_GetName(__pyx_m, __pyx_n_osutils); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; goto __pyx_L1;}
345
431
  __pyx_2 = PyObject_GetAttr(__pyx_1, __pyx_n_safe_utf8); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; goto __pyx_L1;}
346
432
  Py_DECREF(__pyx_1); __pyx_1 = 0;
347
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_safe_utf8);
348
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_safe_utf8 = __pyx_2;
 
433
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_safe_utf8);
 
434
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_safe_utf8 = __pyx_2;
349
435
  __pyx_2 = 0;
350
436
 
351
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":173 */
 
437
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":173 */
352
438
  __pyx_1 = __Pyx_GetName(__pyx_m, __pyx_n__directory); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; goto __pyx_L1;}
353
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_directory);
354
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_directory = __pyx_1;
 
439
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_directory);
 
440
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_directory = __pyx_1;
355
441
  __pyx_1 = 0;
356
442
 
357
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":174 */
 
443
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":174 */
358
444
  __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n__chardev); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; goto __pyx_L1;}
359
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_chardev);
360
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_chardev = __pyx_2;
 
445
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_chardev);
 
446
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_chardev = __pyx_2;
361
447
  __pyx_2 = 0;
362
448
 
363
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":175 */
 
449
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":175 */
364
450
  __pyx_1 = __Pyx_GetName(__pyx_m, __pyx_n__block); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; goto __pyx_L1;}
365
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_block);
366
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_block = __pyx_1;
 
451
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_block);
 
452
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_block = __pyx_1;
367
453
  __pyx_1 = 0;
368
454
 
369
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":176 */
 
455
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":176 */
370
456
  __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n__file); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; goto __pyx_L1;}
371
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_file);
372
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_file = __pyx_2;
 
457
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_file);
 
458
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_file = __pyx_2;
373
459
  __pyx_2 = 0;
374
460
 
375
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":177 */
 
461
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":177 */
376
462
  __pyx_1 = __Pyx_GetName(__pyx_m, __pyx_n__fifo); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; goto __pyx_L1;}
377
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_fifo);
378
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_fifo = __pyx_1;
 
463
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_fifo);
 
464
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_fifo = __pyx_1;
379
465
  __pyx_1 = 0;
380
466
 
381
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":178 */
 
467
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":178 */
382
468
  __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n__symlink); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; goto __pyx_L1;}
383
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_symlink);
384
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_symlink = __pyx_2;
 
469
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_symlink);
 
470
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_symlink = __pyx_2;
385
471
  __pyx_2 = 0;
386
472
 
387
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":179 */
 
473
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":179 */
388
474
  __pyx_1 = __Pyx_GetName(__pyx_m, __pyx_n__socket); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; goto __pyx_L1;}
389
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_socket);
390
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_socket = __pyx_1;
 
475
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_socket);
 
476
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_socket = __pyx_1;
391
477
  __pyx_1 = 0;
392
478
 
393
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":180 */
 
479
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":180 */
394
480
  __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n__unknown); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; goto __pyx_L1;}
395
 
  Py_DECREF(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_unknown);
396
 
  ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_unknown = __pyx_2;
 
481
  Py_DECREF(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_unknown);
 
482
  ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_unknown = __pyx_2;
397
483
  __pyx_2 = 0;
398
484
 
399
485
  __pyx_r = 0;
401
487
  __pyx_L1:;
402
488
  Py_XDECREF(__pyx_1);
403
489
  Py_XDECREF(__pyx_2);
404
 
  __Pyx_AddTraceback("_readdir_pyx.UTF8DirReader.__init__");
 
490
  __Pyx_AddTraceback("bzrlib._readdir_pyx.UTF8DirReader.__init__");
405
491
  __pyx_r = -1;
406
492
  __pyx_L0:;
407
493
  Py_DECREF(__pyx_v_self);
408
494
  return __pyx_r;
409
495
}
410
496
 
411
 
static PyObject *__pyx_f_12_readdir_pyx_13UTF8DirReader_kind_from_mode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
412
 
static char __pyx_doc_12_readdir_pyx_13UTF8DirReader_kind_from_mode[] = "Get the kind of a path from a mode status.";
413
 
static PyObject *__pyx_f_12_readdir_pyx_13UTF8DirReader_kind_from_mode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
 
497
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_kind_from_mode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
 
498
static char __pyx_doc_6bzrlib_12_readdir_pyx_13UTF8DirReader_kind_from_mode[] = "Get the kind of a path from a mode status.";
 
499
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_kind_from_mode(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
414
500
  int __pyx_v_mode;
415
501
  PyObject *__pyx_r;
416
502
  PyObject *__pyx_1 = 0;
417
503
  static char *__pyx_argnames[] = {"mode",0};
418
504
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "i", __pyx_argnames, &__pyx_v_mode)) return 0;
419
505
  Py_INCREF(__pyx_v_self);
420
 
  __pyx_1 = ((struct __pyx_vtabstruct_12_readdir_pyx_UTF8DirReader *)((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->__pyx_vtab)->_kind_from_mode(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self),__pyx_v_mode); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; goto __pyx_L1;}
 
506
  __pyx_1 = ((struct __pyx_vtabstruct_6bzrlib_12_readdir_pyx_UTF8DirReader *)((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->__pyx_vtab)->_kind_from_mode(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self),__pyx_v_mode); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; goto __pyx_L1;}
421
507
  __pyx_r = __pyx_1;
422
508
  __pyx_1 = 0;
423
509
  goto __pyx_L0;
426
512
  goto __pyx_L0;
427
513
  __pyx_L1:;
428
514
  Py_XDECREF(__pyx_1);
429
 
  __Pyx_AddTraceback("_readdir_pyx.UTF8DirReader.kind_from_mode");
 
515
  __Pyx_AddTraceback("bzrlib._readdir_pyx.UTF8DirReader.kind_from_mode");
430
516
  __pyx_r = 0;
431
517
  __pyx_L0:;
432
518
  Py_DECREF(__pyx_v_self);
433
519
  return __pyx_r;
434
520
}
435
521
 
436
 
static PyObject *__pyx_f_12_readdir_pyx_13UTF8DirReader__kind_from_mode(struct __pyx_obj_12_readdir_pyx_UTF8DirReader *__pyx_v_self,int __pyx_v_mode) {
 
522
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader__kind_from_mode(struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *__pyx_v_self,int __pyx_v_mode) {
437
523
  PyObject *__pyx_r;
438
524
  int __pyx_1;
439
525
  Py_INCREF(__pyx_v_self);
440
526
 
441
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":188 */
 
527
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":188 */
442
528
  __pyx_1 = S_ISREG(__pyx_v_mode);
443
529
  if (__pyx_1) {
444
530
    Py_INCREF(__pyx_v_self->_file);
448
534
  }
449
535
  __pyx_L2:;
450
536
 
451
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":190 */
 
537
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":190 */
452
538
  __pyx_1 = S_ISDIR(__pyx_v_mode);
453
539
  if (__pyx_1) {
454
540
    Py_INCREF(__pyx_v_self->_directory);
458
544
  }
459
545
  __pyx_L3:;
460
546
 
461
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":192 */
 
547
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":192 */
462
548
  __pyx_1 = S_ISCHR(__pyx_v_mode);
463
549
  if (__pyx_1) {
464
550
    Py_INCREF(__pyx_v_self->_chardev);
468
554
  }
469
555
  __pyx_L4:;
470
556
 
471
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":194 */
 
557
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":194 */
472
558
  __pyx_1 = S_ISBLK(__pyx_v_mode);
473
559
  if (__pyx_1) {
474
560
    Py_INCREF(__pyx_v_self->_block);
478
564
  }
479
565
  __pyx_L5:;
480
566
 
481
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":196 */
 
567
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":196 */
482
568
  __pyx_1 = S_ISLNK(__pyx_v_mode);
483
569
  if (__pyx_1) {
484
570
    Py_INCREF(__pyx_v_self->_symlink);
488
574
  }
489
575
  __pyx_L6:;
490
576
 
491
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":198 */
 
577
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":198 */
492
578
  __pyx_1 = S_ISFIFO(__pyx_v_mode);
493
579
  if (__pyx_1) {
494
580
    Py_INCREF(__pyx_v_self->_fifo);
498
584
  }
499
585
  __pyx_L7:;
500
586
 
501
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":200 */
 
587
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":200 */
502
588
  __pyx_1 = S_ISSOCK(__pyx_v_mode);
503
589
  if (__pyx_1) {
504
590
    Py_INCREF(__pyx_v_self->_socket);
508
594
  }
509
595
  __pyx_L8:;
510
596
 
511
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":202 */
 
597
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":202 */
512
598
  Py_INCREF(__pyx_v_self->_unknown);
513
599
  __pyx_r = __pyx_v_self->_unknown;
514
600
  goto __pyx_L0;
519
605
  return __pyx_r;
520
606
}
521
607
 
522
 
static PyObject *__pyx_f_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
523
 
static char __pyx_doc_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir[] = "See DirReader.top_prefix_to_starting_dir.";
524
 
static PyObject *__pyx_f_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
 
608
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
 
609
static char __pyx_doc_6bzrlib_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir[] = "See DirReader.top_prefix_to_starting_dir.";
 
610
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
525
611
  PyObject *__pyx_v_top = 0;
526
612
  PyObject *__pyx_v_prefix = 0;
527
613
  PyObject *__pyx_r;
529
615
  PyObject *__pyx_2 = 0;
530
616
  PyObject *__pyx_3 = 0;
531
617
  static char *__pyx_argnames[] = {"top","prefix",0};
532
 
  __pyx_v_prefix = __pyx_k15;
 
618
  __pyx_v_prefix = __pyx_d1;
533
619
  if (!PyArg_ParseTupleAndKeywords(__pyx_args, __pyx_kwds, "O|O", __pyx_argnames, &__pyx_v_top, &__pyx_v_prefix)) return 0;
534
620
  Py_INCREF(__pyx_v_self);
535
621
  Py_INCREF(__pyx_v_top);
537
623
  __pyx_1 = PyTuple_New(1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; goto __pyx_L1;}
538
624
  Py_INCREF(__pyx_v_prefix);
539
625
  PyTuple_SET_ITEM(__pyx_1, 0, __pyx_v_prefix);
540
 
  __pyx_2 = PyObject_CallObject(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_safe_utf8, __pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; goto __pyx_L1;}
 
626
  __pyx_2 = PyObject_CallObject(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_safe_utf8, __pyx_1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; goto __pyx_L1;}
541
627
  Py_DECREF(__pyx_1); __pyx_1 = 0;
542
628
  __pyx_1 = PyTuple_New(1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; goto __pyx_L1;}
543
629
  Py_INCREF(__pyx_v_top);
544
630
  PyTuple_SET_ITEM(__pyx_1, 0, __pyx_v_top);
545
 
  __pyx_3 = PyObject_CallObject(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_safe_utf8, __pyx_1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; goto __pyx_L1;}
 
631
  __pyx_3 = PyObject_CallObject(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->_safe_utf8, __pyx_1); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; goto __pyx_L1;}
546
632
  Py_DECREF(__pyx_1); __pyx_1 = 0;
547
633
  __pyx_1 = PyTuple_New(5); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; goto __pyx_L1;}
548
634
  PyTuple_SET_ITEM(__pyx_1, 0, __pyx_2);
565
651
  Py_XDECREF(__pyx_1);
566
652
  Py_XDECREF(__pyx_2);
567
653
  Py_XDECREF(__pyx_3);
568
 
  __Pyx_AddTraceback("_readdir_pyx.UTF8DirReader.top_prefix_to_starting_dir");
 
654
  __Pyx_AddTraceback("bzrlib._readdir_pyx.UTF8DirReader.top_prefix_to_starting_dir");
569
655
  __pyx_r = 0;
570
656
  __pyx_L0:;
571
657
  Py_DECREF(__pyx_v_self);
574
660
  return __pyx_r;
575
661
}
576
662
 
577
 
static PyObject *__pyx_k16p;
578
 
static PyObject *__pyx_k17p;
579
 
static PyObject *__pyx_k18p;
580
 
static PyObject *__pyx_k19p;
581
 
static PyObject *__pyx_k20p;
582
 
 
583
 
static char __pyx_k16[] = "/";
584
 
static char __pyx_k17[] = "";
585
 
static char __pyx_k18[] = "/";
586
 
static char __pyx_k19[] = "failed to strcat";
587
 
static char __pyx_k20[] = "failed to strcat";
588
 
 
589
 
static PyObject *__pyx_f_12_readdir_pyx_13UTF8DirReader_read_dir(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
590
 
static char __pyx_doc_12_readdir_pyx_13UTF8DirReader_read_dir[] = "Read a single directory from a utf8 file system.\n\n        All paths in and out are utf8.\n\n        This sub-function is called when we know the filesystem is already in utf8\n        encoding. So we don\'t need to transcode filenames.\n\n        See DirReader.read_dir for details.\n        ";
591
 
static PyObject *__pyx_f_12_readdir_pyx_13UTF8DirReader_read_dir(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
 
663
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_read_dir(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
 
664
static char __pyx_doc_6bzrlib_12_readdir_pyx_13UTF8DirReader_read_dir[] = "Read a single directory from a utf8 file system.\n\n        All paths in and out are utf8.\n\n        This sub-function is called when we know the filesystem is already in utf8\n        encoding. So we don\'t need to transcode filenames.\n\n        See DirReader.read_dir for details.\n        ";
 
665
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_read_dir(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
592
666
  PyObject *__pyx_v_prefix = 0;
593
667
  PyObject *__pyx_v_top = 0;
594
668
  PyObject *__pyx_v_newval;
616
690
  __pyx_v_top_slash = Py_None; Py_INCREF(Py_None);
617
691
  __pyx_v_result = Py_None; Py_INCREF(Py_None);
618
692
 
619
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":229 */
 
693
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":229 */
620
694
  __pyx_1 = PyString_Size(__pyx_v_prefix);
621
695
  if (__pyx_1) {
622
 
    __pyx_2 = PyNumber_Add(__pyx_v_prefix, __pyx_k16p); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; goto __pyx_L1;}
 
696
    __pyx_2 = PyNumber_Add(__pyx_v_prefix, __pyx_k15p); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; goto __pyx_L1;}
623
697
    Py_DECREF(__pyx_v_relprefix);
624
698
    __pyx_v_relprefix = __pyx_2;
625
699
    __pyx_2 = 0;
626
700
    goto __pyx_L2;
627
701
  }
628
702
  /*else*/ {
629
 
    Py_INCREF(__pyx_k17p);
 
703
    Py_INCREF(__pyx_k16p);
630
704
    Py_DECREF(__pyx_v_relprefix);
631
 
    __pyx_v_relprefix = __pyx_k17p;
 
705
    __pyx_v_relprefix = __pyx_k16p;
632
706
  }
633
707
  __pyx_L2:;
634
708
 
635
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":233 */
636
 
  __pyx_2 = PyNumber_Add(__pyx_v_top, __pyx_k18p); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; goto __pyx_L1;}
 
709
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":233 */
 
710
  __pyx_2 = PyNumber_Add(__pyx_v_top, __pyx_k15p); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; goto __pyx_L1;}
637
711
  Py_DECREF(__pyx_v_top_slash);
638
712
  __pyx_v_top_slash = __pyx_2;
639
713
  __pyx_2 = 0;
640
714
 
641
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":237 */
642
 
  __pyx_2 = __pyx_f_12_readdir_pyx__read_dir(__pyx_v_top); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; goto __pyx_L1;}
 
715
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":237 */
 
716
  __pyx_2 = __pyx_f_6bzrlib_12_readdir_pyx__read_dir(__pyx_v_top); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; goto __pyx_L1;}
643
717
  Py_DECREF(__pyx_v_result);
644
718
  __pyx_v_result = __pyx_2;
645
719
  __pyx_2 = 0;
646
720
 
647
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":238 */
 
721
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":238 */
648
722
  __pyx_1 = PyObject_Length(__pyx_v_result); if (__pyx_1 == -1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; goto __pyx_L1;}
649
723
  __pyx_v_length = __pyx_1;
650
724
 
651
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":240 */
 
725
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":240 */
652
726
  for (__pyx_v_index = 0; __pyx_v_index < __pyx_v_length; ++__pyx_v_index) {
653
727
 
654
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":241 */
 
728
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":241 */
655
729
    __pyx_v_atuple = PyList_GET_ITEM(__pyx_v_result,__pyx_v_index);
656
730
 
657
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":242 */
658
 
    __pyx_2 = (PyObject *)PyTuple_GET_ITEM(__pyx_v_atuple,1);
659
 
    Py_INCREF(__pyx_2);
 
731
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":242 */
 
732
    Py_INCREF(((PyObject *)PyTuple_GET_ITEM(__pyx_v_atuple,1)));
660
733
    Py_DECREF(__pyx_v_name);
661
 
    __pyx_v_name = __pyx_2;
662
 
    __pyx_2 = 0;
 
734
    __pyx_v_name = ((PyObject *)PyTuple_GET_ITEM(__pyx_v_atuple,1));
663
735
 
664
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":247 */
 
736
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":247 */
665
737
    __pyx_v_new_val_obj = ((PyObject *)__pyx_v_relprefix);
666
738
 
667
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":248 */
 
739
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":248 */
668
740
    Py_INCREF(__pyx_v_relprefix);
669
741
 
670
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":249 */
 
742
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":249 */
671
743
    PyString_Concat((&__pyx_v_new_val_obj),__pyx_v_name);
672
744
 
673
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":250 */
 
745
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":250 */
674
746
    __pyx_3 = (NULL == __pyx_v_new_val_obj);
675
747
    if (__pyx_3) {
676
748
      __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; goto __pyx_L1;}
677
 
      Py_INCREF(__pyx_k19p);
678
 
      PyTuple_SET_ITEM(__pyx_2, 0, __pyx_k19p);
 
749
      Py_INCREF(__pyx_k17p);
 
750
      PyTuple_SET_ITEM(__pyx_2, 0, __pyx_k17p);
679
751
      __pyx_4 = PyObject_CallObject(PyExc_Exception, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; goto __pyx_L1;}
680
752
      Py_DECREF(__pyx_2); __pyx_2 = 0;
681
753
      __Pyx_Raise(__pyx_4, 0, 0);
685
757
    }
686
758
    __pyx_L5:;
687
759
 
688
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":254 */
 
760
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":254 */
689
761
    __pyx_3 = PyTuple_SetItem(__pyx_v_atuple,0,__pyx_v_new_val_obj); if (__pyx_3 == (-1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 254; goto __pyx_L1;}
690
762
 
691
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":256 */
692
 
    __pyx_2 = (PyObject *)PyTuple_GET_ITEM(__pyx_v_atuple,3);
693
 
    Py_INCREF(__pyx_2);
694
 
    __pyx_4 = PyObject_GetAttr(__pyx_2, __pyx_n_st_mode); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; goto __pyx_L1;}
 
763
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":256 */
 
764
    __pyx_2 = PyObject_GetAttr(((PyObject *)PyTuple_GET_ITEM(__pyx_v_atuple,3)), __pyx_n_st_mode); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; goto __pyx_L1;}
 
765
    __pyx_3 = PyInt_AsLong(__pyx_2); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; goto __pyx_L1;}
695
766
    Py_DECREF(__pyx_2); __pyx_2 = 0;
696
 
    __pyx_3 = PyInt_AsLong(__pyx_4); if (PyErr_Occurred()) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; goto __pyx_L1;}
697
 
    Py_DECREF(__pyx_4); __pyx_4 = 0;
698
 
    __pyx_2 = ((struct __pyx_vtabstruct_12_readdir_pyx_UTF8DirReader *)((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->__pyx_vtab)->_kind_from_mode(((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)__pyx_v_self),__pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; goto __pyx_L1;}
 
767
    __pyx_4 = ((struct __pyx_vtabstruct_6bzrlib_12_readdir_pyx_UTF8DirReader *)((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self)->__pyx_vtab)->_kind_from_mode(((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)__pyx_v_self),__pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; goto __pyx_L1;}
699
768
    Py_DECREF(__pyx_v_newval);
700
 
    __pyx_v_newval = __pyx_2;
701
 
    __pyx_2 = 0;
 
769
    __pyx_v_newval = __pyx_4;
 
770
    __pyx_4 = 0;
702
771
 
703
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":258 */
 
772
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":258 */
704
773
    Py_INCREF(__pyx_v_newval);
705
774
 
706
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":259 */
 
775
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":259 */
707
776
    __pyx_3 = PyTuple_SetItem(__pyx_v_atuple,2,__pyx_v_newval); if (__pyx_3 == (-1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; goto __pyx_L1;}
708
777
 
709
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":263 */
 
778
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":263 */
710
779
    __pyx_v_new_val_obj = ((PyObject *)__pyx_v_top_slash);
711
780
 
712
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":264 */
 
781
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":264 */
713
782
    Py_INCREF(__pyx_v_top_slash);
714
783
 
715
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":265 */
 
784
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":265 */
716
785
    PyString_Concat((&__pyx_v_new_val_obj),__pyx_v_name);
717
786
 
718
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":266 */
 
787
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":266 */
719
788
    __pyx_3 = (NULL == __pyx_v_new_val_obj);
720
789
    if (__pyx_3) {
721
 
      __pyx_4 = PyTuple_New(1); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; goto __pyx_L1;}
722
 
      Py_INCREF(__pyx_k20p);
723
 
      PyTuple_SET_ITEM(__pyx_4, 0, __pyx_k20p);
724
 
      __pyx_2 = PyObject_CallObject(PyExc_Exception, __pyx_4); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; goto __pyx_L1;}
 
790
      __pyx_2 = PyTuple_New(1); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; goto __pyx_L1;}
 
791
      Py_INCREF(__pyx_k17p);
 
792
      PyTuple_SET_ITEM(__pyx_2, 0, __pyx_k17p);
 
793
      __pyx_4 = PyObject_CallObject(PyExc_Exception, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; goto __pyx_L1;}
 
794
      Py_DECREF(__pyx_2); __pyx_2 = 0;
 
795
      __Pyx_Raise(__pyx_4, 0, 0);
725
796
      Py_DECREF(__pyx_4); __pyx_4 = 0;
726
 
      __Pyx_Raise(__pyx_2, 0, 0);
727
 
      Py_DECREF(__pyx_2); __pyx_2 = 0;
728
797
      {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; goto __pyx_L1;}
729
798
      goto __pyx_L6;
730
799
    }
731
800
    __pyx_L6:;
732
801
 
733
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":270 */
 
802
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":270 */
734
803
    __pyx_3 = PyTuple_SetItem(__pyx_v_atuple,4,__pyx_v_new_val_obj); if (__pyx_3 == (-1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; goto __pyx_L1;}
735
804
  }
736
805
 
737
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":271 */
 
806
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":271 */
738
807
  Py_INCREF(__pyx_v_result);
739
808
  __pyx_r = __pyx_v_result;
740
809
  goto __pyx_L0;
744
813
  __pyx_L1:;
745
814
  Py_XDECREF(__pyx_2);
746
815
  Py_XDECREF(__pyx_4);
747
 
  __Pyx_AddTraceback("_readdir_pyx.UTF8DirReader.read_dir");
 
816
  __Pyx_AddTraceback("bzrlib._readdir_pyx.UTF8DirReader.read_dir");
748
817
  __pyx_r = 0;
749
818
  __pyx_L0:;
750
819
  Py_DECREF(__pyx_v_newval);
758
827
  return __pyx_r;
759
828
}
760
829
 
761
 
static PyObject *__pyx_k21p;
762
 
static PyObject *__pyx_k22p;
763
 
static PyObject *__pyx_k24p;
764
 
static PyObject *__pyx_k25p;
765
 
static PyObject *__pyx_k26p;
766
 
static PyObject *__pyx_k28p;
767
 
static PyObject *__pyx_k29p;
768
 
static PyObject *__pyx_k30p;
769
 
static PyObject *__pyx_k31p;
770
 
static PyObject *__pyx_k32p;
771
 
static PyObject *__pyx_k33p;
772
 
 
773
 
static char __pyx_k21[] = "";
774
 
static char __pyx_k22[] = ".";
775
 
static char __pyx_k23[] = ".";
776
 
static char __pyx_k24[] = "open: ";
777
 
static char __pyx_k25[] = ".";
778
 
static char __pyx_k26[] = "chdir: ";
779
 
static char __pyx_k27[] = ".";
780
 
static char __pyx_k28[] = "opendir: ";
781
 
static char __pyx_k29[] = "readdir: ";
782
 
static char __pyx_k30[] = "lstat: ";
783
 
static char __pyx_k31[] = "/";
784
 
static char __pyx_k32[] = "closedir: ";
785
 
static char __pyx_k33[] = "return to orig_dir: ";
786
 
 
787
 
static PyObject *__pyx_f_12_readdir_pyx__read_dir(PyObject *__pyx_v_path) {
 
830
static PyObject *__pyx_f_6bzrlib_12_readdir_pyx__read_dir(PyObject *__pyx_v_path) {
788
831
  DIR *__pyx_v_the_dir;
789
832
  dirent *__pyx_v_entry;
790
833
  dirent __pyx_v_sentinel;
791
834
  char *__pyx_v_name;
792
835
  int __pyx_v_stat_result;
793
 
  struct __pyx_obj_12_readdir_pyx__Stat *__pyx_v_statvalue;
 
836
  struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *__pyx_v_statvalue;
794
837
  int __pyx_v_orig_dir_fd;
795
838
  PyObject *__pyx_v_result;
796
 
  PyObject *__pyx_v_kind;
797
839
  PyObject *__pyx_v_failed;
798
840
  PyObject *__pyx_r;
799
841
  int __pyx_1;
805
847
  PyObject *__pyx_7 = 0;
806
848
  PyObject *__pyx_8 = 0;
807
849
  Py_INCREF(__pyx_v_path);
808
 
  __pyx_v_statvalue = ((struct __pyx_obj_12_readdir_pyx__Stat *)Py_None); Py_INCREF(Py_None);
 
850
  __pyx_v_statvalue = ((struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *)Py_None); Py_INCREF(Py_None);
809
851
  __pyx_v_result = Py_None; Py_INCREF(Py_None);
810
 
  __pyx_v_kind = Py_None; Py_INCREF(Py_None);
811
852
  __pyx_v_failed = Py_None; Py_INCREF(Py_None);
812
853
 
813
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":295 */
814
 
  if (PyObject_Cmp(__pyx_v_path, __pyx_k21p, &__pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; goto __pyx_L1;}
 
854
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":295 */
 
855
  if (PyObject_Cmp(__pyx_v_path, __pyx_k16p, &__pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; goto __pyx_L1;}
815
856
  __pyx_1 = __pyx_1 != 0;
816
857
  if (__pyx_1) {
817
 
    if (PyObject_Cmp(__pyx_v_path, __pyx_k22p, &__pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; goto __pyx_L1;}
 
858
    if (PyObject_Cmp(__pyx_v_path, __pyx_k18p, &__pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; goto __pyx_L1;}
818
859
    __pyx_1 = __pyx_1 != 0;
819
860
  }
820
861
  if (__pyx_1) {
821
862
 
822
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":299 */
823
 
    __pyx_v_orig_dir_fd = open(__pyx_k23,O_RDONLY,0);
 
863
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":299 */
 
864
    __pyx_v_orig_dir_fd = open(__pyx_k18,O_RDONLY,0);
824
865
 
825
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":300 */
 
866
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":300 */
826
867
    __pyx_1 = (__pyx_v_orig_dir_fd == (-1));
827
868
    if (__pyx_1) {
828
869
      __pyx_2 = PyInt_FromLong(errno); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; goto __pyx_L1;}
829
870
      __pyx_3 = PyString_FromString(strerror(errno)); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; goto __pyx_L1;}
830
 
      __pyx_4 = PyNumber_Add(__pyx_k24p, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; goto __pyx_L1;}
 
871
      __pyx_4 = PyNumber_Add(__pyx_k19p, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; goto __pyx_L1;}
831
872
      Py_DECREF(__pyx_3); __pyx_3 = 0;
832
873
      __pyx_3 = PyTuple_New(3); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; goto __pyx_L1;}
833
874
      PyTuple_SET_ITEM(__pyx_3, 0, __pyx_2);
834
875
      PyTuple_SET_ITEM(__pyx_3, 1, __pyx_4);
835
 
      Py_INCREF(__pyx_k25p);
836
 
      PyTuple_SET_ITEM(__pyx_3, 2, __pyx_k25p);
 
876
      Py_INCREF(__pyx_k18p);
 
877
      PyTuple_SET_ITEM(__pyx_3, 2, __pyx_k18p);
837
878
      __pyx_2 = 0;
838
879
      __pyx_4 = 0;
839
880
      __pyx_2 = PyObject_CallObject(PyExc_OSError, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; goto __pyx_L1;}
845
886
    }
846
887
    __pyx_L3:;
847
888
 
848
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":302 */
 
889
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":302 */
849
890
    __pyx_5 = PyString_AsString(__pyx_v_path); if (!__pyx_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; goto __pyx_L1;}
850
891
    __pyx_1 = ((-1) == chdir(__pyx_5));
851
892
    if (__pyx_1) {
852
893
      __pyx_4 = PyInt_FromLong(errno); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; goto __pyx_L1;}
853
894
      __pyx_3 = PyString_FromString(strerror(errno)); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; goto __pyx_L1;}
854
 
      __pyx_2 = PyNumber_Add(__pyx_k26p, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; goto __pyx_L1;}
 
895
      __pyx_2 = PyNumber_Add(__pyx_k20p, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; goto __pyx_L1;}
855
896
      Py_DECREF(__pyx_3); __pyx_3 = 0;
856
897
      __pyx_3 = PyTuple_New(3); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; goto __pyx_L1;}
857
898
      PyTuple_SET_ITEM(__pyx_3, 0, __pyx_4);
875
916
  }
876
917
  __pyx_L2:;
877
918
 
878
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":307 */
 
919
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":307 */
879
920
  /*try:*/ {
880
921
 
881
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":308 */
882
 
    __pyx_v_the_dir = opendir(__pyx_k27);
 
922
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":308 */
 
923
    __pyx_v_the_dir = opendir(__pyx_k18);
883
924
 
884
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":309 */
 
925
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":309 */
885
926
    __pyx_1 = (NULL == __pyx_v_the_dir);
886
927
    if (__pyx_1) {
887
928
      __pyx_2 = PyInt_FromLong(errno); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; goto __pyx_L6;}
888
929
      __pyx_3 = PyString_FromString(strerror(errno)); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; goto __pyx_L6;}
889
 
      __pyx_4 = PyNumber_Add(__pyx_k28p, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; goto __pyx_L6;}
 
930
      __pyx_4 = PyNumber_Add(__pyx_k21p, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; goto __pyx_L6;}
890
931
      Py_DECREF(__pyx_3); __pyx_3 = 0;
891
932
      __pyx_3 = PyTuple_New(3); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; goto __pyx_L6;}
892
933
      PyTuple_SET_ITEM(__pyx_3, 0, __pyx_2);
904
945
    }
905
946
    __pyx_L8:;
906
947
 
907
 
    /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":311 */
 
948
    /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":311 */
908
949
    /*try:*/ {
909
950
 
910
 
      /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":312 */
 
951
      /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":312 */
911
952
      __pyx_4 = PyList_New(0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; goto __pyx_L10;}
912
953
      Py_DECREF(__pyx_v_result);
913
954
      __pyx_v_result = __pyx_4;
914
955
      __pyx_4 = 0;
915
956
 
916
 
      /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":313 */
 
957
      /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":313 */
917
958
      __pyx_v_entry = (&__pyx_v_sentinel);
918
959
 
919
 
      /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":314 */
 
960
      /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":314 */
920
961
      while (1) {
921
962
        __pyx_1 = (__pyx_v_entry != NULL);
922
963
        if (!__pyx_1) break;
923
964
 
924
 
        /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":318 */
 
965
        /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":318 */
925
966
        while (1) {
926
967
          __pyx_1 = PyObject_IsTrue(Py_True); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; goto __pyx_L10;}
927
968
          if (!__pyx_1) break;
928
969
 
929
 
          /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":319 */
 
970
          /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":319 */
930
971
          errno = 0;
931
972
 
932
 
          /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":320 */
 
973
          /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":320 */
933
974
          __pyx_v_entry = readdir(__pyx_v_the_dir);
934
975
 
935
 
          /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":321 */
 
976
          /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":321 */
936
977
          __pyx_1 = (__pyx_v_entry == NULL);
937
978
          if (__pyx_1) {
938
979
            __pyx_1 = (errno == EAGAIN);
952
993
        }
953
994
        __pyx_L15:;
954
995
 
955
 
        /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":326 */
 
996
        /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":326 */
956
997
        __pyx_1 = (__pyx_v_entry == NULL);
957
998
        if (__pyx_1) {
958
999
          __pyx_1 = (errno == ENOTDIR);
966
1007
          /*else*/ {
967
1008
            __pyx_3 = PyInt_FromLong(errno); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; goto __pyx_L10;}
968
1009
            __pyx_2 = PyString_FromString(strerror(errno)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; goto __pyx_L10;}
969
 
            __pyx_4 = PyNumber_Add(__pyx_k29p, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; goto __pyx_L10;}
 
1010
            __pyx_4 = PyNumber_Add(__pyx_k22p, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; goto __pyx_L10;}
970
1011
            Py_DECREF(__pyx_2); __pyx_2 = 0;
971
1012
            __pyx_2 = PyTuple_New(3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; goto __pyx_L10;}
972
1013
            PyTuple_SET_ITEM(__pyx_2, 0, __pyx_3);
986
1027
        }
987
1028
        __pyx_L17:;
988
1029
 
989
 
        /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":334 */
 
1030
        /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":334 */
990
1031
        __pyx_v_name = __pyx_v_entry->d_name;
991
1032
 
992
 
        /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":335 */
 
1033
        /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":335 */
993
1034
        __pyx_1 = ((__pyx_v_name[0]) == '.');
994
1035
        if (__pyx_1) {
995
1036
          __pyx_1 = ((__pyx_v_name[1]) == 0);
1003
1044
        __pyx_6 = (!__pyx_1);
1004
1045
        if (__pyx_6) {
1005
1046
 
1006
 
          /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":339 */
1007
 
          __pyx_4 = PyObject_CallObject(((PyObject *)__pyx_ptype_12_readdir_pyx__Stat), 0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; goto __pyx_L10;}
 
1047
          /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":339 */
 
1048
          __pyx_4 = PyObject_CallObject(((PyObject *)__pyx_ptype_6bzrlib_12_readdir_pyx__Stat), 0); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; goto __pyx_L10;}
1008
1049
          Py_DECREF(((PyObject *)__pyx_v_statvalue));
1009
 
          __pyx_v_statvalue = ((struct __pyx_obj_12_readdir_pyx__Stat *)__pyx_4);
 
1050
          __pyx_v_statvalue = ((struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat *)__pyx_4);
1010
1051
          __pyx_4 = 0;
1011
1052
 
1012
 
          /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":340 */
 
1053
          /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":340 */
1013
1054
          __pyx_v_stat_result = lstat(__pyx_v_entry->d_name,(&__pyx_v_statvalue->_st));
1014
1055
 
1015
 
          /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":341 */
 
1056
          /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":341 */
1016
1057
          __pyx_1 = (__pyx_v_stat_result != 0);
1017
1058
          if (__pyx_1) {
1018
1059
            __pyx_6 = (errno != ENOENT);
1019
1060
            if (__pyx_6) {
1020
1061
              __pyx_2 = PyInt_FromLong(errno); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; goto __pyx_L10;}
1021
1062
              __pyx_3 = PyString_FromString(strerror(errno)); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; goto __pyx_L10;}
1022
 
              __pyx_4 = PyNumber_Add(__pyx_k30p, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; goto __pyx_L10;}
 
1063
              __pyx_4 = PyNumber_Add(__pyx_k23p, __pyx_3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; goto __pyx_L10;}
1023
1064
              Py_DECREF(__pyx_3); __pyx_3 = 0;
1024
 
              __pyx_3 = PyNumber_Add(__pyx_v_path, __pyx_k31p); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; goto __pyx_L10;}
 
1065
              __pyx_3 = PyNumber_Add(__pyx_v_path, __pyx_k15p); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; goto __pyx_L10;}
1025
1066
              __pyx_7 = PyString_FromString(__pyx_v_entry->d_name); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; goto __pyx_L10;}
1026
1067
              __pyx_8 = PyNumber_Add(__pyx_3, __pyx_7); if (!__pyx_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; goto __pyx_L10;}
1027
1068
              Py_DECREF(__pyx_3); __pyx_3 = 0;
1041
1082
              goto __pyx_L21;
1042
1083
            }
1043
1084
            /*else*/ {
1044
 
 
1045
 
              /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":346 */
1046
 
              __pyx_2 = __Pyx_GetName(__pyx_m, __pyx_n__missing); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; goto __pyx_L10;}
1047
 
              Py_DECREF(__pyx_v_kind);
1048
 
              __pyx_v_kind = __pyx_2;
1049
 
              __pyx_2 = 0;
1050
 
 
1051
 
              /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":347 */
1052
 
              Py_INCREF(Py_None);
1053
 
              Py_DECREF(((PyObject *)__pyx_v_statvalue));
1054
 
              __pyx_v_statvalue = ((struct __pyx_obj_12_readdir_pyx__Stat *)Py_None);
 
1085
              goto __pyx_L12;
1055
1086
            }
1056
1087
            __pyx_L21:;
1057
1088
            goto __pyx_L20;
1058
1089
          }
1059
1090
          __pyx_L20:;
1060
1091
 
1061
 
          /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":355 */
1062
 
          __pyx_4 = PyLong_FromUnsignedLong(__pyx_v_entry->d_ino); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L10;}
1063
 
          __pyx_8 = PyString_FromString(__pyx_v_entry->d_name); if (!__pyx_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L10;}
1064
 
          __pyx_3 = PyTuple_New(5); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L10;}
1065
 
          PyTuple_SET_ITEM(__pyx_3, 0, __pyx_4);
1066
 
          PyTuple_SET_ITEM(__pyx_3, 1, __pyx_8);
 
1092
          /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":357 */
 
1093
          __pyx_2 = PyLong_FromUnsignedLong(__pyx_v_entry->d_ino); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; goto __pyx_L10;}
 
1094
          __pyx_4 = PyString_FromString(__pyx_v_entry->d_name); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; goto __pyx_L10;}
 
1095
          __pyx_8 = PyTuple_New(5); if (!__pyx_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; goto __pyx_L10;}
 
1096
          PyTuple_SET_ITEM(__pyx_8, 0, __pyx_2);
 
1097
          PyTuple_SET_ITEM(__pyx_8, 1, __pyx_4);
1067
1098
          Py_INCREF(Py_None);
1068
 
          PyTuple_SET_ITEM(__pyx_3, 2, Py_None);
 
1099
          PyTuple_SET_ITEM(__pyx_8, 2, Py_None);
1069
1100
          Py_INCREF(((PyObject *)__pyx_v_statvalue));
1070
 
          PyTuple_SET_ITEM(__pyx_3, 3, ((PyObject *)__pyx_v_statvalue));
 
1101
          PyTuple_SET_ITEM(__pyx_8, 3, ((PyObject *)__pyx_v_statvalue));
1071
1102
          Py_INCREF(Py_None);
1072
 
          PyTuple_SET_ITEM(__pyx_3, 4, Py_None);
 
1103
          PyTuple_SET_ITEM(__pyx_8, 4, Py_None);
 
1104
          __pyx_2 = 0;
1073
1105
          __pyx_4 = 0;
1074
 
          __pyx_8 = 0;
1075
 
          __pyx_1 = PyList_Append(__pyx_v_result,__pyx_3); if (__pyx_1 == (-1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; goto __pyx_L10;}
1076
 
          Py_DECREF(__pyx_3); __pyx_3 = 0;
 
1106
          __pyx_1 = PyList_Append(__pyx_v_result,__pyx_8); if (__pyx_1 == (-1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; goto __pyx_L10;}
 
1107
          Py_DECREF(__pyx_8); __pyx_8 = 0;
1077
1108
          goto __pyx_L19;
1078
1109
        }
1079
1110
        __pyx_L19:;
1087
1118
      __pyx_why = 0; goto __pyx_L11;
1088
1119
      __pyx_L10: {
1089
1120
        __pyx_why = 4;
 
1121
        Py_XDECREF(__pyx_3); __pyx_3 = 0;
1090
1122
        Py_XDECREF(__pyx_7); __pyx_7 = 0;
1091
1123
        Py_XDECREF(__pyx_2); __pyx_2 = 0;
1092
1124
        Py_XDECREF(__pyx_4); __pyx_4 = 0;
1093
1125
        Py_XDECREF(__pyx_8); __pyx_8 = 0;
1094
 
        Py_XDECREF(__pyx_3); __pyx_3 = 0;
1095
1126
        PyErr_Fetch(&__pyx_exc_type, &__pyx_exc_value, &__pyx_exc_tb);
1096
1127
        __pyx_exc_lineno = __pyx_lineno;
1097
1128
        goto __pyx_L11;
1099
1130
      __pyx_L11:;
1100
1131
      __pyx_6 = ((-1) == closedir(__pyx_v_the_dir));
1101
1132
      if (__pyx_6) {
1102
 
        __pyx_7 = PyInt_FromLong(errno); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; goto __pyx_L22;}
1103
 
        __pyx_2 = PyString_FromString(strerror(errno)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; goto __pyx_L22;}
1104
 
        __pyx_4 = PyNumber_Add(__pyx_k32p, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; goto __pyx_L22;}
1105
 
        Py_DECREF(__pyx_2); __pyx_2 = 0;
1106
 
        __pyx_8 = PyTuple_New(3); if (!__pyx_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; goto __pyx_L22;}
1107
 
        PyTuple_SET_ITEM(__pyx_8, 0, __pyx_7);
1108
 
        PyTuple_SET_ITEM(__pyx_8, 1, __pyx_4);
 
1133
        __pyx_3 = PyInt_FromLong(errno); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; goto __pyx_L22;}
 
1134
        __pyx_7 = PyString_FromString(strerror(errno)); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; goto __pyx_L22;}
 
1135
        __pyx_2 = PyNumber_Add(__pyx_k24p, __pyx_7); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; goto __pyx_L22;}
 
1136
        Py_DECREF(__pyx_7); __pyx_7 = 0;
 
1137
        __pyx_4 = PyTuple_New(3); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; goto __pyx_L22;}
 
1138
        PyTuple_SET_ITEM(__pyx_4, 0, __pyx_3);
 
1139
        PyTuple_SET_ITEM(__pyx_4, 1, __pyx_2);
1109
1140
        Py_INCREF(__pyx_v_path);
1110
 
        PyTuple_SET_ITEM(__pyx_8, 2, __pyx_v_path);
1111
 
        __pyx_7 = 0;
1112
 
        __pyx_4 = 0;
1113
 
        __pyx_3 = PyObject_CallObject(PyExc_OSError, __pyx_8); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; goto __pyx_L22;}
 
1141
        PyTuple_SET_ITEM(__pyx_4, 2, __pyx_v_path);
 
1142
        __pyx_3 = 0;
 
1143
        __pyx_2 = 0;
 
1144
        __pyx_8 = PyObject_CallObject(PyExc_OSError, __pyx_4); if (!__pyx_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; goto __pyx_L22;}
 
1145
        Py_DECREF(__pyx_4); __pyx_4 = 0;
 
1146
        __Pyx_Raise(__pyx_8, 0, 0);
1114
1147
        Py_DECREF(__pyx_8); __pyx_8 = 0;
1115
 
        __Pyx_Raise(__pyx_3, 0, 0);
1116
 
        Py_DECREF(__pyx_3); __pyx_3 = 0;
1117
 
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; goto __pyx_L22;}
 
1148
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; goto __pyx_L22;}
1118
1149
        goto __pyx_L23;
1119
1150
      }
1120
1151
      __pyx_L23:;
1146
1177
    __pyx_why = 0; goto __pyx_L7;
1147
1178
    __pyx_L6: {
1148
1179
      __pyx_why = 4;
 
1180
      Py_XDECREF(__pyx_7); __pyx_7 = 0;
 
1181
      Py_XDECREF(__pyx_3); __pyx_3 = 0;
1149
1182
      Py_XDECREF(__pyx_2); __pyx_2 = 0;
1150
 
      Py_XDECREF(__pyx_7); __pyx_7 = 0;
1151
1183
      Py_XDECREF(__pyx_4); __pyx_4 = 0;
1152
1184
      Py_XDECREF(__pyx_8); __pyx_8 = 0;
1153
 
      Py_XDECREF(__pyx_3); __pyx_3 = 0;
1154
1185
      PyErr_Fetch(&__pyx_exc_type, &__pyx_exc_value, &__pyx_exc_tb);
1155
1186
      __pyx_exc_lineno = __pyx_lineno;
1156
1187
      goto __pyx_L7;
1159
1190
    __pyx_1 = ((-1) != __pyx_v_orig_dir_fd);
1160
1191
    if (__pyx_1) {
1161
1192
 
1162
 
      /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":362 */
 
1193
      /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":364 */
1163
1194
      Py_INCREF(Py_False);
1164
1195
      Py_DECREF(__pyx_v_failed);
1165
1196
      __pyx_v_failed = Py_False;
1166
1197
 
1167
 
      /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":363 */
 
1198
      /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":365 */
1168
1199
      __pyx_6 = ((-1) == fchdir(__pyx_v_orig_dir_fd));
1169
1200
      if (__pyx_6) {
1170
1201
        Py_INCREF(Py_True);
1174
1205
      }
1175
1206
      __pyx_L27:;
1176
1207
 
1177
 
      /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":366 */
1178
 
      __pyx_2 = PyInt_FromLong(((-1) == close(__pyx_v_orig_dir_fd))); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; goto __pyx_L25;}
1179
 
      __pyx_1 = PyObject_IsTrue(__pyx_2); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; goto __pyx_L25;}
 
1208
      /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":368 */
 
1209
      __pyx_7 = PyInt_FromLong(((-1) == close(__pyx_v_orig_dir_fd))); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; goto __pyx_L25;}
 
1210
      __pyx_1 = PyObject_IsTrue(__pyx_7); if (__pyx_1 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; goto __pyx_L25;}
1180
1211
      if (!__pyx_1) {
1181
 
        Py_DECREF(__pyx_2); __pyx_2 = 0;
1182
 
        __pyx_2 = __pyx_v_failed;
1183
 
        Py_INCREF(__pyx_2);
 
1212
        Py_DECREF(__pyx_7); __pyx_7 = 0;
 
1213
        __pyx_7 = __pyx_v_failed;
 
1214
        Py_INCREF(__pyx_7);
1184
1215
      }
1185
 
      __pyx_6 = PyObject_IsTrue(__pyx_2); if (__pyx_6 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; goto __pyx_L25;}
1186
 
      Py_DECREF(__pyx_2); __pyx_2 = 0;
 
1216
      __pyx_6 = PyObject_IsTrue(__pyx_7); if (__pyx_6 < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; goto __pyx_L25;}
 
1217
      Py_DECREF(__pyx_7); __pyx_7 = 0;
1187
1218
      if (__pyx_6) {
1188
 
        __pyx_7 = PyInt_FromLong(errno); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; goto __pyx_L25;}
1189
 
        __pyx_4 = PyString_FromString(strerror(errno)); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; goto __pyx_L25;}
1190
 
        __pyx_8 = PyNumber_Add(__pyx_k33p, __pyx_4); if (!__pyx_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; goto __pyx_L25;}
1191
 
        Py_DECREF(__pyx_4); __pyx_4 = 0;
1192
 
        __pyx_3 = PyTuple_New(2); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; goto __pyx_L25;}
1193
 
        PyTuple_SET_ITEM(__pyx_3, 0, __pyx_7);
1194
 
        PyTuple_SET_ITEM(__pyx_3, 1, __pyx_8);
1195
 
        __pyx_7 = 0;
1196
 
        __pyx_8 = 0;
1197
 
        __pyx_2 = PyObject_CallObject(PyExc_OSError, __pyx_3); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; goto __pyx_L25;}
1198
 
        Py_DECREF(__pyx_3); __pyx_3 = 0;
1199
 
        __Pyx_Raise(__pyx_2, 0, 0);
 
1219
        __pyx_3 = PyInt_FromLong(errno); if (!__pyx_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; goto __pyx_L25;}
 
1220
        __pyx_2 = PyString_FromString(strerror(errno)); if (!__pyx_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; goto __pyx_L25;}
 
1221
        __pyx_4 = PyNumber_Add(__pyx_k25p, __pyx_2); if (!__pyx_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; goto __pyx_L25;}
1200
1222
        Py_DECREF(__pyx_2); __pyx_2 = 0;
1201
 
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; goto __pyx_L25;}
 
1223
        __pyx_8 = PyTuple_New(2); if (!__pyx_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; goto __pyx_L25;}
 
1224
        PyTuple_SET_ITEM(__pyx_8, 0, __pyx_3);
 
1225
        PyTuple_SET_ITEM(__pyx_8, 1, __pyx_4);
 
1226
        __pyx_3 = 0;
 
1227
        __pyx_4 = 0;
 
1228
        __pyx_7 = PyObject_CallObject(PyExc_OSError, __pyx_8); if (!__pyx_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; goto __pyx_L25;}
 
1229
        Py_DECREF(__pyx_8); __pyx_8 = 0;
 
1230
        __Pyx_Raise(__pyx_7, 0, 0);
 
1231
        Py_DECREF(__pyx_7); __pyx_7 = 0;
 
1232
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; goto __pyx_L25;}
1202
1233
        goto __pyx_L28;
1203
1234
      }
1204
1235
      __pyx_L28:;
1226
1257
    }
1227
1258
  }
1228
1259
 
1229
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":369 */
 
1260
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":371 */
1230
1261
  Py_INCREF(__pyx_v_result);
1231
1262
  __pyx_r = __pyx_v_result;
1232
1263
  goto __pyx_L0;
1239
1270
  Py_XDECREF(__pyx_4);
1240
1271
  Py_XDECREF(__pyx_7);
1241
1272
  Py_XDECREF(__pyx_8);
1242
 
  __Pyx_AddTraceback("_readdir_pyx._read_dir");
 
1273
  __Pyx_AddTraceback("bzrlib._readdir_pyx._read_dir");
1243
1274
  __pyx_r = 0;
1244
1275
  __pyx_L0:;
1245
1276
  Py_DECREF(__pyx_v_statvalue);
1246
1277
  Py_DECREF(__pyx_v_result);
1247
 
  Py_DECREF(__pyx_v_kind);
1248
1278
  Py_DECREF(__pyx_v_failed);
1249
1279
  Py_DECREF(__pyx_v_path);
1250
1280
  return __pyx_r;
1251
1281
}
1252
1282
 
1253
 
static __Pyx_InternTabEntry __pyx_intern_tab[] = {
1254
 
  {&__pyx_n__block, "_block"},
1255
 
  {&__pyx_n__chardev, "_chardev"},
1256
 
  {&__pyx_n__directory, "_directory"},
1257
 
  {&__pyx_n__fifo, "_fifo"},
1258
 
  {&__pyx_n__file, "_file"},
1259
 
  {&__pyx_n__missing, "_missing"},
1260
 
  {&__pyx_n__socket, "_socket"},
1261
 
  {&__pyx_n__symlink, "_symlink"},
1262
 
  {&__pyx_n__unknown, "_unknown"},
1263
 
  {&__pyx_n_block, "block"},
1264
 
  {&__pyx_n_bzrlib, "bzrlib"},
1265
 
  {&__pyx_n_chardev, "chardev"},
1266
 
  {&__pyx_n_directory, "directory"},
1267
 
  {&__pyx_n_fifo, "fifo"},
1268
 
  {&__pyx_n_file, "file"},
1269
 
  {&__pyx_n_missing, "missing"},
1270
 
  {&__pyx_n_os, "os"},
1271
 
  {&__pyx_n_osutils, "osutils"},
1272
 
  {&__pyx_n_safe_utf8, "safe_utf8"},
1273
 
  {&__pyx_n_socket, "socket"},
1274
 
  {&__pyx_n_st_ctime, "st_ctime"},
1275
 
  {&__pyx_n_st_mode, "st_mode"},
1276
 
  {&__pyx_n_st_mtime, "st_mtime"},
1277
 
  {&__pyx_n_st_size, "st_size"},
1278
 
  {&__pyx_n_symlink, "symlink"},
1279
 
  {&__pyx_n_sys, "sys"},
1280
 
  {&__pyx_n_unknown, "unknown"},
1281
 
  {0, 0}
1282
 
};
1283
 
 
1284
 
static __Pyx_StringTabEntry __pyx_string_tab[] = {
1285
 
  {&__pyx_k14p, __pyx_k14, sizeof(__pyx_k14)},
1286
 
  {&__pyx_k16p, __pyx_k16, sizeof(__pyx_k16)},
1287
 
  {&__pyx_k17p, __pyx_k17, sizeof(__pyx_k17)},
1288
 
  {&__pyx_k18p, __pyx_k18, sizeof(__pyx_k18)},
1289
 
  {&__pyx_k19p, __pyx_k19, sizeof(__pyx_k19)},
1290
 
  {&__pyx_k20p, __pyx_k20, sizeof(__pyx_k20)},
1291
 
  {&__pyx_k21p, __pyx_k21, sizeof(__pyx_k21)},
1292
 
  {&__pyx_k22p, __pyx_k22, sizeof(__pyx_k22)},
1293
 
  {&__pyx_k24p, __pyx_k24, sizeof(__pyx_k24)},
1294
 
  {&__pyx_k25p, __pyx_k25, sizeof(__pyx_k25)},
1295
 
  {&__pyx_k26p, __pyx_k26, sizeof(__pyx_k26)},
1296
 
  {&__pyx_k28p, __pyx_k28, sizeof(__pyx_k28)},
1297
 
  {&__pyx_k29p, __pyx_k29, sizeof(__pyx_k29)},
1298
 
  {&__pyx_k30p, __pyx_k30, sizeof(__pyx_k30)},
1299
 
  {&__pyx_k31p, __pyx_k31, sizeof(__pyx_k31)},
1300
 
  {&__pyx_k32p, __pyx_k32, sizeof(__pyx_k32)},
1301
 
  {&__pyx_k33p, __pyx_k33, sizeof(__pyx_k33)},
1302
 
  {0, 0, 0}
1303
 
};
1304
 
 
1305
 
static PyObject *__pyx_tp_new_12_readdir_pyx__Stat(PyTypeObject *t, PyObject *a, PyObject *k) {
 
1283
static PyObject *__pyx_tp_new_6bzrlib_12_readdir_pyx__Stat(PyTypeObject *t, PyObject *a, PyObject *k) {
1306
1284
  PyObject *o = (*t->tp_alloc)(t, 0);
1307
1285
  if (!o) return 0;
1308
1286
  return o;
1309
1287
}
1310
1288
 
1311
 
static void __pyx_tp_dealloc_12_readdir_pyx__Stat(PyObject *o) {
 
1289
static void __pyx_tp_dealloc_6bzrlib_12_readdir_pyx__Stat(PyObject *o) {
1312
1290
  (*o->ob_type->tp_free)(o);
1313
1291
}
1314
1292
 
1315
 
static PyObject *__pyx_getprop_12_readdir_pyx_5_Stat_st_dev(PyObject *o, void *x) {
1316
 
  return __pyx_f_12_readdir_pyx_5_Stat_6st_dev___get__(o);
1317
 
}
1318
 
 
1319
 
static PyObject *__pyx_getprop_12_readdir_pyx_5_Stat_st_ino(PyObject *o, void *x) {
1320
 
  return __pyx_f_12_readdir_pyx_5_Stat_6st_ino___get__(o);
1321
 
}
1322
 
 
1323
 
static PyObject *__pyx_getprop_12_readdir_pyx_5_Stat_st_mode(PyObject *o, void *x) {
1324
 
  return __pyx_f_12_readdir_pyx_5_Stat_7st_mode___get__(o);
1325
 
}
1326
 
 
1327
 
static PyObject *__pyx_getprop_12_readdir_pyx_5_Stat_st_ctime(PyObject *o, void *x) {
1328
 
  return __pyx_f_12_readdir_pyx_5_Stat_8st_ctime___get__(o);
1329
 
}
1330
 
 
1331
 
static PyObject *__pyx_getprop_12_readdir_pyx_5_Stat_st_mtime(PyObject *o, void *x) {
1332
 
  return __pyx_f_12_readdir_pyx_5_Stat_8st_mtime___get__(o);
1333
 
}
1334
 
 
1335
 
static PyObject *__pyx_getprop_12_readdir_pyx_5_Stat_st_size(PyObject *o, void *x) {
1336
 
  return __pyx_f_12_readdir_pyx_5_Stat_7st_size___get__(o);
1337
 
}
1338
 
 
1339
 
static struct PyMethodDef __pyx_methods_12_readdir_pyx__Stat[] = {
 
1293
static PyObject *__pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_dev(PyObject *o, void *x) {
 
1294
  return __pyx_f_6bzrlib_12_readdir_pyx_5_Stat_6st_dev___get__(o);
 
1295
}
 
1296
 
 
1297
static PyObject *__pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_ino(PyObject *o, void *x) {
 
1298
  return __pyx_f_6bzrlib_12_readdir_pyx_5_Stat_6st_ino___get__(o);
 
1299
}
 
1300
 
 
1301
static PyObject *__pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_mode(PyObject *o, void *x) {
 
1302
  return __pyx_f_6bzrlib_12_readdir_pyx_5_Stat_7st_mode___get__(o);
 
1303
}
 
1304
 
 
1305
static PyObject *__pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_ctime(PyObject *o, void *x) {
 
1306
  return __pyx_f_6bzrlib_12_readdir_pyx_5_Stat_8st_ctime___get__(o);
 
1307
}
 
1308
 
 
1309
static PyObject *__pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_mtime(PyObject *o, void *x) {
 
1310
  return __pyx_f_6bzrlib_12_readdir_pyx_5_Stat_8st_mtime___get__(o);
 
1311
}
 
1312
 
 
1313
static PyObject *__pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_size(PyObject *o, void *x) {
 
1314
  return __pyx_f_6bzrlib_12_readdir_pyx_5_Stat_7st_size___get__(o);
 
1315
}
 
1316
 
 
1317
static struct PyMethodDef __pyx_methods_6bzrlib_12_readdir_pyx__Stat[] = {
1340
1318
  {0, 0, 0, 0}
1341
1319
};
1342
1320
 
1343
 
static struct PyGetSetDef __pyx_getsets_12_readdir_pyx__Stat[] = {
1344
 
  {"st_dev", __pyx_getprop_12_readdir_pyx_5_Stat_st_dev, 0, 0, 0},
1345
 
  {"st_ino", __pyx_getprop_12_readdir_pyx_5_Stat_st_ino, 0, 0, 0},
1346
 
  {"st_mode", __pyx_getprop_12_readdir_pyx_5_Stat_st_mode, 0, 0, 0},
1347
 
  {"st_ctime", __pyx_getprop_12_readdir_pyx_5_Stat_st_ctime, 0, 0, 0},
1348
 
  {"st_mtime", __pyx_getprop_12_readdir_pyx_5_Stat_st_mtime, 0, 0, 0},
1349
 
  {"st_size", __pyx_getprop_12_readdir_pyx_5_Stat_st_size, 0, 0, 0},
 
1321
static struct PyGetSetDef __pyx_getsets_6bzrlib_12_readdir_pyx__Stat[] = {
 
1322
  {"st_dev", __pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_dev, 0, 0, 0},
 
1323
  {"st_ino", __pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_ino, 0, 0, 0},
 
1324
  {"st_mode", __pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_mode, 0, 0, 0},
 
1325
  {"st_ctime", __pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_ctime, 0, 0, 0},
 
1326
  {"st_mtime", __pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_mtime, 0, 0, 0},
 
1327
  {"st_size", __pyx_getprop_6bzrlib_12_readdir_pyx_5_Stat_st_size, 0, 0, 0},
1350
1328
  {0, 0, 0, 0, 0}
1351
1329
};
1352
1330
 
1420
1398
  0, /*bf_getcharbuffer*/
1421
1399
};
1422
1400
 
1423
 
PyTypeObject __pyx_type_12_readdir_pyx__Stat = {
 
1401
PyTypeObject __pyx_type_6bzrlib_12_readdir_pyx__Stat = {
1424
1402
  PyObject_HEAD_INIT(0)
1425
1403
  0, /*ob_size*/
1426
 
  "_readdir_pyx._Stat", /*tp_name*/
1427
 
  sizeof(struct __pyx_obj_12_readdir_pyx__Stat), /*tp_basicsize*/
 
1404
  "bzrlib._readdir_pyx._Stat", /*tp_name*/
 
1405
  sizeof(struct __pyx_obj_6bzrlib_12_readdir_pyx__Stat), /*tp_basicsize*/
1428
1406
  0, /*tp_itemsize*/
1429
 
  __pyx_tp_dealloc_12_readdir_pyx__Stat, /*tp_dealloc*/
 
1407
  __pyx_tp_dealloc_6bzrlib_12_readdir_pyx__Stat, /*tp_dealloc*/
1430
1408
  0, /*tp_print*/
1431
1409
  0, /*tp_getattr*/
1432
1410
  0, /*tp_setattr*/
1433
1411
  0, /*tp_compare*/
1434
 
  __pyx_f_12_readdir_pyx_5_Stat___repr__, /*tp_repr*/
 
1412
  __pyx_f_6bzrlib_12_readdir_pyx_5_Stat___repr__, /*tp_repr*/
1435
1413
  &__pyx_tp_as_number__Stat, /*tp_as_number*/
1436
1414
  &__pyx_tp_as_sequence__Stat, /*tp_as_sequence*/
1437
1415
  &__pyx_tp_as_mapping__Stat, /*tp_as_mapping*/
1449
1427
  0, /*tp_weaklistoffset*/
1450
1428
  0, /*tp_iter*/
1451
1429
  0, /*tp_iternext*/
1452
 
  __pyx_methods_12_readdir_pyx__Stat, /*tp_methods*/
 
1430
  __pyx_methods_6bzrlib_12_readdir_pyx__Stat, /*tp_methods*/
1453
1431
  0, /*tp_members*/
1454
 
  __pyx_getsets_12_readdir_pyx__Stat, /*tp_getset*/
 
1432
  __pyx_getsets_6bzrlib_12_readdir_pyx__Stat, /*tp_getset*/
1455
1433
  0, /*tp_base*/
1456
1434
  0, /*tp_dict*/
1457
1435
  0, /*tp_descr_get*/
1459
1437
  0, /*tp_dictoffset*/
1460
1438
  0, /*tp_init*/
1461
1439
  0, /*tp_alloc*/
1462
 
  __pyx_tp_new_12_readdir_pyx__Stat, /*tp_new*/
 
1440
  __pyx_tp_new_6bzrlib_12_readdir_pyx__Stat, /*tp_new*/
1463
1441
  0, /*tp_free*/
1464
1442
  0, /*tp_is_gc*/
1465
1443
  0, /*tp_bases*/
1468
1446
  0, /*tp_subclasses*/
1469
1447
  0, /*tp_weaklist*/
1470
1448
};
1471
 
static struct __pyx_vtabstruct_12_readdir_pyx_UTF8DirReader __pyx_vtable_12_readdir_pyx_UTF8DirReader;
 
1449
static struct __pyx_vtabstruct_6bzrlib_12_readdir_pyx_UTF8DirReader __pyx_vtable_6bzrlib_12_readdir_pyx_UTF8DirReader;
1472
1450
 
1473
 
static PyObject *__pyx_tp_new_12_readdir_pyx_UTF8DirReader(PyTypeObject *t, PyObject *a, PyObject *k) {
1474
 
  struct __pyx_obj_12_readdir_pyx_UTF8DirReader *p;
 
1451
static PyObject *__pyx_tp_new_6bzrlib_12_readdir_pyx_UTF8DirReader(PyTypeObject *t, PyObject *a, PyObject *k) {
 
1452
  struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *p;
1475
1453
  PyObject *o = (*t->tp_alloc)(t, 0);
1476
1454
  if (!o) return 0;
1477
 
  p = ((struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)o);
1478
 
  *(struct __pyx_vtabstruct_12_readdir_pyx_UTF8DirReader **)&p->__pyx_vtab = __pyx_vtabptr_12_readdir_pyx_UTF8DirReader;
 
1455
  p = ((struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)o);
 
1456
  *(struct __pyx_vtabstruct_6bzrlib_12_readdir_pyx_UTF8DirReader **)&p->__pyx_vtab = __pyx_vtabptr_6bzrlib_12_readdir_pyx_UTF8DirReader;
1479
1457
  p->_safe_utf8 = Py_None; Py_INCREF(Py_None);
1480
1458
  p->_directory = Py_None; Py_INCREF(Py_None);
1481
1459
  p->_chardev = Py_None; Py_INCREF(Py_None);
1488
1466
  return o;
1489
1467
}
1490
1468
 
1491
 
static void __pyx_tp_dealloc_12_readdir_pyx_UTF8DirReader(PyObject *o) {
1492
 
  struct __pyx_obj_12_readdir_pyx_UTF8DirReader *p = (struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)o;
 
1469
static void __pyx_tp_dealloc_6bzrlib_12_readdir_pyx_UTF8DirReader(PyObject *o) {
 
1470
  struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *p = (struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)o;
1493
1471
  Py_XDECREF(p->_safe_utf8);
1494
1472
  Py_XDECREF(p->_directory);
1495
1473
  Py_XDECREF(p->_chardev);
1502
1480
  (*o->ob_type->tp_free)(o);
1503
1481
}
1504
1482
 
1505
 
static int __pyx_tp_traverse_12_readdir_pyx_UTF8DirReader(PyObject *o, visitproc v, void *a) {
 
1483
static int __pyx_tp_traverse_6bzrlib_12_readdir_pyx_UTF8DirReader(PyObject *o, visitproc v, void *a) {
1506
1484
  int e;
1507
 
  struct __pyx_obj_12_readdir_pyx_UTF8DirReader *p = (struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)o;
 
1485
  struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *p = (struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)o;
1508
1486
  if (p->_safe_utf8) {
1509
1487
    e = (*v)(p->_safe_utf8, a); if (e) return e;
1510
1488
  }
1535
1513
  return 0;
1536
1514
}
1537
1515
 
1538
 
static int __pyx_tp_clear_12_readdir_pyx_UTF8DirReader(PyObject *o) {
1539
 
  struct __pyx_obj_12_readdir_pyx_UTF8DirReader *p = (struct __pyx_obj_12_readdir_pyx_UTF8DirReader *)o;
 
1516
static int __pyx_tp_clear_6bzrlib_12_readdir_pyx_UTF8DirReader(PyObject *o) {
 
1517
  struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *p = (struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader *)o;
1540
1518
  PyObject *t;
1541
1519
  t = p->_safe_utf8; 
1542
1520
  p->_safe_utf8 = Py_None; Py_INCREF(Py_None);
1568
1546
  return 0;
1569
1547
}
1570
1548
 
1571
 
static struct PyMethodDef __pyx_methods_12_readdir_pyx_UTF8DirReader[] = {
1572
 
  {"kind_from_mode", (PyCFunction)__pyx_f_12_readdir_pyx_13UTF8DirReader_kind_from_mode, METH_VARARGS|METH_KEYWORDS, __pyx_doc_12_readdir_pyx_13UTF8DirReader_kind_from_mode},
1573
 
  {"top_prefix_to_starting_dir", (PyCFunction)__pyx_f_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir, METH_VARARGS|METH_KEYWORDS, __pyx_doc_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir},
1574
 
  {"read_dir", (PyCFunction)__pyx_f_12_readdir_pyx_13UTF8DirReader_read_dir, METH_VARARGS|METH_KEYWORDS, __pyx_doc_12_readdir_pyx_13UTF8DirReader_read_dir},
 
1549
static struct PyMethodDef __pyx_methods_6bzrlib_12_readdir_pyx_UTF8DirReader[] = {
 
1550
  {"kind_from_mode", (PyCFunction)__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_kind_from_mode, METH_VARARGS|METH_KEYWORDS, __pyx_doc_6bzrlib_12_readdir_pyx_13UTF8DirReader_kind_from_mode},
 
1551
  {"top_prefix_to_starting_dir", (PyCFunction)__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir, METH_VARARGS|METH_KEYWORDS, __pyx_doc_6bzrlib_12_readdir_pyx_13UTF8DirReader_top_prefix_to_starting_dir},
 
1552
  {"read_dir", (PyCFunction)__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader_read_dir, METH_VARARGS|METH_KEYWORDS, __pyx_doc_6bzrlib_12_readdir_pyx_13UTF8DirReader_read_dir},
1575
1553
  {0, 0, 0, 0}
1576
1554
};
1577
1555
 
1578
 
static struct PyMemberDef __pyx_members_12_readdir_pyx_UTF8DirReader[] = {
1579
 
  {"_safe_utf8", T_OBJECT, offsetof(struct __pyx_obj_12_readdir_pyx_UTF8DirReader, _safe_utf8), READONLY, 0},
 
1556
static struct PyMemberDef __pyx_members_6bzrlib_12_readdir_pyx_UTF8DirReader[] = {
 
1557
  {"_safe_utf8", T_OBJECT, offsetof(struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader, _safe_utf8), READONLY, 0},
1580
1558
  {0, 0, 0, 0, 0}
1581
1559
};
1582
1560
 
1650
1628
  0, /*bf_getcharbuffer*/
1651
1629
};
1652
1630
 
1653
 
PyTypeObject __pyx_type_12_readdir_pyx_UTF8DirReader = {
 
1631
PyTypeObject __pyx_type_6bzrlib_12_readdir_pyx_UTF8DirReader = {
1654
1632
  PyObject_HEAD_INIT(0)
1655
1633
  0, /*ob_size*/
1656
 
  "_readdir_pyx.UTF8DirReader", /*tp_name*/
1657
 
  sizeof(struct __pyx_obj_12_readdir_pyx_UTF8DirReader), /*tp_basicsize*/
 
1634
  "bzrlib._readdir_pyx.UTF8DirReader", /*tp_name*/
 
1635
  sizeof(struct __pyx_obj_6bzrlib_12_readdir_pyx_UTF8DirReader), /*tp_basicsize*/
1658
1636
  0, /*tp_itemsize*/
1659
 
  __pyx_tp_dealloc_12_readdir_pyx_UTF8DirReader, /*tp_dealloc*/
 
1637
  __pyx_tp_dealloc_6bzrlib_12_readdir_pyx_UTF8DirReader, /*tp_dealloc*/
1660
1638
  0, /*tp_print*/
1661
1639
  0, /*tp_getattr*/
1662
1640
  0, /*tp_setattr*/
1673
1651
  &__pyx_tp_as_buffer_UTF8DirReader, /*tp_as_buffer*/
1674
1652
  Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
1675
1653
  "A dir reader for utf8 file systems.", /*tp_doc*/
1676
 
  __pyx_tp_traverse_12_readdir_pyx_UTF8DirReader, /*tp_traverse*/
1677
 
  __pyx_tp_clear_12_readdir_pyx_UTF8DirReader, /*tp_clear*/
 
1654
  __pyx_tp_traverse_6bzrlib_12_readdir_pyx_UTF8DirReader, /*tp_traverse*/
 
1655
  __pyx_tp_clear_6bzrlib_12_readdir_pyx_UTF8DirReader, /*tp_clear*/
1678
1656
  0, /*tp_richcompare*/
1679
1657
  0, /*tp_weaklistoffset*/
1680
1658
  0, /*tp_iter*/
1681
1659
  0, /*tp_iternext*/
1682
 
  __pyx_methods_12_readdir_pyx_UTF8DirReader, /*tp_methods*/
1683
 
  __pyx_members_12_readdir_pyx_UTF8DirReader, /*tp_members*/
 
1660
  __pyx_methods_6bzrlib_12_readdir_pyx_UTF8DirReader, /*tp_methods*/
 
1661
  __pyx_members_6bzrlib_12_readdir_pyx_UTF8DirReader, /*tp_members*/
1684
1662
  0, /*tp_getset*/
1685
1663
  0, /*tp_base*/
1686
1664
  0, /*tp_dict*/
1687
1665
  0, /*tp_descr_get*/
1688
1666
  0, /*tp_descr_set*/
1689
1667
  0, /*tp_dictoffset*/
1690
 
  __pyx_f_12_readdir_pyx_13UTF8DirReader___init__, /*tp_init*/
 
1668
  __pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader___init__, /*tp_init*/
1691
1669
  0, /*tp_alloc*/
1692
 
  __pyx_tp_new_12_readdir_pyx_UTF8DirReader, /*tp_new*/
 
1670
  __pyx_tp_new_6bzrlib_12_readdir_pyx_UTF8DirReader, /*tp_new*/
1693
1671
  0, /*tp_free*/
1694
1672
  0, /*tp_is_gc*/
1695
1673
  0, /*tp_bases*/
1716
1694
  __pyx_b = PyImport_AddModule("__builtin__");
1717
1695
  if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; goto __pyx_L1;};
1718
1696
  if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; goto __pyx_L1;};
1719
 
  if (__Pyx_InternStrings(__pyx_intern_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; goto __pyx_L1;};
1720
1697
  if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; goto __pyx_L1;};
1721
 
  if (PyType_Ready(&__pyx_type_12_readdir_pyx__Stat) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; goto __pyx_L1;}
1722
 
  if (PyObject_SetAttrString(__pyx_m, "_Stat", (PyObject *)&__pyx_type_12_readdir_pyx__Stat) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; goto __pyx_L1;}
1723
 
  __pyx_ptype_12_readdir_pyx__Stat = &__pyx_type_12_readdir_pyx__Stat;
1724
 
  __pyx_vtabptr_12_readdir_pyx_UTF8DirReader = &__pyx_vtable_12_readdir_pyx_UTF8DirReader;
1725
 
  *(void(**)(void))&__pyx_vtable_12_readdir_pyx_UTF8DirReader._kind_from_mode = (void(*)(void))__pyx_f_12_readdir_pyx_13UTF8DirReader__kind_from_mode;
1726
 
  __pyx_type_12_readdir_pyx_UTF8DirReader.tp_free = _PyObject_GC_Del;
1727
 
  if (PyType_Ready(&__pyx_type_12_readdir_pyx_UTF8DirReader) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; goto __pyx_L1;}
1728
 
  if (__Pyx_SetVtable(__pyx_type_12_readdir_pyx_UTF8DirReader.tp_dict, __pyx_vtabptr_12_readdir_pyx_UTF8DirReader) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; goto __pyx_L1;}
1729
 
  if (PyObject_SetAttrString(__pyx_m, "UTF8DirReader", (PyObject *)&__pyx_type_12_readdir_pyx_UTF8DirReader) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; goto __pyx_L1;}
1730
 
  __pyx_ptype_12_readdir_pyx_UTF8DirReader = &__pyx_type_12_readdir_pyx_UTF8DirReader;
 
1698
  if (PyType_Ready(&__pyx_type_6bzrlib_12_readdir_pyx__Stat) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; goto __pyx_L1;}
 
1699
  if (PyObject_SetAttrString(__pyx_m, "_Stat", (PyObject *)&__pyx_type_6bzrlib_12_readdir_pyx__Stat) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; goto __pyx_L1;}
 
1700
  __pyx_ptype_6bzrlib_12_readdir_pyx__Stat = &__pyx_type_6bzrlib_12_readdir_pyx__Stat;
 
1701
  __pyx_vtabptr_6bzrlib_12_readdir_pyx_UTF8DirReader = &__pyx_vtable_6bzrlib_12_readdir_pyx_UTF8DirReader;
 
1702
  *(void(**)(void))&__pyx_vtable_6bzrlib_12_readdir_pyx_UTF8DirReader._kind_from_mode = (void(*)(void))__pyx_f_6bzrlib_12_readdir_pyx_13UTF8DirReader__kind_from_mode;
 
1703
  __pyx_type_6bzrlib_12_readdir_pyx_UTF8DirReader.tp_free = _PyObject_GC_Del;
 
1704
  if (PyType_Ready(&__pyx_type_6bzrlib_12_readdir_pyx_UTF8DirReader) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; goto __pyx_L1;}
 
1705
  if (__Pyx_SetVtable(__pyx_type_6bzrlib_12_readdir_pyx_UTF8DirReader.tp_dict, __pyx_vtabptr_6bzrlib_12_readdir_pyx_UTF8DirReader) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; goto __pyx_L1;}
 
1706
  if (PyObject_SetAttrString(__pyx_m, "UTF8DirReader", (PyObject *)&__pyx_type_6bzrlib_12_readdir_pyx_UTF8DirReader) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; goto __pyx_L1;}
 
1707
  __pyx_ptype_6bzrlib_12_readdir_pyx_UTF8DirReader = &__pyx_type_6bzrlib_12_readdir_pyx_UTF8DirReader;
1731
1708
 
1732
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":20 */
 
1709
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":20 */
1733
1710
  __pyx_1 = __Pyx_Import(__pyx_n_os, 0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; goto __pyx_L1;}
1734
1711
  if (PyObject_SetAttr(__pyx_m, __pyx_n_os, __pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; goto __pyx_L1;}
1735
1712
  Py_DECREF(__pyx_1); __pyx_1 = 0;
1736
1713
 
1737
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":21 */
 
1714
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":21 */
1738
1715
  __pyx_1 = __Pyx_Import(__pyx_n_sys, 0); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; goto __pyx_L1;}
1739
1716
  if (PyObject_SetAttr(__pyx_m, __pyx_n_sys, __pyx_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; goto __pyx_L1;}
1740
1717
  Py_DECREF(__pyx_1); __pyx_1 = 0;
1741
1718
 
1742
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":108 */
 
1719
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":108 */
1743
1720
  if (PyObject_SetAttr(__pyx_m, __pyx_n__directory, __pyx_n_directory) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; goto __pyx_L1;}
1744
1721
 
1745
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":109 */
 
1722
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":109 */
1746
1723
  if (PyObject_SetAttr(__pyx_m, __pyx_n__chardev, __pyx_n_chardev) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; goto __pyx_L1;}
1747
1724
 
1748
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":110 */
 
1725
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":110 */
1749
1726
  if (PyObject_SetAttr(__pyx_m, __pyx_n__block, __pyx_n_block) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; goto __pyx_L1;}
1750
1727
 
1751
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":111 */
 
1728
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":111 */
1752
1729
  if (PyObject_SetAttr(__pyx_m, __pyx_n__file, __pyx_n_file) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; goto __pyx_L1;}
1753
1730
 
1754
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":112 */
 
1731
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":112 */
1755
1732
  if (PyObject_SetAttr(__pyx_m, __pyx_n__fifo, __pyx_n_fifo) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; goto __pyx_L1;}
1756
1733
 
1757
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":113 */
 
1734
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":113 */
1758
1735
  if (PyObject_SetAttr(__pyx_m, __pyx_n__symlink, __pyx_n_symlink) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; goto __pyx_L1;}
1759
1736
 
1760
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":114 */
 
1737
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":114 */
1761
1738
  if (PyObject_SetAttr(__pyx_m, __pyx_n__socket, __pyx_n_socket) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; goto __pyx_L1;}
1762
1739
 
1763
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":115 */
 
1740
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":115 */
1764
1741
  if (PyObject_SetAttr(__pyx_m, __pyx_n__unknown, __pyx_n_unknown) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; goto __pyx_L1;}
1765
1742
 
1766
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":116 */
 
1743
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":116 */
1767
1744
  if (PyObject_SetAttr(__pyx_m, __pyx_n__missing, __pyx_n_missing) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; goto __pyx_L1;}
1768
1745
 
1769
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":161 */
 
1746
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":161 */
1770
1747
  __pyx_1 = PyList_New(1); if (!__pyx_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; goto __pyx_L1;}
1771
1748
  Py_INCREF(__pyx_n_osutils);
1772
1749
  PyList_SET_ITEM(__pyx_1, 0, __pyx_n_osutils);
1777
1754
  Py_DECREF(__pyx_1); __pyx_1 = 0;
1778
1755
  Py_DECREF(__pyx_2); __pyx_2 = 0;
1779
1756
 
1780
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":204 */
1781
 
  Py_INCREF(__pyx_k14p);
1782
 
  __pyx_k15 = __pyx_k14p;
 
1757
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":204 */
 
1758
  Py_INCREF(__pyx_k16p);
 
1759
  __pyx_d1 = __pyx_k16p;
1783
1760
 
1784
 
  /* "/home/mbp/bzr/prepare-2.0.0/bzrlib/_readdir_pyx.pyx":274 */
 
1761
  /* "/home/jameinel/dev/bzr/work/bzrlib/_readdir_pyx.pyx":274 */
1785
1762
  return;
1786
1763
  __pyx_L1:;
1787
1764
  Py_XDECREF(__pyx_1);
1788
1765
  Py_XDECREF(__pyx_2);
1789
 
  __Pyx_AddTraceback("_readdir_pyx");
 
1766
  __Pyx_AddTraceback("bzrlib._readdir_pyx");
1790
1767
}
1791
1768
 
1792
1769
static char *__pyx_filenames[] = {
1799
1776
  __pyx_f = __pyx_filenames;
1800
1777
}
1801
1778
 
1802
 
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list) {
1803
 
    PyObject *__import__ = 0;
1804
 
    PyObject *empty_list = 0;
1805
 
    PyObject *module = 0;
1806
 
    PyObject *global_dict = 0;
1807
 
    PyObject *empty_dict = 0;
1808
 
    PyObject *list;
1809
 
    __import__ = PyObject_GetAttrString(__pyx_b, "__import__");
1810
 
    if (!__import__)
1811
 
        goto bad;
1812
 
    if (from_list)
1813
 
        list = from_list;
1814
 
    else {
1815
 
        empty_list = PyList_New(0);
1816
 
        if (!empty_list)
1817
 
            goto bad;
1818
 
        list = empty_list;
1819
 
    }
1820
 
    global_dict = PyModule_GetDict(__pyx_m);
1821
 
    if (!global_dict)
1822
 
        goto bad;
1823
 
    empty_dict = PyDict_New();
1824
 
    if (!empty_dict)
1825
 
        goto bad;
1826
 
    module = PyObject_CallFunction(__import__, "OOOO",
1827
 
        name, global_dict, empty_dict, list);
1828
 
bad:
1829
 
    Py_XDECREF(empty_list);
1830
 
    Py_XDECREF(__import__);
1831
 
    Py_XDECREF(empty_dict);
1832
 
    return module;
1833
 
}
1834
 
 
1835
1779
static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) {
1836
1780
    PyObject *result;
1837
1781
    result = PyObject_GetAttr(dict, name);
1903
1847
    return;
1904
1848
}
1905
1849
 
1906
 
static PyObject *__Pyx_GetItemInt(PyObject *o, Py_ssize_t i) {
1907
 
    PyTypeObject *t = o->ob_type;
1908
 
    PyObject *r;
1909
 
    if (t->tp_as_sequence && t->tp_as_sequence->sq_item)
1910
 
        r = PySequence_GetItem(o, i);
1911
 
    else {
1912
 
        PyObject *j = PyInt_FromLong(i);
1913
 
        if (!j)
1914
 
            return 0;
1915
 
        r = PyObject_GetItem(o, j);
1916
 
        Py_DECREF(j);
1917
 
    }
1918
 
    return r;
1919
 
}
1920
 
 
1921
 
static int __Pyx_InternStrings(__Pyx_InternTabEntry *t) {
1922
 
    while (t->p) {
1923
 
        *t->p = PyString_InternFromString(t->s);
1924
 
        if (!*t->p)
1925
 
            return -1;
1926
 
        ++t;
1927
 
    }
1928
 
    return 0;
1929
 
}
1930
 
 
1931
1850
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
1932
1851
    while (t->p) {
1933
1852
        *t->p = PyString_FromStringAndSize(t->s, t->n - 1);
1934
1853
        if (!*t->p)
1935
1854
            return -1;
 
1855
        if (t->i)
 
1856
            PyString_InternInPlace(t->p);
1936
1857
        ++t;
1937
1858
    }
1938
1859
    return 0;
1957
1878
    return result;
1958
1879
}
1959
1880
 
 
1881
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list) {
 
1882
    PyObject *__import__ = 0;
 
1883
    PyObject *empty_list = 0;
 
1884
    PyObject *module = 0;
 
1885
    PyObject *global_dict = 0;
 
1886
    PyObject *empty_dict = 0;
 
1887
    PyObject *list;
 
1888
    __import__ = PyObject_GetAttrString(__pyx_b, "__import__");
 
1889
    if (!__import__)
 
1890
        goto bad;
 
1891
    if (from_list)
 
1892
        list = from_list;
 
1893
    else {
 
1894
        empty_list = PyList_New(0);
 
1895
        if (!empty_list)
 
1896
            goto bad;
 
1897
        list = empty_list;
 
1898
    }
 
1899
    global_dict = PyModule_GetDict(__pyx_m);
 
1900
    if (!global_dict)
 
1901
        goto bad;
 
1902
    empty_dict = PyDict_New();
 
1903
    if (!empty_dict)
 
1904
        goto bad;
 
1905
    module = PyObject_CallFunction(__import__, "OOOO",
 
1906
        name, global_dict, empty_dict, list);
 
1907
bad:
 
1908
    Py_XDECREF(empty_list);
 
1909
    Py_XDECREF(__import__);
 
1910
    Py_XDECREF(empty_dict);
 
1911
    return module;
 
1912
}
 
1913
 
1960
1914
#include "compile.h"
1961
1915
#include "frameobject.h"
1962
1916
#include "traceback.h"