#71 closed defect (fixed)
X Error when starting DDT debugger
Reported by: | angelv | Owned by: | Antoine Martin |
---|---|---|---|
Priority: | major | Milestone: | 0.0.7.x |
Component: | client | Version: | |
Keywords: | Cc: |
Description (last modified by )
Hi,
I'm trying to run DDT under xpra, but I get the following error:
$ DISPLAY=:100 /home/angelv/ddt/bin/ddt X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 42 (X_SetInputFocus) Serial number of failed request: 22 Current serial number in output stream: 24 $
This is in a Ubuntu 11.04 (x86_64) box, running xpra v0.0.7.33. I include below the xpra log, in case it can shed some light into the issue.
Thanks a lot,
Ángel de Vicente
======================== [dix] Could not init font path element /usr/share/fonts/X11/cyrillic, removing from list! [dix] Could not init font path element /usr/share/fonts/X11/100dpi/:unscaled, removing from list! [dix] Could not init font path element /usr/share/fonts/X11/75dpi/:unscaled, removing from list! [dix] Could not init font path element /usr/share/fonts/X11/100dpi, removing from list! [dix] Could not init font path element /usr/share/fonts/X11/75dpi, removing from list! Xlib: extension "RANDR" missing on display ":100". Xlib: extension "RANDR" missing on display ":100". Xlib: extension "RANDR" missing on display ":100". Randr not supported: X server does not support required extension Randr randr enabled: False using notification forwarder xpra is ready. New connection received Handshake complete; enabling connection encoding set to rgb24, client supports ['rgb24', 'jpeg', 'png'], server supports ['rgb24', 'jpeg', 'png'] using client supplied mmap file=/tmp/xpra.5wk28s.mmap, size=134217728 client resolution is [2560, 1024], current server resolution is 3840x2560 setting key repeat rate from client: 500 / 33 ['setxkbmap', '-rules', 'evdev', '-model', 'dellsk8125', '-layout', 'es'] ['xkbcomp', '-', ':100'] with stdin=xkb_keymap {\n xkb_keycodes { .. set_keycodes: no free keycodes!, cannot translate 231: [[65385, 'Cancel', 231, 0, 0]] set_keycodes: no free keycodes!, cannot translate 233: [[269025026, 'XF86MonBrightnessUp', 233, 0, 0]] set_keycodes: no free keycodes!, cannot translate 235: [[269025113, 'XF86Display', 235, 0, 0]] set_keycodes: no free keycodes!, cannot translate 237: [[269025030, 'XF86KbdBrightnessDown', 237, 0, 0]] /usr/lib/python2.7/dist-packages/wimpiggy/prop.py:165: GtkWarning: /build/buildd/gtk+2.0-2.24.4/gdk/x11/gdkproperty-x11.c:325 invalid X atom: 8388609 return str(get_pyatom(disp, struct.unpack("@I", d)[0])) /usr/lib/python2.7/dist-packages/wimpiggy/prop.py:165: GtkWarning: /build/buildd/gtk+2.0-2.24.4/gdk/x11/gdkproperty-x11.c:325 invalid X atom: 2047 return str(get_pyatom(disp, struct.unpack("@I", d)[0])) /usr/lib/python2.7/dist-packages/wimpiggy/prop.py:165: GtkWarning: /build/buildd/gtk+2.0-2.24.4/gdk/x11/gdkproperty-x11.c:325 invalid X atom: 4157174968 return str(get_pyatom(disp, struct.unpack("@I", d)[0])) /usr/lib/python2.7/dist-packages/wimpiggy/prop.py:165: GtkWarning: /build/buildd/gtk+2.0-2.24.4/gdk/x11/gdkproperty-x11.c:325 invalid X atom: 4180777408 return str(get_pyatom(disp, struct.unpack("@I", d)[0])) Unhandled error while processing packet from peer Traceback (most recent call last): File "/usr/lib/xpra/xpra/protocol.py", line 286, in _process_packet self._process_packet_cb(self, decoded) File "/usr/lib/xpra/xpra/server.py", line 1838, in process_packet self._packet_handlers[packet_type](self, proto, packet) File "/usr/lib/xpra/xpra/server.py", line 1530, in _process_map_window window = self._id_to_window[id] KeyError: 2
Change History (11)
comment:1 Changed 9 years ago by
Description: | modified (diff) |
---|---|
Owner: | changed from Antoine Martin to Antoine Martin |
Status: | new → accepted |
comment:2 Changed 9 years ago by
comment:3 Changed 9 years ago by
Not sure what the ddt/bin/ddt
script does that causes problems, but launching ddt/libexec/ddt.bin
works ok. Is that enough to get you going? Or do you really need those bits?
It does some LD_LIBRARY_PATH
trickery to include its own copy of shared libraries (qt, GL and others) - this is generally a big no-no, only a proprietary app can get away with nasty hacks like these.
I even managed to crash the whole server by running the server with GDK_SYNCHRONIZE=1 xpra start :7 --no-daemon
here is the gdb backtrace:
(gdb) bt #0 g_logv (log_domain=0x3157281b57 "Gdk", log_level=<optimized out>, format=0x31572a075e "%s", args1=0x7ffffd540cf8) at gmessages.c:577 #1 0x000000315464d6a2 in g_log (log_domain=<optimized out>, log_level=<optimized out>, format=<optimized out>) at gmessages.c:591 #2 0x000000315726ab2b in gdk_x_error (error=<optimized out>, display=<optimized out>) at gdkmain-x11.c:486 #3 gdk_x_error (display=<optimized out>, error=<optimized out>) at gdkmain-x11.c:456 #4 0x00000036cae4810f in _XError (dpy=0xf83ec0, rep=<optimized out>) at XlibInt.c:1583 #5 0x00000036cae44f91 in handle_error (dpy=0xf83ec0, err=0x12aee90, in_XReply=<optimized out>) at xcb_io.c:166 #6 0x00000036cae45ee7 in _XReply (dpy=0xf83ec0, rep=0x7ffffd541000, extra=0, discard=1) at xcb_io.c:634 #7 0x00000036cae28f70 in XGetGeometry (dpy=0xf83ec0, d=12582915, root=0x7ffffd541090, x=0x7ffffd541098, y=0x7ffffd54109c, width=0x7ffffd5410a0, height=0x7ffffd5410a4, borderWidth=0x7ffffd5410a8, depth=0x7ffffd5410ac) at GetGeom.c:47 #8 0x0000003157274a75 in gdk_window_x11_get_geometry (depth=0x7ffffd54115c, height=0x7ffffd541158, width=0x7ffffd541154, y=0x7ffffd541150, x=0x7ffffd54114c, window=0x1117900 [GdkWindow]) at gdkwindow-x11.c:2837 #9 gdk_window_x11_get_geometry (window=0x1117900 [GdkWindow], x=0x7ffffd54114c, y=0x7ffffd541150, width=0x7ffffd541154, height=0x7ffffd541158, depth=0x7ffffd54115c) at gdkwindow-x11.c:2820 #10 0x000000315724400c in IA__gdk_window_get_geometry (window=0x1117900 [GdkWindow], x=0x7ffffd54114c, y=0x7ffffd541150, width=0x7ffffd541154, height=0x7ffffd541158, depth=0x7ffffd54115c) at gdkwindow.c:8275 #11 0x00007fd38d0a5d3a in _wrap_gdk_window_get_geometry (self=0x11edbe0) at gdkwindow.override:404 #12 0x00000036d76dfb13 in call_function (oparg=<optimized out>, pp_stack=0x7ffffd541258) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4074 #13 PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740 #14 0x00000036d76e0580 in fast_function (nk=<optimized out>, na=2, n=<optimized out>, pp_stack=0x7ffffd541398, func=<function at remote 0x10656e0>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4176 #15 call_function (oparg=<optimized out>, pp_stack=0x7ffffd541398) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4111 #16 PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740 #17 0x00000036d76e15a5 in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=3, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at /usr/src/debug/Python-2.7.2/Python/ceval.c:3330 #18 0x00000036d766dc2c in function_call (func=<function at remote 0x1065320>, arg=(<XpraServer(keys_timedout={}, _id_to_window={1: <WindowModel(_input_field=1, _gproperties={'user-friendly-size': (122, 69), 'iconic': False, 'client-window': <gtk.gdk.Window at remote 0x1062550>, 'size-hints': <WMSizeHints(max_aspect_ratio=None, min_aspect_ratio=None, base_size=(19, 4), min_aspect=None, max_aspect=None, min_size=(25, 17), resize_inc=(6, 13), max_size=None) at remote 0x105aed0>, 'title': u'antoine@desktop:~/ddt', 'group-leader': None, 'client-machine': u'desktop', 'pid': 10712, 'state': frozenset([]), 'strut': None, 'icon-pixmap': None, 'owner': <DesktopManager(_models={<...>: <AdHocStruct(shown=True, geom=(2, 23, 751, 901), window=<gtk.gdk.Window at remote 0x10627d0>) at remote 0x10a61d0>, <WindowModel(_input_field=1, _gproperties={'user-friendly-size': (80, 24), 'iconic': False, 'client-window': <gtk.gdk.Window at remote 0x1187f50>, 'size-hints': <WMSizeHints(max_aspect_ratio=None, min_aspect_ratio=None, base_size=(19, 4), min_aspect=None, max_aspect=None, min_size=(25, 17), resize_inc=(6, ...(truncated), kw=0x0) at /usr/src/debug/Python-2.7.2/Objects/funcobject.c:526 #19 0x00000036d7649193 in PyObject_Call (func=<function at remote 0x1065320>, arg=<optimized out>, kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Objects/abstract.c:2529 #20 0x00000036d7657dff in instancemethod_call (func=<function at remote 0x1065320>, arg=(<XpraServer(keys_timedout={}, _id_to_window={1: <WindowModel(_input_field=1, _gproperties={'user-friendly-size': (122, 69), 'iconic': False, 'client-window': <gtk.gdk.Window at remote 0x1062550>, 'size-hints': <WMSizeHints(max_aspect_ratio=None, min_aspect_ratio=None, base_size=(19, 4), min_aspect=None, max_aspect=None, min_size=(25, 17), resize_inc=(6, 13), max_size=None) at remote 0x105aed0>, 'title': u'antoine@desktop:~/ddt', 'group-leader': None, 'client-machine': u'desktop', 'pid': 10712, 'state': frozenset([]), 'strut': None, 'icon-pixmap': None, 'owner': <DesktopManager(_models={<...>: <AdHocStruct(shown=True, geom=(2, 23, 751, 901), window=<gtk.gdk.Window at remote 0x10627d0>) at remote 0x10a61d0>, <WindowModel(_input_field=1, _gproperties={'user-friendly-size': (80, 24), 'iconic': False, 'client-window': <gtk.gdk.Window at remote 0x1187f50>, 'size-hints': <WMSizeHints(max_aspect_ratio=None, min_aspect_ratio=None, base_size=(19, 4), min_aspect=None, max_aspect=None, min_size=(25, 17), resize_inc=(6, ...(truncated), kw=0x0) at /usr/src/debug/Python-2.7.2/Objects/classobject.c:2578 #21 0x00000036d7649193 in PyObject_Call (func=<instancemethod at remote 0x101b640>, arg=<optimized out>, kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Objects/abstract.c:2529 #22 0x00000036d76da457 in PyEval_CallObjectWithKeywords (func=<instancemethod at remote 0x101b640>, arg=(<Wm(_root=<gtk.gdk.Window at remote 0x1062140>, _alt_display=<gtk.gdk.Display at remote 0x10621e0>, _wm_selection=<ManagerSelection(clipboard=<gtk.Clipboard at remote 0x10622d0>, _xwindow=4194307L, atom='WM_S0') at remote 0x1062280>, _ewmh_window=<gtk.gdk.Window at remote 0x1062370>, _display=<gtk.gdk.Display at remote 0xeddfa0>, _windows_in_order=[<gtk.gdk.Window at remote 0x1062550>, <gtk.gdk.Window at remote 0x1187f50>, <gtk.gdk.Window at remote 0x11edbe0>], _name='Xpra', _world_window=<WorldWindow at remote 0x1062460>, _windows={<gtk.gdk.Window at remote 0x1062550>: <WindowModel(_input_field=1, _gproperties={'user-friendly-size': (122, 69), 'iconic': False, 'client-window': <gtk.gdk.Window at remote 0x1062550>, 'size-hints': <WMSizeHints(max_aspect_ratio=None, min_aspect_ratio=None, base_size=(19, 4), min_aspect=None, max_aspect=None, min_size=(25, 17), resize_inc=(6, 13), max_size=None) at remote 0x105aed0>, 'title': u'antoine@desktop:~/ddt', 'group-leader': None, 'client-machine': u'desktop', 'pid': 10...(truncated), kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:3959 #23 0x00007fd38de5d188 in pyg_closure_marshal (closure=0x1116fb0, return_value=0x7ffffd541b60, n_param_values=2, param_values=0xbf4970, invocation_hint=<optimized out>, marshal_data=<optimized out>) at pygtype.c:1216 #24 0x0000003154e0ea24 in g_closure_invoke (closure=0x1116fb0, return_value=0x7ffffd541b60, n_param_values=2, param_values=0xbf4970, invocation_hint=<optimized out>) at gclosure.c:774 #25 0x0000003154e20d17 in signal_emit_unlocked_R (node=<optimized out>, detail=0, instance=0xeb3900, emission_return=0x7ffffd541b60, instance_and_params=0xbf4970) at gsignal.c:3272 #26 0x0000003154e29750 in g_signal_emitv (instance_and_params=<optimized out>, signal_id=<optimized out>, detail=0, return_value=0x7ffffd541b60) at gsignal.c:2907 #27 0x00007fd38de549da in pygobject_emit (self=<optimized out>, args=('new-window', <WindowModel(_input_field=True, _gproperties={'iconic': False, 'client-window': <gtk.gdk.Window at remote 0x11edbe0>, 'size-hints':---Type <return> to continue, or q <return> to quit--- None, 'title': u'Allinea DDT', 'icon-title': u'Allinea DDT', 'client-machine': None, 'pid': -1, 'state': frozenset([]), 'strut': None, 'icon-pixmap': None, 'window-type': ['_NET_WM_WINDOW_TYPE_SPLASH', '', '', '', '', '', '', ''], 'requested-position': (1730, 1185), 'transient-for': None, 'requested-size': (380, 190), 'protocols': [], 'icon': None}, parking_window=<gtk.gdk.Window at remote 0x1062140>, _geometry=(1730, 1185, 380, 190, 0), _damage_forward_handle=78L, _setup_done=True, startup_unmap_serial=None, client_window=<gtk.gdk.Window at remote 0x11edbe0>, corral_window=<gtk.gdk.Window at remote 0x11edcd0>, _composite=<CompositeHelper(_gproperties={}, _border_width=0, _damage_handle=4194552L, _window=<gtk.gdk.Window at remote 0x11edbe0>, _already_composited=False, _contents_handle=None, _listening_to=None) at remote 0x11edc80>) at remote 0x11edc30>)) at pygobject.c:1843 #28 0x00000036d76dffbb in call_function (oparg=<optimized out>, pp_stack=0x7ffffd541d48) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4090 #29 PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740 #30 0x00000036d76e15a5 in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=2, kws=0x1115750, kwcount=0, defs=0x0, defcount=0, closure=0x0) at /usr/src/debug/Python-2.7.2/Python/ceval.c:3330 #31 0x00000036d76dfadb in fast_function (nk=<optimized out>, na=2, n=<optimized out>, pp_stack=0x7ffffd541f38, func=<function at remote 0x104fde8>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4186 #32 call_function (oparg=<optimized out>, pp_stack=0x7ffffd541f38) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4111 #33 PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740 #34 0x00000036d76e15a5 in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=2, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at /usr/src/debug/Python-2.7.2/Python/ceval.c:3330 #35 0x00000036d766dc2c in function_call (func=<function at remote 0x1050140>, arg=(<Wm(_root=<gtk.gdk.Window at remote 0x1062140>, _alt_display=<gtk.gdk.Display at remote 0x10621e0>, _wm_selection=<ManagerSelection(clipboard=<gtk.Clipboard at remote 0x10622d0>, _xwindow=4194307L, atom='WM_S0') at remote 0x1062280>, _ewmh_window=<gtk.gdk.Window at remote 0x1062370>, _display=<gtk.gdk.Display at remote 0xeddfa0>, _windows_in_order=[<gtk.gdk.Window at remote 0x1062550>, <gtk.gdk.Window at remote 0x1187f50>, <gtk.gdk.Window at remote 0x11edbe0>], _name='Xpra', _world_window=<WorldWindow at remote 0x1062460>, _windows={<gtk.gdk.Window at remote 0x1062550>: <WindowModel(_input_field=1, _gproperties={'user-friendly-size': (122, 69), 'iconic': False, 'client-window': <gtk.gdk.Window at remote 0x1062550>, 'size-hints': <WMSizeHints(max_aspect_ratio=None, min_aspect_ratio=None, base_size=(19, 4), min_aspect=None, max_aspect=None, min_size=(25, 17), resize_inc=(6, 13), max_size=None) at remote 0x105aed0>, 'title': u'antoine@desktop:~/ddt', 'group-leader': None, 'client-machine': u'desktop', 'pid': 10...(truncated), kw=0x0) at /usr/src/debug/Python-2.7.2/Objects/funcobject.c:526 #36 0x00000036d7649193 in PyObject_Call (func=<function at remote 0x1050140>, arg=<optimized out>, kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Objects/abstract.c:2529 #37 0x00000036d7657dff in instancemethod_call (func=<function at remote 0x1050140>, arg=(<Wm(_root=<gtk.gdk.Window at remote 0x1062140>, _alt_display=<gtk.gdk.Display at remote 0x10621e0>, _wm_selection=<ManagerSelection(clipboard=<gtk.Clipboard at remote 0x10622d0>, _xwindow=4194307L, atom='WM_S0') at remote 0x1062280>, _ewmh_window=<gtk.gdk.Window at remote 0x1062370>, _display=<gtk.gdk.Display at remote 0xeddfa0>, _windows_in_order=[<gtk.gdk.Window at remote 0x1062550>, <gtk.gdk.Window at remote 0x1187f50>, <gtk.gdk.Window at remote 0x11edbe0>], _name='Xpra', _world_window=<WorldWindow at remote 0x1062460>, _windows={<gtk.gdk.Window at remote 0x1062550>: <WindowModel(_input_field=1, _gproperties={'user-friendly-size': (122, 69), 'iconic': False, 'client-window': <gtk.gdk.Window at remote 0x1062550>, 'size-hints': <WMSizeHints(max_aspect_ratio=None, min_aspect_ratio=None, base_size=(19, 4), min_aspect=None, max_aspect=None, min_size=(25, 17), resize_inc=(6, 13), max_size=None) at remote 0x105aed0>, 'title': u'antoine@desktop:~/ddt', 'group-leader': None, 'client-machine': u'desktop', 'pid': 10...(truncated), kw=0x0) at /usr/src/debug/Python-2.7.2/Objects/classobject.c:2578 #38 0x00000036d7649193 in PyObject_Call (func=<instancemethod at remote 0x119d9b0>, arg=<optimized out>, kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Objects/abstract.c:2529 #39 0x00000036d76da457 in PyEval_CallObjectWithKeywords (func=<instancemethod at remote 0x119d9b0>, arg= (<AdHocStruct(delivered_to=<gtk.gdk.Window at remote 0x1062140>, send_event=0, window=<gtk.gdk.Window at remote 0x11edbe0>, type=20, display=<gtk.gdk.Display at remote 0xeddfa0>) at remote 0x11e31d0>,), kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:3959 #40 0x00007fd38de5cf2b in pyg_signal_class_closure_marshal (closure=<optimized out>, return_value=0x7ffffd542700, n_param_values=<optimized out>, param_values=<optimized out>, invocation_hint=<optimized out>, marshal_data=<optimized out>) at pygtype.c:1377 #41 0x0000003154e0ea24 in g_closure_invoke (closure=0x106a4b0, return_value=0x7ffffd542700, n_param_values=2, param_values=0x129f240, invocation_hint=<optimized out>) at gclosure.c:774 #42 0x0000003154e20b5c in signal_emit_unlocked_R (node=<optimized out>, detail=0, instance=0xeb3900, emission_return=0x7ffffd542700, instance_and_params=0x129f240) at gsignal.c:3310 #43 0x0000003154e29750 in g_signal_emitv (instance_and_params=<optimized out>, signal_id=<optimized out>, detail=0, return_value=0x7ffffd542700) at gsignal.c:2907 #44 0x00007fd38de549da in pygobject_emit (self=<optimized out>, args= ('child-map-request-event', <AdHocStruct(delivered_to=<gtk.gdk.Window at remote 0x1062140>, send_event=0, window=<gtk.gdk.Window at remote 0x11edbe0>, type=20, display=<gtk.gdk.Display at remote 0xeddfa0>) at remote 0x11e31d0>)) at pygobject.c:1843 #45 0x00000036d7649193 in PyObject_Call (func=<built-in method emit of Wm object at remote 0x1062190>, arg=<optimized out>, kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Objects/abstract.c:2529 #46 0x00007fd38bb0e1d2 in __pyx_pf_8wimpiggy_8lowlevel_8bindings_76_maybe_send_event (__pyx_self=0x0, __pyx_args= (<gtk.gdk.Window at remote 0x1062140>, 'child-map-request-event', <AdHocStruct(delivered_to=<gtk.gdk.Window at remote 0x1062140>, send_event=0, window=<gtk.gdk.Window at remote 0x11edbe0>, type=20, display=<gtk.gdk.Display at remote 0xeddfa0>) at remote 0x11e31d0>), __pyx_kwds=0x0) at wimpiggy/lowlevel/bindings.c:20284 #47 0x00000036d7649193 in PyObject_Call (func=<built-in function _maybe_send_event>, arg=<optimized out>, kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Objects/abstract.c:2529 #48 0x00007fd38bb0fc04 in __pyx_pf_8wimpiggy_8lowlevel_8bindings_77_route_event (__pyx_self=0x0, __pyx_args= (<AdHocStruct(delivered_to=<gtk.gdk.Window at remote 0x1062140>, send_event=0, window=<gtk.gdk.Window at remote 0x11edbe0>, type=20, display=<gtk.gdk.Display at remote 0xeddfa0>) at remote 0x11e31d0>, None, 'child-map-request-event'), __pyx_kwds=0x0) at wimpiggy/lowlevel/bindings.c:20689 #49 0x00000036d7649193 in PyObject_Call (func=<built-in function _route_event>, arg=<optimized out>, kw=<optimized out>) at /usr/src/debug/Python-2.7.2/Objects/abstract.c:2529 #50 0x00007fd38bb1b210 in __pyx_f_8wimpiggy_8lowlevel_8bindings_x_event_filter (__pyx_v_e_gdk=0x7ffffd542d40, __pyx_v_gdk_event=0x1298de0, __pyx_v_userdata=0x0) at wimpiggy/lowlevel/bindings.c:23338 #51 0x000000315725f3ee in gdk_event_apply_filters (filters=<optimized out>, event=<optimized out>, xevent=<optimized out>) at gdkevents-x11.c:356 #52 gdk_event_translate (display=0xf77230 [GdkDisplayX11], event=0x1298de0, xevent=0x7ffffd542d40, return_exposes=0) at gdkevents-x11.c:927 #53 0x0000003157261fa6 in _gdk_events_queue (display=0xf77230 [GdkDisplayX11]) at gdkevents-x11.c:2310 #54 0x000000315726204e in gdk_event_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at gdkevents-x11.c:2371 #55 0x0000003154644acd in g_main_dispatch (context=0xf809c0) at gmain.c:2441 #56 g_main_context_dispatch (context=0xf809c0) at gmain.c:3011 #57 0x00000031546452c8 in g_main_context_iterate (context=0xf809c0, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3089 #58 0x0000003154645815 in g_main_loop_run (loop=0x11c81c0) at gmain.c:3297 #59 0x000000315774bbb7 in IA__gtk_main () at gtkmain.c:1256 #60 0x00007fd38d095fa6 in _wrap_gtk_main (self=<optimized out>) at ./gtk.override:1240 #61 0x00000036d76dfb13 in call_function (oparg=<optimized out>, pp_stack=0x7ffffd5430e8) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4074 #62 PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740 #63 0x00000036d76e0580 in fast_function (nk=<optimized out>, na=1, n=<optimized out>, pp_stack=0x7ffffd543228, func=<function at remote 0x1065140>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4176 #64 call_function (oparg=<optimized out>, pp_stack=0x7ffffd543228) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4111 #65 PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740 #66 0x00000036d76e15a5 in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=5, kws=0xc979a0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at /usr/src/debug/Python-2.7.2/Python/ceval.c:3330 #67 0x00000036d76dfadb in fast_function (nk=<optimized out>, na=5, n=<optimized out>, pp_stack=0x7ffffd543418, func= <function at remote 0x7fd38dc2c398>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4186 #68 call_function (oparg=<optimized out>, pp_stack=0x7ffffd543418) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4111 #69 PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740 #70 0x00000036d76e15a5 in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=2, kws=0xb46220, kwcount=0, defs=0x0, defcount=0, closure=0x0) at /usr/src/debug/Python-2.7.2/Python/ceval.c:3330 #71 0x00000036d76dfadb in fast_function (nk=<optimized out>, na=2, n=<optimized out>, pp_stack=0x7ffffd543608, func= <function at remote 0x7fd38dc26488>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4186 #72 call_function (oparg=<optimized out>, pp_stack=0x7ffffd543608) at /usr/src/debug/Python-2.7.2/Python/ceval.c:4111 #73 PyEval_EvalFrameEx (f=<optimized out>, throwflag=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:2740 #74 0x00000036d76e15a5 in PyEval_EvalCodeEx (co=<optimized out>, globals=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at /usr/src/debug/Python-2.7.2/Python/ceval.c:3330 #75 0x00000036d76e16d2 in PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/ceval.c:689 #76 0x00000036d76fb9ec in run_mod (mod=<optimized out>, filename=<optimized out>, globals= {'GPollableInputStream': <type at remote 0xcd4b30>, '__builtins__': <module at remote 0x7fd396bcaad0>, '__file__': '/usr/bin/xpra', 'xpra': <module at remote 0x7fd396b036a8>, '__package__': None, 'sys': <module at remote 0x7fd396bcab78>, 'GInitiallyUnowned': <GObjectMeta(__gtype__=<gobject.GType at remote 0x7fd38ccc6810>, __doc__=<gobject.GObject.__doc__ at remote 0x7fd396b8d0d0>, __module__='gtk') at remote 0xd707d0>, '__name__': '__main__', 'GPollableOutputStream': <type at remote 0xd03a10>, '__doc__': None}, locals= {'GPollableInputStream': <type at remote 0xcd4b30>, '__builtins__': <module at remote 0x7fd396bcaad0>, '__file__': '/usr/bin/xpra', 'xpra': <module at remote 0x7fd396b036a8>, '__package__': None, 'sys': <module at remote 0x7fd396bcab78>, 'GInitiallyUnowned': <GObjectMeta(__gtype__=<gobject.GType at remote 0x7fd38ccc6810>, __doc__=<gobject.GObject.__doc__ at remote 0x7fd396b8d0d0>, __module__='gtk') at remote 0xd707d0>, '__name__': '__main__', 'GPollableOutputStream': <type at remote 0xd03a10>, '__doc__': None}, flags=<optimized out>, arena=<optimized out>) at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:1354 #77 0x00000036d76fc7f0 in PyRun_FileExFlags (fp=0xb0ab60, filename=0x7ffffd5443fe "/usr/bin/xpra", start=<optimized out>, globals= {'GPollableInputStream': <type at remote 0xcd4b30>, '__builtins__': <module at remote 0x7fd396bcaad0>, '__file__': '/usr/bin/xpra', 'xpra': <module at remote 0x7fd396b036a8>, '__package__': None, 'sys': <module at remote 0x7fd396bcab78>, 'GInitiallyUnowned': <GObjectMeta(__gtype__=<gobject.GType at remote 0x7fd38ccc6810>, __doc__=<gobject.GObject.__doc__ at remote 0x7fd396b8d0d0>, __module__='gtk') at remote 0xd707d0>, '__name__': '__main__', 'GPollableOutputStream': <type at remote 0xd03a10>, '__doc__': None}, locals= {'GPollableInputStream': <type at remote 0xcd4b30>, '__builtins__': <module at remote 0x7fd396bcaad0>, '__file__': '/usr/bin/xpra', 'xpra': <module at remote 0x7fd396b036a8>, '__package__': None, 'sys': <module at remote 0x7fd396bcab78>, 'GInitiallyUnowned': <GObjectMeta(__gtype__=<gobject.GType at remote 0x7fd38ccc6810>, __doc__=<gobject.GObject.__doc__ at remote 0x7fd396b8d0d0>, __module__='gtk') at remote 0xd707d0>, '__name__': '__main__', 'GPollableOutputStream': <type at remote 0xd03a10>, '__doc__': None}, closeit=1, flags=0x7ffffd543930) at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:1340 #78 0x00000036d76fd26f in PyRun_SimpleFileExFlags (fp=0xb0ab60, filename=0x7ffffd5443fe "/usr/bin/xpra", closeit=1, flags=0x7ffffd543930) at /usr/src/debug/Python-2.7.2/Python/pythonrun.c:944 #79 0x00000036d770e745 in Py_Main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/Python-2.7.2/Modules/main.c:599 #80 0x00000036c722169d in __libc_start_main (main=0x400620 <main>, argc=5, ubp_av=0x7ffffd543a58, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffffd543a48) at libc-start.c:226 #81 0x0000000000400651 in _start ()
comment:4 Changed 9 years ago by
The crash comes from their splash screen, here is another way of getting past it:
DDT_NO_SPLASH=1 ./bin/ddt
I really don't know what the splash screen does to crash the Xvfb.
comment:5 Changed 9 years ago by
Hi,
the DDT_NO_SPLASH option works on my side as well, and it is quite convenient, so as far as I'm concerned, this is not a problem anymore.
Thanks a lot,
Ángel de Vicente
comment:6 Changed 9 years ago by
Resolution: | → needinfo |
---|---|
Status: | accepted → closed |
OK, I would like to try to find what the splash screen does to crash the Xvfb (I even tried Xdummy to see if it would help - no change), but without the source this is going to be difficult so I am closing this ticket for now.
comment:7 Changed 9 years ago by
Milestone: | current → 0.0.7.x |
---|---|
Version: | 0.0.7.22 |
comment:8 Changed 9 years ago by
Resolution: | needinfo |
---|---|
Status: | closed → reopened |
Done some more investigation on this and it looks like some xatoms are mangled or missing causing all calls to XGetWindowAttributes
and XGetGeometry
to fail.
Now I have a dirty patch which just ignores those windows, this allows one to run ddt without ever seeing the splash screen since we ignore the whole window:
--- src/xpra/server.py (revision 572) +++ src/xpra/server.py (working copy) @@ -866,10 +866,16 @@ _window_export_properties = ("title", "size-hints") def _add_new_window(self, window): log.debug("Discovered new ordinary window: %s", window) + client_window = window.get_property("client-window") + log.info("getting dimensions for %s", client_window) + try: + (x, y, w, h, _) = trap.call_synced(client_window.get_geometry) + except XError: + log.error("cannot get geometry of new window!", exc_info=True) + return self._add_new_window_common(window) for prop in self._window_export_properties: window.connect("notify::%s" % prop, self._update_metadata) - (x, y, w, h, _) = window.get_property("client-window").get_geometry() self._desktop_manager.add_window(window, x, y, w, h) self._send_new_window_packet(window)
I don't want to merge this, so I'll try to figure out which properties are messed up instead.
comment:9 Changed 9 years ago by
This is a better fix: we detect that the window is broken in the same place where we normally do it (during setup):
Index: wimpiggy/window.py =================================================================== --- wimpiggy/window.py (revision 559) +++ wimpiggy/window.py (working copy) @@ -513,10 +513,15 @@ client_size = self.client_window.get_geometry()[2:4] self.corral_window.resize(*client_size) self.client_window.show_unraised() + self.client_window.get_geometry() try: trap.call(setup_client) except XError, e: raise Unmanageable, e + try: + trap.call(self.client_window.get_geometry) + except XError, e: + raise Unmanageable, e self._setup_done = True def prop_get(self, key, type, ignore_errors=False):
With this in place, the splash screen simply does not show up, and all you get are a few warnings about broken atoms in the logs.
I wished I could figure out why gtk crashes with this window, the first call to get_geometry normally succeeds but the second one fails!?
Looks like something to do with call_synced
vs call_asynced
and gtk.gdk.flush()
- but switching to sync mode crashes..
I will try to get to the bottom of this problem before committing any changes.
comment:10 Changed 9 years ago by
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
r576 causes broken windows to be discarded sooner (almost identical to patch in comment:9)
I no longer have a valid license to test, but just testing with the splash screen and the server no longer dies.
Note: the root cause of the crash probably has not been fixed, so we may need to revisit this.
comment:11 Changed 6 weeks ago by
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/71
I do not wish to subscribe/sign-up/give my email or anything, so please provide a test license for me or I can investigate.