GNOME Bugzilla – Bug 166201
crash in smooth_draw_flat_box
Last modified: 2005-02-09 14:20:09 UTC
I get the following crash when activating a row in the rhythmbox tree view (using gtk-engines from HEAD and gtk-2.6.x): Program received signal SIGSEGV, Segmentation fault.
+ Trace 55277
Thread NaN (LWP 10329)
Can you duplicate with any other music players? I have this same crashing problem. I've seen it happen in Rhythmbox, Muine & my own music player, Lindele. I've not seen this duplicated anywhere else before, until now. Also, it doesn't seem to happen on any other TreeView applications; only music players... o_O
I think I found this. THANKS for the bt. I have been trying to get Link here to give me an actual backtrace for months now since it won't happen for me. The problem apears to be, a public shared variable called parent_class. Normally not an issue, but somewhere in RB(maybe in gstreamer?) something also exports a variable of the same name. So when flat_box is called in the right circumstances, the wrong parent_class is accessed, and wham instant segfault. It should be a three line change, just give a namespace to the variable. AKA rename parent_class -> smooth_theme_parent_class in each place its used and done.
Created attachment 36954 [details] [review] patch Ok to commit?
Oh, Sorry, you didn't need to make this patch, I already changed it in Smooth cvs 0.6 branch, I am just waiting to ensure it fixes the problem completely for Link before I commit to gtk-engines and close the bug. If there are other things contributing I want to know for sure before hand. If this does take care of everything I will be commiting within the next few hours.
Link just verifed my theory was correct and this does indeed fix it. Commited and closing.
*** Bug 166721 has been marked as a duplicate of this bug. ***
I can verify that GStreamer indeed had a non-static parent_class (in gstogmparse.c and gstnavigationtest.c; the first probably caused all those crashes as it's loaded in when playing an ogg file), fixed in CVS.