[Bug 1838358] [NEW] Ibus causes gnome-shell to freeze when password fields are selected in Firefox
Launchpad Bug Tracker
1838358 at bugs.launchpad.net
Tue Jul 30 04:29:41 UTC 2019
You have been subscribed to a public bug by Ubuntu Foundations Team Bug Bot (crichton):
[Impact]
The following has been seen in a VMware Horizon VDI. I cannot reproduce this
issue myself.
When a user interacts with any password field in Firefox, gnome-shell
and Firefox both freeze and the system becomes unusable. If you ssh into
the system and terminate Firefox, gnome-shell unfreezes.
This only happens when the environment variable GTK_IM_MODULE is set to "ibus". If you unset the variable, or change it to
GTK_IM_MODULE=gtk-im-context-simple and then start Firefox, everything works as intended.
This has been seen before with gnome-shell 3.28.4-0ubuntu18.04.1, ibus
1.5.17-3ubuntu4 and Firefox versions starting with 68.0+build3-0ubuntu0.18.04.1
Note: Chrome[ium] and other applications do not trigger it, and it cannot be
reproduced in other desktop environments.
This seems to be an interaction issue between ibus and gnome-shell.
[Fix]
When ibus is built with the patch ibus-xx-f19-password.patch which was
dropped in ibus-1.5.17-2, the problem is solved.
ibus-xx-f19-password.patch checks to see if the GTK version is at or
above 3.6, and if it is, checks to see if the input purpose is for a
password field. If it is, then no further action is taken by ibus.
[Testcase]
Launch firefox from within a gnome-session, making sure the
GTK_IM_MODULE is set to "ibus". Note, this is the default value.
$ env GTK_IM_MODULE="ibus" firefox
Navigate to any website which has a password field. Wikipedia or Reddit
will do.
Click a password field and attempt to enter text. Firefox and gnome-
shell both lock up and stay frozen for an extended period of time.
With the test package which includes ibus-xx-f19-password.patch, gnome-shell
and Firefox do not lock up and everything works as intended.
Test package is available here:
https://launchpad.net/~mruffell/+archive/ubuntu/sf235370-test
[Regression Potential]
This has a low to medium risk of regression, and is limited to inputs to
password fields in all applications, including the gnome-shell lock screen.
This patch has been extensively tested and it is present in the
following Ubuntu releases:
artful: 1.5.14-2ubuntu1
zesty: 1.5.14-2ubuntu1
yakkety: 1.5.11-1ubuntu3
xenial: 1.5.11-1ubuntu2
wily: 1.5.10-1ubuntu1
vivid: 1.5.9-1ubuntu3
utopic: 1.5.8-2ubuntu2
trusty: 1.5.5-1ubuntu3.2
The patch was introduced in trusty, and removed in bionic. I feel that the risk of reintroducing the patch is low, since the use case of the software is the same as previous releases in regards to input software and input language
selection.
I still acknowledge a potential risk of regression when users change their
input engines to non defaults and pair it with non default input languages.
In the event of regression ibus can be temporarily be disabled via an
environment variable and the patch dropped in any subsequent packages.
[Notes]
This patch will not be needed in newer versions of ibus as an official
workaround has been implemented as of ibus-1.5.19.
https://github.com/ibus/ibus/commit/f328fd67f479faa46ca87bf3c85eed7080ec5ec0
If problems arise with password input fields in ibus versions 1.5.19 or
later, which are found in cosmic onward, environment variables can be
set that have the same effect as ibus-xx-f19-password.patch.
env IBUS_DISCARD_PASSWORD=1 firefox
or
export IBUS_DISCARD_PASSWORD_APPS='firefox,.*chrome.*'
** Affects: ibus (Ubuntu)
Importance: Undecided
Status: Confirmed
** Affects: ibus (Ubuntu Bionic)
Importance: Medium
Assignee: Matthew Ruffell (mruffell)
Status: In Progress
** Tags: patch sts sts-sponsor
--
Ibus causes gnome-shell to freeze when password fields are selected in Firefox
https://bugs.launchpad.net/bugs/1838358
You received this bug notification because you are a member of Ubuntu Sponsors Team, which is subscribed to the bug report.
More information about the Ubuntu-sponsors
mailing list