Commit cbc1b668 authored by Kenichi Handa's avatar Kenichi Handa
Browse files

(record_delete): Record last_point_position when there's

no record other than marker adjustment before undo boundary.
parent 80e79e3e
......@@ -105,8 +105,24 @@ record_delete (beg, string)
Fundo_boundary ();
XSETBUFFER (last_undo_buffer, current_buffer);
at_boundary = (CONSP (current_buffer->undo_list)
&& NILP (XCONS (current_buffer->undo_list)->car));
if (CONSP (current_buffer->undo_list))
{
/* Set AT_BOUNDARY to 1 only when we have nothing other than
marker adjustment before undo boundary. */
Lisp_Object tail = current_buffer->undo_list, elt;
while (1)
{
elt = XCONS (tail)->car;
if (NILP (elt) || ! (CONSP (elt) && MARKERP (XCONS (elt)->car)))
break;
tail = XCONS (tail)->cdr;
}
at_boundary = NILP (elt);
}
else
at_boundary = 0;
if (MODIFF <= SAVE_MODIFF)
record_first_change ();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment