Bug 2563 - Claws Mail crashes when trying to view some mails
Summary: Claws Mail crashes when trying to view some mails
Status: RESOLVED WORKSFORME
Alias: None
Product: Claws Mail (GTK 2)
Classification: Unclassified
Component: Plugins/Gtkhtml2 Viewer (show other bugs)
Version: 3.7.10
Hardware: PC Linux
: P3 normal
Assignee: users
URL:
Depends on:
Blocks:
 
Reported: 2011-12-13 10:14 UTC by Dmitry Svyatogorov
Modified: 2012-06-04 06:47 UTC (History)
0 users

See Also:


Attachments
This mail leads Claws Mail to crash (6.29 KB, message/rfc822)
2011-12-13 10:14 UTC, Dmitry Svyatogorov
no flags Details
New, but buggy fancy plugin. (152.49 KB, application/x-sharedlib)
2011-12-14 09:34 UTC, Dmitry Svyatogorov
no flags Details

Description Dmitry Svyatogorov 2011-12-13 10:14:24 UTC
Created attachment 1051 [details]
This mail leads Claws Mail to crash

On OpenSuSe 12.1 (KDE) Claws Mail crashes immediately when trying to view some messages on preview panel. Signal 11, see details below. I've attached the mail that produses the crash. Claws Mail does cached link to tls-imap, preview panel is on.
 And, yes, it again gets stuck on header-encoding errors! It's a good idea to use "charset=" in case of no MIME in "Subject". You although must take more attention to UTF8-MIME subjects, as it's very buggy now. There is good sample code, as current RoundCoube does all such things correctly. But I want to have this in my preferred mailer!

===============================================================================
Claws Mail version 3.7.10
GTK+ version 2.24.7 / GLib 2.30.1
Locale: ru_RU.UTF-8 (charset: UTF-8)
Features: IPv6 iconv compface GnuTLS LDAP JPilot GNU/aspell libetpan libSM
Operating system: Linux 3.1.0-1.2-desktop (x86_64)
C Library: GNU libc 2.14.1
--
[Thread debugging using libthread_db enabled]
[New Thread 0x7f6c8e5dc700 (LWP 690)]
0x00007f6c9ae128bd in waitpid () from /lib64/libpthread.so.0
#0  0x00007f6c9ae128bd in waitpid () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x000000000049f18b in ?? ()
No symbol table info available.
#2  <signal handler called>
No symbol table info available.
#3  0x00007f6c8f229ba3 in ?? () from /usr/lib64/claws-mail/plugins/gtkhtml2_viewer.so
No symbol table info available.
#4  0x00007f6c8f22a17b in ?? () from /usr/lib64/claws-mail/plugins/gtkhtml2_viewer.so
No symbol table info available.
#5  0x00007f6c8f22da09 in css_matcher_get_style () from /usr/lib64/claws-mail/plugins/gtkhtml2_viewer.so
No symbol table info available.
#6  0x00007f6c8f22f19e in ?? () from /usr/lib64/claws-mail/plugins/gtkhtml2_viewer.so
No symbol table info available.
#7  0x00007f6c8f22fac9 in ?? () from /usr/lib64/claws-mail/plugins/gtkhtml2_viewer.so
No symbol table info available.
#8  0x00007f6c8f22ffa1 in ?? () from /usr/lib64/claws-mail/plugins/gtkhtml2_viewer.so
No symbol table info available.
#9  0x00007f6c9a36ba14 in g_closure_invoke () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#10 0x00007f6c9a37d99a in ?? () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#11 0x00007f6c9a387021 in g_signal_emit_valist () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#12 0x00007f6c9a3871c2 in g_signal_emit () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#13 0x00007f6c8ef1c57c in ?? () from /usr/lib64/libxml2.so.2
No symbol table info available.
#14 0x00007f6c8ef21e3d in htmlParseChunk () from /usr/lib64/libxml2.so.2
No symbol table info available.
#15 0x00007f6c8f252a09 in html_stream_write () from /usr/lib64/claws-mail/plugins/gtkhtml2_viewer.so
No symbol table info available.
#16 0x00007f6c8f225c9f in ?? () from /usr/lib64/claws-mail/plugins/gtkhtml2_viewer.so
No symbol table info available.
#17 0x00007f6c99ea7d6b in ?? () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#18 0x00007f6c99ea658d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#19 0x00007f6c99ea6d88 in ?? () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#20 0x00007f6c99ea72c2 in g_main_loop_run () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#21 0x00007f6c9c8c4ec7 in gtk_main () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#22 0x000000000044cfc9 in main ()
No symbol table info available.
Kill the program being debugged? (y or n) [answered Y; input not from terminal]
===============================================================================
Comment 1 Paul 2011-12-13 20:02:24 UTC
It displays fine here - no crash, no problems.
Are you using one of the HTML rendering plugins to display the html? If so, which one? I've viewed it with the Fancy plugin.
Comment 2 Paul 2011-12-13 20:04:42 UTC
And regarding the UTF-8 Subject. To the best of my knowledge the Subject should state it's encoding, if it doesn't it's broken.
Comment 3 Paul 2011-12-13 20:06:28 UTC
Obviously I'm trying to do many things at once... Following up to my question about an HTML plugin, I now see that you are using the Gtkhtml2 Viewer plugin.
Comment 4 Dmitry Svyatogorov 2011-12-14 07:58:56 UTC
  Thank You, Paul. The bug really locates in gtkhtml2 plugin. But "fancy" complains me to the undefined symbol and, so, doesn't load:
