-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
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
Fix dependency handling on move or rename in the filesystem dock #81657
Conversation
1bf59ff
to
fec1a9c
Compare
c4cf2d5
to
654ade7
Compare
795cf34
to
b440ef5
Compare
Seems like this fixes all crashes and errors when moving scenes (I didn't do super extensive testing though). |
Currently, I don't know what this depends on... I wish I could understand all the related systems so I can clean up these functions properly instead of continuing this chain of patch after patch, but that would take a while. |
6d5eb89
to
6245367
Compare
Also found #59116 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks reasonable enough to give it a try. Great job!
Thanks! Let's see if anything falls off :) |
Fixes #79850.
...and probably more.
Moving a scene's dependency in the filesystem while the scene is open should no longer corrupt the scene.
Moving a scene together with it's dependency while it's open should no longer crash the engine.
Also fixes most of the error spam that was happening when moving things around.
Open scenes which depend on moved files are now saved before the move, which prevents losing unsaved changes like before, but in a less error-prone way.
The
ResourceUID
system is properly informed of resources changing paths now, this was the source of most of the problems.A lot of expensive function calls were removed, moving things around in the filesystem should be faster.
There are some errors remaining related to scripts being looked for in the old location, but nothing seems to actually break now.
Please test this by moving stuff around in the filesystem with a copy of your non-trivial project.
Bugsquad edit: Fixes #77289 Fixes #59116