Activity log for bug #1630090

Date Who What changed Old value New value Message
2016-10-04 02:40:28 Gunnar Hjalmarsson bug added bug
2016-10-04 02:41:37 Gunnar Hjalmarsson bug added subscriber Iain Lane
2016-10-04 10:15:45 Iain Lane bug task added upstart (Ubuntu)
2016-10-04 11:35:37 Iain Lane description The XMODIFIERS environment variable is not set correctly. $ echo $XMODIFIERS @im $ The value should be - for ibus: "@im=ibus" - for fcitx: "@im=fcitx" - for xim: "@im=none" The issue is present in Ubuntu/Unity 16.10. I don't see it in Ubuntu GNOME, neither in Ubuntu 16.04. Actually I don't think the affected package is im-config, because the issue is present also after having downgraded im-config to 0.29-1ubuntu12 (the Xenial version). But I wanted to file the bug somewhere, so here it is. When "initctl set-env -g" is called, upstart calls D-Bus to also update its activation environment (the environment that D-Bus activated services get). There is a bug here: - SetEnv takes a parameter of the form "VARIABLE=VALUE" - This is split on "=" to determine the two parts - If the VALUE has an "=" character in it, everything after the first "=" is lost, because all "=" characters are split and not the first one In this case, XMODIFIERS=@im=ibus was being turned into XMODIFIERS=@im. upstart should only split on the first "=", and keep the rest of the string unsplit. It doesn't look like nih_str_split is going to be very helpful here. [ Original description ] The XMODIFIERS environment variable is not set correctly. $ echo $XMODIFIERS @im $ The value should be - for ibus: "@im=ibus" - for fcitx: "@im=fcitx" - for xim: "@im=none" The issue is present in Ubuntu/Unity 16.10. I don't see it in Ubuntu GNOME, neither in Ubuntu 16.04. Actually I don't think the affected package is im-config, because the issue is present also after having downgraded im-config to 0.29-1ubuntu12 (the Xenial version). But I wanted to file the bug somewhere, so here it is.
2016-10-04 11:35:40 Iain Lane im-config (Ubuntu): status New Fix Committed
2016-10-04 11:36:11 Iain Lane upstart (Ubuntu): status New Triaged
2016-10-04 11:36:13 Iain Lane upstart (Ubuntu): importance Undecided High
2016-10-04 13:13:38 Launchpad Janitor im-config (Ubuntu): status Fix Committed Fix Released
2016-10-04 15:35:57 Iain Lane summary $XMODIFIERS not set correctly Upstart sets D-Bus activation environment incorrectly if variable's value contains an "=" (was: $XMODIFIERS not set correctly)