After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 712557 - Gnome-Tweak_tool crashing when setting desktop background
Gnome-Tweak_tool crashing when setting desktop background
Status: RESOLVED DUPLICATE of bug 709223
Product: pygobject
Classification: Bindings
Component: general
3.10.x
Other Linux
: Normal normal
: GNOME 3.10
Assigned To: Nobody's working on this now (help wanted and appreciated)
Python bindings maintainers
Depends on:
Blocks:
 
 
Reported: 2013-11-18 02:27 UTC by Peter
Modified: 2013-11-27 22:51 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Peter 2013-11-18 02:27:06 UTC
This is still happening

here is the core dump. Happens about 3 to 4 seconds after background change
Comment 1 Peter 2013-11-18 05:17:11 UTC
Sorry the core dump was above 1.6mb so here's a link to it:

https://www.dropbox.com/s/bxilw25vkw6uzts/core.zip
Comment 2 John Stowers 2013-11-18 07:07:24 UTC
Version? Distro? Pygobject version?
Comment 3 Peter 2013-11-18 11:44:00 UTC
Sorry dude

The version is the latest g-t-t from git, the distro is Ubuntu Gnome 14.04 with Gnome-Shell 3.10.1 up to staging ppa and the pygobject is either 3.10.1-1 (python-gi-dev) or 2.28.6-12 (python-gobject-2-dev)
Comment 4 Simon Feltman 2013-11-18 12:04:17 UTC
I'm pretty sure the combo of PyGObject 3.10.1 and g-t-t from master will still crash. You need either PyGObject 3.10.3 or g-t-t from the 3.10 branch which contains a workaround. Please try again using g-t-t from the 3.10 branch:
https://git.gnome.org/browse/gnome-tweak-tool/log/?h=gnome-3-10
Comment 5 Simon Feltman 2013-11-22 00:14:38 UTC
Please re-open if you are still seeing this with PyGObject 3.10.3 or g-t-t from the 3.10 branch.

*** This bug has been marked as a duplicate of bug 709223 ***
Comment 6 Peter 2013-11-22 02:37:58 UTC
Hi Simon,

Sorry I don't know why I only just got your updates 4 days after you posted them.

I am looking for 3.10.3 pygobject however there seems to only be 3.10.2 tarball's available from the stable branch:

http://ftp.gnome.org/pub/GNOME/sources/pygobject/3.10/

Then it jumps to 3.11 for the dev branch...
Comment 7 Simon Feltman 2013-11-22 03:32:51 UTC
My mistake, PyGObject 3.10.2 is the latest one which has the fix.
Also note a workaround exists independently of this in g-t-t 3.10.1 (might be easier to deal with because it is pure Python).
Comment 8 Peter 2013-11-22 03:34:23 UTC
I just did a git clone instead.

I still get crashes using the latest g-t-t from git, with pygobject 3.10.3, and 3.11.3 while changing desktop background

I also get crashes when using the g-t-t 3.10.1 (default installed with ubuntu gnome 14.04), and pygobject 3.10.1-1, 3.10.3 and 3.11.3 while changing desktop background
Comment 9 Peter 2013-11-22 03:35:33 UTC
hmmm I ust saw your comment - does 3.10.3 or 3.11.3 contain the fixes as well?
Comment 10 Peter 2013-11-22 03:39:58 UTC
right it seems the pygobject 3.11.3 still contains the fix.

If I switch the branch from master to gnome-3-10 in gnome-tweak-tool then it works fine while changing desktop background.

So it needs to be both the pygobject and the g-t-t tool with changes for it to stop crashing.

