diff options
Diffstat (limited to 'gjs/gjs_context_gc_wrapper.patch')
-rw-r--r-- | gjs/gjs_context_gc_wrapper.patch | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/gjs/gjs_context_gc_wrapper.patch b/gjs/gjs_context_gc_wrapper.patch new file mode 100644 index 0000000..d0c6127 --- /dev/null +++ b/gjs/gjs_context_gc_wrapper.patch @@ -0,0 +1,49 @@ +From 059f6a13bb5ed18060aa27bbe900575e6966efb0 Mon Sep 17 00:00:00 2001 +From: Colin Walters <walters@verbum.org> +Date: Fri, 16 Sep 2011 14:28:16 +0000 +Subject: context: Add gjs_context_gc() wrapper + +Simple wrapper for JS_GC() avoids simple embedders having to drop to +JSAPI. + +https://bugzilla.gnome.org/show_bug.cgi?id=659253 +--- +diff --git a/gjs/context.c b/gjs/context.c +index 5688477..bb7a4cd 100644 +--- a/gjs/context.c ++++ b/gjs/context.c +@@ -899,6 +899,19 @@ gjs_context_maybe_gc (GjsContext *context) + gjs_maybe_gc(context->context); + } + ++/** ++ * gjs_context_gc: ++ * @context: a #GjsContext ++ * ++ * Initiate a full GC; may or may not block until complete. This ++ * function just calls Spidermonkey JS_GC(). ++ */ ++void ++gjs_context_gc (GjsContext *context) ++{ ++ JS_GC(context->context); ++} ++ + static gboolean + gjs_context_idle_emit_gc (gpointer data) + { +diff --git a/gjs/context.h b/gjs/context.h +index 3fc94e0..4e01cc7 100644 +--- a/gjs/context.h ++++ b/gjs/context.h +@@ -75,6 +75,8 @@ void gjs_context_print_stack_stderr (GjsContext *js_context); + + void gjs_context_maybe_gc (GjsContext *context); + ++void gjs_context_gc (GjsContext *context); ++ + void gjs_dumpstack (void); + + G_END_DECLS +-- +cgit v0.9.0.2 |