diff --git a/app-proto/src/assembly.rs b/app-proto/src/assembly.rs index 4e48c65..d1d24f4 100644 --- a/app-proto/src/assembly.rs +++ b/app-proto/src/assembly.rs @@ -446,7 +446,7 @@ pub struct Assembly { pub tangent: Signal, // indexing - pub elements_by_id: Signal> + pub elements_by_id: Signal>> } impl Assembly { @@ -469,7 +469,7 @@ impl Assembly { let id = elt.id().clone(); let elt_rc = Rc::new(elt); let key = self.elements.update(|elts| elts.insert(elt_rc.clone())); /* KLUDGE */ // reorganize to avoid cloning? - self.elements_by_id.update(|elts_by_id| elts_by_id.insert(id, key)); + self.elements_by_id.update(|elts_by_id| elts_by_id.insert(id, elt_rc.clone())); /* KLUDGE */ // reorganize to avoid cloning? // create and insert the element's default regulators for reg in elt_rc.default_regulators(&self) {