Crashes when opening/reading e-mail with attachment (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.xml)

RESOLVED INCOMPLETE

Status

Thunderbird
Message Reader UI
--
critical
RESOLVED INCOMPLETE
8 years ago
7 years ago

People

(Reporter: manhydra, Unassigned)

Tracking

({stackwanted})

x86
Linux
stackwanted

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [closeme 2011-03-01])

(Reporter)

Description

8 years ago
User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4

Whenever I click on an e-mail with an attachment to read, thunderbird immediately crashes. I thought there may have been a configuration issue under the preferences. But when I click on the Attachment section under Edit > Preferences, it crashes immediately.

Reproducible: Always

Steps to Reproduce:
1. Simply click on an e-mail with an attachment
2 [review]. Click on Edit > Preferences > Attachments
Actual Results:  
Crashes immediately

Expected Results:  
Normally show e-mail with attachment link at the bottom

I'm running on Debian/GNU Linux 5.0.4 with libstdc++6
(Reporter)

Comment 1

8 years ago
Shared library dependencies on my system [Note: Symbolic links to certain shared libraries which were declared "not found" were created after this bug ticket in order to test overlooked dependencies. The bug is still persistent.]

/usr/local/bin/thunderbird/thunderbird-bin: /usr/lib/libssl3.so: version `NSS_3.12.6' not found (required by /usr/local/bin/thunderbird/thunderbird-bin)
/usr/local/bin/thunderbird/thunderbird-bin: /usr/lib/libssl3.so: version `NSS_3.12.6' not found (required by /usr/lib/libxul.so)
        linux-gate.so.1 =>  (0xb7fb1000)
        libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb7f8b000)
        libmozjs.so => /usr/lib/libmozjs.so (0xb7e89000)
        libxpcom.so => /usr/lib/libxpcom.so (0xb7e84000)
        libxpcom_core.so => /usr/lib/libxpcom_core.so (0xb7e01000) [Originally, libxpcom_core.so was declared "not found" thus I created a symbolic link under /usr/lib]
        libplds4.so => /usr/lib/libplds4.so (0xb7dfe000)
        libplc4.so => /usr/lib/libplc4.so (0xb7dfa000)
        libnspr4.so => /usr/lib/libnspr4.so (0xb7dc6000)
        libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7dc2000)
        libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xb7a36000)
        libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xb7a1b000)
        libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xb7995000)
        libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb797d000)
        libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb7973000)
        libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb7932000)
        libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb78c6000)
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb788a000)
        libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb7886000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb77d1000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0xb76e2000)
        libdbus-glib-1.so.2 => /usr/lib/libdbus-glib-1.so.2 (0xb76c5000)
        libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0xb768d000)
        libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7667000)
        libsmime3.so => /usr/lib/libsmime3.so (0xb7649000)
        libssl3.so => /usr/lib/libssl3.so (0xb7622000)
        libnss3.so => /usr/lib/libnss3.so (0xb754f000)
        libnssutil3.so => /usr/lib/libnssutil3.so (0xb753b000)
        libldap60.so => /usr/lib/libldap60.so (0xb7509000) [Originally, libldap60.so was declared "not found" thus I created a symbolic link under /usr/lib]
        libprldap60.so => /usr/lib/libprldap60.so (0xb7504000) [Originally, libprldap60.so was declared "not found" thus I created a symbolic link under /usr/lib]
        libldif60.so => /usr/lib/libldif60.so (0xb7501000) [Originally, libldif60.so was declared "not found" thus I created a symbolic link under /usr/lib]
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb74f8000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7483000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb7458000)
        libXt.so.6 => /usr/lib/libXt.so.6 (0xb7407000)
        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb7402000)
        libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb73db000)
        libsqlite3.so => /usr/lib/libsqlite3.so (0xb736d000)
        libasound.so.2 => /usr/lib/libasound.so.2 (0xb72ab000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb71bd000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb71af000)
        libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7054000)
        /lib/ld-linux.so.2 (0xb7fb2000)
        libxul.so => /usr/lib/libxul.so (0xb6243000)
        libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0xb6240000)
        libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0xb623d000)
        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb6237000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0xb6229000)
        libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb6226000)
        libXi.so.6 => /usr/lib/libXi.so.6 (0xb621e000)
        libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb6218000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb620e000)
        libz.so.1 => /usr/local/lib/libz.so.1 (0xb61f8000)
        libdirectfb-1.0.so.0 => /usr/lib/libdirectfb-1.0.so.0 (0xb6191000)
        libfusion-1.0.so.0 => /usr/lib/libfusion-1.0.so.0 (0xb6189000)
        libdirect-1.0.so.0 => /usr/lib/libdirect-1.0.so.0 (0xb6175000)
        libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb6150000)
        libxcb-render-util.so.0 => /usr/lib/libxcb-render-util.so.0 (0xb614c000)
        libxcb-render.so.0 => /usr/lib/libxcb-render.so.0 (0xb6145000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb612d000)
        libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0xb6104000)
        libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb60da000)
        libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb60d8000)
        libnsl.so.1 => /lib/i686/cmov/libnsl.so.1 (0xb60bf000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb6099000)
        libSM.so.6 => /usr/lib/libSM.so.6 (0xb6090000)
        libICE.so.6 => /usr/lib/libICE.so.6 (0xb6079000)
        librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb6070000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0xb606d000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb6067000)
