一些gtk2 based 的程式, 像是 mousepad, leafpad, sylpheed-claws 如果讀到一些字元(除了英文字母外), 就會莫名奇妙 crash 並有下面的訊息
- 代碼: 選擇全部
The program 'mousepad' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadLength (poly request too large or internal Xlib length erro'.
(Details: serial 1043 error_code 16 request_code 154 minor_code 20)
(Note to programmers: normally, X errors are reported asynchronously;
that is, you will receive the error a while after causing it.
To debug your program, run it with the --sync command line
option to change this behavior. You can then get a meaningful
backtrace from your debugger if you break on the gdk_x_error() function.)
用 gdb 跑到 crash 後用 bt, 結果說 no stack
所以有幾個問題:
1. 大家有碰過類似的問題嗎, 我找google 大多是 gnome 的forum 才有這類的問題, 而從來沒有在 qt/kde based 的程式發生
2. 如果要讓 bt 有作用 (找的到stack?) 要將哪個程式的 debug 功能開啟呢?
gtk2 ? or glib2 ? or any others?
煩請大家指教