Skip to content
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

GradientTexture2D causing editor to hang when quitting #96790

Closed
donn-xx opened this issue Sep 10, 2024 · 7 comments · Fixed by #96904
Closed

GradientTexture2D causing editor to hang when quitting #96790

donn-xx opened this issue Sep 10, 2024 · 7 comments · Fixed by #96904

Comments

@donn-xx
Copy link

donn-xx commented Sep 10, 2024

Tested versions

Reproducible in commit 2124995
v4.4.dev.custom_build [2124995]

System information

Godot v4.4.dev (2124995) - Ubuntu 22.04.4 LTS 22.04 - X11 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 2060 (nvidia; 535.183.01) - Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz (6 Threads)

Issue description

Godot was hanging on Ctrl+Q and it took me some time to narrow it down to a single resource (tres) file.

If you have a GradientTexture2D resource, the editor hangs.

Steps to reproduce

Here is the tres file res://GradientTexture2D_0b38e39cdb.tres

[gd_resource type="GradientTexture2D" load_steps=2 format=3 uid="uid://dnsglu4oyarhq"]

[ext_resource type="Gradient" uid="uid://btib1unck3eqp" path="res://Gradient_70322a07ed.tres" id="1_tvpoa"]

[resource]
gradient = ExtResource("1_tvpoa")

And the Gradient res://Gradient_70322a07ed.tres

[gd_resource type="Gradient" format=3 uid="uid://btib1unck3eqp"]

[resource]

Minimal reproduction project (MRP)

All you need is those two resources in an empty project.

@KoBeWi
Copy link
Member

KoBeWi commented Sep 10, 2024

Can't reproduce in 97ef3c8

@donn-xx
Copy link
Author

donn-xx commented Sep 10, 2024

Just compiled that one and tried again. Still hanging. MRP: https://gitlab.com/dbat/quit-hang-issue

@AThousandShips
Copy link
Member

AThousandShips commented Sep 10, 2024

With the new MRP I can confirm on [97ef3c8], with:

ERROR: Condition "!cache.has(p_path)" is true. Returning: Dictionary()
   at: EditorResourcePreview::get_preview_metadata (godot\editor/editor_resource_preview.cpp:250)

Occurring, I suspect something preview related locks up and prevents quitting

Bisecting

@donn-xx
Copy link
Author

donn-xx commented Sep 10, 2024

How did you get to see that error? I even ran Godot with -v, but saw nothing to clue me in.

@AThousandShips
Copy link
Member

Nothing special just my ordinary dev build

@AThousandShips
Copy link
Member

Ouch... Wasted a bunch of time bisecting but at the same time identifying a trait of the bug:
This won't happen after the thumbnail has been generated so it will fail after it has worked once 🙃 so time to go back and redo that bisect to see where it actually works, will do that now and get back to you

@AThousandShips
Copy link
Member

It completely locks up immediately when trying to inspect the resources in:

And doesn't lock up but does hangs on exit from:

CC @RandomShaper

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Unassessed
Development

Successfully merging a pull request may close this issue.

4 participants