Subject: 27.0.50; Deadly signal in make-frame
From: [email-masked]
To: [email-masked]
Date: Sun, 02 Sep 2018 21:24:55 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

It seems there is a problem when a float is being used as the parameter
value of either `width' or `height' in a `make-frame' call: The X server
reports a BadDrawable error and Emacs aborts.  This behaviour occurs
deterministically in both window-managers I've tried, i.e. i3 and
fluxbox.  A backtrace follows.

#0  0x000000000056c18d in terminate_due_to_signal (sig=6, backtrace_limit=40) at emacs.c:369
#1  0x0000000000593e36 in emacs_abort () at sysdep.c:2426
#2  0x00000000005337bc in x_connection_closed (dpy=0x2b92020, error_message=0x7fffffff99e0 "X protocol error: BadDrawable (invalid Pixmap or Window parameter) on protocol request 14", ioerror=false) at xterm.c:9834
#3  0x0000000000533959 in x_error_quitter (display=0x2b92020, event=0x7fffffff9b90) at xterm.c:9922
#4  0x00000000005338a4 in x_error_handler (display=0x2b92020, event=0x7fffffff9b90) at xterm.c:9892
#5  0x00007ffff48416ed in _XError () at /usr/lib/libX11.so.6
#6  0x00007ffff483e617 in  () at /usr/lib/libX11.so.6
#7  0x00007ffff483f6ed in _XReply () at /usr/lib/libX11.so.6
#8  0x00007ffff482410e in XGetGeometry () at /usr/lib/libX11.so.6
#9  0x0000000000543b84 in frame_geometry (frame=XIL(0x13b8e05), attribute=XIL(0xa050)) at xfns.c:5082
#10 0x0000000000544552 in Fx_frame_edges (frame=XIL(0x13b8e05), type=XIL(0xa050)) at xfns.c:5294
#11 0x000000000061f94b in funcall_subr (subr=0x75be00 <Sx_frame_edges>, numargs=2, args=0x7fffffffa060) at eval.c:2899
#12 0x000000000061f4e8 in Ffuncall (nargs=3, args=0x7fffffffa058) at eval.c:2822
#13 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x863fb4), vector=XIL(0x863fd5), maxdepth=make_number(9), args_template=make_number(512), nargs=2, args=0x7fffffffa518) at bytecode.c:632
#14 0x000000000061ff99 in funcall_lambda (fun=XIL(0x863f85), nargs=2, arg_vector=0x7fffffffa508) at eval.c:3023
#15 0x000000000061f52c in Ffuncall (nargs=3, args=0x7fffffffa500) at eval.c:2824
#16 0x000000000061ede3 in call2 (fn=XIL(0x6540), arg1=XIL(0x13b8e05), arg2=XIL(0xa050)) at eval.c:2681
#17 0x000000000043142f in frame_float (f=0x13b8e00 <bss_sbrk_buffer+9120608>, val=XIL(0xb71a27), what=FRAME_FLOAT_WIDTH, parent_done=0x7fffffffa5f0, outer_done=0x7fffffffa5f4, default_value=-1) at frame.c:3715
#18 0x0000000000436128 in x_figure_window_size (f=0x13b8e00 <bss_sbrk_buffer+9120608>, parms=XIL(0x147fae3), toolbar_p=true, x_width=0x7fffffffa698, x_height=0x7fffffffa69c) at frame.c:5343
#19 0x000000000054226d in Fx_create_frame (parms=XIL(0x147fae3)) at xfns.c:3906
#20 0x000000000061f921 in funcall_subr (subr=0x75b900 <Sx_create_frame>, numargs=1, args=0x7fffffffa8a8) at eval.c:2897
#21 0x000000000061f4e8 in Ffuncall (nargs=2, args=0x7fffffffa8a0) at eval.c:2822
#22 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x7d2ed4), vector=XIL(0x7d2ef5), maxdepth=make_number(13), args_template=make_number(256), nargs=1, args=0x7fffffffad90) at bytecode.c:632
#23 0x000000000061ff99 in funcall_lambda (fun=XIL(0x7d2ea5), nargs=1, arg_vector=0x7fffffffad88) at eval.c:3023
#24 0x000000000061f52c in Ffuncall (nargs=2, args=0x7fffffffad80) at eval.c:2824
#25 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x1662de4), vector=XIL(0xba8fe5), maxdepth=make_number(3), args_template=make_number(257), nargs=1, args=0x7fffffffb380) at bytecode.c:632
#26 0x000000000061ff99 in funcall_lambda (fun=XIL(0x10b27d5), nargs=1, arg_vector=0x7fffffffb378) at eval.c:3023
#27 0x000000000061f52c in Ffuncall (nargs=2, args=0x7fffffffb370) at eval.c:2824
#28 0x000000000061e420 in Fapply (nargs=2, args=0x7fffffffb370) at eval.c:2399
#29 0x000000000061f82c in funcall_subr (subr=0xa6dba0 <Sapply>, numargs=2, args=0x7fffffffb370) at eval.c:2877
#30 0x000000000061f4e8 in Ffuncall (nargs=3, args=0x7fffffffb368) at eval.c:2822
#31 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x11c3b84), vector=XIL(0x10fef75), maxdepth=make_number(15), args_template=make_number(128), nargs=1, args=0x7fffffffb870) at bytecode.c:632
#32 0x000000000061ff99 in funcall_lambda (fun=XIL(0x10cff75), nargs=1, arg_vector=0x7fffffffb870) at eval.c:3023
#33 0x000000000061f52c in Ffuncall (nargs=2, args=0x7fffffffb868) at eval.c:2824
#34 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x861cf4), vector=XIL(0x861d15), maxdepth=make_number(13), args_template=make_number(256), nargs=1, args=0x7fffffffbd68) at bytecode.c:632
#35 0x000000000061ff99 in funcall_lambda (fun=XIL(0x861cb5), nargs=1, arg_vector=0x7fffffffbd60) at eval.c:3023
#36 0x000000000061fcfd in apply_lambda (fun=XIL(0x861cb5), args=XIL(0x147fa23), count=37) at eval.c:2959
#37 0x000000000061e08c in eval_sub (form=XIL(0x147f9d3)) at eval.c:2332
#38 0x00000000006503eb in readevalloop_eager_expand_eval (val=XIL(0x147f9d3), macroexpand=XIL(0xd9960)) at lread.c:1895
#39 0x0000000000650d49 in readevalloop (readcharfun=XIL(0x3262ba5), infile0=0x0, sourcename=XIL(0x2f0cbb4), printflag=false, unibyte=XIL(0), readfun=XIL(0), start=XIL(0), end=XIL(0)) at lread.c:2081
#40 0x0000000000651169 in Feval_buffer (buffer=XIL(0x3262ba5), printflag=XIL(0), filename=XIL(0x2ff88b4), unibyte=XIL(0), do_allow_print=XIL(0xc4e0)) at lread.c:2148
#41 0x000000000061f9fc in funcall_subr (subr=0xa706a0 <Seval_buffer>, numargs=5, args=0x7fffffffc180) at eval.c:2909
#42 0x000000000061f4e8 in Ffuncall (nargs=6, args=0x7fffffffc178) at eval.c:2822
#43 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x78cd34), vector=XIL(0x78cd55), maxdepth=make_number(6), args_template=XIL(0), nargs=0, args=0x0) at bytecode.c:632
#44 0x0000000000620305 in funcall_lambda (fun=XIL(0x78ccb5), nargs=4, arg_vector=0x78cd55 <pure+180565>) at eval.c:3101
#45 0x000000000061f52c in Ffuncall (nargs=5, args=0x7fffffffc6c0) at eval.c:2824
#46 0x000000000061eecb in call4 (fn=XIL(0x434c70), arg1=XIL(0x2ff88b4), arg2=XIL(0x2ff88b4), arg3=XIL(0), arg4=XIL(0xc4e0)) at eval.c:2698
#47 0x000000000064efc7 in Fload (file=XIL(0x2b77614), noerror=XIL(0), nomessage=XIL(0xc4e0), nosuffix=XIL(0), must_suffix=XIL(0)) at lread.c:1372
#48 0x000000000061f9fc in funcall_subr (subr=0xa70620 <Sload>, numargs=3, args=0x7fffffffcab8) at eval.c:2909
#49 0x000000000061f4e8 in Ffuncall (nargs=4, args=0x7fffffffcab0) at eval.c:2822
#50 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x86fa94), vector=XIL(0x86fab5), maxdepth=make_number(23), args_template=make_number(257), nargs=1, args=0x7fffffffd3d8) at bytecode.c:632
#51 0x000000000061ff99 in funcall_lambda (fun=XIL(0x86fa65), nargs=1, arg_vector=0x7fffffffd3d0) at eval.c:3023
#52 0x000000000061f52c in Ffuncall (nargs=2, args=0x7fffffffd3c8) at eval.c:2824
#53 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x86a394), vector=XIL(0x86a3b5), maxdepth=make_number(12), args_template=make_number(0), nargs=0, args=0x7fffffffdec8) at bytecode.c:632
#54 0x000000000061ff99 in funcall_lambda (fun=XIL(0x86a365), nargs=0, arg_vector=0x7fffffffdec8) at eval.c:3023
#55 0x000000000061f52c in Ffuncall (nargs=1, args=0x7fffffffdec0) at eval.c:2824
#56 0x000000000066c44e in exec_byte_code (bytestr=XIL(0x869344), vector=XIL(0x869365), maxdepth=make_number(12), args_template=make_number(0), nargs=0, args=0x7fffffffe4a0) at bytecode.c:632
#57 0x000000000061ff99 in funcall_lambda (fun=XIL(0x869315), nargs=0, arg_vector=0x7fffffffe4a0) at eval.c:3023
#58 0x000000000061fcfd in apply_lambda (fun=XIL(0x869315), args=XIL(0), count=4) at eval.c:2959
#59 0x000000000061e08c in eval_sub (form=XIL(0x11de913)) at eval.c:2332
#60 0x000000000061d4aa in Feval (form=XIL(0x11de913), lexical=XIL(0)) at eval.c:2107
#61 0x0000000000570e87 in top_level_2 () at keyboard.c:1088
#62 0x000000000061bb9d in internal_condition_case (bfun=0x570e64 <top_level_2>, handlers=XIL(0x5460), hfun=0x570906 <cmd_error>) at eval.c:1349
#63 0x0000000000570ecf in top_level_1 (ignore=XIL(0)) at keyboard.c:1096
#64 0x000000000061b41f in internal_catch (tag=XIL(0xcb70), func=0x570e89 <top_level_1>, arg=XIL(0)) at eval.c:1114
#65 0x0000000000570db0 in command_loop () at keyboard.c:1057
#66 0x00000000005704d5 in recursive_edit_1 () at keyboard.c:703
#67 0x0000000000570659 in Frecursive_edit () at keyboard.c:774
#68 0x000000000056e0dc in main (argc=4, argv=0x7fffffffe9d8) at emacs.c:1723

