Bug 594890 - Empathy crashing with CSW
Empathy crashing with CSW
Status: RESOLVED FIXED
Product: empathy
Classification: Core
Component: VoIP
unspecified
Other Linux
: Normal normal
: ---
Assigned To: empathy-maint
csw
:
: 595000 (view as bug list)
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2009-09-11 14:44 UTC by Iñigo Illan
Modified: 2009-09-14 09:05 UTC (History)
4 users (show)

See Also:
GNOME target: ---
GNOME version: ---


Attachments
fix in Empathy (1.99 KB, patch)
2009-09-14 01:43 UTC, Danielle Madeley
none Details | Diff | Review

Description Iñigo Illan 2009-09-11 14:44:20 UTC
I'm using Ubuntu Karmic with gtk+ 2.17.11 and Empathy is crashing for me when I try to make a video call with my N810. Specifically, the crash happens when I switch on the video stream from N810 to the PC (so maybe something to do with XVideo). When crashing, the program outputs the following on the terminal:

Gdk-ERROR **: The program 'empathy' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadIDChoice (invalid resource ID chosen for this connection)'.
  (Details: serial 10323 error_code 14 request_code 1 minor_code 0)
  (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.)
aborting...


 When I execute "GDK_NATIVE_WINDOWS=1 empathy", the crash doesn't happen.
Comment 1 Alexander Larsson 2009-09-11 19:01:21 UTC
BadIDChoice generally means there is some locking issue or other thread problem
Comment 2 Danielle Madeley 2009-09-14 01:43:35 UTC
Created attachment 143128 [details] [review]
fix in Empathy

The problem comes about because of GDK_WINDOW_XID() first being called from a thread. If gdk_window_ensure_native() is called as soon as the widget is realized, before the XID can be requested in a thread, the problem goes away.

http://git.collabora.co.uk/?p=user/davyd/empathy-davyd.git;a=commit;h=90102ee22a58768e052470b77eea7196d9de36af
Comment 3 Alexander Larsson 2009-09-14 07:12:47 UTC
Another alternative is to grab the lock around the GDK_WINDOW_XID call, but this seems easier.
Comment 4 Sjoerd Simons 2009-09-14 08:23:18 UTC
*** Bug 595000 has been marked as a duplicate of this bug. ***
Comment 5 Sjoerd Simons 2009-09-14 08:29:27 UTC
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.

Note You need to log in before you can comment on or make changes to this bug.