Bug#744763: gnome-terminal: GLib-GIO-CRITICAL messages from gnome-terminal-server
Dominique Brazziel
dbrazziel at snet.net
Mon Apr 14 13:32:28 UTC 2014
Package: gnome-terminal
Version: 3.10.1-1
Severity: normal
Dear Maintainer,
Following the following libglib2.0-0 upgrade to my testing system
on 4/10/14
[UPGRADE] libglib2.0-0:i386 2.38.2-5 -> 2.40.0-2
every time a new terminal window or tab is opened
messages of the following type are sent to the message log:
(gnome-terminal-server:3575): GLib-GIO-CRITICAL **: g_settings_get: the format string may not contain '&'
(key 'title' from schema 'org.gnome.Terminal.Legacy.Profile').
This call will probably stop working with a future version of glib.
The 'key' in the message has also been seen to be 'monospace-font-name',
'font', and other gsettings keys pertaining to initializing a new terminal
instance. I think the glib fix which triggered this behavior is this one
(from the libglib2.0-0 changelog):
commit 0f1579e62cded436c3fbfbeaf3130c8d8ffcb01c
Author: Lars Uebernickel <lars at uebernic.de>
AuthorDate: Sun Dec 8 17:30:33 2013 +0100
Commit: Lars Uebernickel <lars at uebernic.de>
CommitDate: Mon Dec 9 15:51:56 2013 +0100
g_settings_get: only check for non-copying format string
396d40af introduced a redundant call to
g_variant_check_format_string().
Checking whether the format string copies all values is enough.
https://bugzilla.gnome.org/show_bug.cgi?id=719979
gio/gsettings.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
>From the bugzilla bug listed, we see:
g_settings_get: check validity of format string
Allow only format strings that copy all values (i.e, don't contain '&'),
as the returned pointers might become invalid in some rare cases.
<* snip *>
From a quick scan for 'g_settings_get' in the gnome-terminal source
we find the following calls using format string "&s":
grep -r 'g_settings_get (' *
src/terminal-prefs.c: g_settings_get (profile, TERMINAL_PROFILE_VISIBLE_NAME_KEY, "&s", &text);
src/terminal-prefs.c: g_settings_get (selected_profile, TERMINAL_PROFILE_VISIBLE_NAME_KEY, "&s", &name);
src/migration.c: g_settings_get (settings, TERMINAL_PROFILE_VISIBLE_NAME_KEY, "&s", &name);
src/terminal-window.c: g_settings_get (profile, TERMINAL_PROFILE_VISIBLE_NAME_KEY, "&s", &visible_name);
src/terminal-app.c: g_settings_get (settings, key, "^a&s", &encodings);
src/terminal-app.c: g_settings_get (app->desktop_interface_settings, MONOSPACE_FONT_KEY_NAME, "&s", &font);
src/terminal-util.c: g_settings_get (child_settings, "host", "&s", &host);
src/terminal-util.c: g_settings_get (child_settings, "authentication-user", "&s", &user);
src/terminal-util.c: g_settings_get (child_settings, "authentication-password", "&s", &password);
src/terminal-util.c: g_settings_get (proxy_settings, "autoconfig-url", "&s", &url);
src/terminal-util.c: g_settings_get (proxy_settings, "ignore-hosts", "^a&s", &ignore);
src/terminal-screen.c: g_settings_get (priv->profile, TERMINAL_PROFILE_TITLE_KEY, "&s", &static_title);
src/terminal-screen.c: g_settings_get (profile, TERMINAL_PROFILE_ENCODING, "&s", &str);
src/terminal-screen.c: g_settings_get (profile, TERMINAL_PROFILE_WORD_CHARS_KEY, "&s", &string);
src/terminal-screen.c: g_settings_get (profile, TERMINAL_PROFILE_FONT_KEY, "&s", &font);
src/terminal-screen.c: g_settings_get (profile, TERMINAL_PROFILE_CUSTOM_COMMAND_KEY, "&s", &argv_str);
src/terminal-screen.c: g_settings_get (priv->profile, TERMINAL_PROFILE_NAME_KEY, "&s", &profile_id);
src/terminal-profiles-list.c: g_settings_get (a, TERMINAL_PROFILE_VISIBLE_NAME_KEY, "&s", &na);
src/terminal-profiles-list.c: g_settings_get (b, TERMINAL_PROFILE_VISIBLE_NAME_KEY, "&s", &nb);
Perhaps 's/"&s"/"s"/' would fix this?
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 3.13-1-686-pae (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_US.UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages gnome-terminal depends on:
ii dconf-gsettings-backend [gsettings-backend] 0.18.0-1
ii gconf-service 3.2.6-2
ii gnome-terminal-data 3.10.1-1
ii gsettings-desktop-schemas 3.8.2-2
ii libatk1.0-0 2.12.0-1
ii libc6 2.18-4
ii libdconf1 0.18.0-1
ii libgconf-2-4 3.2.6-2
ii libglib2.0-0 2.40.0-2
ii libgtk-3-0 3.12.0-4
ii libpango-1.0-0 1.36.3-1
ii libuuid1 2.20.1-5.7
ii libvte-2.90-9 1:0.34.9-1
ii libx11-6 2:1.6.2-1
Versions of packages gnome-terminal recommends:
ii dbus-x11 1.8.0-3
ii gvfs 1.20.0-1+b1
ii yelp 3.12.0-1
gnome-terminal suggests no packages.
-- no debconf information
More information about the pkg-gnome-maintainers
mailing list