チケット #29975

Setting proper timestamp for XEvent in Xwnmo (from forum message #65890 )

登録: 2012-10-29 03:46 最終更新: 2013-08-14 01:38

報告者:
担当者:
チケットの種類:
状況:
オープン [担当者決定済み]
コンポーネント:
(未割り当て)
マイルストーン:
優先度:
4
重要度:
4
解決法:
受領

詳細

フォーラム freewnn-users ML公開 [#65890] からの引用

zephyrus (zephyrus000jp) wrote in [forum: 65890]

/freewnn/FreeWnn/Xwnmo/xwnmo/callback.c We should set timestamp (0 means "current time" and seems a safe choice here) and preferably serial number as well.

  1. *** callback.c~ 2012-10-17 15:56:38.000000000 +0900
  2. --- callback.c 2012-10-17 16:00:31.000000000 +0900
  3. ***************
  4. *** 642,647 ****
  5. --- 642,649 ----
  6. ev.xkey.root = cur_x->root_pointer->root_window;
  7. ev.xkey.state = 0;
  8. ev.xkey.keycode = cur_x->max_keycode + 2;
  9. + ev.xkey.time = 0; /* FIXME */
  10. + ev.xkey.serial = LastKnownRequestProcessed(dpy) /* FIXME */
  11. XSendEvent (dpy, ev.xkey.window, False, NoEventMask, &ev);
  12. XFlush (dpy);
  13. }

Thank you.

添付ファイルリスト

添付ファイルはありません

チケットの履歴 (5 件中 3 件表示)

2012-10-29 03:46 更新者: aonoto
  • 新しいチケット "Setting proper timestamp for XEvent in Xwnmo (from forum message [#65890] )" が作成されました
2012-10-29 03:49 更新者: aonoto
  • 解決法なし から 受領 に更新されました
  • 詳細が更新されました
2012-10-29 04:01 更新者: aonoto
コメント

We cannot cover xwnmo for now, but we try.

Can you explain more information about this change (e.g. pros (and cons if exists), example code I can refer to)?

2013-08-14 01:38 更新者: aonoto
2013-11-25 11:15 更新者: None
コメント

We cannot cover xwnmo for now, but we try. Can you explain more information about this change (e.g. pros (and cons if exists), example code I can refer to)?


This is zephyrus (sorry I am not logged in.)

I just realized there is this question posed to me (more than a year later...) I must have missed it somehow. Sorry about this lapse.

Basically, it seems that some software packages, most notably mozilla Firefox and Thunderbird which I use daily, seem to hold the timestamp of an event that is thrown to them internally. This is used for some internal processing. The problem is that if the timestamp is incorrect and far into the future, this bogus timestamp make Firefox and Thunderbird ignore the valid subsequent events such as for menu handling (showing pull down menu by cliking on a button, for example), thus making GUI unusable.

libX11's libxim module has a similar problem which has been fixed in libX11 trunk at least (I hope the patched version will be picked up by linux distribution soon.) During the debugging efforts that led to the discovery of the bug in libX11, someone noticed there is also a place in Xwnmo where timestamp is not properly set, and so I reported it in this bug report.

A few software packages other than Firefox, and Thunderbird are affected by such bogus timestamps.

GTK library seems to get stuck with a bogus timestamp well into the future, and once that happens, ff/tb and other programs may suffer.

Case in point 1:

A buggy version of unity window manager seems to have generated such events with bogus timestamps, and affected ff/tb.
https://bugs.launchpad.net/ubuntu/+source/unity-2d/+bug/1016386

https://bugs.launchpad.net/ubuntu/+source/unity-2d/+bug/1010466

Case in point 2:

Users of X11 XIM input mechanism including many Chinese and Japanese users. suffer from the symptoms mentioned here due to the bogus timestamps in X11 events passed around during XIM interaction: core libX11 has produced bogus timestamps(!)

https://bugzilla.mozilla.org/show_bug.cgi?id=787943

https://bugs.freedesktop.org/show_bug.cgi?id=39367

So I reported the bug.

TIA

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする