[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: mark_object crash in 22.1 and latest CVS (as of tonight)
From: |
Stefan Monnier |
Subject: |
Re: mark_object crash in 22.1 and latest CVS (as of tonight) |
Date: |
Fri, 16 Nov 2007 14:04:18 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.0.50 (gnu/linux) |
> If I understand correctly, this means that either markers used for
> saving match-data should not go to `buffer-undo-list' or the "evaporate"
> option set by `save-match-data' is inherently broken.
The `evaporate' option is inherently dangerous since it reclaims the
marker object forcefully without checking that nobody else is holding on
to it, even tho it comes from a plain normal argument and the caller may
very well have kept another ref to it somewhere.
I suggest we kill it,
Stefan
--- orig/src/search.c
+++ mod/src/search.c
@@ -3023,10 +3023,7 @@
if (!NILP (reseat) && MARKERP (m))
{
- if (EQ (reseat, Qevaporate))
- free_marker (m);
- else
- unchain_marker (XMARKER (m));
+ unchain_marker (XMARKER (m));
XSETCAR (list, Qnil);
}
@@ -3044,10 +3041,7 @@
if (!NILP (reseat) && MARKERP (m))
{
- if (EQ (reseat, Qevaporate))
- free_marker (m);
- else
- unchain_marker (XMARKER (m));
+ unchain_marker (XMARKER (m));
XSETCAR (list, Qnil);
}
}
@@ -3111,8 +3105,7 @@
unwind_set_match_data (list)
Lisp_Object list;
{
- /* It is safe to free (evaporate) the markers immediately. */
- return Fset_match_data (list, Qevaporate);
+ return Fset_match_data (list, Qt);
}
/* Called to unwind protect the match data. */
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), (continued)
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Kalman Reti, 2007/11/14
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Stefan Monnier, 2007/11/14
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Kalman Reti, 2007/11/14
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Richard Stallman, 2007/11/15
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Kalman Reti, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Kalman Reti, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), martin rudalics, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Kalman Reti, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Richard Stallman, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Kalman Reti, 2007/11/17
- Re: mark_object crash in 22.1 and latest CVS (as of tonight),
Stefan Monnier <=
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), martin rudalics, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Stefan Monnier, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Stefan Monnier, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Kalman Reti, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Stefan Monnier, 2007/11/16
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Richard Stallman, 2007/11/17
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Stefan Monnier, 2007/11/17
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Richard Stallman, 2007/11/18
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), David Kastrup, 2007/11/18
- Re: mark_object crash in 22.1 and latest CVS (as of tonight), Stefan Monnier, 2007/11/19