You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@poi.apache.org by bu...@apache.org on 2013/08/27 21:57:40 UTC
[Bug 55490] New: OLE2 gets corrupted using BlockSize != 512
https://issues.apache.org/bugzilla/show_bug.cgi?id=55490
Bug ID: 55490
Summary: OLE2 gets corrupted using BlockSize != 512
Product: POI
Version: 3.10-dev
Hardware: PC
Status: NEW
Severity: critical
Priority: P2
Component: POIFS
Assignee: dev@poi.apache.org
Reporter: sebastian@opencollada.org
Created attachment 30769
--> https://issues.apache.org/bugzilla/attachment.cgi?id=30769&action=edit
Simple empty MSI file with BigBlocks
We are developing a MSI reader/writer based upon POIFS. Using a x64 Windows 7
and WIX we create MSI files that can not be modified by POIFS.
The file can be created by using:
candle.exe minimal.wxs -o tmp.wixobj
light tmp.wixobj -pdbout tmp.wixpdb -o empty.msi
The resulting MSI is attached to this bug report. The testcase to create a
corrupt OLE2 document is rather simple:
FileInputStream istream = new FileInputStream("empty.msi");
FileOutputStream ostream = new FileOutputStream("empty2.msi");
new POIFSFileSystem(istream).writeFilesystem(ostream);
istream.close();
ostream.close();
We suspect that BigBlocks are the critical part.
Thanks in advance!
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org
[Bug 55490] OLE2 gets corrupted using BlockSize != 512
Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=55490
--- Comment #2 from Nick Burch <ap...@gagravarr.org> ---
POIFS has some limited support for non-512 blocks, but it's not ideal, and not
really fixable. The POIFSFileSystem code has some assumptions backed in very
deeply, which are almost but not always correct...
NPOIFS should work fine with both 512 and 4k blocks. The various problems
spotted with POIFSFileSystem have been fixed in NPOIFSFileSystem
However... NPOIFSFileSystem doesn't quite have write support. It's almost all
there, but there's one or two failing unit tests to fix. I've been meaning to
go back to it to finish it, but that has been the case for 2 or 3 years now :/
If you have a bit of time, I'd suggest you switch to NPOIFS, and give a hand to
squash those last few bugs!
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org
[Bug 55490] OLE2 gets corrupted using BlockSize != 512
Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=55490
--- Comment #3 from sebastian@opencollada.org ---
That did the trick! Thank you very much, I'll verify that everything is working
as expected and report back.
Sebastian
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org
[Bug 55490] OLE2 gets corrupted using BlockSize != 512
Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=55490
--- Comment #1 from sebastian@opencollada.org ---
Created attachment 30770
--> https://issues.apache.org/bugzilla/attachment.cgi?id=30770&action=edit
Minimal WIX configuration to create the MSI file
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org
[Bug 55490] OLE2 gets corrupted using BlockSize != 512
Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=55490
sebastian@opencollada.org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |sebastian@opencollada.org
OS| |All
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@poi.apache.org
For additional commands, e-mail: dev-help@poi.apache.org