Skip to content

The provided value is non-finite #1729

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

Open
pondorasti opened this issue Jul 3, 2024 · 3 comments
Open

The provided value is non-finite #1729

pondorasti opened this issue Jul 3, 2024 · 3 comments
Labels

Comments

@pondorasti
Copy link

pondorasti commented Jul 3, 2024

The Problem

Noticed a steady flow of errors in Sentry coming from Howler caused by setValueAtTime.

CleanShot 2024-07-03 at 16 13 09@2x

The problem might be somewhat related to #985, I only see this error happening on iOS Safari.

Reproducible Example

No response

Reproduction Steps

All captured errors are coming from iPhone users in Safari, ranging from iOS 17.2 to iOS 17.6.

Possible Solution

No response

Context

No response

Howler.js Version

v2.2.4

Affected Browser(s)/Versiuon(s)

No response

@pondorasti pondorasti added the bug label Jul 3, 2024
@laltin
Copy link

laltin commented Sep 26, 2024

I have the same issue with v2.2.3 and iOS.

@Jimbly
Copy link
Contributor

Jimbly commented Apr 3, 2025

We've had these crashes (and some related but less common ones) showing up in our apps for literally years as well =). I finally got around to updating to the latest Howler hoping perhaps the issue had been fixed, but, nope, still happening. So, I've started actively tracking down and fixing (in my fork) all Howler-related crashes we're seeing. It might not apply trivially (since my fork has diverged a little bit and not all other PRs are made/accepted yet), but the changes that managed to make these crashes go away for us are here: Jimbly@3bf5d31

The error rate for our users from this error dropped from a couple per hour down to 0 after this change.

As a bonus, avoiding using setValueAtTime() also fixes a delay of up to 100ms on FireFox since ctx.currentTime is a very low-resolution timer depending on the user's fingerprinting settings.

You may also be able to just try swapping to @jimbly/howler@0.1.7 (though I'm not doing any minification on my fork, leaving that up decision to the app that requires()s it for simplicity, so might not just work as a drop-in replacement)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants