From 9d99a9d7dd1034e321392ca021523b2becb8a990 Mon Sep 17 00:00:00 2001 From: hypercube <0hypercube@gmail.com> Date: Thu, 7 Aug 2025 23:57:26 +0100 Subject: [PATCH] Fix freehand tool draw before upstream footprint --- .../src/messages/tool/tool_messages/freehand_tool.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/editor/src/messages/tool/tool_messages/freehand_tool.rs b/editor/src/messages/tool/tool_messages/freehand_tool.rs index b551151ac5..3d7dee4419 100644 --- a/editor/src/messages/tool/tool_messages/freehand_tool.rs +++ b/editor/src/messages/tool/tool_messages/freehand_tool.rs @@ -259,10 +259,14 @@ impl Fsm for FreehandToolFsmState { } (FreehandToolFsmState::Drawing, FreehandToolMessage::PointerMove) => { if let Some(layer) = tool_data.layer { - let transform = document.metadata().transform_to_viewport(layer); - let position = transform.inverse().transform_point2(input.mouse.position); + if !document.metadata().upstream_footprints.contains_key(&layer.to_node()) { + warn!("Freehand tool layer not exist"); + } else { + let transform = document.metadata().transform_to_viewport(layer); + let position = transform.inverse().transform_point2(input.mouse.position); - extend_path_with_next_segment(tool_data, position, true, responses); + extend_path_with_next_segment(tool_data, position, true, responses); + } } FreehandToolFsmState::Drawing