Skip to content

RDKEMW-22007:[0.2.0_8.6][RDKEMW-20113][ROGERS RTK IUV2]multiqueue Crash observed when switching between linear channels#209

Merged
sankarimuthu merged 2 commits into
support/0.2.0_8.6from
feature/RDKEMW-22007
Jul 21, 2026
Merged

RDKEMW-22007:[0.2.0_8.6][RDKEMW-20113][ROGERS RTK IUV2]multiqueue Crash observed when switching between linear channels#209
sankarimuthu merged 2 commits into
support/0.2.0_8.6from
feature/RDKEMW-22007

Conversation

@ALSAMEEMA

Copy link
Copy Markdown

No description provided.

@ALSAMEEMA
ALSAMEEMA requested a review from a team as a code owner July 21, 2026 06:45
Copilot AI review requested due to automatic review settings July 21, 2026 06:45

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Addresses a multiqueue crash seen when switching between linear channels (Rialto sink path) by hardening segment handling and improving element lifetime management, with accompanying unit-test coverage.

Changes:

  • Add NULL-checks around Rialto segment sample creation/push in SendNewSegmentEvent() to avoid dereferencing missing caps/sample.
  • Hold explicit references (gst_object_ref) for audio/video/subtitle sink elements stored in gstPrivateContext to prevent dangling pointers during teardown/reconfiguration.
  • Extend unit-test/mocking support to validate Rialto segment push behavior (caps missing, push success, push failure).

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
InterfacePlayerRDK.cpp Hardens Rialto segment push logic and adjusts sink ref ownership / teardown behavior to avoid crashes.
test/utests/tests/InterfacePlayerTests/InterfacePlayerFunctionTests.cpp Adds unit tests for Rialto sink segment push paths (caps NULL, push ok/error).
test/utests/mocks/MockGStreamer.h Extends GStreamer mock interface for caps/sample/push APIs used by the new logic/tests.
test/utests/fakes/FakeGStreamer.cpp Routes new GStreamer APIs through the mock when present, enabling the added tests.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread InterfacePlayerRDK.cpp
@sankarimuthu sankarimuthu changed the title RDKEMW-20113: [ROGERS RTK IUV2]multiqueue Crash observed when switching between linear channels RDKEMW-22007:[0.2.0_8.6][RDKEMW-20113][ROGERS RTK IUV2]multiqueue Crash observed when switching between linear channels Jul 21, 2026
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings July 21, 2026 07:56

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

Comment thread InterfacePlayerRDK.cpp
Comment on lines 2339 to 2342

g_object_set(stream->sinkbin, "text-sink", subtitlebin, NULL);
interfacePlayerPriv->gstPrivateContext->subtitle_sink = textsink;
interfacePlayerPriv->gstPrivateContext->subtitle_sink = GST_ELEMENT(gst_object_ref(textsink));
MW_LOG_MIL("using rialtomsesubtitlesink muted=%d sink=%p", interfacePlayerPriv->gstPrivateContext->subtitleMuted, interfacePlayerPriv->gstPrivateContext->subtitle_sink);
@sankarimuthu
sankarimuthu merged commit f3d411a into support/0.2.0_8.6 Jul 21, 2026
6 checks passed
@github-actions github-actions Bot locked and limited conversation to collaborators Jul 21, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants