https://issues.apache.org/ooo/show_bug.cgi?id=120385
Andre <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution|--- |FIXED --- Comment #14 from Andre <[email protected]> --- This is a 64bit-only bug. A recent change in ManifestImport::startElement modified the reading of manifest properties for digest and encryption type in such a way, that they where internally stored as C++ long values (wrapped in uno Anys). In the UNO API they are defined as IDL long values. IDL long is defined to be always be a signed 32 bit value. For 32bit compilers (at least the ones we use for OpenOffice) the two longs (C++ vs IDL) have the same length. For 64bit compilers C++ long has 64bits. This leads to a problem when the values are later converted back into C++ variables, this time of type sal_Int32. The conversion fails silently and the default values (0 in this case) are used. Zero is neither a valid encryption nor digest type. Therefore validation of the password fails. The fix is simple. Use type sal_Int32 to store the encryption and digest type and everything works as before. -- You are receiving this mail because: You are the assignee for the bug.
