Assertion error (r == n_visible_rows) in gtk_file_system_model_sort causes applications to crash

Bug #583056 reported by Andreas Sandberg
60
This bug affects 9 people
Affects Status Importance Assigned to Milestone
GTK+
Fix Released
High
OpenOffice
Invalid
Undecided
Unassigned
Fedora
Won't Fix
Medium
gtk+2.0 (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: openoffice.org

OOo crashes with the following error message:
Gtk:ERROR:/build/buildd/gtk+2.0-2.20.0/gtk/gtkfilesystemmodel.c:746:gtk_file_system_model_sort: assertion failed: (r == n_visible_rows)

Steps to reproduce:
Create a file called /tmp/foo.xls
Select file->open in oocalc, browse to /tmp and select 'Microsoft Excel 2007 XML' from the file formats list
Rename foo.xls to foo.xlsx

Note that the steps to reproduce don't seem to be entirely bullet proof. If I, for example, create the file in some other directory than /tmp OOo may not crash.

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: openoffice.org (not installed)
ProcVersionSignature: Ubuntu 2.6.32-22.33-generic 2.6.32.11+drm33.2
Uname: Linux 2.6.32-22-generic x86_64
NonfreeKernelModules: fglrx
Architecture: amd64
Date: Wed May 19 22:25:26 2010
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: openoffice.org

Chris Cheney (ccheney)
Changed in openoffice.org (Ubuntu):
importance: Undecided → Low
status: New → Triaged
summary: - oocalc crashes when renaming a file while the file open dialog is active
+ [upstream] oocalc crashes when renaming a file while the file open
+ dialog is active
Revision history for this message
penalvch (penalvch) wrote : Re: [upstream] oocalc crashes when renaming a file while the file open dialog is active

Andreas Sandberg, thank you for taking the time to report this bug and helping to make Ubuntu better. However, your crash report is missing. Please follow these instructions to have apport report a new bug about your crash that can be dealt with by the automatic retracer.

If you are running the Ubuntu Stable Release you might need to enable apport in /etc/default/apport and restart.

Now open your file manager, navigate to your /var/crash directory and open the crash report you wish to submit.
If this fails you will have to open a terminal and file your report with 'ubuntu-bug /var/crash/_my_crash_report.crash' where _my_crash_report.crash is the crash you would like to report. If you get an error that you aren't allowed to access this report you will have to file it with 'sudo ubuntu-bug /var/crash/_my_crash_report.crash'.

I'm closing this bug report since the process outlined above will automatically open a new bug report which can then dealt with more efficiently. Thanks in advance for your cooperation and understanding.

Changed in openoffice.org (Ubuntu):
importance: Low → Undecided
status: Triaged → Invalid
Changed in openoffice:
status: New → Invalid
Revision history for this message
Andreas Sandberg (andysan) wrote :
Download full text (4.4 KiB)

Turns out that I'm still able to reproduce the bug. However, I'm not able to get a core dump (or crash report) from the application. Just running OOo causes the internal SIGSEGV/SIGABRT handler to be called, which obviously prevents the application from dumping its core (which would cause the kernel to call apport). Calling OOo with the -norestore option seems to disable this behavior, but for some reason it still doesn't dump its core.

Manually producing a core dump using GDB and feeding it into apport doesn't work either since apport apparently couldn't retrieve the assertion error message(?).

I'm willing to research the issue further (although I have limited time to spare at the moment), but _please_ research issues better before coming up with further useless instructions. I've included the stack trace from GDB, it should help. I'm starting to believe that this is really a GTK bug.

I still get the same assertion:
Gtk:ERROR:/build/buildd/gtk+2.0-2.20.1/gtk/gtkfilesystemmodel.c:746:gtk_file_system_model_sort: assertion failed: (r == n_visible_rows)

GDB produces the following:
#0 0x00007ffff6c73a75 in *__GI_raise (sig=<value optimized out>)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00007ffff6c775c0 in *__GI_abort () at abort.c:92
#2 0x00007fffed04fbb4 in g_assertion_message () from /lib/libglib-2.0.so.0
#3 0x00007fffed050130 in g_assertion_message_expr ()
   from /lib/libglib-2.0.so.0
#4 0x00007fffee363846 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#5 0x00007fffee364ae8 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#6 0x00007fffeb081ec8 in ?? () from /usr/lib/libgio-2.0.so.0
#7 0x00007fffed0298c2 in g_main_context_dispatch ()
   from /lib/libglib-2.0.so.0
#8 0x00007fffed02d748 in ?? () from /lib/libglib-2.0.so.0
#9 0x00007fffed02dc55 in g_main_loop_run () from /lib/libglib-2.0.so.0
#10 0x00007fffee32d52b in gtk_dialog_run () from /usr/lib/libgtk-x11-2.0.so.0
#11 0x00007fffd21d3e50 in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/fps_gnome.uno.so
#12 0x00007fffd21dbca8 in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/fps_gnome.uno.so
#13 0x00007ffff563dee0 in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#14 0x00007ffff563e0ea in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#15 0x00007ffff5643afc in ?? ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#16 0x00007ffff541b631 in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#17 0x00007ffff55e7054 in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#18 0x00007ffff55de97b in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#19 0x00007ffff55e287e in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#20 0x00007ffff55e2769 in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#21 0x00007ffff561825a in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libsfxlx.so
#22 0x00007ffff3833f38 in ?? ()
   from /usr/lib/openoffice/program/../basis-link/program/libvcll...

Read more...

Revision history for this message
Andreas Sandberg (andysan) wrote :

I've been able to reproduce the same behavior in GEdit. I'm assuming that this is actually a GTK bug and not OOo specific. According to the RedHat bug tracker, this is supposedly fixed in newer versions of GTK.

summary: - [upstream] oocalc crashes when renaming a file while the file open
- dialog is active
+ Assertion error r == n_visible_rows in gtk_file_system_model_sort causes
+ applications to crash
summary: - Assertion error r == n_visible_rows in gtk_file_system_model_sort causes
- applications to crash
+ Assertion error (r == n_visible_rows) in gtk_file_system_model_sort
+ causes applications to crash
Revision history for this message
Julian Taylor (jtaylor) wrote :
Julian Taylor (jtaylor)
affects: openoffice.org (Ubuntu) → gtk+2.0 (Ubuntu)
Changed in gtk+2.0 (Ubuntu):
status: Invalid → New
Changed in gtk+2.0 (Ubuntu):
status: New → Confirmed
Revision history for this message
Julian Taylor (jtaylor) wrote :

the fix was released with gtk 2.24.4 available from 11.04 onwards

Changed in gtk+2.0 (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
sparr (sparr0) wrote :

I am still seeing this bug in multiple applications while using GTK+ 2.24

penalvch (penalvch)
Changed in gtk:
importance: Undecided → Unknown
status: New → Unknown
Changed in gtk:
importance: Unknown → High
status: Unknown → Fix Released
Changed in gtk:
status: Fix Released → New
Revision history for this message
B Bobo (yout-bobo123) wrote :

I'm still seeing this bug with gtk2+2.24.6

Changed in gtk:
status: New → Fix Released
Changed in fedora:
importance: Unknown → Medium
status: Unknown → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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