Subject: bug#18126: 24.4.50; Arithmetic range error while attempting to drag vertical scroll bar

From: Dmitry Antipov <[email-masked]>
Date: Mon, 28 Jul 2014 13:18:52 +0400

Using Lucid build, an attempt to drag slider of a vertical scroll bar
with mouse causes an arithmetic error:

Arithmetic range error: "truncate", 1.0e+INF

Corresponding buffer should have enough (a few thousands) lines.

The backtrace is:

Breakpoint 4, rounding_driver (arg=..., divisor=..., double_round=0x6197d1 <double_identity>, int_round2=0x6196c2 <truncate2>,
     name=0x71f78b "truncate") at ../../trunk/src/floatfns.c:372
372             xsignal2 (Qrange_error, build_string (name), arg);
(gdb) bt
#0  rounding_driver (arg=..., divisor=..., double_round=0x6197d1 <double_identity>, int_round2=0x6196c2 <truncate2>,
     name=0x71f78b "truncate") at ../../trunk/src/floatfns.c:372
#1  0x00000000006198af in Ftruncate (arg=..., divisor=...) at ../../trunk/src/floatfns.c:479
#2  0x0000000000615fdf in Ffuncall (nargs=2, args=0x7fffffffb678) at ../../trunk/src/eval.c:2811
#3  0x00000000006604fa in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., nargs=0, args=0x0)
     at ../../trunk/src/bytecode.c:918
#4  0x0000000000616c4a in funcall_lambda (fun=..., nargs=2, arg_vector=0x8bb7dd <pure+1340925>) at ../../trunk/src/eval.c:3042
#5  0x0000000000616195 in Ffuncall (nargs=3, args=0x7fffffffbea0) at ../../trunk/src/eval.c:2857
#6  0x00000000006604fa in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., nargs=0, args=0x0)
     at ../../trunk/src/bytecode.c:918
#7  0x0000000000616c4a in funcall_lambda (fun=..., nargs=1, arg_vector=0x8bc70d <pure+1344813>) at ../../trunk/src/eval.c:3042
#8  0x0000000000616195 in Ffuncall (nargs=2, args=0x7fffffffc6d8) at ../../trunk/src/eval.c:2857
#9  0x00000000006604fa in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., nargs=0, args=0x0)
     at ../../trunk/src/bytecode.c:918
#10 0x0000000000616c4a in funcall_lambda (fun=..., nargs=1, arg_vector=0x8bcedd <pure+1346813>) at ../../trunk/src/eval.c:3042
#11 0x0000000000616195 in Ffuncall (nargs=2, args=0x7fffffffd038) at ../../trunk/src/eval.c:2857
#12 0x000000000060c974 in Ffuncall_interactively (nargs=2, args=0x7fffffffd038) at ../../trunk/src/callint.c:270
#13 0x0000000000615e86 in Ffuncall (nargs=3, args=0x7fffffffd030) at ../../trunk/src/eval.c:2789
#14 0x000000000060ea4a in Fcall_interactively (function=..., record_flag=..., keys=...) at ../../trunk/src/callint.c:872
#15 0x000000000061600b in Ffuncall (nargs=4, args=0x7fffffffd4b8) at ../../trunk/src/eval.c:2815
#16 0x00000000006604fa in exec_byte_code (bytestr=..., vector=..., maxdepth=..., args_template=..., nargs=1, args=0x7fffffffdd30)
     at ../../trunk/src/bytecode.c:918
#17 0x00000000006167fd in funcall_lambda (fun=..., nargs=1, arg_vector=0x7fffffffdd28) at ../../trunk/src/eval.c:2976
#18 0x0000000000616195 in Ffuncall (nargs=2, args=0x7fffffffdd20) at ../../trunk/src/eval.c:2857
#19 0x00000000006158ea in call1 (fn=..., arg1=...) at ../../trunk/src/eval.c:2607
#20 0x0000000000570bc6 in command_loop_1 () at ../../trunk/src/keyboard.c:1545
#21 0x0000000000612596 in internal_condition_case (bfun=0x5704ac <command_loop_1>, handlers=..., hfun=0x56fc7c <cmd_error>)
     at ../../trunk/src/eval.c:1347
#22 0x000000000057014a in command_loop_2 (ignore=...) at ../../trunk/src/keyboard.c:1169
#23 0x0000000000611a19 in internal_catch (tag=..., func=0x570127 <command_loop_2>, arg=...) at ../../trunk/src/eval.c:1111
#24 0x00000000005700fe in command_loop () at ../../trunk/src/keyboard.c:1148
#25 0x000000000056f7a8 in recursive_edit_1 () at ../../trunk/src/keyboard.c:769
#26 0x000000000056f978 in Frecursive_edit () at ../../trunk/src/keyboard.c:840
#27 0x000000000056d87f in main (argc=3, argv=0x7fffffffe228) at ../../trunk/src/emacs.c:1650

Lisp Backtrace:
"truncate" (0xffffb680)
"scroll-bar-scale" (0xffffbea8)
"scroll-bar-drag-1" (0xffffc6e0)
"scroll-bar-toolkit-scroll" (0xffffd040)
"funcall-interactively" (0xffffd038)
"call-interactively" (0xffffd4c0)
"command-execute" (0xffffdd28)

In GNU Emacs 24.4.50.2 (x86_64-unknown-linux-gnu, X toolkit, Xaw3d scroll bars)
  of 2014-07-28 on localhost.localdomain
Repository revision: 117598 [email-masked]
Windowing system distributor `Fedora Project', version 11.0.11404000
System Description:     Fedora release 20 (Heisenbug)

Configured using:
  `configure --prefix=/not/exists --enable-checking --enable-gcc-warnings
  --enable-check-lisp-object-type --with-x-toolkit=lucid 'CFLAGS=-O0
  -g3''

Configured features:
XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF
GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF
XFT ZLIB

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

Major mode: Messages

Minor modes in effect:
   tooltip-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
   buffer-read-only: t
   line-number-mode: t

Recent input:
<mouse-1> C-x b * m <backspace> M e <tab> <return>
M-x r e p o <tab> r <tab> <return>

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
scroll-bar-scale: Arithmetic range error: "truncate", 1.0e+INF
Making completion list...

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util help-fns mail-prsvr mail-utils dired time-date tooltip electric
uniquify 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
prog-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 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 make-network-process
dbusbind gfilenotify dynamic-setting system-font-setting
font-render-setting x-toolkit x multi-tty emacs)

Memory information:
((conses 16 111470 6108)
  (symbols 48 17962 0)
  (miscs 40 68 89)
  (strings 32 11194 3159)
  (string-bytes 1 294929)
  (vectors 16 10005)
  (vector-slots 8 390415 14971)
  (floats 8 77 205)
  (intervals 56 17982 4)
  (buffers 976 14)
  (heap 1024 12032 749))