-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
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 API hash related crash in EditorSettings
#80089
Fix API hash related crash in EditorSettings
#80089
Conversation
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.
Seems to fix the issue rationally. However, I'd still like more eyes looking into this.
I don't understand from this description what we are losing here. Just the default values? We don't have them documented anyway...
|
They weren't documented before, in current master have values documented only in built-in, so not anything lost IMO I think we shouldn't generate anything with
Agreed, but this is possible in the current master, don't think we can block it without also losing the ability to load it, think this needs a larger rework The current implementation stores the settings by serialisation as |
Oh, you mean that in the built-in help we get the default values added despite them not being present in the XML docs? Well, that could be a problem if we want to show default values in on-hover tooltips. But we don't right now, so I agree that this is fine.
We don't need to block it. But we shouldn't consider this as a valid use case either. Though currently the docs for |
They already do fortunately:
Thank you for checking these things, important questions As far as I know creating a new |
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.
Makes sense. It's somewhat cleaner than the previous code registering EditorSettings twice.
Thanks! |
Thank you! |
Crash due to manipulating API after getting the hash, which happens with
--verbose
Instead of registering
EditorSettings
as abstract, and then registering as complete when creating an instance, we now register it as complete from the start.This behavior is equivalent to how it worked prior to #78615, where the built-in documentation doesn't show the default values of
EditorSettings
, the abstract state ofEditorSettings
is and has always been false, and it is and has been possible to instance it from scripts (required for the loading of the settings)I don't think the loss of the built-in documentation for these settings is a major loss,
EditorSettings
itself remains in the documentation, and the results of--doctool
remains the sameIn summary, I think this is a good balanced solution to the issue, without having to mess with the specific registration location of
EditorSettings
. Unless there is some reason for it being abstract that I have missed (other than the documentation generation)ClassDB::set_current_api
in latest master when launched w/ --verbose #80062