This is an archived page. It's not actively maintained.


This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.

Unregisters a pointer to a GC thing so that it is no longer a member of the garbage collector's root set. This enables any pointed-at GC thing to be garbage collected as needed.


JSBool JS_RemoveRootRT(JSRuntime *rt, void *rp);
Name Type Description
rt JSruntime * Pointer to the runtime with which the root was registered.
rp void * Address of the pointer to no longer protect. This must have been passed to one of JS_AddRoot, JS_AddNamedRoot, or JS_AddNamedRootRT earlier.


JS_RemoveRootRT removes the GC thing that rp points to from the list of GC things that are protected from garbage collection. rp is thus a pointer to a pointer to a JS double, String, or Object. Do not pass a pointer to a JS double, string, or object -- you must pass a pointer to a pointer or a pointer to a jsval that's a GC thing. The entry for the GC thing rp points to is removed in the garbage collection hash table for the specified runtime, rt.

JS_RemoveRootRT always returns JS_TRUE.

See Also

MXR ID Search for JS_RemoveRoot