Fix crash when edit remote object instance after debugger stoped

This commit is contained in:
geequlim 2017-09-03 00:47:45 +08:00
parent 1473e23df8
commit 29cd034e23
3 changed files with 16 additions and 2 deletions

View file

@ -43,12 +43,14 @@
#include "os/input.h"
#include "os/keyboard.h"
#include "pair.h"
#include "plugins/script_editor_plugin.h"
#include "print_string.h"
#include "scene/gui/label.h"
#include "scene/main/viewport.h"
#include "scene/resources/font.h"
#include "scene/resources/packed_scene.h"
#include "scene/scene_string_names.h"
#include "script_editor_debugger.h"
void CustomPropertyEditor::_notification(int p_what) {
@ -3619,8 +3621,14 @@ void PropertyEditor::edit(Object *p_object) {
obj->remove_change_receptor(this);
if (obj->is_type("ScriptEditorDebuggerInspectedObject")) {
set_enable_capitalize_paths(false);
emit_signal("object_id_selected", obj->call("get_remote_object_id"));
ScriptEditorDebugger *sed = ScriptEditor::get_singleton()->get_debugger();
if (sed->is_connected()) {
set_enable_capitalize_paths(false);
emit_signal("object_id_selected", obj->call("get_remote_object_id"));
} else {
obj = NULL;
p_object = NULL;
}
}
}