Launching external diff shows annoying dialog when external diff closes

Bug #520939 reported by Nicholas Allen
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
QBzr
Fix Released
Medium
Gary van der Merwe

Bug Description

Launching external diff (eg meld from commit dialog) shows annoying dialog when external diff program closes (see attached screenshot).

Tags: extdiff

Related branches

Revision history for this message
Nicholas Allen (nick-allen) wrote :
Revision history for this message
Alexandr Litjagin (alexraynepe196) wrote :

yep. i use diffuse. and after normal invoking, stay form with error message:
Run command: bzr diff --using diffuse.exe modbus/mb.c
Unhandled exception in thread started by <bound method cmd_qsubprocess.__win32_ctrl_c of <bzrlib.plugins.qbzr.lib.subprocess.cmd_qsubprocess object at 0x01430F70>>
Traceback (most recent call last):
  File "C:\Python\lib\site-packages\bzrlib\plugins\qbzr\lib\subprocess.py", line 798, in __win32_ctrl_c
    import win32event
ImportError: No module named win32event

used qbzr 0.18.0

Revision history for this message
Alexander Belchenko (bialix) wrote : Re: [Bug 520939] Re: Launching external diff shows annoying dialog when external diff closes

Alexandr Litjagin пишет:
> yep. i use diffuse. and after normal invoking, stay form with error message:
> Run command: bzr diff --using diffuse.exe modbus/mb.c
> Unhandled exception in thread started by <bound method cmd_qsubprocess.__win32_ctrl_c of <bzrlib.plugins.qbzr.lib.subprocess.cmd_qsubprocess object at 0x01430F70>>
> Traceback (most recent call last):
> File "C:\Python\lib\site-packages\bzrlib\plugins\qbzr\lib\subprocess.py", line 798, in __win32_ctrl_c
> import win32event
> ImportError: No module named win32event
>
> used qbzr 0.18.0

You should install pywin32 package.

Revision history for this message
Gary van der Merwe (garyvdm) wrote :

The idea was that if anything is written to stdout or stderr, that could be the diff itself, if you are using a non gui diff, or an error.

But if you are not using the difftools plugin, then something is allways written to the console.

Changed in qbzr:
importance: Undecided → Medium
status: New → Confirmed
tags: added: extdiff
Revision history for this message
Gordon Tyler (doxxx) wrote :

I get something very similar on Windows 7 using WinMerge as an external diff tool. The error dialog that I get contains the following text:

Run command: bzr diff --using "C:/Program Files (x86)/WinMerge/WinMergeU.exe" -rrevid:<email address hidden>...
=== modified file 'Core.lua'

And the bzr.log contains:

Mon 2010-02-22 20:39:35 -0500
0.039 bazaar version: 2.1.0
0.039 bzr arguments: [u'qsubprocess', u'--bencode', u'l4:diff7:--using45:C:/Program Files (x86)/WinMerge/WinMergeU.exe112:-rrevid:<email address hidden>:<email address hidden>']
0.049 looking for plugins in C:/Users/Owner/AppData/Roaming/bazaar/2.0/plugins
0.086 looking for plugins in C:/Program Files (x86)/Bazaar/plugins
0.153 encoding stdout as osutils.get_user_encoding() 'cp1252'
0.207 bazaar version: 2.1.0
0.207 bzr arguments: [u'diff', u'--using', u'C:/Program Files (x86)/WinMerge/WinMergeU.exe', u'-rrevid:<email address hidden>:<email address hidden>']
0.210 Returning RevisionSpec RevisionSpec_revid for revid:<email address hidden>
0.210 Returning RevisionSpec RevisionSpec_revid for revid:<email address hidden>
0.210 encoding stdout as osutils.get_user_encoding() 'cp1252'
16.445 Transferred: 0KiB (0.0K/s r:0K w:0K)
16.445 return code 1
59.149 encoding stdout as sys.stdout encoding 'cp437'

Revision history for this message
Gordon Tyler (doxxx) wrote :

