Opened 11 years ago
Closed 3 years ago
#43267 closed defect (fixed)
glade @3.16.1: crashes on Snow Leopard
Reported by: | cooljeanius (Eric Gallager) | Owned by: | dbevans (David B. Evans) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.2.1 |
Keywords: | Cc: | ||
Port: | glade |
Description
terminal output leading up to the crash:
Local-Admins-MacBook-Pro:trousers-0.3.11.2 ericgallager$ glade ** (glade:58960): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files (glade:58960): GLib-GIO-CRITICAL **: g_settings_schema_source_lookup: assertion 'source != NULL' failed (glade:58960): GLib-GIO-ERROR **: No GSettings schemas are installed on the system Trace/BPT trap
confirming that this is actually the glade from MacPorts:
Local-Admins-MacBook-Pro:trousers-0.3.11.2 ericgallager$ which glade /opt/local/bin/glade Local-Admins-MacBook-Pro:trousers-0.3.11.2 ericgallager$ port provides /opt/local/bin/glade /opt/local/bin/glade is provided by: glade
full crash report is attached.
Attachments (4)
Change History (15)
Changed 11 years ago by cooljeanius (Eric Gallager)
Attachment: | glade_2014-04-07-115518_Local-Admins-MacBook-Pro.crash added |
---|
comment:1 Changed 11 years ago by mf2k (Frank Schima)
Cc: | devans@… removed |
---|---|
Owner: | changed from macports-tickets@… to devans@… |
comment:2 follow-up: 3 Changed 11 years ago by dbevans (David B. Evans)
Thanks for the report but I can't reproduce this result on either Mavericks or Mountain Lion and, unfortunately, I don't have any machines available that will boot Snow Leopard for debugging.
The significant error seems to be
(glade:58960): GLib-GIO-ERROR **: No GSettings schemas are installed on the system
Are there any gsettings schemas installed? On my system after a clean install of glade I see the following but you may see more depending on what else you have installed.
devans$ sudo port deactivate active devans$ sudo port install glade devans$ ls /opt/local/share/glib-2.0/schemas gschema.dtd org.gnome.desktop.enums.xml org.gnome.desktop.thumbnailers.gschema.xml gschemas.compiled org.gnome.desktop.input-sources.gschema.xml org.gnome.desktop.wm.keybindings.gschema.xml org.freedesktop.Geoclue.gschema.xml org.gnome.desktop.interface.gschema.xml org.gnome.desktop.wm.preferences.gschema.xml org.gnome.desktop.a11y.applications.gschema.xml org.gnome.desktop.lockdown.gschema.xml org.gnome.devhelp.gschema.xml org.gnome.desktop.a11y.gschema.xml org.gnome.desktop.media-handling.gschema.xml org.gnome.system.locale.gschema.xml org.gnome.desktop.a11y.keyboard.gschema.xml org.gnome.desktop.notifications.gschema.xml org.gnome.system.proxy.gschema.xml org.gnome.desktop.a11y.magnifier.gschema.xml org.gnome.desktop.privacy.gschema.xml org.gtk.Demo.gschema.xml org.gnome.desktop.a11y.mouse.gschema.xml org.gnome.desktop.screensaver.gschema.xml org.gtk.Settings.ColorChooser.gschema.xml org.gnome.desktop.app-folders.gschema.xml org.gnome.desktop.search-providers.gschema.xml org.gtk.Settings.FileChooser.gschema.xml org.gnome.desktop.background.gschema.xml org.gnome.desktop.session.gschema.xml org.gtk.exampleapp.gschema.xml org.gnome.desktop.datetime.gschema.xml org.gnome.desktop.sound.gschema.xml org.gnome.desktop.default-applications.gschema.xml org.gnome.desktop.thumbnail-cache.gschema.xml
In particular check for org.gtk.Settings.FileChooser.gschema.xml since this is what your crash report seems to indicate is the focus of activity at the time of the crash. It's provided by port gtk3 (glade doesn't provide any schemas of its own). The ones that start with org.gnome.desktop are provided by gsettings-desktop-schemas which should be installed.
If these are present you might try running the following command to make sure that all installed schemas are compiled (check to see that the mod date of gschemas.compiled is more recent than any of the schemas files themselves).
glib-compile-schemas ${prefix}/share/glib-2.0/schemas
If that all seems in order then I suggest rebuilding glade with symbols enabled
sudo port -nsk upgrade --force glade configure.optflags='-O0 -g'
and run the program with gdb to see exactly where and why the program is failing.
Actually you might just want to update your ports tree and force a clean rebuild of glade from source on general principles to make sure that everything is up to date and nothing inappropriate happened in a previous build.
sudo port selfupdate sudo port clean glade sudo port -ns upgrade --force glade
comment:3 Changed 11 years ago by cooljeanius (Eric Gallager)
Replying to devans@…:
Thanks for the report but I can't reproduce this result on either Mavericks or Mountain Lion and, unfortunately, I don't have any machines available that will boot Snow Leopard for debugging.
The significant error seems to be
(glade:58960): GLib-GIO-ERROR **: No GSettings schemas are installed on the systemAre there any gsettings schemas installed? On my system after a clean install of glade I see the following but you may see more depending on what else you have installed.
devans$ sudo port deactivate active devans$ sudo port install glade devans$ ls /opt/local/share/glib-2.0/schemas gschema.dtd org.gnome.desktop.enums.xml org.gnome.desktop.thumbnailers.gschema.xml gschemas.compiled org.gnome.desktop.input-sources.gschema.xml org.gnome.desktop.wm.keybindings.gschema.xml org.freedesktop.Geoclue.gschema.xml org.gnome.desktop.interface.gschema.xml org.gnome.desktop.wm.preferences.gschema.xml org.gnome.desktop.a11y.applications.gschema.xml org.gnome.desktop.lockdown.gschema.xml org.gnome.devhelp.gschema.xml org.gnome.desktop.a11y.gschema.xml org.gnome.desktop.media-handling.gschema.xml org.gnome.system.locale.gschema.xml org.gnome.desktop.a11y.keyboard.gschema.xml org.gnome.desktop.notifications.gschema.xml org.gnome.system.proxy.gschema.xml org.gnome.desktop.a11y.magnifier.gschema.xml org.gnome.desktop.privacy.gschema.xml org.gtk.Demo.gschema.xml org.gnome.desktop.a11y.mouse.gschema.xml org.gnome.desktop.screensaver.gschema.xml org.gtk.Settings.ColorChooser.gschema.xml org.gnome.desktop.app-folders.gschema.xml org.gnome.desktop.search-providers.gschema.xml org.gtk.Settings.FileChooser.gschema.xml org.gnome.desktop.background.gschema.xml org.gnome.desktop.session.gschema.xml org.gtk.exampleapp.gschema.xml org.gnome.desktop.datetime.gschema.xml org.gnome.desktop.sound.gschema.xml org.gnome.desktop.default-applications.gschema.xml org.gnome.desktop.thumbnail-cache.gschema.xml
I have too many ports installed to deactivate everything first, but mine looks like this:
Local-Admins-MacBook-Pro:ClipboardViewer ericgallager$ ls /opt/local/share/glib-2.0/schemas ca.desrt.dconf-editor.gschema.xml org.gnome.desktop.background.gschema.xml org.gnome.desktop.screensaver.gschema.xml org.gnome.gnumeric.gschema.xml gschema.dtd org.gnome.desktop.datetime.gschema.xml org.gnome.desktop.search-providers.gschema.xml org.gnome.gnumeric.plugin.gschema.xml gschemas.compiled org.gnome.desktop.default-applications.gschema.xml org.gnome.desktop.session.gschema.xml org.gnome.system.locale.gschema.xml org.freedesktop.Geoclue.gschema.xml org.gnome.desktop.enums.xml org.gnome.desktop.sound.gschema.xml org.gnome.system.proxy.gschema.xml org.gnome.crypto.pgp.gschema.xml org.gnome.desktop.input-sources.gschema.xml org.gnome.desktop.thumbnail-cache.gschema.xml org.gtk.Demo.gschema.xml org.gnome.desktop.a11y.applications.gschema.xml org.gnome.desktop.interface.gschema.xml org.gnome.desktop.thumbnailers.gschema.xml org.gtk.Settings.ColorChooser.gschema.xml org.gnome.desktop.a11y.gschema.xml org.gnome.desktop.lockdown.gschema.xml org.gnome.desktop.wm.keybindings.gschema.xml org.gtk.Settings.FileChooser.gschema.xml org.gnome.desktop.a11y.keyboard.gschema.xml org.gnome.desktop.media-handling.gschema.xml org.gnome.desktop.wm.preferences.gschema.xml org.gtk.exampleapp.gschema.xml org.gnome.desktop.a11y.magnifier.gschema.xml org.gnome.desktop.notifications.gschema.xml org.gnome.devhelp.gschema.xml org.gnome.desktop.a11y.mouse.gschema.xml org.gnome.desktop.privacy.gschema.xml org.gnome.gnumeric.dialogs.gschema.xml
And the ports that they come from are:
Local-Admins-MacBook-Pro:schemas ericgallager$ ls | xargs port provides /opt/local/share/glib-2.0/schemas/ca.desrt.dconf-editor.gschema.xml is provided by: dconf /opt/local/share/glib-2.0/schemas/gschema.dtd is provided by: glib2 /opt/local/share/glib-2.0/schemas/gschemas.compiled is not provided by a MacPorts port. /opt/local/share/glib-2.0/schemas/org.freedesktop.Geoclue.gschema.xml is provided by: geoclue /opt/local/share/glib-2.0/schemas/org.gnome.crypto.pgp.gschema.xml is provided by: gcr /opt/local/share/glib-2.0/schemas/org.gnome.desktop.a11y.applications.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.a11y.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.a11y.keyboard.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.a11y.magnifier.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.a11y.mouse.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.background.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.datetime.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.default-applications.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.enums.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.input-sources.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.lockdown.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.media-handling.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.notifications.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.privacy.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.screensaver.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.search-providers.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.session.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.sound.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.thumbnail-cache.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.thumbnailers.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.wm.keybindings.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.desktop.wm.preferences.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.devhelp.gschema.xml is provided by: devhelp /opt/local/share/glib-2.0/schemas/org.gnome.gnumeric.dialogs.gschema.xml is provided by: gnumeric /opt/local/share/glib-2.0/schemas/org.gnome.gnumeric.gschema.xml is provided by: gnumeric /opt/local/share/glib-2.0/schemas/org.gnome.gnumeric.plugin.gschema.xml is provided by: gnumeric /opt/local/share/glib-2.0/schemas/org.gnome.system.locale.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gnome.system.proxy.gschema.xml is provided by: gsettings-desktop-schemas /opt/local/share/glib-2.0/schemas/org.gtk.Demo.gschema.xml is provided by: gtk3 /opt/local/share/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml is provided by: gtk3 /opt/local/share/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml is provided by: gtk3 /opt/local/share/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml is provided by: gtk3
Comparing the two, the extra ones in mine are from dconf, gcr, and gnumeric. The only one that you have that I do not is "org.gnome.desktop.app-folders.gschema.xml
". Which port provides that on your system?
In particular check for org.gtk.Settings.FileChooser.gschema.xml since this is what your crash report seems to indicate is the focus of activity at the time of the crash. It's provided by port gtk3
Local-Admins-MacBook-Pro:~ ericgallager$ port contents gtk3 | grep schema /opt/local/share/glib-2.0/schemas/org.gtk.Demo.gschema.xml /opt/local/share/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml /opt/local/share/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml /opt/local/share/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml
So I have it... should I attach it to see if it differs from yours at all? (It is too big to paste the contents of it inline...)
The ones that start with org.gnome.desktop are provided by gsettings-desktop-schemas which should be installed.
Local-Admins-MacBook-Pro:~ ericgallager$ port installed gsettings-desktop-schemas The following ports are currently installed: gsettings-desktop-schemas @3.10.1_1 (active)
If these are present you might try running the following command to make sure that all installed schemas are compiled (check to see that the mod date of gschemas.compiled is more recent than any of the schemas files themselves).
glib-compile-schemas ${prefix}/share/glib-2.0/schemas
The mod date of gschemas.compiled was actually newer than the rest of them, but I ran that command anyways, and it produced these warnings:
Local-Admins-MacBook-Pro:~ ericgallager$ sudo /opt/local/bin/glib-compile-schemas /opt/local/share/glib-2.0/schemas Password: warning: Schema 'org.freedesktop.Geoclue' has path '/apps/geoclue/'. Paths starting with '/apps/', '/desktop/' or '/system/' are deprecated. warning: Schema 'org.gnome.crypto.pgp' has path '/desktop/gnome/crypto/pgp/'. Paths starting with '/apps/', '/desktop/' or '/system/' are deprecated. warning: Schema 'org.gnome.system.locale' has path '/system/locale/'. Paths starting with '/apps/', '/desktop/' or '/system/' are deprecated. warning: Schema 'org.gnome.system.proxy' has path '/system/proxy/'. Paths starting with '/apps/', '/desktop/' or '/system/' are deprecated. warning: Schema 'org.gnome.system.proxy.http' has path '/system/proxy/http/'. Paths starting with '/apps/', '/desktop/' or '/system/' are deprecated. warning: Schema 'org.gnome.system.proxy.https' has path '/system/proxy/https/'. Paths starting with '/apps/', '/desktop/' or '/system/' are deprecated. warning: Schema 'org.gnome.system.proxy.ftp' has path '/system/proxy/ftp/'. Paths starting with '/apps/', '/desktop/' or '/system/' are deprecated. warning: Schema 'org.gnome.system.proxy.socks' has path '/system/proxy/socks/'. Paths starting with '/apps/', '/desktop/' or '/system/' are deprecated.
And glade still crashed after that.
If that all seems in order then I suggest rebuilding glade with symbols enabled
sudo port -nsk upgrade --force glade configure.optflags='-O0 -g'
The glade Portfile actually already sets configure.optflags
to -O0
, so I added some extra -g
flags:
sudo port -nsk upgrade --force glade configure.optflags='-O0 -g3 -ggdb3'
I suppose I can attach my build log from that most recent build, too...
and run the program with gdb to see exactly where and why the program is failing.
Hm, that's strange, when I ran it in gdb
, it worked perfectly fine, but then when I ran it outside of gdb
after that, it crashed again with the same crash, but with a new warning between the accessibility one and the gsettings one:
(glade:22481): Gtk-WARNING **: Attempting to read the recently used resources file at `/Users/ericgallager/.local/share/recently-used.xbel', but the parser failed: Failed to open file '/Users/ericgallager/.local/share/recently-used.xbel': Permission denied.
(somehow it had gotten owned by root...) So, besides that, I will attach the output from gdb
, too... Anyway, the main difference that I noticed was that when running under gdb
, gdb
was controlling glade
's sockets, which prevented it from finding dbus's socket, which therefore kept it from connecting to dbus, but when running normally, it was able to connect to dbus, which then failed to load the accessibility service...
Edit: coincidentally, today I found out, completely unrelatedly, that there is a term for this kind of bug: https://en.wikipedia.org/wiki/Heisenbug
Changed 11 years ago by cooljeanius (Eric Gallager)
Attachment: | schemas.diff added |
---|
diff between devans's schemas and my schemas
Changed 11 years ago by cooljeanius (Eric Gallager)
my log from (successfully) rebuilding glade while forcing debug symbols
Changed 11 years ago by cooljeanius (Eric Gallager)
Attachment: | gdb-output.txt added |
---|
terminal output from running glade in gdb (the actual logfile that got produced was useless)
comment:4 Changed 11 years ago by cooljeanius (Eric Gallager)
still happens after updating glade after r118919 and updating gsettings-desktop-schemas to the most recent version. As compared with the above, port installed gsettings-desktop-shcemas
now says:
Local-Admins-MacBook-Pro:macportsscripts ericgallager$ port installed gsettings-desktop-schemas The following ports are currently installed: gsettings-desktop-schemas @3.10.1_1 gsettings-desktop-schemas @3.12.0_0 (active)
(also I now seem to have the schema that I was missing in my previous post as well, so the diff that I attached should no longer be relevant)
comment:6 follow-up: 7 Changed 10 years ago by dbevans (David B. Evans)
From your debug output, the problem seems to be that the session dbus is not running or at least that's what it says.
$ port notes dbus dbus has the following notes: ############################################################################ # Startup items have been generated that will aid in # starting dbus with launchd. They are disabled # by default. Execute the following commands to start them, # and to cause them to launch at startup: # # sudo launchctl load -w /Library/LaunchDaemons/org.freedesktop.dbus-system.plist # launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist ############################################################################
The second command is the one in question and only needs to be done once. After that the session dbus will start automatically each time you log in until you run the same command with unload instead of load. This is important for all GNOME and KDE apps.
comment:7 Changed 10 years ago by cooljeanius (Eric Gallager)
Replying to devans@…:
From your debug output, the problem seems to be that the session dbus is not running or at least that's what it says.
$ port notes dbus dbus has the following notes: ############################################################################ # Startup items have been generated that will aid in # starting dbus with launchd. They are disabled # by default. Execute the following commands to start them, # and to cause them to launch at startup: # # sudo launchctl load -w /Library/LaunchDaemons/org.freedesktop.dbus-system.plist # launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist ############################################################################The second command is the one in question and only needs to be done once. After that the session dbus will start automatically each time you log in until you run the same command with unload instead of load. This is important for all GNOME and KDE apps.
I had already done that, but I tried it again just in case:
$ sudo launchctl load -w /Library/LaunchDaemons/org.freedesktop.dbus-system.plist org.freedesktop.dbus-system: Already loaded ericgallagersMacBookPro:~ ericgallager$ launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist org.freedesktop.dbus-session: Already loaded
Note that glade was only unable to connect to dbus when run from with gdb; when run outside of gdb, it is able to connect, and I think that that is what is making it crash...
comment:8 Changed 10 years ago by cooljeanius (Eric Gallager)
After learning about the G_DBUS_DEBUG
env variable in #45309, I tried setting that to address
as in that ticket, which led to the following output leading up to the crash:
$ glade GDBus-debug:Address: In g_dbus_address_get_for_bus_sync() for bus type 'session' GDBus-debug:Address: env var DBUS_SESSION_BUS_ADDRESS='/tmp/launch-rjHVv7/unix_domain_listener' GDBus-debug:Address: env var DBUS_SYSTEM_BUS_ADDRESS is not set GDBus-debug:Address: env var DBUS_STARTER_BUS_TYPE is not set GDBus-debug:Address: Returning address '/tmp/launch-rjHVv7/unix_domain_listener' for bus type 'session' (glade:81568): GLib-GObject-WARNING **: The property GtkWidget:margin-left is deprecated and shouldn't be used anymore. It will be removed in a future version. (glade:81568): GLib-GObject-WARNING **: The property GtkButton:xalign is deprecated and shouldn't be used anymore. It will be removed in a future version. (glade:81568): GLib-GObject-WARNING **: The property GtkButton:use-stock is deprecated and shouldn't be used anymore. It will be removed in a future version. (glade:81568): GLib-GObject-WARNING **: The property GtkSettings:gtk-button-images is deprecated and shouldn't be used anymore. It will be removed in a future version. GDBus-debug:Address: In g_dbus_address_get_for_bus_sync() for bus type 'session' GDBus-debug:Address: env var DBUS_SESSION_BUS_ADDRESS='/tmp/launch-rjHVv7/unix_domain_listener' GDBus-debug:Address: env var DBUS_SYSTEM_BUS_ADDRESS is not set GDBus-debug:Address: env var DBUS_STARTER_BUS_TYPE is not set GDBus-debug:Address: Returning address '/tmp/launch-rjHVv7/unix_domain_listener' for bus type 'session' Error creating proxy: Address element '/tmp/launch-rjHVv7/unix_domain_listener' does not contain a colon (:) (g-io-error-quark, 13) GDBus-debug:Address: In g_dbus_address_get_for_bus_sync() for bus type 'system' GDBus-debug:Address: env var DBUS_SESSION_BUS_ADDRESS='/tmp/launch-rjHVv7/unix_domain_listener' GDBus-debug:Address: env var DBUS_SYSTEM_BUS_ADDRESS is not set GDBus-debug:Address: env var DBUS_STARTER_BUS_TYPE is not set GDBus-debug:Address: Returning address 'unix:path=/var/run/dbus/system_bus_socket' for bus type 'system' (glade:81568): GLib-GIO-ERROR **: No GSettings schemas are installed on the system Trace/BPT trap
comment:9 Changed 3 years ago by cooljeanius (Eric Gallager)
Update: glade no longer crashes on me now that I am on Big Sur, however, it may very well continue to crash if I revived my Snow Leopard computer and went back to that. I can see cases for either closing this bug or leaving it open.
comment:10 Changed 3 years ago by evanmiller (Evan Miller)
I have tested glade 3.36 on on Snow Leopard and it works just fine. So I suggest closing this issue.
comment:11 Changed 3 years ago by reneeotten (Renee Otten)
Resolution: | → fixed |
---|---|
Status: | new → closed |
glade crash report