Bazaar Explorer "Show Log" on single file

Bug #634989 reported by James.L.Felder@nasa.gov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar Explorer
Fix Released
High
Simon Kersey
QBzr
Invalid
Undecided
Unassigned

Bug Description

The following happens when using the Bazaar Explorer GUI. I highlight a file in the "Working Tree" subwindow and right click. In the pop up menu select "show log". A window with this error information pops up, but when I close it, the log window for the selected file is there and I am able to navigate the log information for the desired file.

I am able to replicate this error each time I try, so it is not an intermittent error. It also happens for every file I have under Bazaar.

bzr: ERROR: exceptions.AttributeError: windows

Traceback (most recent call last):
  File "C:/Program Files/Bazaar/plugins\qbzr\lib\uifactory.py", line 32, in decorate
  File "C:/Program Files/Bazaar/plugins\qbzr\lib\treewidget.py", line 1782, in show_file_log
AttributeError: windows

bzr 2.1.1 on python 2.5.4 (win32)
arguments: ['C:\\Program Files\\Bazaar\\bzr.exe', 'explorer']
encoding: 'cp1252', fsenc: 'mbcs', lang: None
plugins:
  bzrtools C:\Program Files\Bazaar\plugins\bzrtools [2.1.0]
  explorer C:\Program Files\Bazaar\plugins\explorer [1.0.1]
  launchpad C:\Program Files\Bazaar\plugins\launchpad [2.1.1]
  netrc_credential_store C:\Program Files\Bazaar\plugins\netrc_credential_store [2.1.1]
  news_merge C:\Program Files\Bazaar\plugins\news_merge [2.1.1]
  qbzr C:\Program Files\Bazaar\plugins\qbzr [0.18.4]
  rebase C:\Program Files\Bazaar\plugins\rebase [0.5.5]
  svn C:\Program Files\Bazaar\plugins\svn [1.0.2]
  upload C:\Program Files\Bazaar\plugins\upload [1.0.0dev]
  xmloutput C:\Program Files\Bazaar\plugins\xmloutput [0.8.7.dev]

Related branches

Revision history for this message
James.L.Felder@nasa.gov (james-l-felder) wrote :

I have to add to my bug report. I didn't mention that the Working Tree was undocked from the main window when the bug happens. I just docket the Working Tree window back to the main window in Bazaar Explorer and the error *does* *not* happen when this window is docked.

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

Interesting error.

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

I can confirm this error.

Gary, it's not clear to me should we fix it in the explorer or in qbzr? Obviously error can be triggered only by explorer docking.

Changed in bzr-explorer:
status: New → Confirmed
importance: Undecided → High
Revision history for this message
Simon Kersey (simon-kersey) wrote :

Alex, Gary
This particular error is caused by the fact that when docked self.window in qbzr.lib.treewidget.TreeWidget.show_file_log() is a <bzrlib.plugins.explorer.lib.explorer.QExplorerMainWindow> which is derived from QBzrWindow and so has a self.windows[] property whereas when undocked self.window is <bzrlib.plugins.explorer.lib.wt_browser.WorkingTreeBrowser> which is derived from QtGui.QDockWidget which does not have a self.windows[] property.

A v. simplistic fix is to add the following line:

self.windows=[]

to explorer.lib.wt_browser.WorkingTreeBrowser._init_ method immediately before the comment "# Show either a..." .
[However in a QBzrWindow when it receives a close event it loops through its self.windows closing them if visible though I'm not sure if this is needed in the WorkingTreeBrowser]

OTH you could comment out the functionality in the TreeWidget.show_file... that adds the log/annotate etc windows to the windows list [Is it really needed?]

Unfortunately I don't know enough about TreeWidget's use within other apps to make a call on the best solution.

Changed in bzr-explorer:
assignee: nobody → Simon Kersey (simon-kersey)
status: Confirmed → Fix Released
Changed in qbzr:
status: New → Invalid
Changed in bzr-explorer:
milestone: none → 1.1
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.