Don't save project settings when not necessary

(cherry picked from commit 4db47eb32e)
This commit is contained in:
kobewi 2021-02-13 18:40:58 +01:00 committed by Rémi Verschelde
parent 546d7f619b
commit 5a290e0a3c
No known key found for this signature in database
GPG Key ID: C3336907360768E1
2 changed files with 16 additions and 0 deletions

View File

@ -276,6 +276,14 @@ void ScriptServer::save_global_classes() {
gcarr.push_back(d);
}
Array old;
if (ProjectSettings::get_singleton()->has_setting("_global_script_classes")) {
old = ProjectSettings::get_singleton()->get("_global_script_classes");
}
if ((!old.empty() || gcarr.empty()) && gcarr.hash() == old.hash()) {
return;
}
if (gcarr.empty()) {
if (ProjectSettings::get_singleton()->has_setting("_global_script_classes")) {
ProjectSettings::get_singleton()->clear("_global_script_classes");

View File

@ -986,6 +986,14 @@ void EditorData::script_class_save_icon_paths() {
d[E->get()] = _script_class_icon_paths[E->get()];
}
Dictionary old;
if (ProjectSettings::get_singleton()->has_setting("_global_script_class_icons")) {
old = ProjectSettings::get_singleton()->get("_global_script_class_icons");
}
if ((!old.empty() || d.empty()) && d.hash() == old.hash()) {
return;
}
if (d.empty()) {
if (ProjectSettings::get_singleton()->has_setting("_global_script_class_icons")) {
ProjectSettings::get_singleton()->clear("_global_script_class_icons");