GNOME Bugzilla – Bug 435632
Repeatable crash when using seahorse to decrypt an attachment
Last modified: 2009-06-22 06:14:11 UTC
Steps to reproduce: 1. open an encrypted message 2. photo viewer pops up the image included in my encryption key 3. close the image and the program now shows that I have an encrypted plain text document attachment 4 [details]. click on the dropdown and choose to view the message inline (duh) 5. a new dialog asks for my password again because I didn't save it before (safety first) 6. clicking on the pulldown before entering the password crashes evolution Stack trace: bryan@ubuntu-bryan:~$ gdb evolution GNU gdb 6.6-debian Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i486-linux-gnu"... Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1". (gdb) run Starting program: /usr/bin/evolution [Thread debugging using libthread_db enabled] [New Thread -1233578304 (LWP 17085)] [New Thread -1239438448 (LWP 17088)] [Thread -1239438448 (LWP 17088) exited] (evolution-2.10:17085): evolution-mail-WARNING **: ignored this junk plugin: not enabled or we have already loaded one (evolution-2.10:17085): e-utils-WARNING **: Plugin 'Spamassassin junk plugin' failed to load hook 'org.gnome.evolution.mail.junk:1.0' ** (evolution-2.10:17085): DEBUG: mailto URL command: evolution --component=mail %s ** (evolution-2.10:17085): DEBUG: mailto URL program: evolution [New Thread -1239438448 (LWP 17099)] [New Thread -1288164464 (LWP 17100)] [New Thread -1336173680 (LWP 17101)] [New Thread -1344566384 (LWP 17102)] [New Thread -1361351792 (LWP 17104)] [New Thread -1352959088 (LWP 17103)] [New Thread -1369744496 (LWP 17105)] [Thread -1369744496 (LWP 17105) exited] [New Thread -1369744496 (LWP 17112)] [New Thread -1380975728 (LWP 17114)] [New Thread -1389368432 (LWP 17115)] [New Thread -1397761136 (LWP 17116)] [Thread -1352959088 (LWP 17103) exited] [New Thread -1406682224 (LWP 17119)] (evolution-2.10:17085): camel-WARNING **: Trying to check junk data is OBJECT 'CamelObject' (evolution-2.10:17085): camel-CRITICAL **: camel_object_is: assertion `check_magic(o, ctype, CAMEL_OBJECT_MAGIC)' failed (evolution-2.10:17085): camel-CRITICAL **: camel_object_ref: assertion `CAMEL_IS_OBJECT(o)' failed (evolution-2.10:17085): camel-WARNING **: Trying to check junk data is OBJECT 'CamelDataWrapper' (evolution-2.10:17085): camel-CRITICAL **: camel_object_is: assertion `check_magic(o, ctype, CAMEL_OBJECT_MAGIC)' failed (evolution-2.10:17085): camel-CRITICAL **: camel_data_wrapper_get_mime_type: assertion `CAMEL_IS_DATA_WRAPPER (data_wrapper)' failed Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1233578304 (LWP 17085)] camel_strdown (str=0x0) at camel-string-utils.c:103 103 camel-string-utils.c: No such file or directory. in camel-string-utils.c (gdb) thread apply all bt
+ Trace 132199
Thread 1 (Thread -1233578304 (LWP 17085))
Other information: I also have the photo-viewer turned on in gpg which is how I discovered the bug in the first place. The photo ID image pops up whenever I decrypt a message where that's included (which I haven't yet gotten sick of) and I accidentally clicked the drop-down while trying to close the image. (causing the repeatable crash) I will try to look at the code myself, but I thought I'd give it to the professionals to see who fixes it first.
Oh, I'm running Ubuntu Feisty 7.04 in gnome. I have 3 e-mail accounts, an IMAP account, and M$ exchange account, and a local mbox account. Again, the crash is repeatable. I haven't tried it on any other distro because all my computers have been switched to feisty... :-p
nice description Thanks for taking the time to report this bug. Unfortunately, that stack trace is missing some elements that will help a lot to solve the problem, so it will be hard for the developers to fix that crash. Can you get us a stack trace with debugging symbols? Please see http://live.gnome.org/GettingTraces for more information on how to do so. Thanks in advance!
That's what I get with the evolution debugging symbols installed. The error messages are hollering about the camel libs and poking around the code it seems the problem is there. The code that creates the popup menu calls some camel code to check if a signature is valid before it adds the "view inline" option to the menu. I bet the problem is there. I betcha that code has something that can't be called twice at the same time. I've never really worked with stack traces. I get what they are, but I don't know how, technically, they're generated. I'll install the camel debugging symbols and see if it spits out anything more useful.
I think this might be what you were looking for. This extra message got spit out after I added the extra (about 2 dozen) debugging libraries. bryan@ubuntu-bryan:~$ gdb evolution GNU gdb 6.6-debian Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i486-linux-gnu"... Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1". (gdb) run Starting program: /usr/bin/evolution [Thread debugging using libthread_db enabled] [New Thread -1234168128 (LWP 11813)] [New Thread -1240028272 (LWP 11816)] [Thread -1240028272 (LWP 11816) exited] (evolution-2.10:11813): evolution-mail-WARNING **: ignored this junk plugin: not enabled or we have already loaded one (evolution-2.10:11813): e-utils-WARNING **: Plugin 'Spamassassin junk plugin' failed to load hook 'org.gnome.evolution.mail.junk:1.0' ** (evolution-2.10:11813): DEBUG: mailto URL command: evolution --component=mail %s ** (evolution-2.10:11813): DEBUG: mailto URL program: evolution [New Thread -1240028272 (LWP 11822)] [New Thread -1288754288 (LWP 11823)] [New Thread -1336763504 (LWP 11824)] [New Thread -1345156208 (LWP 11825)] [New Thread -1353548912 (LWP 11826)] [New Thread -1361941616 (LWP 11827)] [New Thread -1370334320 (LWP 11828)] [New Thread -1379914864 (LWP 11829)] [Thread -1370334320 (LWP 11828) exited] [New Thread -1370334320 (LWP 11830)] [New Thread -1388504176 (LWP 11832)] [New Thread -1396896880 (LWP 11833)] [New Thread -1407190128 (LWP 11834)] [Thread -1353548912 (LWP 11826) exited] [New Thread -1415582832 (LWP 11838)] (evolution-2.10:11813): camel-WARNING **: Trying to check junk data is OBJECT 'CamelObject' (evolution-2.10:11813): camel-CRITICAL **: camel_object_is: assertion `check_magic(o, ctype, CAMEL_OBJECT_MAGIC)' failed (evolution-2.10:11813): camel-CRITICAL **: camel_object_ref: assertion `CAMEL_IS_OBJECT(o)' failed (evolution-2.10:11813): camel-WARNING **: Trying to check junk data is OBJECT 'medium' (evolution-2.10:11813): camel-CRITICAL **: camel_object_is: assertion `check_magic(o, ctype, CAMEL_OBJECT_MAGIC)' failed (evolution-2.10:11813): camel-CRITICAL **: camel_medium_get_content_object: assertion `CAMEL_IS_MEDIUM (medium)' failed (evolution-2.10:11813): camel-CRITICAL **: camel_object_is: assertion `o != NULL' failed (evolution-2.10:11813): camel-WARNING **: Trying to check junk data is OBJECT 'CamelDataWrapper' (evolution-2.10:11813): camel-CRITICAL **: camel_object_is: assertion `check_magic(o, ctype, CAMEL_OBJECT_MAGIC)' failed (evolution-2.10:11813): camel-CRITICAL **: camel_data_wrapper_get_mime_type: assertion `CAMEL_IS_DATA_WRAPPER (data_wrapper)' failed (evolution-2.10:11813): camel-WARNING **: Trying to check junk data is OBJECT 'CamelObject' (evolution-2.10:11813): camel-CRITICAL **: camel_object_is: assertion `check_magic(o, ctype, CAMEL_OBJECT_MAGIC)' failed (evolution-2.10:11813): camel-CRITICAL **: camel_object_unref: assertion `CAMEL_IS_OBJECT(o)' failed (evolution-2.10:11813): camel-WARNING **: Trying to check junk data is OBJECT 'CamelObject' (evolution-2.10:11813): camel-CRITICAL **: camel_object_is: assertion `check_magic(o, ctype, CAMEL_OBJECT_MAGIC)' failed (evolution-2.10:11813): camel-CRITICAL **: camel_object_ref: assertion `CAMEL_IS_OBJECT(o)' failed (evolution-2.10:11813): camel-WARNING **: Trying to check junk data is OBJECT 'CamelDataWrapper' (evolution-2.10:11813): camel-CRITICAL **: camel_object_is: assertion `check_magic(o, ctype, CAMEL_OBJECT_MAGIC)' failed (evolution-2.10:11813): camel-CRITICAL **: camel_data_wrapper_get_mime_type: assertion `CAMEL_IS_DATA_WRAPPER (data_wrapper)' failed Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1234168128 (LWP 11813)] camel_strdown (str=0x0) at camel-string-utils.c:103 103 camel-string-utils.c: No such file or directory. in camel-string-utils.c (gdb) thread apply all bt
+ Trace 132868
Thread 1 (Thread -1234168128 (LWP 11813))
Here's with the gtk debigging libraries installed as well to get rid of those ?? () symbols at the end.
+ Trace 132870
Thread 1 (Thread -1233623360 (LWP 12222))
The program is bombing out at line 1606 of em-format.c. When this function gets called the second time it crashes the program. A check to see if it is OK to call camel_cipher_decrypt() would fix the crash. I'm not sure the most appropriate way to do this but I'll look into it. Thanks!
What are the exact steps to reproduce this? From the stacktrace it seems to me like you were supposed to enter password to decrypt message, but you kept that dialog opened (maybe didn't notice it?) and then changed to other email in email's list. Something like this? And as you mentioned above, the mail contents an image (as attachment?) and some text, both encrypted, right? Is it a mail created in Evolution or somewhere else? (I'm sorry for so many questions)
same issue as bug 400689?
Did you get similar crash any time later ? Can you please try in 2.24.x / 2.26.x and report back, thanks.
Thanks for taking the time to report this bug; however, closing due to lack of response of the reporter, sorry. if you still see this issue with a current release of evolution (2.26.2 or later), please reopen. thanks in advance.