Steps to Reproduce: 1. Open Google Maps, load a map that has transit options. For example, https://www.google.com/maps/dir/N+1st+St,+San+Jose/Infinite+Loop,+Cupertino,+CA+95014/@37.3536601,-122.0372037,12z/data=!3m1!4b1!4m13!4m12!1m5!1m1!1s0x808fcbd90f454731:0xb1a4bc20600da649!2m2!1d-121.9263258!2d37.3839041!1m5!1m1!1s0x808fb5b6e7b4b9fb:0x697a4332574f50d9!2m2!1d-122.0307465!2d37.3321082 2. Click on the bus icon to go to the transit options. 3. Click "More options and times" at the bottom of the list of bus routes. 4. Repeatedly click the right arrow next to the time, to advance the search time forward. Expected: Clicking should keep working, the time line should keep moving, the UI should keep updating. Actual: Eventually the UI stops responding and we start getting fun errors in the JS console. Notes: I regressed this down to http://trac.webkit.org/changeset/179504.
The exceptions look like this: [Error] TypeError: undefined is not a function (evaluating 'uoa(a,c).split(Boa)') b (maps, line 915) $ (rs=ACT90oH-40pjbfRsSZLiBlsoBVxfWDVu5A, line 461) [Error] TypeError: undefined is not an object (evaluating '_.Jl(G4c,this.rootElement)[0].clientHeight') b (maps, line 915) $ (rs=ACT90oH-40pjbfRsSZLiBlsoBVxfWDVu5A, line 461) [Error] TypeError: undefined is not an object (evaluating '_.Jl(G4c,this.rootElement)[0].clientHeight') b (maps, line 915) onmessage (rs=ACT90oH-40pjbfRsSZLiBlsoBVxfWDVu5A, line 368)
<rdar://problem/19767915>
The issue seems to have been resolved in ToT.