Fixed some binary file save problems.
This commit is contained in:
@ -510,9 +510,16 @@ namespace RobloxFiles.BinaryFormat.Chunks
|
||||
case PropertyType.String:
|
||||
props.ForEach(prop =>
|
||||
{
|
||||
byte[] rawBuffer = prop.RawBuffer;
|
||||
writer.Write(rawBuffer.Length);
|
||||
writer.Write(rawBuffer);
|
||||
byte[] buffer = prop.HasRawBuffer ? prop.RawBuffer : null;
|
||||
|
||||
if (buffer == null)
|
||||
{
|
||||
string value = prop.CastValue<string>();
|
||||
buffer = Encoding.UTF8.GetBytes(value);
|
||||
}
|
||||
|
||||
writer.Write(buffer.Length);
|
||||
writer.Write(buffer);
|
||||
});
|
||||
|
||||
break;
|
||||
|
@ -45,13 +45,15 @@ namespace RobloxFiles.BinaryFormat.Chunks
|
||||
foreach (var pair in Lookup)
|
||||
{
|
||||
string key = pair.Key;
|
||||
|
||||
byte[] md5 = Convert.FromBase64String(key);
|
||||
|
||||
uint id = pair.Value;
|
||||
string value = Strings[id];
|
||||
|
||||
writer.Write(md5);
|
||||
writer.WriteString(value);
|
||||
|
||||
string value = Strings[pair.Value];
|
||||
byte[] buffer = Convert.FromBase64String(value);
|
||||
|
||||
writer.Write(buffer.Length);
|
||||
writer.Write(buffer);
|
||||
}
|
||||
|
||||
return writer.FinishWritingChunk();
|
||||
|
Reference in New Issue
Block a user