ITADN

Map crashes in v3.21.0 with many Pixel devices

#13651ClosedJamesChevalier 创建于 2026-04-03
bug :lady_beetle:auto-triaged
J
JamesChevaliercommented
### mapbox-gl-js version 3.21.0 ### Browser and version Various browsers across various Pixel devices, no iOS reports ### Expected behavior The page shouldn't crash 😄 ### Actual behavior The page crashes ☹️ ### Link to the demonstration https://super-neato.s3.us-east-1.amazonaws.com/mapbox3.21.0.html ### Steps to trigger the unexpected behavior The [reports from my users](https://community.citystrides.com/t/citystrides-crashing-phone-browsers/29849) suggest that the page crashes after attempting to zoom/pan. It doesn't sound like it takes much to produce the crash. The reports mention several browsers, but they're mostly Pixel devices: * Pixel 8 / Android 16 / Opera, Chrome, and Firefox * Pixel 7 / Android 16 / Firefox and Chrome * Pixel 8 * Pixel 8A * Pixel 9a * Samsung/Android I got one report of a Pixel 10 Pro _not_ having issues. There weren't any reports from iOS users. On my 2023 MacBook Pro (Apple M2 Max, 32GB RAM) there's a fair amount of stuttering on the initial zoom out to the globe view, but after the first zoom out things go smoothly. At about the point where the stuttering occurs, I noticed the browser log output I've shared below - I don't know how relevant it is to the crashing issue. I deployed a version of my website that downgrades to Mapbox GL JS v3.20.0 and everyone reported that this resolved their issue. ### Relevant log output ```shell Ze @ util.ts:513 ao @ cutoff.ts:53 (anonymous) @ draw_terrain_raster.ts:304 renderToBackBuffer @ terrain.ts:862 renderBatch @ terrain.ts:985 render @ painter.ts:1306 _render @ map.ts:4570 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _render @ map.ts:4679 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 requestAnimationFrame frame @ browser.ts:39 _triggerFrame @ map.ts:4997 triggerRepaint @ map.ts:4991 _requestFrame @ handler_manager.ts:674 _triggerRenderFrame @ handler_manager.ts:684 handleEvent @ handler_manager.ts:383 (anonymous) @ handler_manager.ts:677 run @ task_queue.ts:51 _render @ map.ts:4510 (anonymous) @ map.ts:5003 ```
关闭于 2026-04-08 3 条评论