Skip to content

VPLAY-12884 Crash from teardown on HDCP error#1227

Open
jameslofthouse-RED wants to merge 1 commit intodev_sprint_25_2from
feature/VPLAY-12884_remove_flush_on_HDCP_error
Open

VPLAY-12884 Crash from teardown on HDCP error#1227
jameslofthouse-RED wants to merge 1 commit intodev_sprint_25_2from
feature/VPLAY-12884_remove_flush_on_HDCP_error

Conversation

@jameslofthouse-RED
Copy link
Contributor

Reason for change: On processing a gst HDCP error, flush with teardown is called without
stopping stream injection leading to an abort
Test Procedure: See ticket
Risks: low

@jameslofthouse-RED jameslofthouse-RED requested a review from a team as a code owner March 24, 2026 14:21
Copilot AI review requested due to automatic review settings March 24, 2026 14:21
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes a crash during teardown triggered by a GStreamer HDCP protection error by avoiding an immediate flush/teardown while injection may still be active, and instead relying on retune to reset playback state safely.

Changes:

  • Stop calling Flush(..., shouldTearDown=true) on HDCPProtectionFailure application bus messages.
  • Mute video and schedule a retune when HDCPProtectionFailure is received.

_this->Flush(0, AAMP_NORMAL_PLAY_RATE, true);
// Do not flush(teardown) here as injection threads may still be running
// Allow retune to reset everything
// _this->Flush(0, AAMP_NORMAL_PLAY_RATE, true);
Copy link

Copilot AI Mar 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please avoid leaving commented-out production code here. Instead of commenting out the Flush(teardown) call, remove it and keep only the explanatory comment (or replace it with an explicit, safe alternative such as pausing injection before teardown if a flush is still required). Keeping disabled code in-line makes future maintenance and auditing harder and can mask regressions.

Suggested change
// _this->Flush(0, AAMP_NORMAL_PLAY_RATE, true);

Copilot uses AI. Check for mistakes.
Comment on lines +643 to +644
// Do not flush(teardown) here as injection threads may still be running
// Allow retune to reset everything
Copy link

Copilot AI Mar 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The newly added comment lines aren’t indented consistently with the surrounding block (tab-indented). Please indent them to match the existing formatting so the block stays readable.

Suggested change
// Do not flush(teardown) here as injection threads may still be running
// Allow retune to reset everything
// Do not flush(teardown) here as injection threads may still be running
// Allow retune to reset everything

Copilot uses AI. Check for mistakes.
Reason for change: On processing a gst HDCP error, flush with teardown is called without
                   stopping stream injection leading to an abort
Test Procedure: See ticket
Risks: low

Signed-off-by: James Lofthouse <james_lofthouse@comcast.com>
@jameslofthouse-RED jameslofthouse-RED force-pushed the feature/VPLAY-12884_remove_flush_on_HDCP_error branch from e3c3710 to d8b237a Compare March 24, 2026 15:44
@jameslofthouse-RED jameslofthouse-RED changed the title VPLAY-12689 Crash from teardown on HDCP error VPLAY-12884 Crash from teardown on HDCP error Mar 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants