WriteBarrierRC::Clear() is wrong

VERIFIED FIXED in flash10.1

Status

Tamarin
Garbage Collection (mmGC)
P2
normal
VERIFIED FIXED
9 years ago
9 years ago

People

(Reporter: Steven Johnson, Assigned: Lars T Hansen)

Tracking

unspecified
flash10.1

Details

(Reporter)

Description

9 years ago
code is 

  REALLY_INLINE void Clear() { t = 0; }

but needs to DecrementRef on existing value, if any.
(Assignee)

Updated

9 years ago
Assignee: nobody → lhansen
Status: NEW → ASSIGNED
Priority: -- → P2
Target Milestone: --- → flash10.1
(Assignee)

Comment 1

9 years ago
Actually what it needs is documentation; the method is correct.

It is used not at all in the VM and one place in the Flash Player, and there is a comment at that site of use to the effect that the referenced object has already been deleted and that it's important to clear out the smart pointer without touching the now-dead object.  So Clear() does the right thing.

I will add a comment to that effect and just push it.
Status: ASSIGNED → RESOLVED
Last Resolved: 9 years ago
Resolution: --- → FIXED

Comment 2

9 years ago
Pushed to redux?
(Assignee)

Comment 3

9 years ago
(In reply to comment #2)
> Pushed to redux?

Yes, just checked the code.

Updated

9 years ago
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.