file selector crash when "import a directory"

Bug #8060 reported by Etienne Zannelli
38
This bug affects 7 people
Affects Status Importance Assigned to Milestone
rhythmbox (Ubuntu)
Fix Released
Medium
Sebastien Bacher

Bug Description

This is reproductable.
Make a directory name with more than 35 characters (35 is an approximation).
make a subdirectory in.

Then, if you try to open this directory with the file selector in rythmbox
(music-> import a directory), the file selector seems to loop, the application
does not respond any more.

it doesn't seem to occur with other gnome application.

rhythmbox 0.8.5-1ubuntu1

Revision history for this message
Sebastien Bacher (seb128) wrote :

I don't have this problem here. Do you have the problem sometimes or all the time ?
Could you try to run rhythmbox under gdb (apt-get install gdb && gdb rhythmbox
and "run" in gdb) then when it hangs ctrl+c in the gnome-terminal with gdb and
"thread all apply bt
"

Revision history for this message
Etienne Zannelli (ezannelli) wrote :

ok, indeed, i have the problem sometimes (often)

(gdb) thread apply all bt

Thread 9 (Thread 1135090608 (LWP 5291)):
#0 0xffffe410 in __kernel_vsyscall ()
#1 0x40b65fae in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
#2 0x406c9273 in _gnome_vfs_thread_pool_init ()
   from /usr/lib/libgnomevfs-2.so.0
#3 0x406c92b4 in _gnome_vfs_thread_pool_init ()
   from /usr/lib/libgnomevfs-2.so.0
#4 0x40bab82f in g_static_private_free () from /usr/lib/libglib-2.0.so.0
#5 0x40b63a2b in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#6 0x00000000 in ?? ()

Thread 8 (Thread 1134824368 (LWP 5290)):
#0 0xffffe410 in __kernel_vsyscall ()
#1 0x40b65fae in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/i686/cmov/libpthread.so.0
#2 0x406c9273 in _gnome_vfs_thread_pool_init ()
   from /usr/lib/libgnomevfs-2.so.0
#3 0x406c92b4 in _gnome_vfs_thread_pool_init ()
   from /usr/lib/libgnomevfs-2.so.0
#4 0x40bab82f in g_static_private_free () from /usr/lib/libglib-2.0.so.0
#5 0x40b63a2b in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
#6 0x00000000 in ?? ()

Thread 7 (Thread 1131895728 (LWP 5289)):
#0 0xffffe410 in __kernel_vsyscall ()
#1 0x40cb8b93 in poll () from /lib/tls/i686/cmov/libc.so.6
#2 0x40b9458d in g_main_loop_get_context () from /usr/lib/libglib-2.0.so.0
#3 0x40b93aba in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#4 0x40b94113 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#5 0x40af8050 in link_thread_io_context () from /usr/lib/libORBit-2.so.0
#6 0x40be9398 in ?? () from /usr/lib/libglib-2.0.so.0
#7 0x43775ad8 in ?? ()
#8 0x40bab82f in g_static_private_free () from /usr/lib/libglib-2.0.so.0
Previous frame inner to this frame (corrupt stack?)
#0 0x404ee3c3 in gtk_widget_style_get () from /usr/lib/libgtk-x11-2.0.so.0

Revision history for this message
Jason Toffaletti (jason) wrote :
Download full text (7.7 KiB)

Created an attachment (id=416)
rhythmbox filechooser crash

I've attached a screenshot of this happening. The directory name I'm trying to
import is: "Great Guitars - Charlie Byrd, Herb Ellis, Barney Kessel"

For me, rhythmbox doesn't crash, it just starts pegging the CPU. Here is a
backtrace, it appears to be stuck in a loop:

Program received signal SIGINT, Interrupt.
0x405cbc7e in gdk_region_intersect () from /usr/lib/libgdk-x11-2.0.so.0
(gdb) bt
#0 0x405cbc7e in gdk_region_intersect () from /usr/lib/libgdk-x11-2.0.so.0
#1 0x405cb9f1 in gdk_region_intersect () from /usr/lib/libgdk-x11-2.0.so.0
#2 0x405e7733 in _gdk_window_process_expose ()
   from /usr/lib/libgdk-x11-2.0.so.0
#3 0x405e6253 in _gdk_window_move_resize_child ()
   from /usr/lib/libgdk-x11-2.0.so.0
#4 0x405f34b6 in gdk_window_move_resize () from /usr/lib/libgdk-x11-2.0.so.0
#5 0x404c2d87 in gtk_tree_view_get_type () from /usr/lib/libgtk-x11-2.0.so.0
#6 0x40b19d37 in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#7 0x40b06b18 in g_cclosure_new_swap () from /usr/lib/libgobject-2.0.so.0
#8 0x40b067eb in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#9 0x40b18669 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
#10 0x40b17e5c in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#11 0x40b18140 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#12 0x404e96f5 in gtk_widget_size_allocate () from /usr/lib/libgtk-x11-2.0.so.0

#13 0x4043998f in gtk_scrolled_window_get_shadow_type ()
   from /usr/lib/libgtk-x11-2.0.so.0
#14 0x40b19d37 in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#15 0x40b06b18 in g_cclosure_new_swap () from /usr/lib/libgobject-2.0.so.0
#16 0x40b067eb in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#17 0x40b18669 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#18 0x40b17e5c in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#19 0x40b18140 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#20 0x404e96f5 in gtk_widget_size_allocate () from /usr/lib/libgtk-x11-2.0.so.0

#21 0x404e1a71 in gtk_vbox_new () from /usr/lib/libgtk-x11-2.0.so.0
#22 0x40b19d37 in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#23 0x40b06b18 in g_cclosure_new_swap () from /usr/lib/libgobject-2.0.so.0
#24 0x40b067eb in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#25 0x40b18669 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
#26 0x40b17e5c in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#27 0x40b18140 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#28 0x404e96f5 in gtk_widget_size_allocate () from /usr/lib/libgtk-x11-2.0.so.0

#29 0x403ccef9 in gtk_hpaned_new () from /usr/lib/libgtk-x11-2.0.so.0
#30 0x40b19d37 in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#31 0x40b06b18 in g_cclosure_new_swap () from /usr/lib/libgobject-2.0.so.0
#32 0x40b067eb in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#33 0x40b18669 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
#34 0x40b17e5c in g_signal_emit_valist () from /...

Read more...

Revision history for this message
Sebastien Bacher (seb128) wrote :

is this problem still here ?

Revision history for this message
Etienne Zannelli (ezannelli) wrote :

The problem persists here

Revision history for this message
Matt Zimmerman (mdz) wrote :

I was able to reproduce this once, but after trying again, I could not get it to
happen again. The sequence was something like this:

mkdir -p '/tmp/this is a very long filename artificially created to trigger bug
#8060
/Great Guitars - Charlie Byrd, Herb Ellis, Barney Kessel'
rhythmbox
# import folder, navigate to the directory created above

Revision history for this message
Jason Toffaletti (jason) wrote :

still happens for me, and i'm up to date with warty.

Revision history for this message
Sebastien Bacher (seb128) wrote :

ok, I've the problem on one box too

Revision history for this message
Sebastien Bacher (seb128) wrote :

seems to be fixed with gtk2.6 in hoary, I'm closing the bug. Feel free to reopen
if you get the bug with this version.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.