Subject: 27.0.50; bibtex-mode timer and redisplay errors

From: "Basil L. Contovounesios" <[email-masked]>
Date: Sun, 14 Jan 2018 15:27:18 +0000

Steps to reproduce:

1. emacs -Q
2. C-x h DEL
3. C-h e
4. M-: (setq bibtex-parse-keys-timeout 4) RET
   [ or some other convenient value ]
5. M-x bibtex-mode RET
6. C-o
   [ this (IMO) incorrectly inserts a large fill-prefix, but that's a
     separate bug ]

After a few seconds of idle time, the following error is logged to
*Messages*:

  Error during redisplay: (jit-lock-function 1) signaled
  (args-out-of-range #<buffer *scratch*> 0 1)

After bibtex-parse-keys-timeout seconds of idle time, another error
appears:

  Error running timer ‘bibtex-parse-buffers-stealthily’:
  (wrong-type-argument number-or-marker-p nil)

Enabling debug on error does not provide much more context:

  Debugger entered--Lisp error:
      (wrong-type-argument number-or-marker-p nil)
    bibtex-parse-keys(t)
    bibtex-parse-buffers-stealthily()
    apply(bibtex-parse-buffers-stealthily nil)
    timer-event-handler
      ([t 0 4 0 t bibtex-parse-buffers-stealthily nil idle 0])

Note that step (6) is only needed to trigger the redisplay error; the
bibtex parse timer fails even when the buffer is empty.

-- 
Basil

In GNU Emacs 27.0.50 (build 15, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2018-01-11 built on thunk
Repository revision: e911587fb61bbc7f4be41e0a044cb6dee8f9e615
Windowing system distributor 'The X.Org Foundation', version 11.0.11905000
System Description: Debian GNU/Linux testing (buster)

Configured using:
 'configure --config-cache --prefix=/home/blc/.local --with-mailutils
 --with-x-toolkit=lucid --with-modules --with-file-notification=yes
 --with-x 'CFLAGS=-flto -fomit-frame-pointer -march=native -maes -mavx
 -mcrc32 -mf16c -mfpmath=sse -mfsgsbase -mfxsr -minline-all-stringops
 -mmmx -mpclmul -mpopcnt -msahf -msse4.2 -mxsave -mxsaveopt -mvzeroupper
 -O3 -pipe' LDFLAGS=-flto'

Configured features:
XAW3D XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS LUCID X11 MODULES LIBSYSTEMD JSON LCMS2