=========================================================
fancy.so:
/usr/lib64/claws-mail/plugins/fancy.so: undefined symbol: webkit_web_view_get_selected_text
=========================================================
  Of course it may be compilation bug in my OpenSuSe repo.

  And WRT subjects, the non-mime encodings is a bug of about a half of internet (php, AFAIK) mailers in non-ASCII sector, because most of them are written by english-spoken programmers. So, stupid php-coders have no idea on how to adopt some out-of-box mail() function :(
Comment 5 Paul 2011-12-14 08:32:30 UTC
The 'undefined symbol" in Fancy has been reported (many times) and fixed, see bug #2507. I don't think you have to necessarily be English-speaking to be a "stupid" php coder.

In the case of the attached msg, the subject is not UTF-8 but cp1251.
Comment 6 Dmitry Svyatogorov 2011-12-14 09:34:00 UTC
Created attachment 1052 [details]
New, but buggy fancy plugin.
Comment 7 Dmitry Svyatogorov 2011-12-14 09:34:37 UTC
  Hi Paul, I recently compilled&installed Fancy 0.9.14 from http://www.claws-mail.org/plugins.php, but the bug is still here.
fancy.so:
/usr/lib64/claws-mail/plugins/fancy.so: undefined symbol: webkit_web_view_get_selected_text

 Moreover, mailer now crashes when trying to load it again:
============================================================================
Claws Mail version 3.7.10
GTK+ version 2.24.7 / GLib 2.30.1
Locale: ru_RU.UTF-8 (charset: UTF-8)
Features: IPv6 iconv compface GnuTLS LDAP JPilot GNU/aspell libetpan libSM
Operating system: Linux 3.1.0-1.2-desktop (x86_64)
C Library: GNU libc 2.14.1
--
[Thread debugging using libthread_db enabled]
[New Thread 0x7fb1e4215700 (LWP 27598)]
[New Thread 0x7fb1f1621700 (LWP 27593)]
0x00007fb1fd1c58bd in waitpid () from /lib64/libpthread.so.0
#0  0x00007fb1fd1c58bd in waitpid () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x000000000049f18b in ?? ()
No symbol table info available.
#2  <signal handler called>
No symbol table info available.
#3  0x000000000000438e in ?? ()
No symbol table info available.
#4  0x00007fb1e280fdea in plugin_init (error=<optimized out>) at fancy_viewer.c:1132
        directory = <optimized out>
#5  0x00000000005e982d in plugin_load ()
No symbol table info available.
#6  0x0000000000634666 in ?? ()
No symbol table info available.
#7  0x00007fb1fc71ea14 in g_closure_invoke () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#8  0x00007fb1fc73099a in ?? () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#9  0x00007fb1fc73a021 in g_signal_emit_valist () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#10 0x00007fb1fc73a1c2 in g_signal_emit () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#11 0x00007fb1febd1c95 in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#12 0x00007fb1fc71ea14 in g_closure_invoke () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#13 0x00007fb1fc73018a in ?? () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#14 0x00007fb1fc73a021 in g_signal_emit_valist () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#15 0x00007fb1fc73a1c2 in g_signal_emit () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#16 0x00007fb1febd0abd in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#17 0x00007fb1fec7a958 in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#18 0x00007fb1fc71ea14 in g_closure_invoke () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#19 0x00007fb1fc7307cf in ?? () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#20 0x00007fb1fc739df3 in g_signal_emit_valist () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#21 0x00007fb1fc73a1c2 in g_signal_emit () from /usr/lib64/libgobject-2.0.so.0
No symbol table info available.
#22 0x00007fb1fed93911 in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#23 0x00007fb1fec78b13 in gtk_propagate_event () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#24 0x00007fb1fec78e73 in gtk_main_do_event () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#25 0x00007fb1fe8e464c in ?? () from /usr/lib64/libgdk-x11-2.0.so.0
No symbol table info available.
#26 0x00007fb1fc25958d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#27 0x00007fb1fc259d88 in ?? () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#28 0x00007fb1fc25a2c2 in g_main_loop_run () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#29 0x00007fb1fec77ec7 in gtk_main () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#30 0x000000000044cfc9 in main ()
No symbol table info available.
Kill the program being debugged? (y or n) [answered Y; input not from terminal]
============================================================================

file /usr/lib64/claws-mail/plugins/fancy.so
/usr/lib64/claws-mail/plugins/fancy.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x8afc87fb166759f7c415d77b9058f827325b1739, not stripped

  Unfortunally, I don't know how to see .so version, but in strings I cat find "0.9.14", so I think it's really new one.
Comment 8 Dmitry Svyatogorov 2011-12-14 10:06:42 UTC
"In the case of the attached msg, the subject is not UTF-8 but cp1251."
  Of course, in this specific case it is. But in more wide case, for example, all mail from ru-ncc@nic.ru robot (.RU top domain registrar) comes with plain KOI8-R and without any MIME. And I just can't see mail source because all 8-bit symbols are replaced with "_".

  The example of non-readable UTF-8 MIME:
To: =?UTF-8?Q?=D0=94=D0=BC=D0=B8=D1=82=D1=80=D0=B8=D0=B9=20?=<ds@miran.ru>
From: =?UTF-8?Q?=D0=A1=D0=B8=D1=81=D1=82=D0=B5=D0=BC=D0=B0=20=D0=B1=D0?= =?UTF-8?Q?=B8=D0=BB=D0=BB=D0=B8=D0=BD=D0=B3=D0=B0=20?=<billing@miran.ru>
Subject: =?UTF-8?Q?=D0=98=D1=81=D1=85=D0=BE=D0=B4=D1=8F=D1=89=D0=B8=D0=B5?= =?UTF-8?Q?=20=D0=B7=D0=B2=D0=BE=D0=BD=D0=BA=D0=B8=20=D0=B7=D0=B0?= =?UTF-8?Q?=20=D0=BC=D0=B5=D1=81=D1=8F=D1=86?=

  Encoded by MIME::Words in one of my perl scripts, but I see "_" in place of russian characters, while in RoundCube I see correct strings.
Comment 9 St 2011-12-14 10:55:37 UTC
About the "undefined symbol" problem, use the CVS version of Fancy :
<http://www.claws-mail.org/snapshots/plugins/>.
Comment 10 Dmitry Svyatogorov 2011-12-14 11:08:26 UTC
"use the CVS version of Fancy"
  Great, it works! :)