Lisp Backtrace:
"x-frame-edges" (0xffffa060)
"frame-edges" (0xffffa508)
"x-create-frame" (0xffffa8a8)
"x-create-frame-with-faces" (0xffffad88)
0x10b27d0 PVEC_COMPILED
"apply" (0xffffb370)
"frame-creation-function" (0xffffb870)
"make-frame" (0xffffbd60)
"eval-buffer" (0xffffc180)
"load-with-code-conversion" (0xffffc6c8)
"load" (0xffffcab8)
"command-line-1" (0xffffd3d0)
"command-line" (0xffffdec8)
"normal-top-level" (0xffffe4a0)

In GNU Emacs 27.0.50 (build 60, x86_64-pc-linux-gnu, GTK+ Version 3.22.30)
 of 2018-09-02 built on crazyhorse
Repository revision: 7e24039a9747cc1117b17631511e42cb3576362b
Windowing system distributor 'The X.Org Foundation', version 11.0.12000000
System Description: Arch Linux

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.

Configured using:
 'configure 'CFLAGS=-O0 -g3''

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LIBSYSTEMD JSON LCMS2 GMP

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-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

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml
easymenu mml-sec password-cache epa derived epg epg-config gnus-util
rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader cl-loaddefs cl-lib sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils elec-pair time-date
mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode elisp-mode lisp-mode prog-mode register page menu-bar
rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors frame cl-generic cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 94282 9898)
 (symbols 48 20146 1)
 (strings 32 28233 1744)
 (string-bytes 1 743335)
 (vectors 16 14255)
 (vector-slots 8 503660 13200)
 (floats 8 47 92)
 (intervals 56 204 0)
 (buffers 992 11))