Skip to content

Commit 9ba4d32

Browse files
committed
Extract CancelRetryDelay() helper to eliminate duplication
1 parent b1f92b4 commit 9ba4d32

1 file changed

Lines changed: 11 additions & 12 deletions

File tree

StabilityMatrix.Core/Models/TrackedDownload.cs

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,13 @@ private void EnsureDownloadService()
121121
}
122122
}
123123

124+
private void CancelRetryDelay()
125+
{
126+
retryDelayCancellationTokenSource?.Cancel();
127+
retryDelayCancellationTokenSource?.Dispose();
128+
retryDelayCancellationTokenSource = null;
129+
}
130+
124131
private async Task StartDownloadTask(long resumeFromByte, CancellationToken cancellationToken)
125132
{
126133
var progress = new Progress<ProgressReport>(OnProgressUpdate);
@@ -187,9 +194,7 @@ internal void Start()
187194
);
188195
}
189196
// Cancel any pending auto-retry delay (defensive: Start() accepts Inactive state).
190-
retryDelayCancellationTokenSource?.Cancel();
191-
retryDelayCancellationTokenSource?.Dispose();
192-
retryDelayCancellationTokenSource = null;
197+
CancelRetryDelay();
193198

194199
Logger.Debug("Starting download {Download}", FileName);
195200

@@ -209,9 +214,7 @@ internal void Start()
209214
internal void Resume()
210215
{
211216
// Cancel any pending auto-retry delay since we're resuming now.
212-
retryDelayCancellationTokenSource?.Cancel();
213-
retryDelayCancellationTokenSource?.Dispose();
214-
retryDelayCancellationTokenSource = null;
217+
CancelRetryDelay();
215218

216219
if (ProgressState != ProgressState.Inactive && ProgressState != ProgressState.Paused)
217220
{
@@ -249,9 +252,7 @@ internal void Resume()
249252
public void Pause()
250253
{
251254
// Cancel any pending auto-retry delay.
252-
retryDelayCancellationTokenSource?.Cancel();
253-
retryDelayCancellationTokenSource?.Dispose();
254-
retryDelayCancellationTokenSource = null;
255+
CancelRetryDelay();
255256

256257
if (ProgressState != ProgressState.Working)
257258
{
@@ -283,9 +284,7 @@ public void Cancel()
283284
}
284285

285286
// Cancel any pending auto-retry delay.
286-
retryDelayCancellationTokenSource?.Cancel();
287-
retryDelayCancellationTokenSource?.Dispose();
288-
retryDelayCancellationTokenSource = null;
287+
CancelRetryDelay();
289288

290289
Logger.Debug("Cancelling download {Download}", FileName);
291290

0 commit comments

Comments
 (0)