From f07202e69b389759cebed5a203756a1c66177e37 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sat, 27 Jun 2026 04:34:46 +0900 Subject: fix(validate-command): release Composer borrow before dispatching CommandEvent Holding a RefMut across execute() conflicted with the shared borrow taken inside EventDispatcher::get_script_listeners, panicking with "RefCell already mutably borrowed". All accessors used here take &self, so a shared borrow suffices. Co-Authored-By: Claude Opus 4.8 (1M context) --- crates/shirabe/src/command/validate_command.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'crates/shirabe/src/command/validate_command.rs') diff --git a/crates/shirabe/src/command/validate_command.rs b/crates/shirabe/src/command/validate_command.rs index 89c83eb..f44a942 100644 --- a/crates/shirabe/src/command/validate_command.rs +++ b/crates/shirabe/src/command/validate_command.rs @@ -197,7 +197,7 @@ impl Command for ValidateCommand { let mut lock_errors: Vec = vec![]; let composer = self.create_composer_instance(input.clone(), io.clone(), None, false, None)?; - let composer = crate::command::composer_full_mut(&composer); + let composer = crate::command::composer_full(&composer); let check_lock = (check_lock && composer .get_config() -- cgit v1.3.1