Skip to content

fix: dispose Process.Start handles in explorer/link launch sites#878

Merged
laurentiu021 merged 1 commit into
mainfrom
fix/process-start-leaks
Jun 12, 2026
Merged

fix: dispose Process.Start handles in explorer/link launch sites#878
laurentiu021 merged 1 commit into
mainfrom
fix/process-start-leaks

Conversation

@laurentiu021

Copy link
Copy Markdown
Owner

Summary

Disposes the Process handle returned by Process.Start(...) at 10 fire-and-launch sites that previously discarded it — a handle leak (same class as the AdminHelper/ProcessManager fixes shipped earlier).

Sites fixed (...)?.Dispose())

  • ContextMenuService — explorer restart after applying context-menu changes
  • AboutViewModel — updater cmd.exe launch, 'show in folder', open-URL
  • DeepCleanupViewModel, DiskAnalyzerViewModel, DuplicateFileViewModel, StartupViewModel — 'show in Explorer' row actions
  • LogsViewModel — open log folder, open Event Viewer, search online

Why safe

Process.Start with UseShellExecute=true returns a handle to the launched process; disposing the handle does not terminate the process — it only releases the local handle we weren't tracking. Behavior is otherwise identical.

Verification

  • Propagate check: grepped every Process.Start( in the app; all results are now disposed, assigned, or returned (none discarded).
  • Build: main + Tests 0 warnings / 0 errors.

fix: → patch release (1.20.23). Protocol C to follow.

@laurentiu021 laurentiu021 merged commit a09362e into main Jun 12, 2026
4 checks passed
@laurentiu021 laurentiu021 deleted the fix/process-start-leaks branch June 12, 2026 15:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant