qlog fails with repeated "list index out of range"

Bug #258669 reported by Russ Brown
6
Affects Status Importance Assigned to Milestone
QBzr
Fix Released
High
Lukáš Lalinský

Bug Description

qlog displays properly at first, then the commit messages dissappear completely, there is no graph, and the following is dumped to the command line a number of times:

Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/qbzr/lib/log.py", line 167, in drawDisplay
    color = self.node[1].toInt()[0]
IndexError: list index out of range

It is also dumped while ever the mouse pointer is moving over the qlog window.

This should be reproducable by issuing the following command:

bzr qlog lp:~pickscrape/loggerhead/directory_breadcrumbs

... though I am actually getting it when running qlog against any branch.

I am running bzr 1.6rc1, and qbzr 0.9.2. Also reproduced with the current trunk version of qbzr.

Revision history for this message
Lukáš Lalinský (luks) wrote :

Works for me, what version of PyQt and Qt are you using?

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

Works for me too with bzr 1.5.

Changed in qbzr:
status: New → Incomplete
Revision history for this message
Russ Brown (pickscrape) wrote :

I just tried it against bzr 1.5 and got the same behaviour. It's really weird because I only tried qbzr a couple of days ago and it was working just fine then!

libqt4-core version is 4.4.0-1ubuntu5~hardy1

python-qt4 version is 4.4.3-0ubuntu1~hardy1~ppa1

I'll dig deeper at my end and see if I can figure anything else out.

Revision history for this message
Mark Hammond (mhammond) wrote :

FWIW, I see this on Windows using Qt 4.4.1.0, but not using 4.4.0.0. Digging a little deeper, things worked fine with Qt*.dll from 4.4.1.0, and even PyQt4.QtGui.pyd - but started happening as soon a I used PyQt4.QtCore.pyd from 4.4.1.0.

To be sure I made one final test: 4.4.1.0 fails, then replacing *only* PyQt4.QtCore.pyd with the version from 4.4.0.0 is enough to make it work.

Revision history for this message
Mark Hammond (mhammond) wrote :

I was testing this in a binary build - so I mean PyQt4/QtCore.pyd - that extra '.' is an artifact of py2exe...

Revision history for this message
Lukáš Lalinský (luks) wrote :

The problem seems to be broken QVariant in that version of PyQt:

In [13]: from PyQt4.QtCore import QVariant

In [14]: QVariant([QVariant(1), QVariant(3)]).toList()
Out[14]: []

Revision history for this message
Lukáš Lalinský (luks) wrote :

It was actually API breakage in PyQt, though I don't understand what they did it in a minor release.

Changed in qbzr:
assignee: nobody → luks
importance: Undecided → High
milestone: none → 0.9.4
status: Incomplete → Fix Committed
Revision history for this message
Russ Brown (pickscrape) wrote :

Confirmed that this fix works for me. :)

Changed in qbzr:
status: Fix Committed → 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.