Closed Bug 1179685 Opened 9 years ago Closed 9 years ago

Assert/Crash running "postmessage-msgport-to-client.https.html" wpt service worker test in Nightly

Categories

(Core :: DOM: Service Workers, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla42
Tracking Status
firefox42 --- fixed

People

(Reporter: noemi, Assigned: catalinb)

References

Details

Attachments

(3 files, 1 obsolete file)

A Nightly crash occurs when executing "postmessage-msgport-to-client.https.html" wpt test such as |./mach web-platform-tests _mozilla/service-workers/service-worker/postmessage-msgport-to-client.https.html| with 7/1 master build The assertion failure shown is as follows: ""Assertion failure: aClosure, at /Users/noef/Documents/mozilla-central/dom/workers/WorkerPrivate.cpp:693"" Please find attached the crash report corresponding to this
What is happening here is that we call mBuffer.read() here <https://dxr.allizom.org/mozilla-central/source/dom/workers/ServiceWorkerClient.cpp#130> passing nullptr as the closure argument (it is a default argument that we are passing in explicitly here) and in WorkerStructuredCloneCallbacks::ReadTransfer() <https://dxr.allizom.org/mozilla-central/source/dom/workers/WorkerPrivate.cpp#693> we MOZ_ASSERT(aClosure). In non-debug builds, if we end up with a SCTAG_DOM_MAP_MESSAGEPORT tag, we will crash. Catalin, is this expected? It seems like passing a null closure to this function is a mistake.
Flags: needinfo?(catalin.badea392)
Attachment #8630223 - Flags: review?(amarchesini)
(In reply to Ehsan Akhgari (not reviewing patches, not reading bugmail, needinfo? me!) from comment #1) > What is happening here is that we call mBuffer.read() here > <https://dxr.allizom.org/mozilla-central/source/dom/workers/ > ServiceWorkerClient.cpp#130> passing nullptr as the closure argument (it is > a default argument that we are passing in explicitly here) and in > WorkerStructuredCloneCallbacks::ReadTransfer() > <https://dxr.allizom.org/mozilla-central/source/dom/workers/WorkerPrivate. > cpp#693> we MOZ_ASSERT(aClosure). In non-debug builds, if we end up with a > SCTAG_DOM_MAP_MESSAGEPORT tag, we will crash. > > Catalin, is this expected? It seems like passing a null closure to this > function is a mistake. No, that's a bug. I've uploaded a patch that fixes the issue.
Flags: needinfo?(catalin.badea392)
Attachment #8630223 - Flags: review?(amarchesini) → review+
Attachment #8630223 - Flags: checkin+
Assignee: nobody → catalin.badea392
Flags: needinfo?(catalin.badea392)
Attachment #8631157 - Flags: review?(ehsan)
Comment on attachment 8631157 [details] [diff] [review] Change service worker postmsg-msgport-to-client wpt test expectation to PASS. Review of attachment 8631157 [details] [diff] [review]: ----------------------------------------------------------------- Hmm, usually when the test expectation file indicates that it passes everywhere, you can remove the ini file completely. So please do that if the test passes with that!
Attachment #8631157 - Flags: review?(ehsan) → review+
Status: NEW → ASSIGNED
Attachment #8631157 - Attachment is obsolete: true
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
Hi, just checked on m-c Nightly Debug (72835344333f revision), and the test is successfully executed. Thanks! *Harness status: OK *Found 1 tests *1 Pass
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: