@@ -547,17 +547,18 @@ def test_cat1_walk_is_blocked_while_return_ball_drag_is_active_or_pending():
547547 "const clearDragSafetyTimer = () => {" ,
548548 "const resetDragStateAfterMissingEnd = (safetyToken) => {" ,
549549 "if (dragSafetyToken !== safetyToken || !isDragging) return;" ,
550- "const finishDragState = (moved) => {" ,
550+ "const finishDragState = (moved, safetyToken) => {" ,
551+ "if (safetyToken !== dragSafetyToken) return;" ,
551552 "container.setAttribute('data-dragging', 'false');" ,
552553 "_dispatchNekoIdleReturnBallManualMove(container, 'return-ball-drag-end'" ,
553554 ):
554555 _assert_source_contains (drag_setup , expected , "return button drag setup" )
555556 _assert_source_order (
556557 drag_setup ,
557558 "return button drag setup helpers" ,
558- "const finishDragState = (moved) => {" ,
559+ "const finishDragState = (moved, safetyToken ) => {" ,
559560 "const resetDragStateAfterMissingEnd = (safetyToken) => {" ,
560- "finishDragState(moved);" ,
561+ "finishDragState(moved, safetyToken );" ,
561562 )
562563 _assert_source_contains (
563564 handle_start ,
@@ -580,17 +581,19 @@ def test_cat1_walk_is_blocked_while_return_ball_drag_is_active_or_pending():
580581 "dragSafetyTimer = setTimeout(() => {" ,
581582 )
582583 _assert_source_contains (handle_end , "clearDragSafetyTimer();" , "return button drag end handler" )
584+ _assert_source_contains (handle_end , "const safetyToken = dragSafetyToken;" , "return button drag end handler" )
583585 _assert_source_contains (
584586 handle_end ,
585- "finishDragState(moved);" ,
587+ "finishDragState(moved, safetyToken );" ,
586588 "return button drag end handler" ,
587589 )
588590 _assert_source_order (
589591 handle_end ,
590592 "return button drag end handler" ,
591593 "clearDragSafetyTimer();" ,
592594 "if (isDragging) {" ,
593- "finishDragState(moved);" ,
595+ "const safetyToken = dragSafetyToken;" ,
596+ "finishDragState(moved, safetyToken);" ,
594597 )
595598
596599 sync_block = _source_slice_between (
0 commit comments