Search Issue Tracker

Fixed

Votes

0

Found in [Package]

1.6.0-pre.3

Issue ID

UVSB-1392

Regression

No

Graph fails with recursion error TryCatch unit catches exception from Throw unit

Package: Visual Scripting

-

*Reproducible on:*
* "main", commit: 84f462aa155fe6690538f1ad4fc4d7d4cb65d1ca
* Unity version: 2021.1.0b12
* Plarform: Windows 10 macOS Catalina

*Steps to Reproduce:*
# Create a game object and add a script machine to it and create a new script graph
# Create a graph like the one defined on the image Screenshot 2021-03-15 at 11.03.35.png
# Click to play

*Outcome Results:*
* Invalid operation error appears in the console
{code:java}
InvalidOperationException: Exiting recursion stack in a non-consecutive order:
Provided: Unity.VisualScripting.Flow+RecursionNode / Expected: Unity.VisualScripting.Flow+RecursionNode
Unity.VisualScripting.Recursion`1[T].Exit (T o) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Core/Utilities/Recursion.cs:73)
Unity.VisualScripting.Flow.AfterInvoke (Unity.VisualScripting.ControlOutput output, Unity.VisualScripting.Flow+RecursionNode recursionNode) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Flow.cs:434)
Unity.VisualScripting.Flow.Invoke (Unity.VisualScripting.ControlOutput output) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Flow.cs:352)
Unity.VisualScripting.Sequence.Enter (Unity.VisualScripting.Flow flow) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Framework/Control/Sequence.cs:60)
Unity.VisualScripting.Flow.InvokeDelegate (Unity.VisualScripting.ControlInput input) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Flow.cs:451)
Unity.VisualScripting.Flow.Invoke (Unity.VisualScripting.ControlOutput output) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Flow.cs:345)
Unity.VisualScripting.Flow.Run (Unity.VisualScripting.ControlOutput port) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Flow.cs:240)
Unity.VisualScripting.EventUnit`1[TArgs].Run (Unity.VisualScripting.Flow flow) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Framework/Events/EventUnit.cs:182)
Unity.VisualScripting.EventUnit`1[TArgs].Trigger (Unity.VisualScripting.GraphReference reference, TArgs args) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Framework/Events/EventUnit.cs:154)
Unity.VisualScripting.EventUnit`1+<>c__DisplayClass14_0[TArgs].<StartListening>b__0 (TArgs args) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Flow/Framework/Events/EventUnit.cs:67)
Unity.VisualScripting.EventBus.Trigger[TArgs] (Unity.VisualScripting.EventHook hook, TArgs args) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Core/Events/EventBus.cs:71)
Unity.VisualScripting.EventMachine`2[TGraph,TMacro].TriggerRegisteredEvent[TArgs] (Unity.VisualScripting.EventHook hook, TArgs args) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Core/Events/EventMachine.cs:35)
Unity.VisualScripting.EventMachine`2[TGraph,TMacro].TriggerEvent (System.String name) (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Core/Events/EventMachine.cs:13)
Unity.VisualScripting.EventMachine`2[TGraph,TMacro].Update () (at Packages/com.unity.visualscripting/Runtime/VisualScripting.Core/Events/EventMachine.cs:74)
{code}

*Expected Results:*
* No error should appear in the console

  1. Resolution Note:

    Fixed unexpected error when exceptions are thrown by flow graph units and caught by the TryCatch unit

Add comment

Log in to post comment