~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tree.py

  • Committer: Martin Pool
  • Date: 2005-06-15 04:17:12 UTC
  • Revision ID: mbp@sourcefrog.net-20050615041712-ba12ff03d4ce3be0
- add deferred patch from abentley 
  to fetch remote Revision XML only once
  when branching

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
import errno
26
26
from stat import S_ISREG, S_ISDIR, ST_MODE, ST_SIZE
27
27
 
28
 
from bzrlib.inventory import Inventory
29
 
from bzrlib.trace import mutter, note
30
 
from bzrlib.errors import BzrError
 
28
from inventory import Inventory
 
29
from trace import mutter, note
 
30
from errors import bailout
31
31
import branch
32
32
 
33
33
import bzrlib
83
83
        
84
84
        if ie.text_size != None:
85
85
            if ie.text_size != fp['size']:
86
 
                raise BzrError("mismatched size for file %r in %r" % (ie.file_id, self._store),
 
86
                bailout("mismatched size for file %r in %r" % (ie.file_id, self._store),
87
87
                        ["inventory expects %d bytes" % ie.text_size,
88
88
                         "file is actually %d bytes" % fp['size'],
89
89
                         "store is probably damaged/corrupt"])
90
90
 
91
91
        if ie.text_sha1 != fp['sha1']:
92
 
            raise BzrError("wrong SHA-1 for file %r in %r" % (ie.file_id, self._store),
 
92
            bailout("wrong SHA-1 for file %r in %r" % (ie.file_id, self._store),
93
93
                    ["inventory expects %s" % ie.text_sha1,
94
94
                     "file is actually %s" % fp['sha1'],
95
95
                     "store is probably damaged/corrupt"])
253
253
        elif kind == 'file':
254
254
            pumpfile(tree.get_file(ie.file_id), file(fullpath, 'wb'))
255
255
        else:
256
 
            raise BzrError("don't know how to export {%s} of kind %r" % (ie.file_id, kind))
 
256
            bailout("don't know how to export {%s} of kind %r" % (ie.file_id, kind))
257
257
        mutter("  export {%s} kind %s to %s" % (ie.file_id, kind, fullpath))
258
258
exporters['dir'] = dir_exporter
259
259
 
273
273
        try:
274
274
            ball = tarfile.open(dest, 'w:' + compression)
275
275
        except tarfile.CompressionError, e:
276
 
            raise BzrError(str(e))
 
276
            bailout(str(e))
277
277
        mutter('export version %r' % tree)
278
278
        inv = tree.inventory
279
279
        for dp, ie in inv.iter_entries():
294
294
                item.size = _find_file_size(fileobj)
295
295
                item.mode = 0644
296
296
            else:
297
 
                raise BzrError("don't know how to export {%s} of kind %r" %
 
297
                bailout("don't know how to export {%s} of kind %r" %
298
298
                        (ie.file_id, ie.kind))
299
299
 
300
300
            ball.addfile(item, fileobj)