Fix resource property editor incorrectly accepting script files
See discussion on #102534. Before this fix, it was possible to drag a file `CustomResource.gd` with `class_name CustomResource` onto a property of type `CustomResource`. Of course, the intention is that only `Resource`s with the `CustomResource` script attached are accepted. (Actually accepting the script, but creating a resource from it automatically, is left as a future improvement.)
This commit is contained in:
@ -686,9 +686,11 @@ bool EditorResourcePicker::_is_drop_valid(const Dictionary &p_drag_data) const {
|
||||
return true;
|
||||
}
|
||||
|
||||
StringName custom_class = EditorNode::get_singleton()->get_object_custom_type_name(res.ptr());
|
||||
if (_is_type_valid(custom_class, allowed_types)) {
|
||||
return true;
|
||||
if (res->get_script()) {
|
||||
StringName custom_class = EditorNode::get_singleton()->get_object_custom_type_name(res->get_script());
|
||||
if (_is_type_valid(custom_class, allowed_types)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user