|
@@ -192,8 +192,6 @@ namespace BansheeEngine
|
|
|
bool streamDataBlock = false;
|
|
bool streamDataBlock = false;
|
|
|
if (!copyData && data->isFile())
|
|
if (!copyData && data->isFile())
|
|
|
{
|
|
{
|
|
|
- LOGWRN("Deserializing without data copy but the source stream is a file stream. Enabling data copy.");
|
|
|
|
|
-
|
|
|
|
|
copyData = true;
|
|
copyData = true;
|
|
|
streamDataBlock = true;
|
|
streamDataBlock = true;
|
|
|
}
|
|
}
|
|
@@ -654,11 +652,11 @@ namespace BansheeEngine
|
|
|
|
|
|
|
|
for (int i = 0; i < arrayNumElems; i++)
|
|
for (int i = 0; i < arrayNumElems; i++)
|
|
|
{
|
|
{
|
|
|
|
|
+ SPtr<SerializedObject> serializedArrayEntry;
|
|
|
|
|
+ decodeEntry(data, dataLength, bytesRead, serializedArrayEntry, copyData, streamDataBlock);
|
|
|
|
|
+
|
|
|
if (curField != nullptr)
|
|
if (curField != nullptr)
|
|
|
{
|
|
{
|
|
|
- SPtr<SerializedObject> serializedArrayEntry;
|
|
|
|
|
- decodeEntry(data, dataLength, bytesRead, serializedArrayEntry, copyData, streamDataBlock);
|
|
|
|
|
-
|
|
|
|
|
SerializedArrayEntry arrayEntry;
|
|
SerializedArrayEntry arrayEntry;
|
|
|
arrayEntry.serialized = serializedArrayEntry;
|
|
arrayEntry.serialized = serializedArrayEntry;
|
|
|
arrayEntry.index = i;
|
|
arrayEntry.index = i;
|
|
@@ -762,12 +760,11 @@ namespace BansheeEngine
|
|
|
case SerializableFT_Reflectable:
|
|
case SerializableFT_Reflectable:
|
|
|
{
|
|
{
|
|
|
RTTIReflectableFieldBase* curField = static_cast<RTTIReflectableFieldBase*>(curGenericField);
|
|
RTTIReflectableFieldBase* curField = static_cast<RTTIReflectableFieldBase*>(curGenericField);
|
|
|
|
|
+ SPtr<SerializedObject> serializedChildObj;
|
|
|
|
|
+ decodeEntry(data, dataLength, bytesRead, serializedChildObj, copyData, streamDataBlock);
|
|
|
|
|
|
|
|
if (curField != nullptr)
|
|
if (curField != nullptr)
|
|
|
{
|
|
{
|
|
|
- SPtr<SerializedObject> serializedChildObj;
|
|
|
|
|
- decodeEntry(data, dataLength, bytesRead, serializedChildObj, copyData, streamDataBlock);
|
|
|
|
|
-
|
|
|
|
|
serializedEntry = serializedChildObj;
|
|
serializedEntry = serializedChildObj;
|
|
|
hasModification = true;
|
|
hasModification = true;
|
|
|
}
|
|
}
|
|
@@ -803,6 +800,7 @@ namespace BansheeEngine
|
|
|
data->skip(typeSize);
|
|
data->skip(typeSize);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ serializedField->size = typeSize;
|
|
|
serializedEntry = serializedField;
|
|
serializedEntry = serializedField;
|
|
|
hasModification = true;
|
|
hasModification = true;
|
|
|
}
|
|
}
|
|
@@ -846,8 +844,8 @@ namespace BansheeEngine
|
|
|
serializedDataBlock->stream = stream;
|
|
serializedDataBlock->stream = stream;
|
|
|
serializedDataBlock->offset = 0;
|
|
serializedDataBlock->offset = 0;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
serializedDataBlock->size = dataBlockSize;
|
|
serializedDataBlock->size = dataBlockSize;
|
|
|
-
|
|
|
|
|
serializedEntry = serializedDataBlock;
|
|
serializedEntry = serializedDataBlock;
|
|
|
hasModification = true;
|
|
hasModification = true;
|
|
|
}
|
|
}
|