Bug 129993

Summary: Completed iterator can be revived by adding more than one new entry to the target object
Product: WebKit Reporter: Oliver Hunt <oliver>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, dpino, ggaren, oliver, webkit-bug-importer
Priority: P2 Keywords: EasyFix, InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch none

Oliver Hunt
Reported 2014-03-09 13:05:03 PDT
map = new Map map.set(1,"foo") keys = map.keys() for (key of keys) ; map.set(2, "bar") map.set(3, "wibble") for (key of keys) alert(key) // incorrectly shows 3 iterator spec says that a dead iterator has to remain dead.
Attachments
Patch (4.00 KB, patch)
2014-08-17 03:12 PDT, Diego Pino
no flags
Patch (7.81 KB, patch)
2014-08-18 00:34 PDT, Diego Pino
no flags
Diego Pino
Comment 1 2014-08-17 03:12:52 PDT
Radar WebKit Bug Importer
Comment 2 2014-08-17 03:13:05 PDT
Oliver Hunt
Comment 3 2014-08-17 21:49:17 PDT
Comment on attachment 236728 [details] Patch whoops, cq- needs a testcase
Diego Pino
Comment 4 2014-08-18 00:34:42 PDT
Diego Pino
Comment 5 2014-08-18 00:35:43 PDT
Test cases added for Map and Set iterators. PTAL.
WebKit Commit Bot
Comment 6 2014-08-18 10:08:38 PDT
Comment on attachment 236744 [details] Patch Clearing flags on attachment: 236744 Committed r172707: <http://trac.webkit.org/changeset/172707>
WebKit Commit Bot
Comment 7 2014-08-18 10:08:41 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.