~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/bundle/bundle_data.py

  • Committer: Patch Queue Manager
  • Date: 2012-02-20 12:40:02 UTC
  • mfrom: (6468.2.8 bzr)
  • Revision ID: pqm@pqm.ubuntu.com-20120220124002-0wte938ee8s7k0pm
(jelmer) Avoid direct access of tree inventories in a couple more places.
 (Jelmer Vernooij)

Show diffs side-by-side

added added

removed removed

Lines of Context:
687
687
        if new_path not in self.patches:
688
688
            # If the entry does not have a patch, then the
689
689
            # contents must be the same as in the base_tree
690
 
            ie = self.base_tree.root_inventory[file_id]
691
 
            if ie.text_size is None:
692
 
                return ie.text_size, ie.text_sha1
693
 
            return int(ie.text_size), ie.text_sha1
 
690
            text_size = self.base_tree.get_file_size(file_id)
 
691
            text_sha1 = self.base_tree.get_file_sha1(file_id)
 
692
            return text_size, text_sha1
694
693
        fileobj = self.get_file(file_id)
695
694
        content = fileobj.read()
696
695
        return len(content), sha_string(content)
701
700
        This need to be called before ever accessing self.inventory
702
701
        """
703
702
        from os.path import dirname, basename
704
 
        base_inv = self.base_tree.root_inventory
705
703
        inv = Inventory(None, self.revision_id)
706
704
 
707
705
        def add_entry(file_id):
750
748
 
751
749
    root_inventory = property(_get_inventory)
752
750
 
753
 
    def __iter__(self):
754
 
        for path, entry in self.inventory.iter_entries():
755
 
            yield entry.file_id
 
751
    def all_file_ids(self):
 
752
        return set(
 
753
            [entry.file_id for path, entry in self.inventory.iter_entries()])
756
754
 
757
755
    def list_files(self, include_root=False, from_dir=None, recursive=True):
758
756
        # The only files returned by this are those from the version