Closed Bug 933087 Opened 11 years ago Closed 11 years ago

WebIDL codegen bug with Maybe<JS:Rooted> causes marionette failures

Categories

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

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla28

People

(Reporter: gwagner, Assigned: bzbarsky)

Details

Attachments

(1 file)

Running marionette tests on emulator debug builds hits Assertion failure: *stack == reinterpret_cast<Rooted<void*>*>(this) https://tbpl.mozilla.org/php/getParsedLog.php?id=29893900&tree=Pine&full=1 The test uses the settings API. Mrbkap tracked it down to a Maybe<JS::Rooted> bug in the webidl code generator. The code in question is in SettingsManagerBinding.cpp: static bool set(JSContext* cx, JS::Handle<JSObject*> obj, mozilla::dom::SettingsLock* self, const JSJitMethodCallArgs& args) with: Maybe<JS::Rooted<JSObject*> > unwrappedObj; JS::Rooted<JSObject*> arg0(cx);
Oy. Looks like a regression from bug 903772... Good thing Rooted is a no-op normally! We just need to fix the ordering here.
Assignee: nobody → bzbarsky
Whiteboard: [need review]
I pushed this patch to our project branch that runs debug emulator tests: https://tbpl.mozilla.org/?tree=Pine&rev=e334e2d64100
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla28
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: