| Summary: | [MSVC] Remove experimental lambda processor usage | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Don Olmstead <don.olmstead> | ||||||||
| Component: | Tools / Tests | Assignee: | Don Olmstead <don.olmstead> | ||||||||
| Status: | RESOLVED FIXED | ||||||||||
| Severity: | Normal | CC: | annulen, cdumez, darin, esprehn+autocc, ews-watchlist, gyuyoung.kim, Hironori.Fujii, kangil.han, ryuan.choi, sergio, webkit-bug-importer | ||||||||
| Priority: | P2 | Keywords: | InRadar | ||||||||
| Version: | WebKit Nightly Build | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Unspecified | ||||||||||
| See Also: | https://bugs.webkit.org/show_bug.cgi?id=226070 | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Don Olmstead
2020-03-20 12:33:05 PDT
Created attachment 394111 [details]
Patch
*** Bug 209311 has been marked as a duplicate of this bug. *** See also: Bug 209358 – [MSVC] Remove experimental lambda processor usage Comment on attachment 394111 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=394111&action=review > Source/WebCore/dom/DocumentStorageAccess.cpp:200 > + m_document.eventLoop().queueMicrotask([this, weakThis = WTFMove(weakThis)] { You can't WTFMove(weakThis) twice. You need to copy the weak ptr. Comment on attachment 394111 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=394111&action=review >> Source/WebCore/dom/DocumentStorageAccess.cpp:200 >> + m_document.eventLoop().queueMicrotask([this, weakThis = WTFMove(weakThis)] { > > You can't WTFMove(weakThis) twice. You need to copy the weak ptr. It can be copied by [this, weakThis]. Created attachment 394390 [details]
Patch
Comment on attachment 394390 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=394390&action=review > Source/WebCore/dom/DocumentStorageAccess.cpp:185 > + m_document.eventLoop().queueMicrotask([this, weakThis = makeWeakPtr(*weakThis)] { Doesn’t the syntax [this, weakThis] work without a call to makeWeakPtr? Confirmed that the crash is still there in VS 16.5.1. You mean you tried [this, weakThis] and it also failed? I think we need a comment here otherwise people won't know and will keep re-breaking it. Did you test it by removing /experimental:newLambdaProcessor switch? The compiler crash is caused by the switch. I confirmed [this, weakThis] works with my VS 16.5.1. Created attachment 394697 [details]
Patch
Committed r259104: <https://trac.webkit.org/changeset/259104> All reviewed patches have been landed. Closing bug and clearing flags on attachment 394697 [details]. |