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 630207 - gnome-shell from git crashes on start
gnome-shell from git crashes on start
Status: RESOLVED INVALID
Product: gnome-shell
Classification: Core
Component: general
2.31.x
Other Linux
: Normal blocker
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2010-09-20 20:58 UTC by Maciej (Matthew) Piechotka
Modified: 2010-09-22 00:24 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Maciej (Matthew) Piechotka 2010-09-20 20:58:15 UTC
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
Window manager warning: Log level 16: XSetErrorHandler() called with a GDK error trap pushed. Don't do that.
    JS ERROR: !!!   Exception was: Error: Function GConf.notify_add has multiple callbacks, not supported
    JS ERROR: !!!     lineNumber = '0'
    JS ERROR: !!!     fileName = 'gjs_throw'
    JS ERROR: !!!     message = 'Function GConf.notify_add has multiple callbacks, not supported'
    JS ERROR: !!!     stack = 'Error("Function GConf.notify_add has multiple callbacks, not supported")@:0
("Function GConf.notify_add has multiple callbacks, not supported")@gjs_throw:0
Error("Chained exception")@:0
("Chained exception")@gjs_throw:0
()@/usr/share/gnome-shell/js/ui/placeDisplay.js:231
PlacesManager()@/usr/share/gnome-shell/js/ui/placeDisplay.js:121
start()@/usr/share/gnome-shell/js/ui/main.js:124
@<main>:1
'
Window manager warning: Log level 32: Execution of main.js threw exception: Error: Function GConf.notify_add has multiple callbacks, not supported

gconf is from git as gconf 2.31.91 crashes gnome-shell due to lack of GConf.Client.get_default.
Comment 1 Owen Taylor 2010-09-20 21:12:51 UTC

*** This bug has been marked as a duplicate of bug 630195 ***
Comment 2 Maciej (Matthew) Piechotka 2010-09-20 21:18:44 UTC
(In reply to comment #1)
> 
> *** This bug has been marked as a duplicate of bug 630195 ***

I'm not the expert but I was refering to 'Function GConf.notify_add has multiple
callbacks, not supported' not GDK errors which are not mentioned in bug 630195.
Comment 3 Owen Taylor 2010-09-20 21:29:58 UTC
If you have an informed opinion about what is going on, then please quote only the *relevant* parts of the debug output; If I see 100 lines of an error that I've already fixed at the top of an email, I'm not going to bother reading to the bottom. (Debugging would also be appreciated, since nobody using the GNOME shell JHBuild is seeing this backtrace.)
Comment 4 Florian Müllner 2010-09-21 23:58:51 UTC
(In reply to comment #0)
>     JS ERROR: !!!   Exception was: Error: Function GConf.notify_add has
> multiple callbacks, not supported
>     JS ERROR: !!!     lineNumber = '0'
>     JS ERROR: !!!     fileName = 'gjs_throw'
>     JS ERROR: !!!     message = 'Function GConf.notify_add has multiple
> callbacks, not supported'

I actually remember that error - the problem was that gconf_client_notify_add() has scope 'notified', but using GFreeFunc instead of GDestroyNotify, the destroy_notify parameter was incorrectly interpreted as second callback.

This has been fixed quite a while ago though, see bug 617973.


> gconf is from git as gconf 2.31.91 crashes gnome-shell due to lack of
> GConf.Client.get_default.

Using versions other than those in the official GNOME Shell moduleset is not at all encouraged - so gconf from git is fine, but you likely want gobject-introspection and gjs from git as well.
Comment 5 Maciej (Matthew) Piechotka 2010-09-22 00:24:15 UTC
(In reply to comment #3)
> If you have an informed opinion about what is going on, then please quote only
> the *relevant* parts of the debug output; If I see 100 lines of an error that
> I've already fixed at the top of an email, I'm not going to bother reading to
> the bottom. (Debugging would also be appreciated, since nobody using the GNOME
> shell JHBuild is seeing this backtrace.)

1. I'm often asked to provide full log (which was included). Also it is said that it is better to send too much information then too less.
2. Usually the most interesting informations are at the end (like actual error message, who won the contest, that butler was killer etc.)

(In reply to comment #4)
> (In reply to comment #0)
> >     JS ERROR: !!!   Exception was: Error: Function GConf.notify_add has
> > multiple callbacks, not supported
> >     JS ERROR: !!!     lineNumber = '0'
> >     JS ERROR: !!!     fileName = 'gjs_throw'
> >     JS ERROR: !!!     message = 'Function GConf.notify_add has multiple
> > callbacks, not supported'
> 
> I actually remember that error - the problem was that gconf_client_notify_add()
> has scope 'notified', but using GFreeFunc instead of GDestroyNotify, the
> destroy_notify parameter was incorrectly interpreted as second callback.
> 
> This has been fixed quite a while ago though, see bug 617973.
> 

From GConf-2.0.gir:

      <method name="notify_add"
              c:identifier="gconf_client_notify_add"
              throws="1">
        <return-value transfer-ownership="none">
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <parameter name="namespace_section" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="func"
                     transfer-ownership="none"
                     scope="notified"
                     closure="2"
                     destroy="3">
            <type name="ClientNotifyFunc" c:type="GConfClientNotifyFunc"/>
          </parameter>
          <parameter name="user_data" transfer-ownership="none">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="destroy_notify"
                     transfer-ownership="none"
                     scope="notified">
            <type name="GLib.FreeFunc" c:type="GFreeFunc"/>
          </parameter>
        </parameters>
      </method>

Looks fine (i.e. using GFreeFunc).

PS. I tried with gjs from git. I'm not sure why but first time I've tried it (before submiting bug) the same bug was triggered. Now when I tried it second time it worked.

> 
> > gconf is from git as gconf 2.31.91 crashes gnome-shell due to lack of
> > GConf.Client.get_default.
> 
> Using versions other than those in the official GNOME Shell moduleset is not at
> all encouraged - so gconf from git is fine, but you likely want
> gobject-introspection and gjs from git as well.

I don't want to complain too much but how about release of 2.31.6 anytime soon (depending on released versions of gjs/gobject-introspection/...). I'm not willing to have a copy of many modules for many reasons (if anyone wants to ask I can list them).