Ver Fonte

Fixed a crash in prefab diff generation that was caused when new code for serializing gameobject/resource references was introduced

BearishSun há 9 anos atrás
pai
commit
09aabe9f2d

+ 4 - 1
Source/SBansheeEngine/Source/BsManagedSerializableDiff.cpp

@@ -209,7 +209,7 @@ namespace BansheeEngine
 		const SPtr<ManagedSerializableFieldData>& oldData, const SPtr<ManagedSerializableFieldData>& newData,
 		const SPtr<ManagedSerializableFieldData>& oldData, const SPtr<ManagedSerializableFieldData>& newData,
 		UINT32 entryTypeId)
 		UINT32 entryTypeId)
 	{
 	{
-		bool isPrimitive = entryTypeId == TID_SerializableTypeInfoPrimitive;
+		bool isPrimitive = entryTypeId == TID_SerializableTypeInfoPrimitive || entryTypeId == TID_SerializableTypeInfoRef;
 
 
 		SPtr<Modification> newMod = nullptr;
 		SPtr<Modification> newMod = nullptr;
 		if (isPrimitive)
 		if (isPrimitive)
@@ -431,6 +431,9 @@ namespace BansheeEngine
 				}
 				}
 			}
 			}
 				break;
 				break;
+			default:
+				assert(false); // Invalid type
+				break;
 			}
 			}
 		}
 		}