~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/diff.py

Give branch its own basis tree and last_revision methods; deprecated branch.working_tree()

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
# along with this program; if not, write to the Free Software
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
16
 
 
17
from bzrlib.delta import compare_trees
 
18
from bzrlib.errors import BzrError
17
19
from bzrlib.trace import mutter
18
 
from bzrlib.errors import BzrError
19
 
from bzrlib.delta import compare_trees
 
20
from bzrlib.workingtree import WorkingTree
20
21
 
21
22
# TODO: Rather than building a changeset object, we should probably
22
23
# invoke callbacks on an object.  That object can either accumulate a
159
160
        output = sys.stdout
160
161
 
161
162
    if from_spec is None:
 
163
        old_tree = WorkingTree(b.base, b)
162
164
        if b2 is None:
163
 
            old_tree = b.basis_tree()
164
 
        else:
165
 
            old_tree = b.working_tree()
 
165
            old_tree = old_tree = old_tree.basis_tree()
166
166
    else:
167
167
        old_tree = b.repository.revision_tree(from_spec.in_history(b).rev_id)
168
168
 
169
169
    if revision2 is None:
170
170
        if b2 is None:
171
 
            new_tree = b.working_tree()
 
171
            new_tree = WorkingTree(b.base, b)
172
172
        else:
173
 
            new_tree = b2.working_tree()
 
173
            new_tree = WorkingTree(b2.base, b2)
174
174
    else:
175
175
        new_tree = b.repository.revision_tree(revision2.in_history(b).rev_id)
176
176