After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 342640 - crash playing from itunes
crash playing from itunes
Status: RESOLVED FIXED
Product: libsoup
Classification: Core
Component: API
2.2.x
Other Linux
: Normal major
: ---
Assigned To: Dan Winship
Dan Winship
Depends on:
Blocks:
 
 
Reported: 2006-05-22 23:33 UTC by William Jon McCann
Modified: 2006-05-29 21:25 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (681 bytes, patch)
2006-05-24 17:31 UTC, William Jon McCann
none Details | Review
counter patch (1.95 KB, patch)
2006-05-24 17:55 UTC, Dan Winship
none Details | Review
3rd patch (8.28 KB, patch)
2006-05-26 21:03 UTC, Dan Winship
none Details | Review

Description William Jon McCann 2006-05-22 23:33:11 UTC
1. Connect to RB share from iTunes on XP
2. Enter password
3. Double click on track to play

Backtrace was generated from '/opt/gnome/bin/rhythmbox'

Using host libthread_db library "/lib/libthread_db.so.1".
`shared object read from target memory' has disappeared; keeping its symbols.
[Thread debugging using libthread_db enabled]
[New Thread -1208396080 (LWP 14074)]
[New Thread 55716768 (LWP 14089)]
[New Thread 38288288 (LWP 14077)]
0x00abe402 in __kernel_vsyscall ()

Thread 1 (Thread -1208396080 (LWP 14074))

  • #0 __kernel_vsyscall
  • #1 __waitpid_nocancel
    from /lib/libpthread.so.0
  • #2 libgnomeui_segv_handle
    at gnome-ui-init.c line 812

Comment 1 William Jon McCann 2006-05-23 20:54:58 UTC
I get the same crash when playing from a RB 0.9.4.1 client too.  Maybe a libsoup bug.
Comment 2 William Jon McCann 2006-05-24 17:28:57 UTC
Related to bug #334469.

Hitting the g_return_if_fail introduced by:
http://cvs.gnome.org/viewcvs/libsoup/libsoup/soup-message-io.c?r1=1.25&r2=1.26

There is a comment in soup-socket.c:soup_socket_disconnect():
	/* Give all readers a chance to notice the connection close */
	g_signal_emit (sock, signals[READABLE], 0);

soup-message-io.c:io_read() is connected to the readable signal.  So SOUP_MESSAGE_IO_STATE_DONE should indicate to io_read a disconnect notice.
Comment 3 William Jon McCann 2006-05-24 17:31:20 UTC
Created attachment 66141 [details] [review]
patch

I don't know how io_read should react to this notice but this stops the crash.
Comment 4 William Jon McCann 2006-05-24 17:35:16 UTC
Just removing the g_return_if_fail also fixes the crash.
Comment 5 Dan Winship 2006-05-24 17:47:15 UTC
sure, it's only crashing because you're running with g_fatal_criticals or whatever it's called. :)
Comment 6 William Jon McCann 2006-05-24 17:52:20 UTC
Right, but it probably shouldn't be a g_return_if_fail if the condition is allowed.
Comment 7 Dan Winship 2006-05-24 17:55:07 UTC
Created attachment 66143 [details] [review]
counter patch

It's not allowed. That's why there's a return_if_fail! :)

Does this patch work for you?
Comment 8 William Jon McCann 2006-05-24 18:02:56 UTC
Touché! :)

Yes this seems to work fine.  Thank you.
Comment 9 Dan Winship 2006-05-24 18:08:34 UTC
Excellent. Thank you for tracking down the source of the bug.

I've pinged the reporter of 334469 and another person who reported suddenly seeing lots of instances of the new warning, to see if this fixes it for them as well. Even if I don't hear back from them, I'll put out a new release with this fix for GNOME 2.14.2 on May 31.
Comment 10 Dan Winship 2006-05-26 21:03:34 UTC
Created attachment 66305 [details] [review]
3rd patch

And here is yet another version of the patch... If at all possible, could you please test that this works this weekend so it will have gotten a little bit of testing before Monday?
Comment 11 Dan Winship 2006-05-29 19:49:46 UTC
fixed in cvs, and in libsoup 2.2.93
Comment 12 William Jon McCann 2006-05-29 21:25:15 UTC
Oops.  Sorry I didn't get a chance to try this out this weekend.  Ironically, I was busy repairing carpenter ant damage in my porch.  Thanks Dan.