GNOME Bugzilla – Bug 372379
crash in Text Editor: opening an odt file on a...
Last modified: 2006-11-14 08:59:54 UTC
Version: 2.16.1 What were you doing when the application crashed? opening an odt file on a samba share Distribution: Ubuntu 6.10 (edgy) Gnome Release: 2.16.1 2006-10-02 (Ubuntu) BugBuddy Version: 2.16.0 Memory status: size: 44191744 vsize: 0 resident: 44191744 share: 0 rss: 20434944 rss_rlim: 0 CPU usage: start_time: 1162979406 rtime: 0 utime: 59 stime: 0 cutime:52 cstime: 0 timeout: 7 it_real_value: 0 frequency: 0 Backtrace was generated from '/usr/bin/gedit' (no debugging symbols found) Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1". (no debugging symbols found) [Thread debugging using libthread_db enabled] [New Thread -1227204944 (LWP 21802)] (no debugging symbols found) 0xffffe410 in __kernel_vsyscall ()
+ Trace 84284
Thread 1 (Thread -1227204944 (LWP 21802))
Thanks for taking the time to report this bug. This particular bug has already been reported into our bug tracking system, but the maintainers need more information to fix the bug. Could you please answer the questions in the other report in order to help the developers? *** This bug has been marked as a duplicate of 363596 ***
Actually, this is the same issue as another bug. Sim, the need for more information still stands, though. :) *** This bug has been marked as a duplicate of 354046 ***
I had a openoffice file (.odt) that wouldn't open in openoffice. It said 'read error' in openoffice. Then i tried to open the file in gedit. It crashed. The file was on a samba mount. I couldn't read any files from this filesystem. It was producing errors in the syslog. After umount mount cycle, everything worked OK.
Some speculation: As one can read in comment #15 from 354046, that crash relates to filesystem corruption. Here fsck fixed the file, and in this case cifs remount fixed it. So could it be, that an unexpected error code occurs on a read() call, or 0 bytes are read? As UTF-8 parsing is a state machine, what happens with the parser on buffer bounderies? Or with an empty buffer? Or a garbage filled buffer?