You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix: guard against unknown input contexts on destroy - #445
Guard MacosFrontend::destroyInputContext() against a failed UUID lookup before dereferencing the input context. Log the unexpected state with FCITX_ERROR() and return safely, preserving the existing CharacterPaletteIM and focus handling.
This is defensive hardening; no crash has been reproduced in the normal controller lifecycle. It does not address shutdown scheduling or runtime teardown.
Validation: successfully ran ./scripts/patch.sh, CMake Debug configuration, the full build, and git diff --check. The patch script skipped submodules with existing local changes. Build validation used the existing working tree, including unrelated local changes that are excluded from this PR. No runtime destruction test was run.
Summary by CodeRabbit
Bug Fixes
Prevented a crash when attempting to destroy an input context that cannot be found.
No actionable comments were generated in the recent review. 🎉
ℹ️ Recent review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Advanced
Run ID: 983c061d-0fef-4dd2-9888-cd7ccbf88245
📥 Commits
Reviewing files that changed from the base of the PR and between ab4a582 and c8a013d.
📒 Files selected for processing: 1
macosfrontend/macosfrontend.cpp
Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 2 remain after this review.
📝 Walkthrough
destroyInputContext now logs an error and returns when the UUID does not resolve to an input context.
No concrete merge-blocking defect was identified in the defensive change.
Pre-merge checks: 4 · 1
Failed checks: 1 warning
Check name
Status
Explanation
Resolution
Docstring Coverage
Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files.
Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed checks: 4 passed
Check name
Status
Explanation
Description Check
Check skipped - CodeRabbit’s high-level summary is enabled.
Title check
The title clearly and concisely describes the main change: preventing unsafe handling of unknown input contexts during destruction.
Linked Issues check
Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check
Check skipped because no linked issues were found for this pull request.
Fix all pre-merge checks with AI
✨ Finishing Touches: 💡 1
📝 Generate docstrings: 💡
Commit to this branch
Create a new PR
🧪 Generate unit tests (beta)
Commit to this branch
Create a new PR
Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Guard
MacosFrontend::destroyInputContext()against a failed UUID lookup before dereferencing the input context. Log the unexpected state withFCITX_ERROR()and return safely, preserving the existing CharacterPaletteIM and focus handling.This is defensive hardening; no crash has been reproduced in the normal controller lifecycle. It does not address shutdown scheduling or runtime teardown.
Validation: successfully ran
./scripts/patch.sh, CMake Debug configuration, the full build, andgit diff --check. The patch script skipped submodules with existing local changes. Build validation used the existing working tree, including unrelated local changes that are excluded from this PR. No runtime destruction test was run.Summary by CodeRabbit