Bug 13776

Summary: mageiawecome crash in init thread with python gtk
Product: Mageia Reporter: Arnaud Vacquier <arnaud>
Component: RPM PackagesAssignee: Daniel Napora <napcok>
Status: RESOLVED FIXED QA Contact:
Severity: critical    
Priority: Normal CC: ezequiel_partida, napcok
Version: Cauldron   
Target Milestone: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Source RPM: mageiawelcome-0.8.8-2.mga5.noarch.rpm CVE:
Status comment:
Attachments: python error

Description Arnaud Vacquier 2014-07-21 15:55:58 CEST
Created attachment 5301 [details]
python error

Hi,

I have a big issue on Mageia 5 (cauldron), i can't launch Python apps (Mageia Welcome, Crossover...)


In Terminal :
$ mageiawelcome
Gtk-Message: Failed to load module "canberra-gtk-module"
Attempt to unlock mutex that was not locked

$ /opt/cxoffice/bin/crossoverGtk-Message: Failed to load module "canberra-gtk-module"
Attempt to unlock mutex that was not locked
Abandon


I catch one time an error but i can't copy (during loading, it is clean), i add as attachment.


Thank you,
Arnaud
David Walser 2014-07-22 00:37:11 CEST

Assignee: bugsquad => makowski.mageia

Comment 1 Philippe Makowski 2014-07-22 11:11:07 CEST
about crossover I have no clue
but check if you have libcanberra-gtk3-module.so() and libcanberra-gtk-module.so() on your system

And about the title of this bug, it is not appropriate I think
better to change it to something like "Python gtk crash or missing lib"

By the way, which DE are you using ?
Which theme ? oxygen-gtk ?
Comment 2 Philippe Makowski 2014-07-26 22:57:57 CEST
Found
it is a bug with python-gtk
easy to reproduce
this script (test1.py) fail :
#!/usr/bin/python
import gtk
gtk.gdk.threads_init()
raw_input("If this didn't crash, hit enter.")

$ ./test1.py 
If this didn't crash, hit enter.Attempt to unlock mutex that was not locked
Aborted

this one (test2.py) is ok :
#!/usr/bin/python
import gtk
gtk.gdk.threads_init()
gtk.gdk.threads_enter()
raw_input("If this didn't crash, hit enter.")

$ ./test2.py 
If this didn't crash, hit enter.
$

so, code in mageiawelcome (in fact start_gtk_thread() in webgui.py line 118 need to be changed from :
def start_gtk_thread():
    # Start GTK in its own thread:
    gtk.gdk.threads_init()
    thread.start_new_thread(gtk.main, ())

to 

def start_gtk_thread():
    # Start GTK in its own thread:
    gtk.gdk.threads_init()
    gtk.gdk.threads_enter()
    thread.start_new_thread(gtk.main, ())

cf : 
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=671785

but may be that further change would be need :
https://wiki.gnome.org/Projects/PyGObject/Threading

I assig the bug to mageiawelcome maintainer

Assignee: makowski.mageia => n54
Source RPM: (none) => mageiawelcome-0.8.8-2.mga5.noarch.rpm

Philippe Makowski 2014-07-26 22:59:39 CEST

CC: (none) => makowski.mageia
Summary: Python crash all apps => mageiawecome crash in init thread with python gtk

Daniel Napora 2014-07-27 11:12:40 CEST

CC: (none) => napcok
Assignee: n54 => napcok

Comment 3 Ezequiel Partida 2014-08-12 00:33:43 CEST
Same Problem here.

Regards

CC: (none) => ezequiel_partida

Philippe Makowski 2014-10-14 21:02:24 CEST

CC: makowski.mageia => (none)

Comment 4 Daniel Napora 2014-10-28 12:40:47 CET
Fixed with mageiawelcome 0.8.9

Status: NEW => RESOLVED
Resolution: (none) => FIXED