← Back to team overview

phatch-dev team mailing list archive

[Bug 382266] Re: Segmentation fault on mouse click

 

@Nadia
Finally good news: I tried it on another laptop with Intrepid and I could reproduce a similar error. Phatch did not even run and exited with a segmentation fault. In winpdb Phatch run fine so I could not debug it. As there was a difference between the timing of the error between you and me, as winpdb made it run fine and print statements did not help, this made me think it could be a threading issue. Phatch itself does not use threads, but it dependencies may, such as  python-notify. When I look to the dependencies of python-notify, I noticed the dependency on python-gtk2. This ring a bell. In the past I've stumbled on a similar issue when trying to combine gstreamer with wxpython:
http://pythonide.blogspot.com/2008/03/howto-write-wxpython-video-player-with.html

I came up with this fix, which solved the issue for me:
$ bzr diff -r-2
=== modified file 'phatch/core/lib/notify.py'
--- phatch/core/lib/notify.py	2009-05-29 14:04:03 +0000
+++ phatch/core/lib/notify.py	2009-06-02 12:32:44 +0000
@@ -17,6 +17,8 @@
 
 try:
     import pynotify
+    import gobject
+    gobject.threads_init()
 except ImportError:
     pynotify = None

These errors are very hard to fix as they only arise by a seldom
combination of two toolkits, but luckily I was experienced.

Nadia, could you try if the fix works for you? It still can go wrong. If
it doesn't work, please try reordering the lines of pynotify and
gobject.

** Changed in: phatch
       Status: In Progress => Fix Committed

-- 
Segmentation fault on mouse click
https://bugs.launchpad.net/bugs/382266
You received this bug notification because you are a member of Phatch
Developers, which is subscribed to Phatch.

Status in Phatch = Photo & Batch!: Fix Committed

Bug description:
Hi,

I checked out the latest Phatch branch changes. And every time I add any action and click on any of its fields (or even anywhere around it) phatch is terminating with Segmentation Fault error. 

I'm running it on Ubuntu Intrepid.

Nadia



Follow ups