I forgot to mention that I'm using qbzr 0.18.2 (lp:qbzr/0.18 r1206).

Revision history for this message
Alexander Belchenko (bialix) wrote :

Gordon Tyler пишет:
> I get something very similar on Windows 7 using WinMerge as an external
> diff tool. The error dialog that I get contains the following text:
>
> Run command: bzr diff --using "C:/Program Files (x86)/WinMerge/WinMergeU.exe" -rrevid:<email address hidden>...
> === modified file 'Core.lua'

This is not error dialog but rather info box.

Revision history for this message
Gordon Tyler (doxxx) wrote :

Well, it's not informing me of anything and it didn't used to do it
before 0.18.

On 2010-02-23, at 1:49 AM, Alexander Belchenko <email address hidden> wrote:

> Gordon Tyler пишет:
>> I get something very similar on Windows 7 using WinMerge as an
>> external
>> diff tool. The error dialog that I get contains the following text:
>>
>> Run command: bzr diff --using "C:/Program Files (x86)/WinMerge/
>> WinMergeU.exe" -rrevid:<email address hidden>-
>> g8rr1zeueuoa6lou..revid...
>> === modified file 'Core.lua'
>
> This is not error dialog but rather info box.
>
> --
> Launching external diff shows annoying dialog when external diff
> closes
> https://bugs.launchpad.net/bugs/520939
> You received this bug notification because you are a member of QBzr
> Bugs, which is subscribed to QBzr.
>
> Status in Qt frontend for Bazaar: Confirmed
>
> Bug description:
> Launching external diff (eg meld from commit dialog) shows annoying
> dialog when external diff program closes (see attached screenshot).
>
>
>

Revision history for this message
Gordon Tyler (doxxx) wrote :

This happens with kdiff3 as well.

Perhaps I wasn't being clear earlier. There isn't any actual error occurring in the diff program. I'm invoking it from qlog or wherever, looking at the diff and then closing its window. Then qbzr popups up this retry dialog like the diff application failed. I can only guess that the diff app is exiting with a non-zero exit code.

Revision history for this message
Robert Collins (lifeless) wrote : Re: [Bug 520939] Re: Launching external diff shows annoying dialog when external diff closes

On Sun, 2010-03-07 at 14:56 +0000, Gordon Tyler wrote:
> I can only guess
> that the diff app is exiting with a non-zero exit code.

Many diff tools will, to indicate to scripts that there is a diff :)

-Rob

Revision history for this message
Gordon Tyler (doxxx) wrote :

On 3/7/2010 4:02 PM, Robert Collins wrote:
> On Sun, 2010-03-07 at 14:56 +0000, Gordon Tyler wrote:
>> I can only guess
>> that the diff app is exiting with a non-zero exit code.
>
> Many diff tools will, to indicate to scripts that there is a diff :)

Right. So, qbzr shouldn't treat it as an error and offer to retry the
command.

Revision history for this message
Ian Clatworthy (ian-clatworthy) wrote :

Same root cause as bug #529958.

Revision history for this message
Craig Hewetson (craighewetson-deactivatedaccount) wrote :

Same happens for p4Merge

-original message-
Subject: Re: [Bug 520939] Re: Launching external diff shows annoying dialog when external diff closes
From: Gordon Tyler <email address hidden>
Date: 08/03/2010 12:40 am

On 3/7/2010 4:02 PM, Robert Collins wrote:
> On Sun, 2010-03-07 at 14:56 +0000, Gordon Tyler wrote:
>> I can only guess
>> that the diff app is exiting with a non-zero exit code.
>
> Many diff tools will, to indicate to scripts that there is a diff :)

Right. So, qbzr shouldn't treat it as an error and offer to retry the
command.

--
Launching external diff shows annoying dialog when external diff closes
https://bugs.launchpad.net/bugs/520939
You received this bug notification because you are a member of QBzr
Bugs, which is subscribed to QBzr.

Changed in qbzr:
assignee: nobody → Gary van der Merwe (garyvdm)
milestone: none → 0.19b1
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.