https://issues.apache.org/bugzilla/show_bug.cgi?id=44886
--- Comment #8 from Yegor Kozlov <[EMAIL PROTECTED]> 2008-04-28 01:57:11 PST
---
// 3. The means of determining this is
// blip_instance ^ blip_signature == 1, where both of these values appear
to be
// nontrivial to compute (to me anyway.)
I figured out how to do this check. See what we have:
Metafile signatures are defined in the spec as follows:
typedef enum
{
msobiWMF = 0x216, // Metafile header then compressed WMF
msobiEMF = 0x3D4, // Metafile header then compressed EMF
msobiPICT = 0x542, // Metafile header then compressed PICT
}
MSOBI;
In your test data EscherMetafileBlip.Options=0x5430
According to the spec:
0x543 ^ 0x542 == 1; //bingo! need to read extra 16 bytes
I attached my version of EscherMetafileBlip. Please exercise it against your
test data and confirm it works OK. If it does, I will commit the fix.
Note, I reverted your previous fix. EscherMetafileBlip.field_2_cb always
defines the correct metafile size.
Also, it would be good to have test data where blip_instance ^ blip_signature
!= 1. Please attach a sample if you find one.
Regards,
Yegor
--
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]