diff --git a/frontend/src/app/main/data/workspace/drawing/path.cljs b/frontend/src/app/main/data/workspace/drawing/path.cljs index 5f181cffd..7c69909ed 100644 --- a/frontend/src/app/main/data/workspace/drawing/path.cljs +++ b/frontend/src/app/main/data/workspace/drawing/path.cljs @@ -692,8 +692,8 @@ point (-> content (get (if (= prefix :c1) (dec index) index)) (ugp/command->point)) handler (-> content (get index) (ugp/get-handler prefix)) - current-distance (gpt/distance (ugp/opposite-handler point handler) opposite-handler) - match-opposite? (mth/almost-zero? current-distance)] + current-distance (when opposite-handler (gpt/distance (ugp/opposite-handler point handler) opposite-handler)) + match-opposite? (and opposite-handler (mth/almost-zero? current-distance))] (drag-stream (rx/concat diff --git a/frontend/src/app/util/geom/path.cljs b/frontend/src/app/util/geom/path.cljs index 10588b929..8fe7de5f1 100644 --- a/frontend/src/app/util/geom/path.cljs +++ b/frontend/src/app/util/geom/path.cljs @@ -289,7 +289,8 @@ (:c2x params) (update-in [index :params :c2x] + (:c2x params)) (:c2y params) (update-in [index :params :c2y] + (:c2y params))) content))] - (reduce apply-to-index content modifiers))) + (let [content (if (vector? content) content (into [] content))] + (reduce apply-to-index content modifiers)))) (defn command->point [command] (when-not (nil? command)