Subject: bug#30045: closed (Re: bug#30874: 27.0.50; Emacs crashes)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 03 Apr 2018 12:53:02 +0000

Your bug report

#30874: Emoji causing Emacs (GTK+3 backend) to crash

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
30874: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=30874
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#30874: 27.0.50; Emacs crashes
From: Robert Pluim <[email-masked]>
To: Eli Zaretskii <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Tue, 03 Apr 2018 14:52:12 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Eli Zaretskii <[email-masked]> writes:

>> From: Robert Pluim <[email-masked]>
>> Cc: Eli Zaretskii <[email-masked]>,  [email-masked]
>> Date: Tue, 03 Apr 2018 11:22:05 +0200
>> 
>> Jan Synacek <[email-masked]> writes:
>> >
>> > Yes, it does fix the problem for me.
>> 
>> Thanks. Proposed patch for master attached.
>
> Thanks, the patch LGTM, but I would omit the reference to the bug
> number from the doc string.  I think it's enough to have the bug
> referenced by the commit log message and in the only place where the
> variable is used.
>
>> Eli, should I merge this bugreport with 30045?  The patch fixes that
>> crash for me as well.
>
> Yes, please merge them, and please mention bug#30045 in the log
> message.

OK, pushed as 408bf21a8c, boldly closing the bug.

Robert

Subject: Emoji causing Emacs (GTK+3 backend) to crash
From: Yegor Timoshenko <[email-masked]>
To: [email-masked]
Date: Tue, 9 Jan 2018 17:37:33 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Here is the Unicode symbol that causes Emacs to crash: ✅

Reproduced on the following Emacs/GTK versions:

GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.26)
 of 2018-01-05

GNU Emacs 25.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.26)
 of 2017-12-20

Error log:

X protocol error: BadLength (poly request too large or internal Xlib
length error) on protocol request 139
When compiled with GTK, Emacs cannot recover from X disconnects.
This is a GTK bug: https://bugzilla.gnome.org/show_bug.cgi?id=85715
For details, see etc/PROBLEMS.
Fatal error 6: Aborted
(-emacs-wrapped:24344): GLib-WARNING **: g_main_context_prepare()
called recursively from within a source's check() or prepare() member.

(-emacs-wrapped:24344): GLib-WARNING **: g_main_context_check() called
recursively from within a source's check() or prepare() member.

Backtrace:
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x509e5c]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4efa6b]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x509a63]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4c359b]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4c3896]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4c391b]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(_XError+0x11d)[0x7effd711a13d]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(+0x42047)[0x7effd7117047]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(+0x42105)[0x7effd7117105]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(_XEventsQueued+0x55)[0x7effd7117a05]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(XFlush+0x1a)[0x7effd70f953a]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(+0x61aae)[0x7effd7136aae]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(XDestroyIC+0x12)[0x7effd7124a62]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4d41ac]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4cbeab]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4cc2fb]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4253a7]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4c360b]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4c3896]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4c391b]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(_XError+0x11d)[0x7effd711a13d]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(+0x42047)[0x7effd7117047]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(+0x42105)[0x7effd7117105]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(_XEventsQueued+0x55)[0x7effd7117a05]
/nix/store/x4cqrnzcvcc1lqvz41cp0dxqbnvsmhfk-libX11-1.6.5/lib/libX11.so.6(XPending+0x57)[0x7effd7109697]
/nix/store/v2n1kfxk63p6ypwv3yi9yjp676hcsdyj-gtk+3-3.22.26/lib/libgdk-3.so.0(+0x683ae)[0x7effd8f7f3ae]
/nix/store/ciz98qjymi65iaq535nylgi36mx9m6jl-glib-2.54.2/lib/libglib-2.0.so.0(g_main_context_prepare+0x15d)[0x7effd78846fd]
/nix/store/ciz98qjymi65iaq535nylgi36mx9m6jl-glib-2.54.2/lib/libglib-2.0.so.0(+0x4a15b)[0x7effd788515b]
/nix/store/ciz98qjymi65iaq535nylgi36mx9m6jl-glib-2.54.2/lib/libglib-2.0.so.0(g_main_context_pending+0x27)[0x7effd7885307]
/nix/store/v2n1kfxk63p6ypwv3yi9yjp676hcsdyj-gtk+3-3.22.26/lib/libgtk-3.so.0(gtk_events_pending+0xd)[0x7effd943336d]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4c374f]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4f8c09]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x4f8ff5]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x5cbb87]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x57cbe4]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x5cdd04]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x5cdfab]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x5ceada]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x441507]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x44c848]
/nix/store/4znykvnf1xyflhq9z7albfb910xpl4i4-emacs-25.3/bin/.emacs-wrapped[0x44f538]
...
aborted

