[Bug 1630090] Re: $XMODIFIERS not set correctly
Iain Lane
iain at orangesquash.org.uk
Tue Oct 4 11:36:04 UTC 2016
Just updated the description. The problem is now understood, and we
worked around the upstart bug in gnome-session and im-config.
** Description changed:
+ 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.
** Changed in: im-config (Ubuntu)
Status: New => Fix Committed
** Changed in: upstart (Ubuntu)
Status: New => Triaged
** Changed in: upstart (Ubuntu)
Importance: Undecided => High
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to upstart in Ubuntu.
https://bugs.launchpad.net/bugs/1630090
Title:
$XMODIFIERS not set correctly
Status in im-config package in Ubuntu:
Fix Committed
Status in upstart package in Ubuntu:
Triaged
Bug description:
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.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/im-config/+bug/1630090/+subscriptions
More information about the foundations-bugs
mailing list