From 1b99da09fdf6ec592bb08fcb68ca325010ee16cc Mon Sep 17 00:00:00 2001 From: Suhas BN Date: Tue, 13 Aug 2024 21:59:21 +0800 Subject: [PATCH] bugfix: Avoid calling didStateChange on delegate is current player state is same as next state --- TritonPlayerSDK/Classes/Player/TritonPlayer.m | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/TritonPlayerSDK/Classes/Player/TritonPlayer.m b/TritonPlayerSDK/Classes/Player/TritonPlayer.m index 3c1a1c8..ae2367d 100644 --- a/TritonPlayerSDK/Classes/Player/TritonPlayer.m +++ b/TritonPlayerSDK/Classes/Player/TritonPlayer.m @@ -650,9 +650,10 @@ -(void)updateStateMachineForAction:(TDPlayerAction)action { TDPlayerState nextState = [self nextStateForAction:action]; // If state changed, send the delegate a callback message + if (self.state != nextState) { self.state = nextState; - PLAYER_LOG(@"Changed state to: %@", [TritonPlayer toStringState:self.state]); + PLAYER_LOG(@"Changed state to: %@", [TritonPlayer toStringState:self.state]); // Clear error if (self.state != kTDPlayerStateError) { @@ -664,6 +665,7 @@ -(void)updateStateMachineForAction:(TDPlayerAction)action { [self.delegate player:self didChangeState:self.state]; }); } + } } +(NSString*) toStringState:(TDPlayerState)state