RDK-60641 AAMP Federated Release for Sprint 2601#952
Open
RDK-60641 AAMP Federated Release for Sprint 2601#952
Conversation
…egression from LLDASH optimizations (#702) VPLAY-11848: Cloud TSB No subtitles after rewinding (L3 Test 2014), regression from LLDASH optimizations Reason for change: Correcting the position in FetchFragment and before UpdateTSAfterFetch Risks: Low Test Procedure: Test with 2014 test case Priority: P1
VPLAY-11879 LLD playback could pause after fast forward to live Reason for Change: Fix frozen AV after FF linear LLD service to live Summary of Changes: * Continue injecting segments if playback paused due to underflow * HandleSSLWriteCallback L1 test with pipeline paused by the user * HandleSSLWriteCallback L1 test with pipeline paused due to underflow Test Procedure: With AAMP TSB FF to live and confirm playback continues Risk: Low Change-Id: I77e6e55dcbe3b1f53e602c0f0d301f87d15022d7 Signed-off-by: Jose Fagundez <jfagunde@synamedia.com>
VPLAY-8901 Add option to enable sanitizer on Ubuntu (#709) Reason for Change: adds new -u command-line option to enable address sanitizer on Ubuntu builds, addressing the need for an easy way to enable this debugging tool for memory error detection. --------- Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com>
…led (#691) VPLAY-11707 Subtitles displayed for channels when subtitles are disabled Reason for change: Subtiles not initially muted when SetCCStatus called prior to load Risks: Low Test Procedure: Test subtitles/closed captions are muted correctly, e.g. on tune Priority: P1 Signed-off-by: anshephe <115161257+anshephe@users.noreply.github.com>
VPLAY-10162 - Use threadID instead of flag in call isjoinable Reason for change: Currently in aamp code, boolean flags are used at many instance where threads are created and deleted. Use isjoinable() check instead of flags and eliminate the redundant boolean flags. Changes: * isjoinable() check is used instead of boolean flags to decide whether a thread is already created. Test Procedure: Refer JIRA ticket Risks: low --------- Signed-off-by: anjali-syna <206662904+anjali-syna@users.noreply.github.com>
VPLAY-11618 Handle empty language in HLS manifest Reason for Change: Change the manifest parsing to not populate the language for the CC track if it is not present in the manifest. Change the subtitle track selection to support a list of of languages provided via the config, or setPreferredTextLanguage() i.e ["eng",""] allowing the matching of the empty string for non specified language. Risk: Low Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
VPLAY-11949 godspell cleanup - Nov 2025 Reason for Change: replace prioritizes with priority Risk: None (change in comment) Test Guidance: no godspell warnings Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
VPLAY-11590 Github - add instructions.md file for copilot Reason for change: add context/rules to guide Github Copilot Risks: Low Priority: P1 Signed-off-by: ryadav698 <emailofrajatyadav@gmail.com> Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com>
…692) VPLAY-11809 : Enhance UveAAMP stop() API with DRM handle cleanup parameter to prevent Deep Sleep playback failures Reason for change: Linear and VOD playback fails after devices come out of Deep Sleep state due to stale DRM handles that are not properly released before entering Deep Sleep mode. The current stop() implementation does not provide a mechanism to force DRM handle cleanup, leading to tune failures with stale DRM sessions after device wake-up. Changes done: - Enhanced PlayerInstanceAAMP::Stop() API with optional forceCleanup parameter (default false) - Added DRM session cleanup logic using licenseManager->clearDrmSession(forceClearSession) and clearFailedKeyIds() - Updated JavaScript bindings to support both single parameter stop(forceCleanup) and two parameter stop(sendStateChangeEvent, forceCleanup) forms - Modified jsmediaplayer.cpp to handle argument parsing for backward compatibility - Updated UVE API documentation with usage examples for Deep Sleep scenarios - Enhanced mock files and test infrastructure to maintain compatibility - Added comprehensive logging for debugging Deep Sleep DRM cleanup operations This allows applications to call player.stop(true) before Deep Sleep to proactively clean up DRM resources and prevent playback failures after wake-up. Test Procedure: Priority: P2 Risks:Low --------- Co-authored-by: shripad bankar <Shripad_Bankar@cable.comcast.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: molakalapalliharipriya <113626508+molakalapalliharipriya@users.noreply.github.com>
VPLAY-11809 godspell Reason for Change: fix spelling of "destructor" Test Guidance: no godspell warnings Risk: None Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
VPLAY-11583 Rename StreamAbstractionAAMP_MPD::rate to mPlayRate Reason for Change: Distinguish this variable rate from other variables Test Procedure: AAMP and L1 should build successfully Risk: Low * Use AAMP_RATE_PAUSE instead of 0 for mPlayRate * Use AAMP_NORMAL_PLAY_RATE instead of 1 for mPlayRate * Remove the condition of rate==1 from UpdatePtsOffset() * Address AI review comments * Verify the changes in L1 unit test * VPLAY-11595 Replace mPlayRate with aamp->rate in StreamAbstractionAAMP_MPD::Init() Reason for Change: Change necessary prior to fixing VPLAY-11583 Summary of Changes: * Replace mPlayRate with aamp->rate in StreamAbstractionAAMP_MPD::Init() * Modify L1 tests to match PrivAamp and StreamAbstraction rates Test Procedure: Verify L1 tests pass Risk: Low
…AMP to crash VPLAY-11880:The manifest download keeps failing, eventually causing the AAMP to crash. (#718) * Split AampCurlDownloader::Release() to fix thread-safe resource cleanup Separated the Release() function into two parts to ensure thread-safe cleanup of curl headers: 1. Release() - Disables the downloader by setting mDownloadActive flag, allowing download threads to exit gracefully 2. ReleaseHeaders() - Cleans up curl headers and resets timing variables after threads have been joined This prevents race conditions where headers could be freed while download threads are still active and potentially accessing them. * Updated function name to better describe its purpose of initializing CURL header resources * Added L1 test case --------- Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com> Co-authored-by: vkadun208_comcast <vinod_kadungoth2@comcast.com>
VPLAY-11948 : middleware leak found by address sanitizer Reason for Change: * Avoid leak of m_gstConfigParam in middleware layer --------- Co-authored-by: rkandh015 <rekha_kandhavelan@comcast.com>
…ypt Error. (#699) VPLAY-11304: [CPIX] Stay on HD profile if UHD profile fails with Decrypt Error. (#699) Reason for change: Save Usable KeyIds from key_update_callback. Filter the missed keyID for a multi key slot and mark it failed. Then remove the entry from ABR Risks: Low Test Procedure: Test with Multi key UHD stream Priority: P1
…st framework collection of high watermark for concurrent threads VPLAY-11918 aampcli logging of process id to support l2 ability of test framework collection of high watermark for concurrent threads Reason for Change: adds process ID (PID) output to the AAMP command-line interface to support L2 test framework monitoring of concurrent threads created by AAMP. The change is minimal and low-risk, outputting the PID when aamp-cli starts so the L2 framework can capture this information --------- Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com>
…630) VPLAY-11554 WPEWebProcess crash due to lockup in GetManifestEndDelta Reason for change: Avoid deadlock in GetManifestEndDelta() on stop Test Procedure: see ticket Risks: Low Signed-off-by: James Lofthouse <james_lofthouse@comcast.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…fication (#714) RDKEMW-10960 : RaspberryPi MW build failure is blocking CI build verification Reason for change: Moved the SVP related codes under the proper define Test Procedure: Need to ensure the playback behavior Priority: P1 Signed-off-by: Varatharajan_Narayanan <Varatharajan_Narayanan@comcast.com> * Remove gstsvpext linking for CMAKE_RDK_SVP Remove conditional linking of gstsvpext for CMAKE_RDK_SVP. * Remove erroneous #errrr directive in SvpFreeContext added for validation purpose Removed erroneous preprocessor directive from SvpFreeContext function. * Fix typo in preprocessor directive * Remove erroneous preprocessor directive added for validation purpose * Update middleware/CMakeLists.txt Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Signed-off-by: Varatharajan_Narayanan <Varatharajan_Narayanan@comcast.com> Co-authored-by: nejuma1 <nejumathopppil_nazar@comcast.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
VPLAY-11795 memset on objects is potentially harmful
Reason for Change: Eliminates undefined behavior from memset on non-POD types and apply RAII principles to POD type initialization.
Non-POD fixes (prevents corruption/crashes):
- CachedFragment: Use Clear() method instead of memset
- SpeedCache: Use assignment operator for reset
- MediaStreamContext: Initialize in member initializer list
- AampLLDashServiceData: Refactor clear() to use assignment (DRY)
- RecordingComponent: Use assignment in reset methods and constructor
- Remove aesCtrAttrDataList memset (already initialized)
POD improvements (RAII compliance):
- Local arrays: Use = {} initialization (work, dataDescTags, tuneStrPrefix,
description, moneytracebuf, buf)
- Member arrays: Add m_SPS, m_PPS to member initializer list
- TileInfo: Remove redundant memset
Code cleanup:
- Remove unused SetLLDashSpeedCache() and refactor test
VPLAY-11814 Content type index discrepancy in IP_AAMP_TUNETIME (#731) Reason for change: Moving gstdecode parameter to end for the metrics dashboard. Test Procedure: updated in ticket Risks: Low Signed-off-by: Anurag Krishnan <akrish513@cable.comcast.com>
VPLAY-11969 GetTextTrackInfo returns stale information If the text track is changed without a re-tune then priv_aamps mPreferredTextTrack, and stream abstractions mTextTrackIndex are not updated to reflect the current track The manifest url can be set to null due to an issue with passing the same string into cache handler methods as multiple params by reference. The specified language via SetTextTrack() is ignored in perference to the prefferedTextLanguage list. Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
RDK-60173 : Verify L1 test cases for middleware component Reason for Change: - Enable hidden symbol visibility for fakes library - Added compile options for hidden symbol visibility to prevent symbol clashes with system libraries. - Adjust visibility settings for GCC in FakeGLib.cpp - Add getUsableKeys and setKeyId methods to adapter - Add getUsableKeys method to MockOpenCdmSessionAdapter - Modify MemBufEq to accept any keyId pointer and size - Updated MemBufEq matcher to handle NULL pointers safely by accepting any keyId pointer and size. - Update middleware/test/utests/tests/OcdmBasicSessionAdapterTests/FunctionalTests.cpp --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: rkandh015 <rekha_kandhavelan@comcast.com>
RDK-59033: Modification of AAMP Jenkins L1 job and L1_test.yaml Reason for change: Modifed yml file scripts to automatically run middleware l1 tests Test Procedure: github ci verification Risks: None Priority: P1 --------- Signed-off-by: Rekha Kandhavelan rekha_kandhavelan@comcast.com Co-authored-by: rkandh015 <rekha_kandhavelan@comcast.com> Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
VPLAY-11918 process id logging minor cleanup Reason for Change: incorporating some copilot recommendations including: - cast pid_t to int while printing - log as "PID:" instead of "process:" --- Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
VPLAY-10639: GetCulledSeconds() Not working on CH4 Reason for change: Skip empty periods for culled seconds calculations Risks: Low Test Procedure: Test with Linear Priority: P1
VPLAY-10639 follow-up l1 fix (removed repeated tests) Reason for Change: l1 test compilation error; new tests were repeated Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
VPLAY-12012: Deprecate auxiliary audio support in AAMP Reason for change: Deprecate auxiliary audio support Test Procedure: Ensure there are no regression Risks: None --------- Signed-off-by: Vinish100 <vinish.balan@gmail.com> Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com> Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com>
VPLAY-11719 Accept IB/OOB subtitle preference Reason for Change: When an app specifies the CC/subtitles "sub-type" preference, use that to choose the most appropriate text track. Summary of Changes: SavePreferredTextLanguage() will cache the value of the "sub-type" preference from the JSON preferences document. SelectPreferredTextTrack() will then prefer an in-band CC track when "sub-type" is "CLOSED-CAPTIONS" and prefer an out-of-band subtitle track when "sub-type" is "SUBTITLES". If the "sub-type" is neither of those values, it is treated as if it was not specified. --------- Co-authored-by: DomSyna <192202460+DomSyna@users.noreply.github.com>
…ing log detection VPLAY-11732: Add sequential log numbering with function name for missing log detection Reason for Change: Add sequential log numbering and filename extraction to AAMP logging --------- Co-authored-by: jfagunde <83724616+jfagunde@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Jose Fagundez <jfagunde@synamedia.com>
VPLAY-12458 correct misc typos Reason for Change: spotted additional typos lurking in comments that had been wrongly whitelisted Test Guidance: run godspell --------- Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
VPLAY-12458 replace snake case for consistency Reason for Chamge: variable names to camel case --------- Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
Reason for change: Fix format specific build issues due to platform specific data type for NOW_STEADY_TS_MS Test Procedure: L1 should compile successfully Risks: None Signed-off-by: Vinish100 <vinish.balan@gmail.com>
VPLAY-12476 Prevent AAMP from FFWD when at live Reason for Change: prevent AAMP from attempting fast-forward (FFWD) operations when playback is already at the live edge, which was causing GStreamer state-related issues on some platforms. The fix modifies the logic in SetRateInternal() to add an early-exit check for this condition. Also misc copilot-guided refactoring and new tests including: - Refactor IsStreamerAtLivePoint call with static_cast - Use static_cast for IsStreamerAtLivePoint call - Clarify comment regarding live edge condition and condition for clearing the flag. - Add comprehensive test coverage for SetRateInternal live point behavior - Address code review feedback - remove magic numbers from comments - Extract magic number to named constant for improved maintainability - Add test for multiple SetRate calls at live point to verify flag preservation - Add SetIsAtLivePoint setter method to StreamAbstractionAAMP - Rebase and update tests for SetIsAtLivePoint refactoring - Add fake implementation for SetIsAtLivePoint method - Update test/utests/tests/PlayerInstanceAAMP/PlayerInstanceAAMPTestsMain.cpp - Delegate IsAtLivePoint and IsLiveStream to mock in FakePrivateInstanceAAMP - Fix Doxygen parameter formatting - remove extra dashes - Simplify logging in SetIsAtLivePoint method --------- Co-authored-by: DomSyna <192202460+DomSyna@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…906) VPLAY-12265: [FOG TSB]Video freezes during AD to CDAI ad transition (#906) Reason for change: During ad break transition from FOG TSB to CDAI ad, video freezes for few seconds. This is due to unavailability of init fragments for CDAI ads when ad is played from FOG TSB. This fix handles the scenario and fetches init fragments from representation's bandwidth when no AvailableBitrates node is found in custom MPD for FOG TSB ads. Risks: Low Test Procedure: Test with FOG TSB ads and CDAI ads transition Priority: P1 Signed-off-by: Nandakishor U M <nu641001@gmail.com> Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com>
…ith inBand CC tracks (#907) VPLAY-12061:Closed captioning issues after introducing webvTT along with inBand CC tracks Reason for change: filter out the webvtt tracks before sending the list of tracks to application Test Procedure: see ticket Risks: Low Signed-off-by: Gnanesha <gnaani82@gmail.com> Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com>
VPLAY-12265: Fix memory leak after GetBitrateInfoFromCustomMpd (#910) Reason for change: Fixing potential memory leak in FragmentCollectorMPD Risks: Low Test Procedure: Test with CDAI Fog linear Priority: P1 Signed-off-by: Nandakishor U M <nu641001@gmail.com>
… asset on perform FF till the ad break point (#908) VPLAY-12203: - Subtitles Fails to display after Ad break point on VOD asset on perform FF till the ad break point (#908) Reason for Change: fix inband CC resume from ad to content and content to ad Test Guidance: Check the ticket Risk: Low Signed-off-by: Gnanesha <gnaani82@gmail.com>
VPLAY-12482 use of TLS1.3 for CDN downloads Reason for Change: rather than explicitly selecting TLS1.3, allow libCurl to negotiate and use best supported version by client and server Test Guidance: curl logs to confirm TLS 1.3 ends up being used for https connections Risk: Low Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
…#913) VPLAY-12203: - Subtitles Fails to display after Ad break point on VOD Reason for Change: l1 tests added for VPLAY-12203 Test Guidance: all (and new) l1 tests passing Risk: None --------- Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
#725) VPLAY-11600 Call IsEmptyPeriod() with checkIframe=false for AAMP TSB Reason for Change: This needs fixing before we can fix VPLAY-11583 Summary of Changes: * Call IsEmptyPeriod() with checkIframe=false for AAMP TSB * Use aamp->rate instead of rate in IsEmptyPeriod() * Improve comments and parameters name for GetPeriodDuration() and GetPeriodEndTime() Test Procedure: Verify no regressions when using AAMP TSB Risk: Low --------- Signed-off-by: Jose Fagundez <jfagunde@synamedia.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com>
… Language During Linear Playback (#864) VPLAY-11816 [Linear] Crash occurred when Toggling Subtitles and Audio Language During Linear Playback (#864) Reason for change: Audio language change results in configuring the gstremer pipeline, which causes state transition inside gstremer. Sometimes, in the middle of this state change operation, MonitorAvTimerCallback() wake up and calls GetVideoPlaybackQuality() function in aamp, which queries gstreamer to get some statics data from video decoder. This call is getting hung and then leads to crash. Changes: * Modified GetVideoPlaybackQuality() to avoid querying gstreamer for video decoder statics when state transition is in progress. Test Procedure: Refer JIRA ticket Risks: low Signed-off-by: anjali-syna <206662904+anjali-syna@users.noreply.github.com>
) VPLAY-12497 gstreamer test harness - fix global state memory leaks Reason for Change: Cleans up global Mp4Demux instances - Prevents memory leaks from accumulated demuxers Flushes track queues - Removes stale TrackEvent objects that could reference freed memory Resets pipeline state - Sets to NULL before deletion Recreates clean pipeline - Fresh instance without baggage Resets context state - All counters and flags back to initial values Resets track state - Clears needsData and injection flags Test Guidance: confirm improved stability when stopping and playing different streams. The fix addresses the root cause of the crashes: incomplete cleanup leaving dangling pointers and stale state. Test Guidance: use gst test harness to play different streams and tests and confirm no crashes --------- Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
…ancement and Comprehensive Pipeline::Reset (#922) VPLAY-12498 gstreamer test harness - robustness: Track Destructor Enhancement and Comprehensive Pipeline::Reset Reason for Change: Fix #1 - Track Destructor Enhancement: Now calls Flush() before deleting the queue Ensures all TrackEvent objects are properly deleted Prevents memory leaks when Track objects are destroyed Fix #2 - Comprehensive Pipeline::Reset(): Clears the seek queue (original behavior) Resets configured_stream_count to 0 Resets initial_seek_performed to false Clears injected seconds counters for all media streams Provides detailed debug logging These fixes create multiple layers of protection: Stop command (Fix #1) - Explicit cleanup when user stops playback Track destructor (Fix #2) - Automatic cleanup when Track objects are destroyed Pipeline::Reset() (Fix #3) - Comprehensive state reset that can be called by other methods like Flush() Together, these should significantly improve stability when: Stopping and playing different streams Switching between DAI tests Recovering from errors Handling rapid state transitions The code now has proper cleanup at multiple lifecycle points, reducing the chance of crashes from stale state or memory leaks. --------- Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
VPLAY-12452: Disable lowBWTimeout when at the end of ABR ladder Reason for change: Disable lowBWTimeout when at the lowest profile as there is no scope for a rampdown and causes fragment skip Test Procedure: Rampdown to lowest profile and confirm lowBWTimeout is not kicking in Risks: Low Signed-off-by: Vinish100 <vinish.balan@gmail.com>
VPLAY-12512 gst test harness idle callback is hogging 100% of cpu Reason for Change: 10ms delay added between idle callbacks to avoid pegging cpu Test Guidance: cpu no longer going to 100% when running gst test harness Risk: None (tool-only change) Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com> * Update test/gstTestHarness/gst-test.cpp Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Fix resource leak in gst test harness idle callback (#930) * Initial plan * Fix resource leak in myIdleFunc by using g_timeout_add instead of g_idle_add Co-authored-by: pstroffolino <20442081+pstroffolino@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: pstroffolino <20442081+pstroffolino@users.noreply.github.com> --------- Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: pstroffolino <20442081+pstroffolino@users.noreply.github.com>
…cli (#931) Reason for Change: xcode gives an error when attempting clean build. user is forced to manually rm -f build folder Test Guidance: for change to work, need to first remove build folder and re-run install-aamp.sh Signed-off-by: Philip Stroffolino <philip_stroffolino@cable.comcast.com>
VPLAY-12490 Use CPP 17 to build AAMP Reason for Change: globally migrate AAMP code based from C++11 and C++14 to C++17 Test Guidance: general regression Risk: Low --------- Co-authored-by: pstroffolino <Philip_Stroffolino@cable.comcast.com>
VPLAY-12513 Update IP_AAMP_TUNETIME Doxygen Reason for change: To update IP_AAMP_TUNETIME Doxygen documentation Risks: Low Priority: P1 Signed-off-by: ryadav698 <emailofrajatyadav@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…ith inBand CC tracks (#958) Reason for change: filter out the webvtt tracks before sending the list of tracks to application Test Procedure: see ticket Risks: Low Signed-off-by: Gnanesha <gnaani82@gmail.com>
VPLAY-12061:Closed captioning issues after introducing webvTT along with inBand CC tracks
) VPLAY-12336: Remote keys became Unresponsive & Crashed("28665316") Reason for change: During Stop(), set state to STOPPING & IDLE irrespective of sending events to avoid unnecessary execution. Modified PrivateInstanceAAMP::Stop() accordingly to send event based on new sendStateChangeEvent flag. This fixes a regression from VPLAY-12336 Test Procedure: Refer Jira Risks: Medium --------- Signed-off-by: psiva01 <sivasubramanian.patchaiperumal@ltts.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…!= 0 (#954) VPLAY-12547 AampGrowableBuffer GetPtr() returns nulptr when capacity != 0 (#954) Reason for Change: addresses a crash issue (VPLAY-12547) where AampGrowableBuffer::GetPtr() was incorrectly returning nullptr after Clear() was called on a buffer with reserved capacity. The issue occurred during download retry scenarios when a buffer was reused - the assert in ReserveBytes() would fail because it expected both empty() && capacity() == 0, but after Clear(), only size was 0 while capacity remained allocated.
VPLAY-12547 AampGrowableBuffer GetPtr() returns nulptr when capacity …
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.
No description provided.