~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/revfile.py

  • Committer: Martin Pool
  • Date: 2005-08-11 17:56:04 UTC
  • Revision ID: mbp@sourcefrog.net-20050811175604-969fd5f0816ebe1e
- better revfile detection of corrupted storage

Show diffs side-by-side

added added

removed removed

Lines of Context:
268
268
            return self._add_full_text(text, text_sha, compress)
269
269
        
270
270
        data = mdiff.bdiff(base_text, text)
 
271
 
 
272
 
 
273
        if True: # paranoid early check for bad diff
 
274
            result = mdiff.bpatch(base_text, data)
 
275
            assert result == text
 
276
            
271
277
        
272
278
        # If the delta is larger than the text, we might as well just
273
279
        # store the text.  (OK, the delta might be more compressible,
332
338
            text = self._get_patched(idx, idxrec, recursion_limit)
333
339
 
334
340
        if sha.new(text).digest() != idxrec[I_SHA]:
335
 
            raise RevfileError("corrupt SHA-1 digest on record %d"
336
 
                               % idx)
 
341
            raise RevfileError("corrupt SHA-1 digest on record %d in %s"
 
342
                               % (idx, self.basename))
337
343
 
338
344
        return text
339
345