[PyQt] pykde crash on debian etch / import kparts or khtml
jbd
jbdenis at dental-on-line.fr
Fri Sep 28 15:56:14 BST 2007
Hello,
I've got a small problem with an application i'm trying to port from
sarge to etch. Here is the minimal application which mimics the problem.
It's a simple QDialog with a QPushButton which triggers a KDirLister and
print the result on stdout. It works well as long as i don't import
khtml or kparts.
I'm running a clean debian etch system :
kdelibs : 4:3.5.5a.dfsg.1-8
python-kde3 : 3.15.2+20060422-3
python-qt3 : 3.16-1.2
The same code sample runs well on debian sarge but crash on debian etch
and ubuntu feisty. It seems that's i'm doing something wrong here.
Thank you for your help !
Here is the code sample :
======================================================================
# -*- coding: utf-8 -*-
import sys
from qt import QDialog, QPushButton, SIGNAL
from kdecore import KCmdLineArgs, KApplication, KURL
from kio import KDirLister
# Remove one or both of the comment to crash the application
#from khtml import *
#from kparts import * #
class TestCrash(QDialog):
def __init__(self, parent=None):
QDialog.__init__(self, parent)
button = QPushButton("Run kdirlister", self)
self._dirLister = KDirLister()
self.connect(button, SIGNAL("clicked()"), self._openHome)
self.connect(self._dirLister, SIGNAL("newItems(const
KFileItemList&)"),
self._slotNewItems)
def _openHome(self):
self._dirLister.openURL(KURL("/"))
def _slotNewItems(self, items):
print "="*50
for item in items:
print item.url().prettyURL()
print "="*50
def main():
try:
KCmdLineArgs.init(sys.argv, "crash test", "crash test","crash
test")
app = KApplication(True, True)
widget = TestCrash()
widget.show()
app.setMainWidget(widget)
res = app.exec_loop()
print "Return value", res
except Exception, what:
print "Exception catched:", str(what)
sys.exit(-1)
if __name__=="__main__":
main()
======================================================================
More information about the PyQt
mailing list