use non-const buffer to enable byte-order swapping on BigEndian system

This commit is contained in:
Christian Lohmaier
2011-11-08 19:32:48 +01:00
parent cb9dad87e7
commit f0dff0d9d1

View File

@@ -129,7 +129,14 @@ BinaryOutputStream::writeUnicodeArray( const ::rtl::OUString& rString, bool bAll
OUString sBuf( rString );
if( !bAllowNulChars )
sBuf.replace( '\0', '?' );
#ifdef OSL_BIGENDIAN
// need a non-const buffer for swapping byte order
sal_Unicode notConst[sBuf.getLength()];
memcpy( notConst, sBuf.getStr(), sizeof(sal_Unicode)*sBuf.getLength() );
writeArray( notConst, sBuf.getLength() );
#else
writeArray( sBuf.getStr(), sBuf.getLength() );
#endif
}
void