Bug 188582

Summary: HashMap<Ref<P>, V> asserts when V is not zero for its empty value
Product: WebKit Reporter: Saam Barati <saam>
Component: Web Template FrameworkAssignee: Saam Barati <saam>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, benjamin, cdumez, cmarcelo, commit-queue, darin, dbates, ews-watchlist, fpizlo, ggaren, keith_miller, mark.lam, msaboff, saam, sam, webkit-bug-importer, ysuzuki
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=188893
Bug Depends on:    
Bug Blocks: 188426    
Attachments:
Description Flags
patch none

Description Saam Barati 2018-08-14 15:19:27 PDT
Basically, we end up with code that does this:

Ref<P>(Ref<P>(HashTableEmptyValue))

Which:
- invokes move constructor on an incoming empty value
- that incoming empty value has nullptr for m_ptr
- The move constructor calls leakRef on the incoming value
- leakRef does: ASSERT(m_ptr)
Comment 1 Saam Barati 2018-08-14 18:25:16 PDT
Created attachment 347141 [details]
patch
Comment 2 WebKit Commit Bot 2018-08-14 21:08:15 PDT
Comment on attachment 347141 [details]
patch

Clearing flags on attachment: 347141

Committed r234879: <https://trac.webkit.org/changeset/234879>
Comment 3 WebKit Commit Bot 2018-08-14 21:08:17 PDT
All reviewed patches have been landed.  Closing bug.
Comment 4 Radar WebKit Bug Importer 2018-08-14 21:09:20 PDT
<rdar://problem/43318499>