~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/merge.py

merge robert, debugging

Show diffs side-by-side

added added

removed removed

Lines of Context:
415
415
        """Initialize the merger object and perform the merge."""
416
416
        object.__init__(self)
417
417
        self.this_tree = working_tree
 
418
        self.this_tree.lock_tree_write()
418
419
        self.base_tree = base_tree
 
420
        self.base_tree.lock_read()
419
421
        self.other_tree = other_tree
 
422
        self.other_tree.lock_read()
420
423
        self._raw_conflicts = []
421
424
        self.cooked_conflicts = []
422
425
        self.reprocess = reprocess
432
435
        else:
433
436
            all_ids = set(base_tree)
434
437
            all_ids.update(other_tree)
435
 
        working_tree.lock_tree_write()
436
438
        self.tt = TreeTransform(working_tree, self.pb)
437
439
        try:
438
440
            self.pp.next_phase()
467
469
                pass
468
470
        finally:
469
471
            self.tt.finalize()
470
 
            working_tree.unlock()
 
472
            self.other_tree.unlock()
 
473
            self.base_tree.unlock()
 
474
            self.this_tree.unlock()
471
475
            self.pb.clear()
472
476
 
473
477
    def fix_root(self):