Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crashes on iOS Safari #33613

Closed
billkalpak opened this issue May 14, 2024 · 3 comments
Closed

Crashes on iOS Safari #33613

billkalpak opened this issue May 14, 2024 · 3 comments
Labels
Content:WebAPI Web API docs

Comments

@billkalpak
Copy link

MDN URL

https://developer.mozilla.org/en-US/docs/Web/API/Pointer_events/Pinch_zoom_gestures

What specific section or headline is this issue about?

Pinch gesture crashing on iOS Safari if used to zoom in and out of SVG.

What information was incorrect, unhelpful, or incomplete?

I've been coding an HTML game that uses SVG for graphics. It's got well over 1,000 shapes within. I added this code from the very beginning 3 years ago, but now suddenly it's crashing Safari on iOS (specifically a WebView within a native iOS app). Only started happening a month or two ago.

What did you expect to see?

Not crashing.

Do you have any supporting links, references, or citations?

No error in Safari's debugger but if I run through Xcode, I get this series of errors:

0x114000a30 - GPUProcessProxy::didClose:
0x114000a30 - GPUProcessProxy::gpuProcessExited: reason=Crash
0x1130180c0 - [PID=1508] WebProcessProxy::gpuProcessExited: reason=Crash
Error acquiring assertion: <Error Domain=RBSServiceErrorDomain Code=1 "target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit" UserInfo={NSLocalizedFailureReason=target is not running or doesn't have entitlement com.apple.runningboard.assertions.webkit}>
0x1130246c0 - ProcessAssertion::acquireSync Failed to acquire RBS assertion 'GPUProcess Background Assertion' for process with PID=1510, error: (null)
0x1130302c0 - ProcessThrottlerTimedActivity::activityTimedOut:

Do you have anything more you want to share?

In short research I've found that this is a problem with iOS since version 15.0 two years ago. Other types of graphics are affected as well.

MDN metadata

Page report details
@billkalpak billkalpak added the needs triage Triage needed by staff and/or partners. Automatically applied when an issue is opened. label May 14, 2024
@github-actions github-actions bot added the Content:WebAPI Web API docs label May 14, 2024
@bsmth
Copy link
Member

bsmth commented May 17, 2024

Hi there, thanks a lot for reporting. To help us figure out what the issue is, would you mind giving some details about your environment, like:

  • OS & version
  • Anything about the hardware (ipad / iphone), viewport / screen size etc.

And on the code side, could you provide some hints about what is not running as expected? Are there examples on the MDN page that reproduce the issue or is it in your own project's code? Would you be able to link to a snippet in codepen or paste a minimal example here?

Thank you!

@bsmth bsmth removed the needs triage Triage needed by staff and/or partners. Automatically applied when an issue is opened. label May 17, 2024
@billkalpak
Copy link
Author

Hi Brian, thanks for the reply. I did a little more digging and it seems there was an issue with iOS 15 rendering that's referenced here. My Xcode project was targeting iOS 15 as a min requirement so I changed it to 15.5 and the crashes happen much less often. Using two devices and it happens much more often on my iPhone 13 than it does on my iPad Pro 12.9" where a crash is rare.

No examples on MDN as this is all my own code. My project is turn-based hex-and-counter game that's almost entirely contained in one big SVG, with some additional HTML UI elements, like the score, that overlay on top. I'm using this pinch code to zoom in and out of the SVG by changing the viewBox values. Also using the one-finger to pan by again adjusting the viewBox values of the SVG and that works perfectly.

1 similar comment
@billkalpak
Copy link
Author

Hi Brian, thanks for the reply. I did a little more digging and it seems there was an issue with iOS 15 rendering that's referenced here. My Xcode project was targeting iOS 15 as a min requirement so I changed it to 15.5 and the crashes happen much less often. Using two devices and it happens much more often on my iPhone 13 than it does on my iPad Pro 12.9" where a crash is rare.

No examples on MDN as this is all my own code. My project is turn-based hex-and-counter game that's almost entirely contained in one big SVG, with some additional HTML UI elements, like the score, that overlay on top. I'm using this pinch code to zoom in and out of the SVG by changing the viewBox values. Also using the one-finger to pan by again adjusting the viewBox values of the SVG and that works perfectly.

@billkalpak billkalpak closed this as not planned Won't fix, can't repro, duplicate, stale May 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Content:WebAPI Web API docs
Projects
None yet
Development

No branches or pull requests

2 participants