* src/insdel.c (prepare_to_modify_buffer): Ensure the mark marker is alive

before using it (Bug#6977).
This commit is contained in:
Chong Yidong 2010-09-25 15:50:13 -04:00
parent 565c0ca57e
commit d24ec09aee
2 changed files with 7 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2010-09-25 Chong Yidong <cyd@stupidchicken.com>
* insdel.c (prepare_to_modify_buffer): Ensure the mark marker is
alive before using it (Bug#6977).
2010-09-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
* xdisp.c (face_before_or_after_it_pos): EMACS_INT/int fixup.

View file

@ -2051,13 +2051,14 @@ prepare_to_modify_buffer (EMACS_INT start, EMACS_INT end,
/* If `select-active-regions' is non-nil, save the region text. */
if (!NILP (current_buffer->mark_active)
&& XMARKER (current_buffer->mark)->buffer
&& NILP (Vsaved_region_selection)
&& (EQ (Vselect_active_regions, Qonly)
? EQ (CAR_SAFE (Vtransient_mark_mode), Qonly)
: (!NILP (Vselect_active_regions)
&& !NILP (Vtransient_mark_mode))))
{
EMACS_INT b = XINT (Fmarker_position (current_buffer->mark));
EMACS_INT b = XMARKER (current_buffer->mark)->charpos;
EMACS_INT e = PT;
if (b < e)
Vsaved_region_selection = make_buffer_string (b, e, 0);