Closed Bug 654646 Opened 12 years ago Closed 11 years ago

Need something for doing class-checks oblivious to wrapped-ness of an object

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 683361

People

(Reporter: Waldo, Unassigned)

References

Details

Specs say "if [[Class]] is <foo>" a bunch of places, and probably in that case both wrapped and unwrapped objects should pass.  The isFoo() methods on JSObject don't unwrap, and it seems to me they shouldn't -- we should keep wrappy-ness separate from that.  So we should have something that first tries the unwrapped check, then the wrapped check.  But it should be separate from the isFoo() methods, because in some situations the isFoo() check is really a guard on a fast-path for direct slot access, or whatever, and I don't think we should throw that out or make everything check-then-recheck.
Compartment-per-global will need this since a lot more content will be running up against these discrepancies.
Blocks: cpg
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.