fix: surface errors from silent catch blocks in webcam flow - #69
Merged
Conversation
- Move try-catch into WebcamPanel.open() so any unexpected failure from requestPermission/startPreview shows the "Camera access denied" status to the user instead of propagating and silently hiding the panel. - Remove the now-redundant try-catch wrapper in VideoSourceControlNode's webcam button listener (open() is guaranteed not to throw). - Call clearStatus() in the useVideo catch so the stale "fixing metadata…" status is dismissed when fixWebmDuration fails and we fall back to the raw blob. - Annotate the WebM frame-count .catch() fallback with a comment to make the intentional degraded-experience explicit. https://claude.ai/code/session_016vPqWh45duQNAFQsaedefn
VideoPlayerNode.reset() cleared the video element's src but left currentBlobUrl un-revoked. The orphaned URL held a reference to the last-loaded blob, preventing GC until the next video was loaded (or the player was disposed). Revoke and null it at the start of reset() to match the cleanup already done in disposeVideoPlayer(). https://claude.ai/code/session_016vPqWh45duQNAFQsaedefn
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
requestPermission/startPreview shows the "Camera access denied" status
to the user instead of propagating and silently hiding the panel.
webcam button listener (open() is guaranteed not to throw).
status is dismissed when fixWebmDuration fails and we fall back to the
raw blob.
the intentional degraded-experience explicit.
https://claude.ai/code/session_016vPqWh45duQNAFQsaedefn