(print_preprocess): Test for print_depth at limit
authorRichard M. Stallman <rms@gnu.org>
Sat, 17 Jul 2004 14:54:56 +0000 (14:54 +0000)
committerRichard M. Stallman <rms@gnu.org>
Sat, 17 Jul 2004 14:54:56 +0000 (14:54 +0000)
before entering in being_printed.

src/print.c

index 0abd30b..5a0f7fe 100644 (file)
@@ -1284,6 +1284,11 @@ print_preprocess (obj)
   int loop_count = 0;
   Lisp_Object halftail;
 
+  /* Give up if we go so deep that print_object will get an error.  */
+  /* See similar code in print_object.  */
+  if (print_depth >= PRINT_CIRCLE)
+    return;
+
   /* Avoid infinite recursion for circular nested structure
      in the case where Vprint_circle is nil.  */
   if (NILP (Vprint_circle))
@@ -1294,11 +1299,6 @@ print_preprocess (obj)
       being_printed[print_depth] = obj;
     }
 
-  /* Give up if we go so deep that print_object will get an error.  */
-  /* See similar code in print_object.  */
-  if (print_depth >= PRINT_CIRCLE)
-    return;
-
   print_depth++;
   halftail = obj;