gnr*_*gnr 8 linux x11 tk-toolkit tkinter python-3.x
我有一个相当复杂的GUI,通过tkinter在Linux 上运行的python编写,其中一个组件(具有经常更新的Text小部件)导致GUI不经常崩溃(每天一次).
guis正在通过X11和Gnome 2.28.2在Mac OSX上运行,并且具有相同的行为.我的python版本是3.3,tk/tcl版本是8.5.我得到的错误是:
X Error of failed request: BadIDChoice (invalid resource ID chosen for this connection)
Major opcode of failed request: 148 (RENDER)
Minor opcode of failed request: 4 (RenderCreatePicture)
Resource id in failed request: 0x116517f
Serial number of failed request: 15106831
Current serial number in output stream: 15106872
Run Code Online (Sandbox Code Playgroud)
一个strace样子:
11:03:29.632041 recvfrom(13, 0x3bae1d4, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
11:03:29.632059 recvfrom(13, 0x3bae1d4, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
11:03:29.632147 poll([{fd=13, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=13, revents=POLLOUT}])
11:03:29.632164 writev(13, [{"\224\4\5\0D\304\361\0\17\274\361\0i\4\0\0\0\0\0\0\224\27\n\0\3\f\340\0\301\v\340\0"..., 5032}, {NULL, 0}, {"", 0}], 3) = 5032
11:03:29.632193 poll([{fd=13, events=POLLIN}], 1, -1) = 1 ([{fd=13, revents=POLLIN}])
11:03:29.637040 recvfrom(13, "\0\16\302\276x\304\361\0\4\0\224\0\1\0\0\0`\16\330\3\1\0\0\0\243\304\342\210\377\177\0\0"..., 4096, 0, NULL, NULL) = 136
11:03:29.637135 open("/usr/share/X11/XErrorDB", O_RDONLY) = 35
11:03:29.637217 fstat(35, {st_mode=S_IFREG|0644, st_size=41532, ...}) = 0
11:03:29.637360 read(35, "!\n! Copyright 1993, 1995, 1998 "..., 41532) = 41532
11:03:29.637387 close(35) = 0
11:03:29.637820 write(2, "X Error of failed request: BadI"..., 91) = 91
...
Run Code Online (Sandbox Code Playgroud)
我的GUI是单线程的(并使用after()调用来监视I/O的套接字).
有谁知道什么可能是错的?有没有更好的调试,我可以做出来找出该X Error部分的含义?
偶尔发生崩溃(每天一次),日志如下......
X Error of failed request: BadIDChoice (invalid resource ID chosen for this connection)
Major opcode of failed request: 148 (RENDER)
Minor opcode of failed request: 4 (RenderCreatePicture)
Run Code Online (Sandbox Code Playgroud)
...似乎是以下线程中 xcb提到的已知问题的明显特征:
它的补丁可以在这里找到。
根据 git 历史记录,这个 xcb bug 应该在libX11-1.1.99.28 年前及以上版本得到修复。
如需进一步参考,请参阅包含完整讨论的电子邮件线程。
| 归档时间: |
|
| 查看次数: |
353 次 |
| 最近记录: |