Under Windows normal prompt (not Cygwin), "bzr diff using external program" makes a temporary copy of the file's current state and sends the copy's filename to the external program. This makes impossible to use the external diff program as an editor to modify the current file. For example, using WinMerge, one can easily revert some of the changes made in the file, and save it. Since the output file is temporary, the resulted file is discarded...
So please, either pass the actual filename of the current file, or make bzr detect that the temporary copy has been modified and let the user decide whether to copy it back to the actual file, or any other neat solutions you developers can come up ;)
bzr version: 1.5 using difftools
Windows XP, using Python 2.5 in a command prompt window.
The difftools plugin overrides this behaviour and uses the original path where possible.