GNOME Bugzilla – Bug 451989
assertion `key_file != NULL' failed
Last modified: 2007-08-09 23:22:52 UTC
The bug has been opened on https://bugs.launchpad.net/ubuntu/+source/gdm/+bug/121119 "Found in gutsy, gdm version: 2.19.3-0ubuntu1. Every time I boot, I get the following in my daemon.log: Jun 18 22:24:04 snifer-laptop gdm[5177]: GLib-CRITICAL: g_key_file_get_string: assertion `key_file != NULL' failed Jun 18 22:24:04 snifer-laptop gdm[5177]: GLib-CRITICAL: g_key_file_get_string: assertion `key_file != NULL' failed Jun 18 22:24:04 snifer-laptop gdm[5177]: GLib-CRITICAL: g_key_file_free: assertion `key_file != NULL' failed"
Could you track down which configuration file and which keys are causing this problem? If you turn on debug enable=true in your GDM configuration, the system log might help show which ones are causing problems.
the line before the warnings is "DEBUG: Attempting to parse key string: GdmGreeterTheme/Greeter" "$ gdmflexiserver --command="GET_CONFIG GdmGreeterTheme/Greeter" ERROR 50 Unsupported key <GdmGreeterTheme/Greeter>"
GdmGreeterTheme/Greeter is specific to the graphical themes and it is not stored in the daemon configuration file so the output of gdmflexiserver --command="GET_CONFIG GdmGreeterTheme/Greeter" is correct - the configuration key you trying to request does not exist there. It can be found in GdmGreeterTheme.desktop file in each of the themes directories. Can you check if the syntax of the file is correct for the theme(s) you are using? For some reason I cant replicate your problem
GdmGreeterTheme.desktop: [GdmGreeterTheme] Greeter=Human.xml Name=Human Description=Ubuntu Default Welcome Theme Description[fr]=Thème de bienvenue par défaut d'Ubuntu Author=Jeff Waugh, Mark Shuttleworth, Jozef Mak, Jonathan Austin, Frank Schoep Copyright=(c) 2004-2006 Canonical Ltd. Screenshot=screenshot.png
I managed to replicate your problem which i think its caused by a wrong file permissions. What the error suggests is that the file cannot be opened (assertion `key_file != NULL' failed). The code seems to check only for the file existence (F_OK) not if the file i readable. Make sure that the user under which gdmgreeter is running (usually gdm) can read that file, as its not the daemon but greeter that needs to read it. Brian maybe it would be a good idea to check for R_OK rather than F_OK in gui/gdmconfig.c when reading the themes (and maybe provide more relevan error message).
Created attachment 90994 [details] [review] Build against todays svn head Attached quick fix for the bug
Ok, this patch is upstream. Thanks Lukasz. I'm marking this as fixed. If there is still a problem, please reopen.
There is no new debug message with the patch and the configuration files can be read by any user, reopening the bug
Sebastien can you mail me the theme you are using and the permissions that are set on the dir/files please.
That happens using the upstream gdm circle theme, what directory and files do you want to know about? /etc/gdm and all the files it contains are u+r
Does gdmflexiserver actually know to read the theme configuration file? It wouldn't surprise me if it is hardcoded to only know about the main GDM configuration files. Remember the configuration engine was rewritten by William Jon McCann recently, so if this used to work and doesn't with the latest GDM 2.19 builds, I'd be this got lost in the rewrite. Adding William on the cc: list.
Hmmm circle theme works fine for me (no errors)
*** This bug has been marked as a duplicate of 453916 ***