bzr diff crashes with "unsupported operand type" with working tree format 4
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
New
|
Undecided
|
Unassigned |
Bug Description
After upgrading my postgresql bzr trees to the latest working tree format I noticed that bzr diff died with an exception when I renamed the top level directory.
Simple reproducer:
$ mkdir /tmp/x
$ cd /tmp/x
$ mkdir foo
$ echo hi> foo/hello.txt
$ bzr add .
$ bzr commit -m 'initial release'
added foo
added foo/hello.txt
Committed revision 1.
$ bzr mv foo bar
foo => bar
$ echo workd > bar/hello.txt
$ bzr diff
bzr: ERROR: exceptions.
Traceback (most recent call last):
File "/usr/lib/
return run_bzr(argv)
File "/usr/lib/
ret = run(*run_argv)
File "/usr/lib/
return self.run(
File "/usr/lib/
result = func(*args, **kwargs)
File "/usr/lib/
old_
File "/usr/lib/
extra_
File "/usr/lib/
extra_
File "/usr/lib/
_patch_
File "/usr/lib/
return timestamp.
File "/usr/lib/
tm = time.gmtime(
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
bzr 0.15.0 on python 2.5.1.candidate.1 (linux2)
arguments: ['/usr/bin/bzr', 'diff']
If I use .bzr.backup with working tree format 3 this works as expected.
This is duplicate of #103870. This bug already fixed and bugfix available in bzr.dev and in next release.