All software that Emacs 25.3.1 depends on, with versions:

glibc-2.26-75
util-linux-2.31
libffi-3.2.1
lz4-131
xz-5.2.3
libgpg-error-1.27
libgcrypt-1.8.1
libcap-2.25-lib
systemd-234-lib
bash-4.4-p12
libICE-1.0.9
libSM-1.2.2
libXau-1.0.8
libXdmcp-1.1.2
libxcb-1.12
libX11-1.6.5
dbus-1.10.24-lib
gcc-6.4.0-lib
zlib-1.2.11
pcre-8.41
glib-2.54.2
expat-2.2.5
libdaemon-0.14
avahi-0.7
gmp-6.1.2
ncurses-6.0-20171125
gobject-introspection-1.54.1
libXfixes-5.0.2
libXrender-0.9.10
libXcursor-1.1.15
nettle-3.4
openssl-1.0.2n
libevent-2.1.8
unbound-1.6.7-lib
libtasn1-4.12
dns-root-data-2017-10-24
libunistring-0.9.8
p11-kit-0.23.7
gnutls-3.6.1
libXpm-3.5.12
gsettings-desktop-schemas-3.24.1
dejavu-fonts-minimal-2.37
bzip2-1.0.6.0.1
libpng-apng-1.6.34
freetype-2.7.1
fontconfig-2.12.1-lib
atk-2.26.1
libXft-2.3.2
libXext-1.3.3
libXinerama-1.1.3
libXrandr-1.5.1
libjpeg-turbo-1.5.3
libtiff-4.0.8
libxml2-2.9.7
wayland-1.14.0
graphite2-1.3.6
libpciaccess-0.14
libdrm-2.4.88
libXxf86vm-1.1.4
libXdamage-1.1.4
libxshmfence-1.2
mesa-noglu-17.2.7
pixman-0.34.0
harfbuzz-1.7.1
cairo-1.14.10
pango-1.40.14
dconf-0.26.1-lib
libcroco-0.6.12
jasper-2.0.14
gdk-pixbuf-2.36.7
librsvg-2.40.19
libungif-4.1.4
gettext-0.19.8
epoxy-1.3.1
recordproto-1.14.2
libXi-1.7.9
libXtst-1.2.3
at-spi2-core-2.26.2
at-spi2-atk-2.26.1
libXcomposite-0.4.4
xkeyboard-config-2.22
libxkbcommon-0.7.2
cups-2.2.6-lib
gtk+3-3.22.26
libselinux-2.4
emacs-25.3

---

I also have Noto Emoji font installed, not sure if that changes the
issue. Perhaps this is only ever reproducible when there is some font
containing the glyph.

I'm not sure if I should file this against GNOME bug tracker, but the
fact that there is a symbol that causes Emacs to crash might be used
as a denial of service attack in some contexts (e.g. sending someone
an email, knowing that recipient uses Gnus), and knowing that seems to
be important.

Recompiling Emacs without GTK+3 fixes the issue:

GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, Xaw scroll bars)
 of 2018-01-09