Priority: -- → P5
Version: unspecified → 3.0

Comment 2

8 years ago
you shouldn't make links like that

you should run ./thunderbird, not ./thuenderbird-bin

Comment 3

8 years ago
(only developers set priority)
Priority: P5 → --

Comment 4

8 years ago
I can confirm this bug.  From the view pane, everytime I click a message with attachments in order to start reading it, thunderbird immediately crashes.  I search for a core-dump but there isn't any.  

Due to a lack of a non-stripped version in my system, I wasn't able to do a gdb to it.  However, I was able to capture an strace of the running process right before it segfaulted and up until the segfault itself.   

Here're the commands I ran:

$ mozilla-thunderbird  &
$ ps aux | grep thunderbird
carlo     4696  0.0  0.0   1748   540 pts/0    S    10:37   0:00 /bin/sh /usr/bin/mozilla-thunderbird
carlo     4708  0.0  0.0   1748   544 pts/0    S    10:37   0:00 /bin/sh /usr/lib/thunderbird/run-mozilla.sh /usr/lib/thunderbird/thunderbird-bin
carlo     4712 24.1  3.6 123916 37704 pts/0    Sl   10:37   0:02 /usr/lib/thunderbird/thunderbird-bin
carlo     4722  0.0  0.0   3036   804 pts/0    S+   10:37   0:00 grep --color=auto thunderbird

$ strace -p 4712

The final parts of the strace leading to the crash are as follows: 

access("/home/carlo/.local/share/mime/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.xml", F_OK) = -1 ENOENT (No such file or directory)
access("/usr/local/share/mime/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.xml", F_OK) = -1 ENOENT (No such file or directory)
access("/usr/share/mime/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.xml", F_OK) = 0
stat64("/usr/share/mime/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.xml", {st_mode=S_IFREG|0644, st_size=4411, ...}) = 0
open("/usr/share/mime/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.xml", O_RDONLY|O_LARGEFILE) = 32
_llseek(32, 0, [0], SEEK_CUR)           = 0
read(32, "<?xml version=\"1.0\" encoding=\"ut"..., 8192) = 4411
read(32, "", 3781)                      = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
unlink("/home/carlo/.mozilla-thunderbird/juqrambw.default/lock") = 0
rt_sigaction(SIGSEGV, {SIG_DFL, [], 0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [SEGV], NULL, 8) = 0
tgkill(4314, 4314, SIGSEGV)             = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
Process 4712 detached
carlo@thorin:~/.mozilla-thunderbird/orig/y0et7xl5.default/Mail/mailer.hq1.astra-1.ph$ Segmentation fault


As you can see, the segfault occurred while thunderbird attempted to open files on the /usr/share/mime directory.  After temporarily removing the mime directory, then restarting thunderbird, the crash does not appear anymore.

Thus, it seems that thunderbird is doing something wrong when it's checking the mime directory.  

That's all.

Thanks a lot!

Best Regards,

Carlo Florendo
Astra Philippines, Inc.
(Reporter)

Comment 5

8 years ago
My apologies for not posting this sooners, but I discovered a workaround (if not the solution) about a week after I created this bug report and am no longer getting crashes as of this comment.

Here are the steps:

1) Right-click on any e-mail w/ an attachment and select "Edit As New"
2) When the editing window loads, click Edit > Preferences
3) When the Preferences window loads, click "Attachments" on the menu.

Once I performed this, I was able to click and read all e-mails w/ attachments.

Carlo Florendo could be on to something, as Thunderbird may have been trying to access a restricted file/folder. And a segmentation fault (access violation) could mean that Thunderbird was accessing memory of the file that either was not there or had no business accessing. In either case, whatever it was trying to access could not be stored and left a null pointer to be de-referenced.

In my case, the steps above may have enabled Thunderbird to gain access by recreating the file it needed.
Summary: Crashes when opening/reading e-mail with attachment → Crashes when opening/reading e-mail with attachment (application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.xml)

Comment 7

8 years ago
(In reply to comment #6)
> https://developer.mozilla.org/En/How_to_get_a_stacktrace_for_a_bug_report

I can't reproduce on windows. 
do you still this in version 3.1?  a stack trace would help get a fix
Whiteboard: [closeme 2011-03-01]
RESOLVED INCOMPLETE due to lack of response to last question. If you feel this change was made in error, please respond to this bug with your reasons why.
Status: UNCONFIRMED → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.