changeset 59069:27371673eba8

(Vundo_outer_limit): Replaces undo_outer_limit. Uses changed. (syms_of_undo): Initialize appropriately. (truncate_undo_list): If it's nil, there's no limit.
author Richard M. Stallman <rms@gnu.org>
date Thu, 23 Dec 2004 00:15:23 +0000
parents 9793bbaae7d3
children 0927fb5e3920
files src/undo.c
diffstat 1 files changed, 6 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/undo.c	Wed Dec 22 06:32:49 2004 +0000
+++ b/src/undo.c	Thu Dec 23 00:15:23 2004 +0000
@@ -28,7 +28,8 @@
 
 EMACS_INT undo_limit;
 EMACS_INT undo_strong_limit;
-EMACS_INT undo_outer_limit;
+
+Lisp_Object Vundo_outer_limit;
 
 /* Function to call when undo_outer_limit is exceeded.  */
 
@@ -368,7 +369,8 @@
 
   /* If by the first boundary we have already passed undo_outer_limit,
      we're heading for memory full, so offer to clear out the list.  */
-  if (size_so_far > undo_outer_limit
+  if (INTEGERP (Vundo_outer_limit)
+      && size_so_far > XINT (Vundo_outer_limit)
       && !NILP (Vundo_outer_limit_function))
     {
       Lisp_Object temp = last_undo_buffer;
@@ -622,7 +624,7 @@
 which includes both saved text and other data.  */);
   undo_strong_limit = 30000;
 
-  DEFVAR_INT ("undo-outer-limit", &undo_outer_limit,
+  DEFVAR_LISP ("undo-outer-limit", &Vundo_outer_limit,
 	      doc: /* Outer limit on size of undo information for one command.
 At garbage collection time, if the current command has produced
 more than this much undo information, it asks you whether to delete
@@ -635,7 +637,7 @@
 `undo-outer-limit-function' with one argument, the size.
 The text above describes the behavior of the function
 that variable usually specifies.  */);
-  undo_outer_limit = 300000;
+  Vundo_outer_limit = make_number (300000);
 
   DEFVAR_LISP ("undo-outer-limit-function", &Vundo_outer_limit_function,
 	       doc: /* Function to call when an undo list exceeds `undo-outer-limit'.