diff --git a/packages/tldraw/src/state/sessions/ArrowSession/ArrowSession.ts b/packages/tldraw/src/state/sessions/ArrowSession/ArrowSession.ts index 164d32d57..20a87e578 100644 --- a/packages/tldraw/src/state/sessions/ArrowSession/ArrowSession.ts +++ b/packages/tldraw/src/state/sessions/ArrowSession/ArrowSession.ts @@ -43,8 +43,11 @@ export class ArrowSession extends BaseSession { const oppositeHandleBindingId = this.initialShape.handles[handleId === 'start' ? 'end' : 'start']?.bindingId if (oppositeHandleBindingId) { - const oppositeToId = page.bindings[oppositeHandleBindingId].toId - this.bindableShapeIds = this.bindableShapeIds.filter((id) => id !== oppositeToId) + // TODO: find out why this the binding here is sometimes missing + const oppositeToId = page.bindings[oppositeHandleBindingId]?.toId + if (oppositeToId) { + this.bindableShapeIds = this.bindableShapeIds.filter((id) => id !== oppositeToId) + } } const { originPoint } = this.app if (this.isCreate) {