Bug 965927. [StoreInSlot] and [Cached] getters should use the reflector as the scope obj when wrapping the return value. r=peterv

This commit is contained in:
Boris Zbarsky 2014-02-06 21:08:29 -05:00
Родитель 933eab0317
Коммит c0e5c60b65
5 изменённых файлов: 8 добавлений и 0 удалений

Просмотреть файл

@ -5234,6 +5234,7 @@ if (!${obj}) {
'jsvalHandle': 'args.rval()',
'returnsNewObject': returnsNewObject,
'successCode': successCode,
'obj' : "reflector" if setSlot else "obj",
}
try:
wrapCode = CGGeneric(wrapForType(self.returnType, self.descriptor,

Просмотреть файл

@ -285,6 +285,7 @@ public:
already_AddRefed<TestInterface> NonNullSelf();
void SetNonNullSelf(TestInterface&);
already_AddRefed<TestInterface> GetNullableSelf();
already_AddRefed<TestInterface> CachedSelf();
void SetNullableSelf(TestInterface*);
void PassOptionalSelf(const Optional<TestInterface*> &);
void PassOptionalNonNullSelf(const Optional<NonNull<TestInterface> >&);

Просмотреть файл

@ -236,6 +236,8 @@ interface TestInterface {
void passNullableSelf(TestInterface? arg);
attribute TestInterface nonNullSelf;
attribute TestInterface? nullableSelf;
[Cached, Pure]
readonly attribute TestInterface cachedSelf;
// Optional arguments
void passOptionalSelf(optional TestInterface? arg);
void passOptionalNonNullSelf(optional TestInterface arg);

Просмотреть файл

@ -129,6 +129,8 @@ interface TestExampleInterface {
void passNullableSelf(TestInterface? arg);
attribute TestInterface nonNullSelf;
attribute TestInterface? nullableSelf;
[Cached, Pure]
readonly attribute TestInterface cachedSelf;
// Optional arguments
void passOptionalSelf(optional TestInterface? arg);
void passOptionalNonNullSelf(optional TestInterface arg);

Просмотреть файл

@ -145,6 +145,8 @@ interface TestJSImplInterface {
void passNullableSelf(TestJSImplInterface? arg);
attribute TestJSImplInterface nonNullSelf;
attribute TestJSImplInterface? nullableSelf;
[Cached, Pure]
readonly attribute TestJSImplInterface cachedSelf;
// Optional arguments
void passOptionalSelf(optional TestJSImplInterface? arg);
void passOptionalNonNullSelf(optional TestJSImplInterface arg);