diff options
author | Eunhye Choi <eunhae1.choi@samsung.com> | 2022-08-24 19:02:09 +0900 |
---|---|---|
committer | Eunhye Choi <eunhae1.choi@samsung.com> | 2022-08-25 13:06:26 +0900 |
commit | b20e821f40435db7a9491d58e963931b38b24b0b (patch) | |
tree | 8b0a44a4433583555d5f5be8b373f356da00aced | |
parent | 6f697a1dac09947281a057e387ca2a5eb4e63a20 (diff) | |
download | libmm-player-tizen_7.0_hotfix.tar.gz libmm-player-tizen_7.0_hotfix.tar.bz2 libmm-player-tizen_7.0_hotfix.zip |
[0.6.271] set the textbin clock to the referenced pipeline clocktizen_7.0_m2_releasesubmit/tizen/20220825.043817accepted/tizen/unified/20220826.161539accepted/tizen/7.0/unified/hotfix/20221116.105424tizen_7.0_hotfixaccepted/tizen_7.0_unified_hotfix
- fix crash issue
- pipeline clock is released when the subtitle pipeline
state is sync to main pipeline during playing
which cause crash when the main pipeline is unreferenced.
Change-Id: Id71adee2288b41bb5ce5202a7f05a41917aa9374
-rw-r--r-- | packaging/libmm-player.spec | 2 | ||||
-rw-r--r-- | src/mm_player_priv.c | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/packaging/libmm-player.spec b/packaging/libmm-player.spec index 778e5a6..5a1b4e2 100644 --- a/packaging/libmm-player.spec +++ b/packaging/libmm-player.spec @@ -1,6 +1,6 @@ Name: libmm-player Summary: Multimedia Framework Player Library -Version: 0.6.270 +Version: 0.6.271 Release: 0 Group: Multimedia/Libraries License: Apache-2.0 diff --git a/src/mm_player_priv.c b/src/mm_player_priv.c index eb5ad2a..bcf15b5 100644 --- a/src/mm_player_priv.c +++ b/src/mm_player_priv.c @@ -8252,7 +8252,7 @@ _mmplayer_sync_subtitle_pipeline(mmplayer_t *player) current_state = GST_STATE(mainbin[MMPLAYER_M_PIPE].gst); // sync clock with current pipeline - curr_clock = GST_ELEMENT_CLOCK(player->pipeline->mainbin[MMPLAYER_M_PIPE].gst); + curr_clock = gst_element_get_clock(player->pipeline->mainbin[MMPLAYER_M_PIPE].gst); curr_time = gst_clock_get_time(curr_clock); base_time = gst_element_get_base_time(GST_ELEMENT_CAST(player->pipeline->mainbin[MMPLAYER_M_PIPE].gst)); @@ -8271,6 +8271,8 @@ _mmplayer_sync_subtitle_pipeline(mmplayer_t *player) if (GST_STATE_CHANGE_FAILURE == ret) { LOGE("fail to state change."); result = MM_ERROR_PLAYER_INTERNAL; + if (curr_clock) + gst_object_unref(curr_clock); goto ERROR; } } |