-
-
Notifications
You must be signed in to change notification settings - Fork 21.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Game crashes when debugging the project (infinite recursion after ScriptDebuggerRemote::_put_variable) #51049
Comments
I had the same problem yesterday, it certainly went away after I did a restart. I guess that might be a problem. |
The hterrain load error is normal, it always happens on the first import. Reopening the project solves it. I can't reproduce the crash on Linux with 3.4 beta 2, I can set breakpoints and step through the code without issue.
What was the last version that you used where it did not crash? (if any) |
That doesn't look like a crash, it's just a bug in your code and the execution stops, the debugger is raised and takes the focus to show you the error. Or does the game window get force closed too? It should only lose focus (i.e. the editor window takes focus, the game window is paused while the debugger is active). |
the game window gets force closed and the debugger stops after like around 5-10secs. 3RUQ9Hy3Eb.mp4 |
How do you select the node at the end (white circle)? |
This comment has been minimized.
This comment has been minimized.
So yeah if you run the game directly without the editor, you'll see errors spammed continuously whenever you trick to click a node after pressing T:
Those are bugs in your code that you'll need to fix, and that will likely fix the debugger issue. That being said, I can now also reproduce the issue that when running the game in the editor and using those steps (place 4 nodes to make a closed loop, press T, click a node), the debugger is raised but aborts shortly after, without error message nor crash backtrace. It does correctly point at the error line: My guess is that there might be an infinite recursion of some sort with the dictionary you used, so this project triggers a stack overflow. Not sure if that can be worked around at engine level (CC @Faless @RandomShaper). I do get the same behavior in e.g. 3.3-stable so it's not a regression. |
I have actually fixed it, but my guess is, it's not a infinite recursion, I'll have a closer look again. |
I attached It is indeed an infinite recursion:
|
Seems to be related to cyclic references. func _ready():
var d1 = {}
var a1 = []
d1["a"] = a1
a1.push_back(d1)
print(d1)
breakpoint Note: in current var d1 = {}
func _ready():
var a1 = []
d1["a"] = a1
a1.push_back(d1)
print(d1)
breakpoint Not sure why it doesn't crash on the local variable, but does with the member variable |
Godot version
3.3.2.stable
System information
Windows 10, Nvidia GeForce GTX 1050, 27.21.14.5771
Issue description
When running my game, my game crashes whenever I pause for debugging, no errors over in Godot Console, it seems to crash in Godot 3.3.2 stable, Godot 3.4 beta 1, Godot 3.4 beta 2.
Steps to reproduce
Minimal reproduction project
CrashingGameWhenDebugging.zip
Video showcasing the crash:
3RUQ9Hy3Eb.mp4
The text was updated successfully, but these errors were encountered: