(In reply to Karl Tomlinson (:karlt) from comment #66) > Comment on attachment 681454 > fix for gconf v2 > > >+ /* This check is to avoid bug #541130 when old version of gnomevfs (2.16 > >tested) > >+ is installed then error window pops up if scheme is containing '+' > >character. > >+ Let's pretend these kind of schemes are not supported by gnomevfs. */ > > Are you sure gnomevfs is involved in gconf_client_get_* calls? > Can you point me at the GConf code that uses GnomeVFS, please? Sorry, I've got confused with gnomevfs (for some reason I thought gconf was part of it). The comment is invalid. This is issue with gconf of course. > > > GError *err = nullptr; > > gchar *command = gconf_client_get_string(mClient, key.get(), &err); > > if (!err && command) { > > key.Replace(key.Length() - 7, 7, NS_LITERAL_CSTRING("enabled")); > > Can you explain, please, why a dialog would be shown when there is a GError > parameter passed to the gconf_client_get_* functions? > > (Removing review request for now until we understand what is happening.)
I've looked into it deeper into gconf code and it seems there's a bug with forwarding GError value: gconf_client_get_string(GConfClient* client, const gchar* key, GError** err) { GError* error = NULL; GConfValue* val; g_return_val_if_fail (err == NULL || *err == NULL, NULL); val = gconf_client_get (client, key, error); gconf_client_get (GConfClient* client, const gchar* key, GError** err) { g_return_val_if_fail (GCONF_IS_CLIENT (client), NULL); g_return_val_if_fail (key != NULL, NULL); return gconf_client_get_full (client, key, NULL, TRUE, err); } See passing of error variable, it should most likely be: val = gconf_client_get (client, key, &error); When the error is NULL the handle_error use gconf_client_unreturned_error to emit unreturned error signal which subsequently leads into showing the error message. This is valid for older gconf2 library (in my case GConf2-2.14.0). So the patch is actually workaround for systems where these old libraries are. We should probably push on gconf2 package maintainers to fix this issue in gconf2. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/411358 Title: Thunderbird2 gconf gmt problem 'Bad key or directory name' because of plus symbol (+) To manage notifications about this bug go to: https://bugs.launchpad.net/thunderbird/+bug/411358/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs