0.9.4.68:
[sbcl.git] / src / runtime / gencgc.c
index ea715e3..6b2f6f7 100644 (file)
@@ -1407,7 +1407,7 @@ sniff_code_object(struct code *code, unsigned displacement)
 {
     long nheader_words, ncode_words, nwords;
     void *p;
-    void *constants_start_addr, *constants_end_addr;
+    void *constants_start_addr = NULL, *constants_end_addr;
     void *code_start_addr, *code_end_addr;
     int fixup_found = 0;
 
@@ -3622,14 +3622,11 @@ garbage_collect_generation(int generation, int raise)
 
     /* Scavenge the Lisp functions of the interrupt handlers, taking
      * care to avoid SIG_DFL and SIG_IGN. */
-    for_each_thread(th) {
-        struct interrupt_data *data=th->interrupt_data;
-        for (i = 0; i < NSIG; i++) {
-            union interrupt_handler handler = data->interrupt_handlers[i];
-            if (!ARE_SAME_HANDLER(handler.c, SIG_IGN) &&
-                !ARE_SAME_HANDLER(handler.c, SIG_DFL)) {
-                scavenge((lispobj *)(data->interrupt_handlers + i), 1);
-            }
+    for (i = 0; i < NSIG; i++) {
+        union interrupt_handler handler = interrupt_handlers[i];
+        if (!ARE_SAME_HANDLER(handler.c, SIG_IGN) &&
+            !ARE_SAME_HANDLER(handler.c, SIG_DFL)) {
+            scavenge((lispobj *)(interrupt_handlers + i), 1);
         }
     }
     /* Scavenge the function list for INTERRUPT-THREAD. */