update.
[chise/xemacs-chise.git.1] / src / dumper.c
index b60496c..9e93d09 100644 (file)
@@ -282,7 +282,11 @@ static int pdump_fd;
 static void *pdump_buf;
 static FILE *pdump_out;
 
+#ifdef UTF2000
+#define PDUMP_HASHSIZE 20000001
+#else
 #define PDUMP_HASHSIZE 200001
+#endif
 
 static pdump_entry_list_elt **pdump_hash;
 
@@ -440,7 +444,7 @@ pdump_get_indirect_count (EMACS_INT code,
       stderr_out ("Unsupported count type : %d (line = %d, code=%ld)\n",
                  idesc[line].type, line, (long)code);
       pdump_backtrace ();
-      abort ();
+      ABORT ();
     }
   count += delta;
   return count;
@@ -540,7 +544,7 @@ pdump_register_sub (const void *data, const struct lrecord_description *desc, in
        default:
          stderr_out ("Unsupported dump type : %d\n", desc[pos].type);
          pdump_backtrace ();
-         abort ();
+         ABORT ();
        };
     }
 }
@@ -566,10 +570,10 @@ pdump_register_object (Lisp_Object obj)
   if (imp->description)
     {
       int me = depth++;
-      if (me>65536)
+      if (me>=65536)
        {
          stderr_out ("Backtrace overflow, loop ?\n");
-         abort ();
+         ABORT ();
        }
       backtrace[me].obj = objh;
       backtrace[me].position = 0;
@@ -601,10 +605,10 @@ pdump_register_struct (const void *data,
     {
       int me = depth++;
       int i;
-      if (me>65536)
+      if (me>=65536)
        {
          stderr_out ("Backtrace overflow, loop ?\n");
-         abort ();
+         ABORT ();
        }
       backtrace[me].obj = 0;
       backtrace[me].position = 0;
@@ -717,7 +721,7 @@ pdump_dump_data (pdump_entry_list_elt *elt,
                  }
                default:
                  stderr_out ("Unsupported dump type : %d\n", desc[pos].type);
-                 abort ();
+                 ABORT ();
                }
            }
        }
@@ -795,7 +799,7 @@ pdump_reloc_one (void *data, EMACS_INT delta,
          }
        default:
          stderr_out ("Unsupported dump type : %d\n", desc[pos].type);
-         abort ();
+         ABORT ();
        };
     }
 }
@@ -1067,7 +1071,8 @@ pdump (void)
   pdump_dump_root_objects ();
 
   fclose (pdump_out);
-  close (pdump_fd);
+  /* pdump_fd is already closed by the preceding fclose call
+  close (pdump_fd); */
 
   free (pdump_buf);