I assumed that the master branch for g-t-t would have included the changes as well but obviously not.
Comment 11 Simon Feltman 2013-11-22 04:02:23 UTC
(In reply to comment #10)
> right it seems the pygobject 3.11.3 still contains the fix.
> 
> If I switch the branch from master to gnome-3-10 in gnome-tweak-tool then it
> works fine while changing desktop background.

Great, the workaround "should" also be in g-t-t 3.10.1

> So it needs to be both the pygobject and the g-t-t tool with changes for it to
> stop crashing.
> 
> I assumed that the master branch for g-t-t would have included the changes as
> well but obviously not.

For g-t-t 3.11 or latest, yes, it doesn't have a workaround likely because it will depend on PyGObject 3.11.2 or latest which fixes things at a deeper level.
Comment 12 Peter 2013-11-22 06:25:46 UTC
Ok but with pygobject 3.11.3 g-t-t master branch is still crashing, so it seems to still require the fix from the g-t-t 3.10 branch to stop that happening.
Comment 13 John Stowers 2013-11-22 09:38:54 UTC
Simon, can you reproduce with pygo 3.10.3 and gtt master?
Comment 14 Simon Feltman 2013-11-23 05:00:36 UTC
(In reply to comment #12)
> Ok but with pygobject 3.11.3 g-t-t master branch is still crashing, so it seems
> to still require the fix from the g-t-t 3.10 branch to stop that happening.

Hmm.. that doesn't make much sense to me although it could be another (related) issue. Can you let us know how you are running g-t-t and explicitly check the version of PyGObject?
$ python -c "import gi; print(gi.version_info)"

(In reply to comment #13)
> Simon, can you reproduce with pygo 3.10.3 and gtt master?

I've never even been able to run g-t-t out of my jhbuild environment on ubuntu 13.04... Any pointers there? basically it hangs when starting an eventually quits with:

(gnome-tweak-tool:5236): GLib-GIO-CRITICAL **: Timeout was reached
Comment 15 Simon Feltman 2013-11-23 21:18:52 UTC
Removing as dup until we can confirm this was actually fixed.
Comment 16 John Stowers 2013-11-25 09:52:57 UTC
(In reply to comment #14)
> (In reply to comment #12)
> > Ok but with pygobject 3.11.3 g-t-t master branch is still crashing, so it seems
> > to still require the fix from the g-t-t 3.10 branch to stop that happening.
> 
> Hmm.. that doesn't make much sense to me although it could be another (related)
> issue. Can you let us know how you are running g-t-t and explicitly check the
> version of PyGObject?
> $ python -c "import gi; print(gi.version_info)"
> 
> (In reply to comment #13)
> > Simon, can you reproduce with pygo 3.10.3 and gtt master?
> 
> I've never even been able to run g-t-t out of my jhbuild environment on ubuntu
> 13.04... Any pointers there? basically it hangs when starting an eventually
> quits with:
> 
> (gnome-tweak-tool:5236): GLib-GIO-CRITICAL **: Timeout was reached

Hmm, I never use jhbuild (I just install stuff in /opt/ and manage my own environment variables).

This sounds like some single-instance GApplication failure. Are you sure there is not a crashed g-t-t running the the background somewhere, and the subsequent launched instance fails to contact it?

I suggest cloning g-t-t from git and running it from the jhbuild shell (i.e. not installed). By default it will pick up the system schema and the jhbuild libs. You can also start g-t-t with the --prefix option to ask it to look in other prefix for gsettings.
Comment 17 Simon Feltman 2013-11-25 10:58:29 UTC
(In reply to comment #16)
> This sounds like some single-instance GApplication failure. Are you sure there
> is not a crashed g-t-t running the the background somewhere, and the subsequent
> launched instance fails to contact it?

It is possible that was the problem. Since my last reply, I had restarted my environment and and g-t-t works today. I've attempted to run various versions of PyGObject against the latest g-t-t source and I don't see any crashes when changing backgrounds. Even PyGObject 3.10.2 with latest g-t-t which doesn't include the GIL fix or the hack still does not crash with for me.

I was able to verify PyGObject 3.10.2 with latest g-t-t crashes when changing dconf settings (bug 709876) and updating to PyGObject 3.10.3 fixes that.

Peter,
The core file you provided doesn't have any symbols so I cannot do much with it. Can you provide a backtrace with symbols? Also the output from (my question in comment #14):
$ python -c "import gi; print(gi.version_info)"
Comment 18 Simon Feltman 2013-11-25 11:00:38 UTC
Ugg, version confusion, replace PyGObject 3.10.2 with 3.10.1 in my last reply.
Comment 19 Peter 2013-11-26 07:58:06 UTC
I think I'm running pygobject 3.11.3

output of python -c "import gi; print(gi.version_info)"
(3, 10, 1)

output of python3 -c "import gi; print(gi.version_info)"
(3, 11, 3)

g-t-t 3.10.1-0ubuntu1~saucy1

So does g-t-t use python3 ? If you let me know then i will try the different combinations I mentioned earlier to confirm what works and what doesn't.

How can I build pygobject against python 2 if g-t-t is using that?
Comment 20 John Stowers 2013-11-26 09:46:20 UTC
Gnome tweak tool users python2.

Why it's one of the commands you listed above 'python3' and the other not?
Comment 21 Peter 2013-11-26 11:05:30 UTC
I just ran against both python and python3. So I haven't built pygobject against python2.

So that would explain why the crashes were still happening when I thought I had upgraded to 3.11.3 - I hadn't, it was still using the older one.

Can you tell me how I can build pygobject so it uses python2 not python3?
Comment 22 John Stowers 2013-11-26 11:22:16 UTC
(wow, replying on a phone killed my spelling in that last message)

(In reply to comment #21)
> I just ran against both python and python3. So I haven't built pygobject
> against python2.
> 
> So that would explain why the crashes were still happening when I thought I had
> upgraded to 3.11.3 - I hadn't, it was still using the older one.
> 
> Can you tell me how I can build pygobject so it uses python2 not python3?

Which distro are you on?
Comment 23 Martin Pitt 2013-11-26 11:24:20 UTC
(In reply to comment #21)

> Can you tell me how I can build pygobject so it uses python2 not python3?

  ./configure --with-python=python2

or

  ./autogen.sh --with-python=python2

if you are building from git.
Comment 24 Peter 2013-11-26 16:57:07 UTC
> ./autogen.sh --with-python=python2
>
> if you are building from git.

nice one thanks :)


> Which distro are you on?

I'm on Ubuntu Gnome 14.04
Comment 25 Peter 2013-11-27 11:48:07 UTC
Ok hi guys,

Sorry it took a while I decided to stop using checkinstall to build packages as it left too much crap in the builds, and didn't do it the ubuntu way.

So after building the pygobject the ubuntu way the commands above now return 3, 11, 3 for both of them (yes i know it's only python2 we're concerned about), and the latest build of g-t-t from master works with no crashing when changing desktop background.

This is also the case for pygobject 3.10.3

So yeah we can just go ahead and close this bug now ;)
Comment 26 Simon Feltman 2013-11-27 22:51:41 UTC

*** This bug has been marked as a duplicate of bug 709223 ***