Open Bug 921741 Opened 12 years ago Updated 8 months ago

Make the cycle collector's Traverse method infallible

Categories

(Core :: Cycle Collector, defect)

defect

Tracking

()

People

(Reporter: mccr8, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Like the other CC methods (Root, Unroot, Unlink), I don't think this ever returns an error. Unlike the other methods, we can't get rid of the return value entirely, but instead of returning an error, it could return a boolean or maybe a two value enum. One value would indicate "full steam ahead" and the other would indicate that the parent class decided no more traversal needed to be done. The second value would be used in places where we return or check for NS_SUCCESS_INTERRUPTED_TRAVERSE now. Then we could get rid of NS_SUCCESS_INTERRUPTED_TRAVERSE.
Severity: normal → S3
Component: XPCOM → Cycle Collector
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: