GNU bug report logs - #23949
25.0.95; Regression in handling error caused by (string-match-p "." nil)

Previous Next

Package: emacs;

Reported by: Kaushal Modi <kaushal.modi <at> gmail.com>

Date: Mon, 11 Jul 2016 20:13:02 UTC

Severity: normal

Tags: fixed

Merged with 16294, 24166

Found in versions 25.0.95, 24.3.50

Fixed in version 26.1

Done: npostavs <at> users.sourceforge.net

Bug is archived. No further changes may be made.

Full log


Message #88 received at control <at> debbugs.gnu.org (full text, mbox):

From: npostavs <at> users.sourceforge.net
To: Drew Adams <drew.adams <at> oracle.com>
Cc: 16294 <at> debbugs.gnu.org
Subject: Re: bug#16294: 24.3.50;
 debugger error: "button-at: Args out of range: 0"
Date: Thu, 14 Jul 2016 19:59:11 -0400
merge 16294 23949
quit

Drew Adams <drew.adams <at> oracle.com> writes:

> In the debugger (`debug', not `edebug'), I get to this:
>
> (cond ((string-match-p "\\`[0-9a-fA-F]+\\'" input)
>        (string-to-number input 16))
>       ((string-match-p "^#" input)
>        (read input))
>       (t
>        (cddr (assoc-string input mctized-cands t))))
>
> Then, when it tried to evaluate this sexp:
> (string-match-p "\\`[0-9a-fA-F]+\\'" input), which I can evaluate with
> no problem using `e', the debugger is exited in error, with the
> message "button-at: Args out of range: 0".

This is actually the same bug as 23949, the problem is that
string-match-p let-binds inhibit-changing-match-data and causes problems
for the debugger code.
(http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23949#56)

In version 24.5, emacs -Q then evaluate (string-match-p "." nil) gives
"button-at: Args out of range: 0".  In version 25.0.95 it gives
"find-auto-coding: Wrong type argument: stringp, nil"; presumably the
specifics of the code the debugger runs changed somewhat.





This bug report was last modified 8 years and 168 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.