Bug#590534: gdm3 changes xkb
Cyril Brulebois
kibi at debian.org
Thu Jan 20 00:34:14 UTC 2011
Cyril Brulebois <kibi at debian.org> (19/01/2011):
> New protocol:
> * Restart gdm3.
> * Make sure the options are set appropriately.
> * Pick a user.
Tada, you lost already.
To narrow it down:
* Restart gdm3
* Attach gdm-simple-greeter:
gdb attach $(pidof gdm-simple-greeter)
b gdm_layout_activate
c
* Pick a user, notice the password prompt doesn't show
up. Breakpoint's been reached.
* p *config → options is 0.
Unsurprisingly, gui/simple-greeter/gdm-layouts.c says:
| void
| gdm_layout_activate (const char *layout)
| {
| #ifdef HAVE_LIBXKLAVIER
| XklConfigRec *config;
| char *p;
|
| init_xkl ();
|
| config = xkl_config_rec_new ();
| config->model = g_strdup (initial_config->model);
|
| if (layout == NULL) {
| config->layouts = g_strdupv (initial_config->layouts);
| config->variants = g_strdupv (initial_config->variants);
| config->options = g_strdupv (initial_config->options);
Here you'd get options.
| } else {
| config->layouts = g_new0 (char *, 2);
| config->layouts[0] = g_strdup (layout);
|
| p = strchr (config->layouts[0], '\t');
| if (p != NULL) {
| config->variants = g_new0 (char *, 2);
| config->layouts[0][p - config->layouts[0]] = 0;
| config->variants[0] = g_strdup (p + 1);
| }
Here you're fucked.
| }
|
| xkl_config_rec_activate (config, engine);
|
| g_object_unref (config);
| #endif
| }
KiBi.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-gnome-maintainers/attachments/20110120/227c2dfb/attachment-0001.pgp>
More information about the pkg-gnome-maintainers
mailing list