From b102b083d4d43fadf88f462e25523e394199a8a7 Mon Sep 17 00:00:00 2001
From: Martin Stjernholm <mast@lysator.liu.se>
Date: Sat, 10 Jun 2000 00:48:33 +0200
Subject: [PATCH] Fixes due to gc changes.

Rev: src/modules/Java/jvm.c:1.18
Rev: src/security.c:1.26
Rev: src/threads.c:1.128
---
 src/modules/Java/jvm.c | 24 ++++++++++++------------
 src/security.c         |  8 ++++----
 src/threads.c          |  6 +++---
 3 files changed, 19 insertions(+), 19 deletions(-)

diff --git a/src/modules/Java/jvm.c b/src/modules/Java/jvm.c
index 39412d0679..49c4f9a943 100644
--- a/src/modules/Java/jvm.c
+++ b/src/modules/Java/jvm.c
@@ -1,5 +1,5 @@
 /*
- * $Id: jvm.c,v 1.17 2000/05/17 17:55:37 mast Exp $
+ * $Id: jvm.c,v 1.18 2000/06/09 22:48:33 mast Exp $
  *
  * Pike interface to Java Virtual Machine
  *
@@ -16,7 +16,7 @@
 #endif /* HAVE_CONFIG_H */
 
 #include "global.h"
-RCSID("$Id: jvm.c,v 1.17 2000/05/17 17:55:37 mast Exp $");
+RCSID("$Id: jvm.c,v 1.18 2000/06/09 22:48:33 mast Exp $");
 #include "program.h"
 #include "interpret.h"
 #include "stralloc.h"
@@ -334,7 +334,7 @@ static void jobj_gc_mark(struct object *o)
   struct jobj_storage *j = THIS_JOBJ;
 
   if(j->jvm)
-    gc_mark_object_as_referenced(j->jvm);
+    gc_recurse_object(j->jvm);
 }
 
 static void f_jobj_cast(INT32 args)
@@ -512,7 +512,7 @@ static void method_gc_mark(struct object *o)
   struct method_storage *m = THIS_METHOD;
 
   if(m->class)
-    gc_mark_object_as_referenced(m->class);
+    gc_recurse_object(m->class);
 }
 
 static void f_method_create(INT32 args)
@@ -1104,7 +1104,7 @@ static void field_gc_mark(struct object *o)
   struct field_storage *f = THIS_FIELD;
 
   if(f->class)
-    gc_mark_object_as_referenced(f->class);
+    gc_recurse_object(f->class);
 }
 
 static void f_field_create(INT32 args)
@@ -1905,13 +1905,13 @@ static void natives_gc_mark(struct object *o)
   struct natives_storage *n = THIS_NATIVES;
 
   if(n->jvm)
-    gc_mark_object_as_referenced(n->jvm);
+    gc_recurse_object(n->jvm);
   if(n->cls)
-    gc_mark_object_as_referenced(n->cls);
+    gc_recurse_object(n->cls);
   if(n->cons) {
     int i;
     for(i=0; i<n->num_methods; i++)
-      gc_mark_svalues(&n->cons[i].callback, 1);
+      gc_recurse_svalues(&n->cons[i].callback, 1);
   }
 }
 
@@ -2606,8 +2606,8 @@ static void att_gc_mark(struct object *o)
   struct att_storage *att = THIS_ATT;
 
   if(att->jvm)
-    gc_mark_object_as_referenced(att->jvm);
-  gc_mark_svalues(&att->thr, 1);
+    gc_recurse_object(att->jvm);
+  gc_recurse_svalues(&att->thr, 1);
 }
 
 static void f_att_create(INT32 args)
@@ -2683,7 +2683,7 @@ static void monitor_gc_mark(struct object *o)
   struct monitor_storage *m = THIS_MONITOR;
 
   if(m->obj)
-    gc_mark_object_as_referenced(m->obj);
+    gc_recurse_object(m->obj);
 }
 
 static void f_monitor_create(INT32 args)
@@ -2904,7 +2904,7 @@ static void jvm_gc_mark(struct object *o)
   struct jvm_storage *j = THIS_JVM;
 
   if(j->tl_env)
-    gc_mark_object_as_referenced(j->tl_env);
+    gc_recurse_object(j->tl_env);
 }
 #endif /* _REENTRANT */
 
diff --git a/src/security.c b/src/security.c
index 9cb98e0895..d126d15513 100644
--- a/src/security.c
+++ b/src/security.c
@@ -348,10 +348,10 @@ static void creds_gc_check(struct object *o)
   if(THIS->default_creds) debug_gc_check(THIS->default_creds,T_OBJECT,o);
 }
 
-static void creds_gc_mark(struct object *o)
+static void creds_gc_recurse(struct object *o)
 {
-  if(THIS->user) gc_mark_object_as_referenced(THIS->user);
-  if(THIS->default_creds) gc_mark_object_as_referenced(THIS->default_creds);
+  if(THIS->user) gc_recurse_object(THIS->user);
+  if(THIS->default_creds) gc_recurse_object(THIS->default_creds);
 }
 
 static void exit_creds_object(struct object *o)
@@ -395,7 +395,7 @@ void init_pike_security(void)
   set_init_callback(init_creds_object);
   set_exit_callback(exit_creds_object);
   set_gc_check_callback(creds_gc_check);
-  set_gc_mark_callback(creds_gc_mark);
+  set_gc_recurse_callback(creds_gc_recurse);
   creds_program=end_program();
   add_program_constant("Creds",creds_program, 0);
 
diff --git a/src/threads.c b/src/threads.c
index 71e3f90ab2..ac2ac3cf59 100644
--- a/src/threads.c
+++ b/src/threads.c
@@ -1,5 +1,5 @@
 #include "global.h"
-RCSID("$Id: threads.c,v 1.127 2000/05/22 19:50:29 grubba Exp $");
+RCSID("$Id: threads.c,v 1.128 2000/06/09 22:48:31 mast Exp $");
 
 int num_threads = 1;
 int threads_disabled = 0;
@@ -1095,14 +1095,14 @@ static void thread_was_marked(struct object *o)
 {
   struct thread_state *tmp=THIS_THREAD;
   if(tmp->thread_local != NULL)
-    gc_mark_mapping_as_referenced(tmp->thread_local);
+    gc_recurse_mapping(tmp->thread_local);
 }
 
 static void thread_was_checked(struct object *o)
 {
   struct thread_state *tmp=THIS_THREAD;
   if(tmp->thread_local != NULL)
-    gc_check(tmp->thread_local);  
+    debug_gc_check(tmp->thread_local, T_OBJECT, o);
 
 #ifdef PIKE_DEBUG
   if(tmp->swapped)
-- 
GitLab