gecko/js/xpconnect/tests
Bobby Holley 2c48de6a45 Bug 778409 - Enter the compartment of unwrappedProto rather than obj in Rewrap. r=gabor
This can happen if chrome sets its proto to a content object from a different scope
than the one doing the wrapping. In this case, the prototype chain looks like this:

chromeobj => CCW(examplecom_obj) => CCW(examplecom_scope.Object.prototype)

When wrapping chromeobj for exampleorg_scope, things will look like this:

COW(chromeobj) => CCW(examplecom_obj) => CCW(examplecom_scope.Object.prototype)

Note that we don't remap the proto of CCW(examplecom_scope) to
exampleorg_scope.Object.prototype, because the proto remapping only happens when
the object we're wrapping is chrome. There's no reason it has to be this way, but
even if we changed it we still wouldn't get the nice remapped lookup behavior to
exampleorg_scope.Object.prototype, because the proxy handler for CCW(examplecom_obj)
isn't a ChromeObjectWrapper, and thus doesn't know how to to the prototype bouncing
correctly.

Anyway, I suspect this case isn't worth worrying about as long as we don't crash.
2012-07-30 22:18:55 +02:00
..
browser Bug 773980 - Add Components.utils.isDeadWrapper. r=bholley 2012-07-19 12:39:43 -04:00
chrome Bug 760109 - Tests. rs=mrbkap 2012-07-27 12:15:46 +02:00
components Bug 773637 - Kill NS_SCRIPTABLE annotations, Part 1: Remove NS_*PARAM annotations. r=ehsan 2012-07-06 15:14:07 -05:00
idl Bug 771401 - Change PRTime in IDL to signed long long. r=bholley sr=bsmedberg 2012-07-19 18:53:30 +09:00
mochitest Disable two E4X tests that were failing only on platforms using e10s content processes after landing bug 765890. no_r=orange. 2012-07-30 14:52:02 -05:00
unit Bug 778409 - Enter the compartment of unwrappedProto rather than obj in Rewrap. r=gabor 2012-07-30 22:18:55 +02:00
Makefile.in Bug 773980 - Add Components.utils.isDeadWrapper. r=bholley 2012-07-19 12:39:43 -04:00