From 257d61688202c5d5c629bb40beca7186bcf30be4 Mon Sep 17 00:00:00 2001 From: alcexhim Date: Fri, 24 Oct 2014 22:11:30 -0400 Subject: [PATCH] Trim the DataRequest so it only returns actual data, not padding (which could contain other sectors' data) --- .../CompoundDocument/CompoundDocumentDataFormat.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CSharp/Plugins/UniversalEditor.Plugins.Microsoft/DataFormats/FileSystem/Microsoft/CompoundDocument/CompoundDocumentDataFormat.cs b/CSharp/Plugins/UniversalEditor.Plugins.Microsoft/DataFormats/FileSystem/Microsoft/CompoundDocument/CompoundDocumentDataFormat.cs index bbd4a41a..c647fb3e 100644 --- a/CSharp/Plugins/UniversalEditor.Plugins.Microsoft/DataFormats/FileSystem/Microsoft/CompoundDocument/CompoundDocumentDataFormat.cs +++ b/CSharp/Plugins/UniversalEditor.Plugins.Microsoft/DataFormats/FileSystem/Microsoft/CompoundDocument/CompoundDocumentDataFormat.cs @@ -326,7 +326,6 @@ namespace UniversalEditor.DataFormats.FileSystem.Microsoft.CompoundDocument if (length < mvarMinimumStandardStreamSize) { // use the short-sector allocation table and short stream container stream - byte[] data = new byte[sectors.Count * mvarShortSectorSize]; int start = 0; foreach (int sector in sectors) @@ -337,7 +336,7 @@ namespace UniversalEditor.DataFormats.FileSystem.Microsoft.CompoundDocument Array.Copy(sectorData, 0, data, start, sectorData.Length); start += (int)mvarShortSectorSize; } - e.Data = data; + Array.Copy(data, 0, realdata, 0, realdata.Length); } else { @@ -351,8 +350,9 @@ namespace UniversalEditor.DataFormats.FileSystem.Microsoft.CompoundDocument Array.Copy(sectorData, 0, data, start, sectorData.Length); start += (int)mvarSectorSize; } - e.Data = data; + Array.Copy(data, 0, realdata, 0, realdata.Length); } + e.Data = realdata; } protected override void SaveInternal(ObjectModel objectModel)