Skip to content

Prevent clipboard reads from blocking the tray and fix resource cleanup - #37

Merged
stuartd merged 2 commits into
mainfrom
codex/investigate-long-running-hang
Oct 26, 2026
Merged

stuartd merged 2 commits into
mainfrom
codex/investigate-long-running-hang

Conversation

@stuartd

@stuartd stuartd commented Oct 26, 2026

Copy link
Copy Markdown
Owner

Clipboard inspection could block the tray/UI thread while another application rendered delayed clipboard data. Run inspection on a worker while keeping native clipboard access serialized, closing it on the opening thread, and rejecting cancelled or superseded results.

Also avoid rewriting unchanged Explorer associations and sending redundant shell notifications, dispose replaced viewer-menu items, and dispose browser-process wrappers from About links. Add native COM/reference/handle lifetime regressions, managed cleanup tests, a resource-ownership audit, and a read-only hang-inspection script.

Validation:

  • 324 portable tests passed locally; the managed solution built with zero warnings or errors.
  • Full Windows build/test/package workflow passed for the code changes: https://github.com/stuartd/ClipboardDiff/actions/runs/40388380708
  • Windows validation includes the new native lifetime, registry, and tray disposal regressions, plus both release packages. The subsequent commit only updates the audit with those results.

The original laptop hang has not been reproduced or diagnosed from a stack. Manual desktop testing and inspection of the still-hung process remain useful; the audit distinguishes those limitations from the confirmed code defects.

@stuartd
stuartd merged commit 5f0ee6a into main Oct 26, 2026
2 checks passed
@stuartd
stuartd deleted the codex/investigate-long-running-hang branch October 27, 2026 15:54
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