@@ -54,6 +54,7 @@ public ISynchronizeInvoke SynchronizingObject
54
54
private readonly RemoteHandler _rh ;
55
55
private Timer _eventTimer ;
56
56
private StatusResponse _eventStatusResponse ;
57
+ private Track _eventStatusTrack ;
57
58
58
59
public event EventHandler < TrackChangeEventArgs > OnTrackChange ;
59
60
@@ -105,14 +106,14 @@ private void ElapsedTick(object sender, ElapsedEventArgs e)
105
106
_eventTimer . Start ( ) ;
106
107
return ;
107
108
}
108
- if ( newStatusResponse . Track != null && _eventStatusResponse . Track != null )
109
+ if ( newStatusResponse . Track != null && _eventStatusTrack != null )
109
110
{
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 )
112
113
{
113
114
OnTrackChange ? . Invoke ( this , new TrackChangeEventArgs ( )
114
115
{
115
- OldTrack = _eventStatusResponse . Track ,
116
+ OldTrack = _eventStatusTrack ,
116
117
NewTrack = newStatusResponse . Track
117
118
} ) ;
118
119
}
@@ -140,6 +141,10 @@ private void ElapsedTick(object sender, ElapsedEventArgs e)
140
141
} ) ;
141
142
}
142
143
_eventStatusResponse = newStatusResponse ;
144
+ if ( newStatusResponse . Track != null )
145
+ {
146
+ _eventStatusTrack = newStatusResponse . Track ;
147
+ }
143
148
_eventTimer . Start ( ) ;
144
149
}
145
150
0 commit comments