@@ -54,6 +54,7 @@ public ISynchronizeInvoke SynchronizingObject
5454 private readonly RemoteHandler _rh ;
5555 private Timer _eventTimer ;
5656 private StatusResponse _eventStatusResponse ;
57+ private Track _eventStatusTrack ;
5758
5859 public event EventHandler < TrackChangeEventArgs > OnTrackChange ;
5960
@@ -105,14 +106,14 @@ private void ElapsedTick(object sender, ElapsedEventArgs e)
105106 _eventTimer . Start ( ) ;
106107 return ;
107108 }
108- if ( newStatusResponse . Track != null && _eventStatusResponse . Track != null )
109+ if ( newStatusResponse . Track != null && _eventStatusTrack != null )
109110 {
110- if ( newStatusResponse . Track . TrackResource ? . Uri != _eventStatusResponse . Track . TrackResource ? . Uri ||
111- newStatusResponse . Track . IsOtherTrackType ( ) && newStatusResponse . Track . Length != _eventStatusResponse . Track . Length )
111+ if ( newStatusResponse . Track . TrackResource ? . Uri != _eventStatusTrack . TrackResource ? . Uri ||
112+ newStatusResponse . Track . IsOtherTrackType ( ) && newStatusResponse . Track . Length != _eventStatusTrack . Length )
112113 {
113114 OnTrackChange ? . Invoke ( this , new TrackChangeEventArgs ( )
114115 {
115- OldTrack = _eventStatusResponse . Track ,
116+ OldTrack = _eventStatusTrack ,
116117 NewTrack = newStatusResponse . Track
117118 } ) ;
118119 }
@@ -140,6 +141,10 @@ private void ElapsedTick(object sender, ElapsedEventArgs e)
140141 } ) ;
141142 }
142143 _eventStatusResponse = newStatusResponse ;
144+ if ( newStatusResponse . Track != null )
145+ {
146+ _eventStatusTrack = newStatusResponse . Track ;
147+ }
143148 _eventTimer . Start ( ) ;
144149 }
145150
0 commit comments