godotengine / godotengine/godot

SpinBox seemingly randomly crashes the whole Editor

Open
#99,792 0 comments 0 reactions 0 assignees View on GitHub
bug crash topic:gui
Dominant language
C++
Stars
117k
Forks
26.8k
PR merge metrics
PR metrics pending

Description

### Tested versions

Reproducible in: v4.3.stable.official [77dcf97d8]
(didnt test more versions since it takes so much time to get results)

### System information

Godot v4.3.stable - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3060 Ti (NVIDIA; 32.0.15.6094) - 13th Gen Intel(R) Core(TM) i5-13400 (16 Threads)

### Issue description

While I was testing my plugin's UI the whole editor suddenly crashed. I was able to repruduce the crash multiple times but its very inconsistent.

I stripped away as much stuff from my plugin as possible and left the project as a minimal repro project below. (Thats why the variable names and the labels have those not so generic texts)

Honestly, I couldnt figure out what is truly causing the crash since its so random and I cant get a crash log or anything. I tried launching the editor with --verbose but nothing gets printed when crashing.
And the even more weird thing is, I recorded my mouse inputs with a software and played back the whole thing after crashing and even this way i couldnt get a consistent result, I crashed a bit later.

I have left a video of me reproducing the crash but it well takes around 2-10 minutes to get a crash. It was really hard for me to test this since I was just guessing what might cause the crash and I cant even make sure that after like 10 minutes of trying this and not getting a crash wouldnt have caused a crash after like 15 minutes of trying.

All I can say is, doing the steps I list below on the minimal repro project WILL EVENTUALLY cause the editor to crash.

### Steps to reproduce

1. Click the `Add limb` button on the 3D toolbar.
2. Click the `Select tip bone` button
3. Click randomly around on the `SpinBox arrows` and maybe in the `input field` too for some time.
4. Click on the `Select` button.
5. Go back to step 2. and repeat a couple of times.
6. Click away from the PopupPanel and repeat the whole thing until the editor freezes and crashes at some point.

[editor_crash.zip](https://github.com/user-attachments/files/17949309/editor_crash.zip)

### Minimal reproduction project (MRP)

[plugin-bug-test.zip](https://github.com/user-attachments/files/17948584/plugin-bug-test.zip)

Contributor guide

Open the contributing guide

Research direction

Start by opening plugin-bug-test.zip in the stated Godot v4.3 environment and follow the numbered reproduction steps involving Add limb, Select tip bone, the SpinBox, and Select. Use editor_crash.zip and the provided video as additional evidence. Done means identifying and fixing the eventual editor crash, with a reliable way to verify the repeated interaction no longer crashes the editor.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, godot
Domain
desktop-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.