Bug 235594

Summary: WebGL 2 crash during pinch-zoom on iOS 15
Product: WebKit Reporter: Jan Zak <zj>
Component: WebGLAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: dino, kbr, kkinnunen, webkit-bug-importer, webkit
Priority: P2 Keywords: InRadar
Version: Safari 15   
Hardware: iPhone / iPad   
OS: iOS 15   
Attachments:
Description Flags
recording
none
ios 16.2, iphone 13 none

Description Jan Zak 2022-01-25 09:47:30 PST
Created attachment 449935 [details]
recording

My WebGL 2 app crashes when user uses pinch-zoom to zoom in a deck.gl map container. There is a custom deck.gl layer animated using TransformFeedback with buffers storing simulated particle positions.

Steps to reproduce:
- open https://demo.weatherlayers.com/map.html on iOS Safari 15
- pinch zoom on the deck.gl map container
- the page crashes

Expected result:
- the deck.gl map container and all deck.gl layers are zoomed in

The attached recording shows two subsequent crashes. The first crash reloads the page, the second crash shows the error message "A problem repeatedly occurred on <URL>". Remote console with macOS Safari 15 doesn't show any details about the crash.

This is a regression which started with iOS Safari 15 and the new WebGL 2 Metal backend. The demo worked well on iOS Safari 14 with experimental WebGL 2 enabled. The demo works well on macOS Safari 15.
Comment 1 Radar WebKit Bug Importer 2022-01-25 14:03:16 PST
<rdar://problem/88043277>
Comment 2 Kimmo Kinnunen 2022-03-01 02:28:37 PST
Thank you for the report. 
Please provide more info:
- device type (for example, go to Settings -> General -> About)
- iOS version

You could also try to reproduce with the new version, iOS 15.4 seed 4 or later.

I could not immediately reproduce with iOS 15.4, iPad Pro 11" 2020.
Comment 3 Jan Zak 2022-11-02 00:53:27 PDT
I'm closing the ticket, because I can no longer replicate it with iOS 16 either.

I wonder which specific fix has changed the behavior though, I would appreciate if anyone can point me it.
Comment 4 siim 2022-12-15 13:16:56 PST
It is still there:

Open: https://demo.weatherlayers.com/

I selected:
https://demo.weatherlayers.com/deck-interleaved/leaflet.html



Zoom in and pan around for 30s and then it crashes.

You will see "A problem repeatedly occured on ..." error message.
Comment 5 siim 2022-12-15 13:28:56 PST
Created attachment 464062 [details]
ios 16.2, iphone 13