Subject: bug#13867: 24.3.50; reading certain emails containing images in mu4e causes segfault

From: Nicolas Avrutin <[email-masked]>
Date: Mon, 04 Mar 2013 11:40:55 -0500

Reading certain emails with mu4e
(https://github.com/djcb/mu/tree/master/mu4e) causes emacs to segfault.

Steps to reproduce:
emacs -Q
(add-to-list 'load-path "/usr/share/emacs/site-lisp/mu4e/")
(load-file "~/.emacs.d/conf/mu4e-conf.el")
M-x mu4e
ji
RET
; ji to view inbox, select the right message, then RET to open it

Relevant lines from mu4e-conf.el:
;; enable inline images
(setq mu4e-view-show-images t)
;; use imagemagick, if available
(when (fboundp 'imagemagick-register-types)
(imagemagick-register-types))

Setting mu4e-view-show-images to nil causes the the segfault to not
occur.

Backtrace:
(gdb) run -Q
Starting program: /usr/bin/emacs -Q
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
Traceback (most recent call last):
  File "/usr/share/gdb/auto-load/usr/lib/libgobject-2.0.so.0.3400.3-gdb.py", line 9, in <module>
    from gobject import register
  File "/usr/share/glib-2.0/gdb/gobject.py", line 3, in <module>
    import gdb.backtrace
ImportError: No module named backtrace
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7fffe6dea700 (LWP 8465)]
[New Thread 0x7fffe63de700 (LWP 8466)]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff3f45791 in AcquireQuantumInfo () from /usr/lib/libMagickCore-Q16.so.7
(gdb) bt full
#0  0x00007ffff3f45791 in AcquireQuantumInfo () from /usr/lib/libMagickCore-Q16.so.7
No symbol table info available.
#1  0x00007fffcfac980f in ?? () from /usr/lib/ImageMagick-6.8.2/modules-Q16/coders/png.so
No symbol table info available.
#2  0x00007fffcfaca630 in ?? () from /usr/lib/ImageMagick-6.8.2/modules-Q16/coders/png.so
No symbol table info available.
#3  0x00007ffff3e7b3c0 in ReadImage () from /usr/lib/libMagickCore-Q16.so.7
No symbol table info available.
#4  0x00007ffff43295bc in MagickReadImage () from /usr/lib/libMagickWand-Q16.so.7
No symbol table info available.
#5  0x00000000006875bc in ?? ()
No symbol table info available.
#6  0x0000000000688156 in ?? ()
No symbol table info available.
#7  0x000000000067e187 in ?? ()
No symbol table info available.
#8  0x000000000043bd6f in ?? ()
No symbol table info available.
#9  0x000000000043a5b9 in ?? ()
No symbol table info available.
#10 0x000000000043a3f2 in ?? ()
No symbol table info available.
#11 0x00000000004375b2 in ?? ()
No symbol table info available.
#12 0x0000000000443faa in ?? ()
No symbol table info available.
#13 0x00000000004402e1 in ?? ()
No symbol table info available.
#14 0x0000000000463e94 in ?? ()
No symbol table info available.
#15 0x000000000045aae0 in ?? ()
No symbol table info available.
#16 0x0000000000458bc1 in ?? ()
No symbol table info available.
#17 0x000000000045272f in ?? ()
No symbol table info available.
#18 0x00000000005e04b2 in ?? ()
No symbol table info available.
#19 0x000000000045269d in ?? ()
No symbol table info available.
#20 0x0000000000452657 in ?? ()
No symbol table info available.
#21 0x000000000045176f in ?? ()
No symbol table info available.
#22 0x0000000000451f58 in ?? ()
No symbol table info available.
#23 0x000000000063a525 in ?? ()
No symbol table info available.
#24 0x0000000000422d2b in ?? ()
No symbol table info available.
#25 0x0000000000546b17 in ?? ()
No symbol table info available.
#26 0x000000000055354a in ?? ()
No symbol table info available.
#27 0x00000000005441fb in ?? ()
No symbol table info available.
#28 0x00000000005e0331 in ?? ()
No symbol table info available.
#29 0x0000000000543b35 in ?? ()
No symbol table info available.
#30 0x00000000005dfcd8 in ?? ()
No symbol table info available.
#31 0x0000000000543ae5 in ?? ()
No symbol table info available.
#32 0x000000000054323e in ?? ()
No symbol table info available.
#33 0x00000000005433e1 in ?? ()
No symbol table info available.
#34 0x00000000005412b6 in ?? ()
No symbol table info available.
#35 0x00007ffff19d0a15 in __libc_start_main () from /usr/lib/libc.so.6
No symbol table info available.
#36 0x0000000000416339 in ?? ()
No symbol table info available.

In GNU Emacs 24.3.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.6.4)
 of 2013-03-04 on gateway
Bzr revision: [email-masked]
Windowing system distributor `The X.Org Foundation', version 11.0.11204000
System Description:	Arch Linux

Configured using:
 `configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
 --libexecdir=/usr/lib --mandir=/usr/share/man
 --without-toolkit-scroll-bars --with-xft --with-x-toolkit=gtk3
 CFLAGS='-march=x86-64 -mtune=generic -O0 -g3 -pipe -fstack-protector
 --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2'
 LDFLAGS='-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu''

Important settings:
  value of $LC_ALL: en_US.utf8
  value of $LANG: en_US.utf8
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
M-x r e p o r t C-g <S-insert> C-/ M-: <S-insert> <return> 
M-: <S-insert> <return> M-x r e p o r t <tab> <ret
urn>

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Quit
Mark set
Undo!
("/usr/share/emacs/site-lisp/mu4e/" "/usr/share/emacs/24.3.50/lisp" "/usr/share/emacs/24.3.50/lisp/vc" "/usr/share/emacs/24.3.50/lisp/url" "/usr/share/emacs/24.3.50/lisp/textmodes" "/usr/share/emacs/24.3.50/lisp/progmodes" "/usr/share/emacs/24.3.50/lisp/play" "/usr/share/emacs/24.3.50/lisp/org" "/usr/share/emacs/24.3.50/lisp/nxml" "/usr/share/emacs/24.3.50/lisp/net" "/usr/share/emacs/24.3.50/lisp/mh-e" "/usr/share/emacs/24.3.50/lisp/mail" ...)
Loading /home/avru/.emacs.d/conf/mu4e-conf.el (source)...done
t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug edmacro kmacro mu4e mu4e-speedbar
speedbar sb-image ezimage dframe mu4e-main mu4e-view epa derived epg
epg-config browse-url comint ansi-color ring mu4e-headers mu4e-compose
mu4e-draft mu4e-actions rfc2368 smtpmail auth-source eieio byte-opt
bytecomp byte-compile cconv gnus-util password-cache sendmail mu4e-mark
mu4e-message html2text mu4e-proc mu4e-utils doc-view jka-compr
image-mode dired mu4e-lists mu4e-about mu4e-vars message cl-macs gv
format-spec rfc822 mml easymenu mml-sec mm-decode mm-bodies mm-encode
mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mm-util mail-prsvr
mailabbrev mail-utils gmm-utils mailheader hl-line cl nadvice cl-lib
mu4e-meta time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel
x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list
newcomment lisp-mode register page menu-bar rfn-eshadow timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham
georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese hebrew greek romanian slovak czech european ethiopic
indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple
abbrev minibuffer loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote make-network-process
dbusbind inotify dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty emacs)

-- 
Nicolas Avrutin