瀏覽代碼

Merge pull request #38350 from RandomShaper/fix_variant_to_rid

Fix errors in Variant to RID conversion
Rémi Verschelde 5 年之前
父節點
當前提交
510406af28
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      core/variant.cpp

+ 2 - 1
core/variant.cpp

@@ -1762,11 +1762,12 @@ Variant::operator RID() const {
 			return _get_obj().ref.get_rid();
 		} else {
 #ifdef DEBUG_ENABLED
-			Object *obj = _get_obj().rc->get_ptr();
+			Object *obj = likely(_get_obj().rc) ? _get_obj().rc->get_ptr() : NULL;
 			if (unlikely(!obj)) {
 				if (ScriptDebugger::get_singleton() && _get_obj().rc && !ObjectDB::get_instance(_get_obj().rc->instance_id)) {
 					WARN_PRINT("Attempted get RID on a deleted object.");
 				}
+				return RID();
 			}
 #else
 			Object *obj = _get_obj().obj;