# HG changeset patch # User Richard M. Stallman # Date 732175413 0 # Node ID 886a6945755723cb4416cc6721aaacbd8eb25022 # Parent 652b38173a633fbfc05a4f9c6037f97d401826f8 (record_property_change, record_delete, record_insert): Don't make boundary or touch last_undo_buffer if cur buf has no undo. diff -r 652b38173a63 -r 886a69457557 src/undo.c --- a/src/undo.c Mon Mar 15 06:02:29 1993 +0000 +++ b/src/undo.c Mon Mar 15 06:03:33 1993 +0000 @@ -36,12 +36,13 @@ { Lisp_Object lbeg, lend; + if (EQ (current_buffer->undo_list, Qt)) + return; + if (current_buffer != XBUFFER (last_undo_buffer)) Fundo_boundary (); XSET (last_undo_buffer, Lisp_Buffer, current_buffer); - if (EQ (current_buffer->undo_list, Qt)) - return; if (MODIFF <= current_buffer->save_modified) record_first_change (); @@ -75,12 +76,13 @@ { Lisp_Object lbeg, lend, sbeg; + if (EQ (current_buffer->undo_list, Qt)) + return; + if (current_buffer != XBUFFER (last_undo_buffer)) Fundo_boundary (); XSET (last_undo_buffer, Lisp_Buffer, current_buffer); - if (EQ (current_buffer->undo_list, Qt)) - return; if (MODIFF <= current_buffer->save_modified) record_first_change (); @@ -135,13 +137,13 @@ struct buffer *obuf = current_buffer; int boundary = 0; + if (EQ (current_buffer->undo_list, Qt)) + return; + if (!EQ (buffer, last_undo_buffer)) boundary = 1; last_undo_buffer = buffer; - if (EQ (current_buffer->undo_list, Qt)) - return; - /* Switch temporarily to the buffer that was changed. */ current_buffer = XBUFFER (buffer);