Closed Bug 521135 Opened 10 years ago Closed 10 years ago

add custom trace function to liveconnect's JSObjectOps

Categories

(Core :: JavaScript Engine, defect)

1.9.2 Branch
x86
macOS
defect
Not set

Tracking

()

RESOLVED FIXED
Tracking Status
status1.9.2 --- beta1-fixed

People

(Reporter: gal, Assigned: gal)

References

Details

Attachments

(1 file)

It just won't die.
Attached patch patchSplinter Review
Assignee: general → gal
Version: Trunk → 1.9.2 Branch
Comment on attachment 405175 [details] [diff] [review]
patch

>diff --git a/js/src/liveconnect/jsj_utils.c b/js/src/liveconnect/jsj_utils.c
>+void
>+jsj_TraceObject(JSTracer *trc, JSObject *obj)
>+{
>+    size_t nslots = STOBJ_NSLOTS(obj);

The essence of changes from the bug 511425 is that the slots beyond parent and proto is only relevant for native objects, the rest of slots non-native can use for what-ever purpose. In the case of liveconnect the code only uses the private slot. So to implement jsj_TraceObject the code can just assert that obj.dslots is null and call obj.traceProtoAndParent either via C-wrapper or via duplicating that code.
This is fixed (with comment 2 addressed) already.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.