From ab76d909e1863063048e7e80550badd837a0347b Mon Sep 17 00:00:00 2001 From: Marc Espin Date: Wed, 21 May 2025 21:46:06 +0200 Subject: [PATCH] fix: Make `Writable::toggle` use peek to avoid subscribing as `Readable::Cloned` uses `Readable::read` (#4166) --- packages/signals/src/write.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/signals/src/write.rs b/packages/signals/src/write.rs index 46d4dda4a..919e0fe6e 100644 --- a/packages/signals/src/write.rs +++ b/packages/signals/src/write.rs @@ -102,7 +102,8 @@ pub trait Writable: Readable { where Self::Target: std::ops::Not + Clone, { - self.set(!self.cloned()); + let inverted = !(*self.peek()).clone(); + self.set(inverted); } /// Index into the inner value and return a reference to the result.