Closed Bug 1139964 Opened 5 years ago Closed 5 years ago

[e10s] Framescripts don't have Promise defined

Categories

(Core :: DOM: Core & HTML, defect)

x86
macOS
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla39
Tracking Status
e10s m8+ ---
firefox39 --- fixed

People

(Reporter: mossop, Assigned: bzbarsky)

Details

Attachments

(4 files)

The Promise constructor isn't defined in framescripts. It would be useful to have this rather than reverting to Promise.jsm.
Is this basically the thing about message manager not using webidl globals?  Where are we setting up the relevant global objects?  Should they be getting Exposed=System stuff defined on them, perhaps?
Flags: needinfo?(bugs)
Attached patch wip for the testSplinter Review
bz said he is looking into implementing this.

{ hasPromise: ("Promise" in this) } is the part one may need to change.
Flags: needinfo?(bugs)
That test could be ofc extended to check more properties in the global, but easier to update it
after Exposed=System works for mm globals.
Assignee: nobody → bzbarsky
Status: NEW → ASSIGNED
Attachment #8573445 - Flags: review+
Attachment #8573443 - Flags: review?(bugs) → review+
Comment on attachment 8573444 [details] [diff] [review]
part 2.  Add classinfo helpers for the various message manager stuff to install WebIDL Exposed=System things on those globals

>+nsMessageManagerSH<Super>::Enumerate(nsIXPConnectWrappedNative* wraper,
s/wraper/wrapper/

>+                                     JSContext* cx, JSObject* obj_,
>+                                     bool* _retval)
>+{
>+  JS::Rooted<JSObject*> obj(cx, obj_);
>+
>+  *_retval = SystemGlobalEnumerate(cx, obj);
>+  NS_ENSURE_TRUE(*_retval, NS_ERROR_FAILURE);
>+
>+  // Don't call up to our superclass, since neither nsDOMGenericSH nor
>+  // nsEventTargetSH have WANT_ENUMERATE.
Want to assert here that 
!(GetScriptableFlags() & nsIXPCScriptable::WANT_ENUMERATE)


>+  NS_IMETHOD Enumerate(nsIXPConnectWrappedNative* wraper, JSContext* cx,
wraper
Attachment #8573444 - Flags: review?(bugs) → review+
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.