[gjs] Reverting "Remove obsolete TRACE_MARK API"



commit cc106b6d96eedeb4f3af7cf4d930b8a239cd3a65
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Wed Jan 2 19:42:59 2013 -0500

    Reverting "Remove obsolete TRACE_MARK API"
    
    This reverts commit 340edc8d17ebdd7f1cf4cf5eb149d815fbe10b71.
    This broke under mozjs185 with crashes on GC.

 gi/keep-alive.c |    3 ++-
 gi/object.c     |    5 +++--
 2 files changed, 5 insertions(+), 3 deletions(-)
---
diff --git a/gi/keep-alive.c b/gi/keep-alive.c
index c6b9cc9..704c47d 100644
--- a/gi/keep-alive.c
+++ b/gi/keep-alive.c
@@ -150,6 +150,7 @@ keep_alive_trace(JSTracer *tracer,
  */
 static struct JSClass gjs_keep_alive_class = {
     "__private_GjsKeepAlive", /* means "new __private_GjsKeepAlive()" works */
+    JSCLASS_MARK_IS_TRACE | /* TraceOp not MarkOp */
     JSCLASS_HAS_PRIVATE,
     JS_PropertyStub,
     JS_PropertyStub,
@@ -165,7 +166,7 @@ static struct JSClass gjs_keep_alive_class = {
     NULL,
     NULL,
     NULL,
-    keep_alive_trace,
+    JS_CLASS_TRACE(keep_alive_trace),
     NULL
 };
 
diff --git a/gi/object.c b/gi/object.c
index 2eb71f0..3ffcba3 100644
--- a/gi/object.c
+++ b/gi/object.c
@@ -1440,7 +1440,8 @@ static struct JSClass gjs_object_instance_class = {
     "GObject_Object",
     JSCLASS_HAS_PRIVATE |
     JSCLASS_NEW_RESOLVE |
-    JSCLASS_NEW_RESOLVE_GETS_START,
+    JSCLASS_NEW_RESOLVE_GETS_START |
+    JSCLASS_MARK_IS_TRACE,
     JS_PropertyStub,
     JS_PropertyStub,
     object_instance_get_prop,
@@ -1455,7 +1456,7 @@ static struct JSClass gjs_object_instance_class = {
     NULL,
     NULL,
     NULL,
-    object_instance_trace,
+    JS_CLASS_TRACE(object_instance_trace),
     NULL,
 };
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]