Comment 11 Dmitry Svyatogorov 2012-01-31 07:30:27 UTC
  Now, another irregular crash orrures while I navigate through the preview list (generally, crashes just on plain-text mails). The up-to-date OpenSuse 12.1 is still on my PC (oh,no! the fixed kernel is at last released).

Claws Mail version 3.7.10
GTK+ version 2.24.7 / GLib 2.30.1
Locale: ru_RU.UTF-8 (charset: UTF-8)
Features: IPv6 iconv compface GnuTLS LDAP JPilot GNU/aspell libetpan libSM
Operating system: Linux 3.1.0-1.2-desktop (x86_64)
C Library: GNU libc 2.14.1
--
[Thread debugging using libthread_db enabled]
[New Thread 0x7ff938f91700 (LWP 6308)]
[New Thread 0x7ff939792700 (LWP 6307)]
[New Thread 0x7ff9421ab700 (LWP 1733)]
0x00007ff954a9c8bd in waitpid () from /lib64/libpthread.so.0
#0  0x00007ff954a9c8bd in waitpid () from /lib64/libpthread.so.0
No symbol table info available.
#1  0x000000000049f18b in ?? ()
No symbol table info available.
#2  <signal handler called>
No symbol table info available.
#3  0x000000000060c5bd in gtk_cmctree_node_get_row_data ()
No symbol table info available.
#4  0x0000000000598597 in ?? ()
No symbol table info available.
#5  0x00000000005a1127 in ?? ()
No symbol table info available.
#6  0x00000000005a1323 in ?? ()
No symbol table info available.
#7  0x00007ff953b31d6b in ?? () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#8  0x00007ff953b3058d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#9  0x00007ff953b30d88 in ?? () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#10 0x00007ff953b312c2 in g_main_loop_run () from /usr/lib64/libglib-2.0.so.0
No symbol table info available.
#11 0x00007ff95654eec7 in gtk_main () from /usr/lib64/libgtk-x11-2.0.so.0
No symbol table info available.
#12 0x000000000044cfc9 in main ()
No symbol table info available.

