After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 435632 - Repeatable crash when using seahorse to decrypt an attachment
Repeatable crash when using seahorse to decrypt an attachment
Status: RESOLVED OBSOLETE
Product: evolution
Classification: Applications
Component: Mailer
2.10.x (obsolete)
Other All
: High critical
: ---
Assigned To: evolution-mail-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2007-05-03 20:51 UTC by brywilharris
Modified: 2009-06-22 06:14 UTC
See Also:
GNOME target: ---
GNOME version: 2.17/2.18



Description brywilharris 2007-05-03 20:51:22 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

Thread 1 (Thread -1233578304 (LWP 17085))

  • #0 camel_strdown
    at camel-string-utils.c line 103
  • #1 em_popup_target_new_part
    at em-popup.c line 301
  • #2 efhd_attachment_popup
    at em-format-html-display.c line 1502
  • #3 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #4 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #5 ??
    from /usr/lib/libgobject-2.0.so.0
  • #6 ??
  • #7 ??
  • #8 ??
  • #9 ??
  • #10 ??
  • #11 pthread_mutex_unlock
    from /lib/tls/i686/cmov/libpthread.so.0
  • #12 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #13 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #14 ??
    from /usr/lib/libgtk-x11-2.0.so.0
  • #15 ??
  • #16 ??
  • #17 ??

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.
Comment 1 brywilharris 2007-05-03 20:54:19 UTC
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
Comment 2 Christian Kirbach 2007-05-03 20:57:32 UTC
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!
Comment 3 brywilharris 2007-05-07 12:24:13 UTC
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.
Comment 4 brywilharris 2007-05-07 12:51:37 UTC
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

Thread 1 (Thread -1234168128 (LWP 11813))

  • #0 camel_strdown
    at camel-string-utils.c line 103
  • #1 em_popup_target_new_part
    at em-popup.c line 301
  • #2 efhd_attachment_popup
    at em-format-html-display.c line 1502
  • #3 _gtk_marshal_BOOLEAN__BOXED
    from /usr/lib/libgtk-x11-2.0.so.0
  • #4 IA__g_closure_invoke
    at gclosure.c line 490
  • #5 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #6 IA__g_signal_emit_valist
    at gsignal.c line 2209
  • #7 IA__g_signal_emit
    at gsignal.c line 2243
  • #8 ??
    from /usr/lib/libgtk-x11-2.0.so.0
  • #9 ??
  • #10 ??
  • #11 ??


Comment 5 brywilharris 2007-05-07 12:59:35 UTC
Here's with the gtk debigging libraries installed as well to get rid of those ?? () symbols at the end.

Thread 1 (Thread -1233623360 (LWP 12222))

  • #0 IA__g_str_hash
    at gstring.c line 95
  • #1 IA__g_hash_table_lookup
    at ghash.c line 231
  • #2 em_cache_lookup
    at e-msgport.c line 347
  • #3 em_icon_stream_is_resized
    at em-icon-stream.c line 326
  • #4 efhd_attachment_popup
    at em-format-html-display.c line 1512
  • #5 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 84
  • #6 IA__g_closure_invoke
    at gclosure.c line 490
  • #7 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #8 IA__g_signal_emit_valist
    at gsignal.c line 2209
  • #9 IA__g_signal_emit
    at gsignal.c line 2243
  • #10 gtk_widget_event_internal
    at gtkwidget.c line 3915
  • #11 IA__gtk_propagate_event
    at gtkmain.c line 2364
  • #12 IA__gtk_main_do_event
    at gtkmain.c line 1598
  • #13 gdk_event_dispatch
    at gdkevents-x11.c line 2318
  • #14 IA__g_main_context_dispatch
    at gmain.c line 2045
  • #15 g_main_context_iterate
    at gmain.c line 2677
  • #16 IA__g_main_loop_run
    at gmain.c line 2881
  • #17 bonobo_main
    from /usr/lib/libbonobo-2.so.0
  • #18 main
    at main.c line 611

Comment 6 brywilharris 2007-05-12 01:52:56 UTC
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!
Comment 7 Milan Crha 2007-09-25 09:53:39 UTC
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)
Comment 8 André Klapper 2007-12-19 03:26:20 UTC
same issue as bug 400689?
Comment 9 Akhil Laddha 2009-05-20 07:01:50 UTC
Did you get similar crash any time later ?  Can you please try in 2.24.x / 2.26.x and report back, thanks. 
Comment 10 Akhil Laddha 2009-06-22 06:14:11 UTC
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.