GNU bug report logs -
#12077
Abort in replace-regexp with an after-change-functions hook
Previous Next
Reported by: Rob Browning <rlb <at> defaultvalue.org>
Date: Sat, 28 Jul 2012 18:01:02 UTC
Severity: normal
Fixed in version 24.4
Done: Glenn Morris <rgm <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 12077 in the body.
You can then email your comments to 12077 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#12077
; Package
emacs
.
(Sat, 28 Jul 2012 18:01:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Rob Browning <rlb <at> defaultvalue.org>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Sat, 28 Jul 2012 18:01:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
(If possible, please preserve the 682995-forwarded address in any replies.)
The following bug report was recently filed, and I've tried the example,
and saw the same abort.
You can find additional information here:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=682995
Christopher Wellons <mosquitopsu <at> gmail.com> writes:
> Package: emacs24
> Version: 24.1+1-4
> Severity: normal
>
> When this expression is evaluated, Emacs will abort.
>
> (with-temp-buffer
> (insert "#\n*\n")
> (goto-char (point-min))
> (add-hook 'after-change-functions
> (lambda (a b c) (re-search-forward "\n" nil t)))
> (replace-regexp "^\\*" " *"))
>
> It is also provided in an attached file, example.el, in order to make
> this easier to demonstrate.
>
> emacs -q -l example.el
>
> The abort() occurs in the check at the beginning of
> buf_charpos_to_bytepos() in marker.c, because the point has left the
> buffer bounds. I ran into this bug while trying to perform this
> replace-regexp while in a third-party markdown-mode, and narrowed it
> down to this combination of events.
>
> This bug also appears in emacs23 in both squeeze and sid as well as
> upstream and non-Debian builds of Emacs.
Thanks
--
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4
Reply sent
to
Glenn Morris <rgm <at> gnu.org>
:
You have taken responsibility.
(Tue, 19 Feb 2013 17:10:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
Rob Browning <rlb <at> defaultvalue.org>
:
bug acknowledged by developer.
(Tue, 19 Feb 2013 17:10:01 GMT)
Full text and
rfc822 format available.
Message #10 received at 12077-done <at> debbugs.gnu.org (full text, mbox):
Version: 24.4
Rob Browning wrote:
>> When this expression is evaluated, Emacs will abort.
>>
>> (with-temp-buffer
>> (insert "#\n*\n")
>> (goto-char (point-min))
>> (add-hook 'after-change-functions
>> (lambda (a b c) (re-search-forward "\n" nil t)))
>> (replace-regexp "^\\*" " *"))
By experiment, this issue is present in at least 22.3 through 24.2.93,
but is fixed in the current trunk.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#12077
; Package
emacs
.
(Tue, 19 Feb 2013 18:06:02 GMT)
Full text and
rfc822 format available.
Message #13 received at 12077 <at> debbugs.gnu.org (full text, mbox):
Glenn Morris wrote:
>>> (with-temp-buffer
>>> (insert "#\n*\n")
>>> (goto-char (point-min))
>>> (add-hook 'after-change-functions
>>> (lambda (a b c) (re-search-forward "\n" nil t)))
>>> (replace-regexp "^\\*" " *"))
>
> By experiment, this issue is present in at least 22.3 through 24.2.93,
> but is fixed in the current trunk.
PS if someone feels like checking exactly what fixed this, then if it is
a simple and obviously safe change, it could go in emacs-24. But since
this is a long-standing issue, this is not essential.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 20 Mar 2013 11:24:03 GMT)
Full text and
rfc822 format available.
This bug report was last modified 12 years and 152 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.