Skip to content

Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting#2295

Open
kellyelton wants to merge 1 commit intomasterfrom
oi/2171/fix-freeze-on-close-during-lobby
Open

Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting#2295
kellyelton wants to merge 1 commit intomasterfrom
oi/2171/fix-freeze-on-close-during-lobby

Conversation

@kellyelton
Copy link
Copy Markdown
Member

@kellyelton kellyelton commented Mar 25, 2026

Closing the window during lobby connection caused a deadlock: OnClosing calls LobbyClient.Stop() which triggers the Connecting event handler that awaits Dispatcher.InvokeAsync. Meanwhile Program.Exit calls Dispatcher.Invoke from a background thread. Adding an _isClosing flag prevents event handlers from dispatching back to the UI thread during shutdown.

Fixes #2171

@kellyelton kellyelton added octgn-issue-bot PRs created by the OCTGN issue bot awaiting-review Awaiting automated review labels Mar 25, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖 Bot Review: APPROVED — All 3 review levels passed (standard, security, requirements). Ready to merge.

@kellyelton kellyelton added awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer and removed awaiting-review Awaiting automated review labels Mar 26, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 ✅ Automated Code Review — PASSED

PR: #2295 — Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting
Issue: #2171 — OCTGN freezes if you close it while opening a lobby when signed in.


Level 1: Standard Code Review
Clean shutdown protection with _isClosing flag prevents deadlock during lobby connection

Level 2: Security Review
No security concerns - defensive shutdown handling only

Level 3: Requirements Review
Directly addresses #2171 freeze by preventing event handlers during shutdown


All 3 review levels passed. Ready for merge.

@kellyelton kellyelton added awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer and removed awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer labels Mar 27, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 ✅ Automated Code Review — PASSED

PR: #2295 — Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting
Issue: #2171 — OCTGN freezes if you close it while opening a lobby when signed in.


Level 1: Standard Code Review
Good deadlock fix with proper flag-based event handler prevention

Level 2: Security Review
No security concerns - UI threading fix

Level 3: Requirements Review
Directly addresses #2171 freeze by preventing event handlers during shutdown


All 3 review levels passed. Ready for merge.

@kellyelton kellyelton added awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer and removed awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer labels Mar 27, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 ✅ Automated Code Review — PASSED

PR: #2295 — Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting
Issue: #2171 — OCTGN freezes if you close it while opening a lobby when signed in


Level 1: Standard Code Review
Good defensive programming with proper event handler cleanup during shutdown.

Level 2: Security Review
No security concerns in defensive event handling code.

Level 3: Requirements Review
Directly addresses #2171 deadlock by preventing event handlers during shutdown.


All 3 review levels passed. Ready for merge. Note: Cannot auto-approve own PR - requires human review for approval.

@kellyelton kellyelton added awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer and removed awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer labels Mar 27, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton kellyelton removed awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer labels Mar 27, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 ✅ Automated Code Review — PASSED

PR: #2295 — Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting
Issue: #2171 — OCTGN freezes if you close it while opening a lobby when signed in


Level 1: Standard Code Review
Good code quality with proper shutdown handling and deadlock prevention

Level 2: Security Review
No security concerns - deadlock prevention only

Level 3: Requirements Review
Directly addresses #2171 - prevents freeze when closing during lobby connection


All 3 review levels passed. Ready for merge.

Note: Automated approval not available due to PR ownership constraints. Manual review recommended before merge.

@kellyelton kellyelton added the reviewing PR is currently being reviewed by the automated reviewer label Mar 27, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 ✅ Automated Code Review — PASSED

PR: #2295 — Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting
Issue: #2171 — OCTGN freezes if you close it while opening a lobby when signed in.


Level 1: Standard Code Review
Good code quality - adds _isClosing flag to prevent event handlers during shutdown, preventing potential deadlocks.

Level 2: Security Review
No security concerns - this is a threading fix that prevents application freezing during shutdown.

Level 3: Requirements Review
Directly addresses issue #2171 - prevents freeze when closing during lobby connection by using _isClosing flag to block event handlers during shutdown.


All 3 review levels passed. Ready for merge.

@kellyelton kellyelton added awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer and removed reviewing PR is currently being reviewed by the automated reviewer labels Mar 27, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 ✅ Automated Code Review — PASSED

PR: #2295 — Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting
Issue: #2171 — OCTGN freezes if you close it while opening a lobby when signed in


Level 1: Standard Code Review
Correctly implements _isClosing flag to prevent event handlers during shutdown, avoiding deadlock scenarios by blocking UI operations during window closure.

Level 2: Security Review
No security concerns - shutdown logic with no input validation or data handling risks.

Level 3: Requirements Review
Directly addresses issue #2171 - prevents freeze when closing during lobby connection by using _isClosing flag to block event handlers during shutdown.


All 3 review levels passed. Ready for merge.

@kellyelton kellyelton added awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer and removed awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer labels Mar 27, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton kellyelton added reviewing PR is currently being reviewed by the automated reviewer and removed awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer labels Mar 27, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 ✅ Automated Code Review — PASSED

PR: #2295 — Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting
Issue: #2171 — OCTGN freezes if you close it while opening a lobby when signed in


Level 1: Standard Code Review
Added _isClosing flag to prevent deadlock when closing during lobby connection.

Level 2: Security Review
No security concerns - safe threading/deadlock fix.

Level 3: Requirements Review
Directly addresses issue #2171 freeze when closing OCTGN during lobby connection.


All 3 review levels passed. Ready for merge.

@kellyelton kellyelton added awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer and removed reviewing PR is currently being reviewed by the automated reviewer labels Mar 28, 2026
@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 Automated Review Started — Running 3-level review (standard, security, requirements).

@kellyelton
Copy link
Copy Markdown
Member Author

🤖🧐 ✅ Automated Code Review — PASSED

PR: #2295 — Fix #2171: Prevent freeze when closing OCTGN while lobby is connecting
Issue: #2171 — OCTGN freezes if you close it while opening a lobby when signed in


Level 1: Standard Code Review
Good code quality with proper thread management and early returns to prevent deadlocks during shutdown

Level 2: Security Review
Improves thread safety by preventing deadlocks during shutdown - proper UI thread management with _isClosing flag

Level 3: Requirements Review
Directly addresses issue #2171 - prevents UI freeze during lobby connection shutdown by using _isClosing flag to block async operations


All 3 review levels passed. Ready for merge.

@kellyelton kellyelton removed awaiting-review Awaiting automated review reviewing PR is currently being reviewed by the automated reviewer labels Mar 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

octgn-issue-bot PRs created by the OCTGN issue bot

Projects

None yet

Development

Successfully merging this pull request may close these issues.

OCTGN freezes if you close it while opening a lobby when signed in.

1 participant