GC::SetFinalize should be removed, and GC::ClearFinalized should be made private

RESOLVED FIXED

Status

RESOLVED FIXED
8 years ago
8 years ago

People

(Reporter: lhansen, Assigned: lhansen)

Tracking

Details

Attachments

(1 attachment)

(Assignee)

Description

8 years ago
There are exactly three users of GC::SetFinalize [sic]:

- RegExpObject::RegExpObject calls it on "this", in two cases
- PlayerScriptObject::PlayerScriptObject calls it on "this"

In all cases the call is redundant, because the objects being constructed are RCObjects and hence always finalized.

There is exactly one user of GC::ClearFinalized [sic]:

- GC::AbortFree calls it to clear the finalized bit.

Since the only client is in the GC, the API can be made private.

With regard to IsFinalized, it is only used from within Tamarin, but it seems benign to leave it public for now (it's used by Sampler).
(Assignee)

Comment 1

8 years ago
Created attachment 533285 [details] [diff] [review]
Patch

Removes the calls to SetFinalize; removes SetFinalize; makes ClearFinalized private.
Attachment #533285 - Flags: review?(fklockii)
(Assignee)

Updated

8 years ago
Blocks: 657949
Attachment #533285 - Flags: review?(fklockii) → review+

Comment 2

8 years ago
changeset: 6318:6665a32e4dae
user:      Lars T Hansen <lhansen@adobe.com>
summary:   Fix 657927 - GC::SetFinalize should be removed, and GC::ClearFinalized should be made private (r=fklockii)

http://hg.mozilla.org/tamarin-redux/rev/6665a32e4dae
(Assignee)

Updated

8 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.