The mail where Claws has been crashed this time was (plain-ASCII):
==========================================
Return-path: <nob.apc@miran.ru>
Received: from [91.142.80.6] (helo=sm1.miran.ru)
	by post.miran.ru with esmtps (envelope-from <nob.apc@miran.ru>)
	id 1Rs3DP-00083k-GJ
	for adm@miran.ru; Tue, 31 Jan 2012 06:12:59 +0400
Received: from bill.miran.ru ([91.142.80.22] helo=nob.apc.miran.ru)
	by sm1.miran.ru with smtp (envelope-from <nob.apc@miran.ru>)
	id 1Rs3DO-0003WL-UK
	for adm@miran.ru; Tue, 31 Jan 2012 06:12:59 +0400
MIME-Version: 1.0
Date: Tue, 31 Jan 2012 02:12:52 GMT
To: adm@miran.ru
From: nob.apc@miran.ru
Cc: 
Subject: UPS: Started a self-test.
X-Mailer: Email Server
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 7bit
X-Antivirus-CLAM: passed 
Message-ID: <1Rs3DP-00083k-GJ@post.miran.ru>

Name     : Smart-UPS 2200
Location : NOBEL
Contact  : MIRAN
http://nob.apc.miran.ru
http://172.20.0.16

Serial #: BA0902029648
Device Ser #: JS0520005128
Date: 01/31/2012
Time: 05:12:48
Code: 0x0137

Informational - UPS: Started a self-test.
==========================================

Note You need to log in before you can comment on or make changes to this bug.