### Godot version

4.0.2

### System information

Windows 10 x64

### Issue description

![image](https://user-images.githubusercontent.com/2223172/231459722-294d88f9-dae3-4a3f-8e7f-e5340ca0dd25.png)
Both paths point to the same node, but the second one appears as if the node wasn't found. I assume this is because the NodePaths in array don't have the scene's node as "parent", so the path can't be resolved properly.

### Steps to reproduce

1.
```GDScript
@export var np1: NodePath
@export var np2: Array[NodePath]
```
2. Assign the same node
3. Compare the results

### Minimal reproduction project

N/A
if (i == amount) {
				PanelContainer *pc = memnew(PanelContainer);
				property_vbox->add_child(pc);
				pc->add_theme_style_override(SNAME("panel"), get_theme_stylebox(SNAME("DictionaryAddItem"), SNAME("EditorStyles")));
				add_vbox = memnew(VBoxContainer);
				pc->add_child(add_vbox);
			}
			prop->set_object_and_property(object.ptr(), prop_name);
			int change_index = 0;
			if (i < amount) {
				String cs = key.get_construct_string();
				prop->set_label(key.get_construct_string());
				prop->set_tooltip_text(cs);
				change_index = i + offset;
			} else if (i == amount) {
				prop->set_label(TTR("New Key:"));
				change_index = -1;
			} else if (i == amount + 1) {
				prop->set_label(TTR("New Value:"));
				change_index = -2;
			}
			prop->set_selectable(false);
			prop->connect("property_changed", callable_mp(this, &EditorPropertyDictionary::_property_changed));
			prop->connect("object_id_selected", callable_mp(this, &EditorPropertyDictionary::_object_id_selected));
			HBoxContainer *hbox = memnew(HBoxContainer);
			if (add_vbox) {
				add_vbox->add_child(hbox);
			} else {
				property_vbox->add_child(hbox);
			}