Kaydet (Commit) 8b9b779e authored tarafından Noel Power's avatar Noel Power

fix crash for fdo#58306 when appending to OUStringBuffer initialised with ""

don't call rtl_uString_newFromLiteral when literal has zero length as
that cheats and doesn't assign a buffer. what we really want to do
is assign a buffer with initial capacity ( but no content )

Change-Id: I9d642c453dee747aca6365abb15408c05f86bb52
üst 551cd207
...@@ -183,7 +183,7 @@ public: ...@@ -183,7 +183,7 @@ public:
, nCapacity( internal::ConstCharArrayDetector< T, void >::size - 1 + 16 ) , nCapacity( internal::ConstCharArrayDetector< T, void >::size - 1 + 16 )
{ {
assert( strlen( literal ) == internal::ConstCharArrayDetector< T >::size - 1 ); assert( strlen( literal ) == internal::ConstCharArrayDetector< T >::size - 1 );
rtl_uString_newFromLiteral( &pData, literal, internal::ConstCharArrayDetector< T, void >::size - 1, 16 ); ( internal::ConstCharArrayDetector< T >::size - 1 ) ? rtl_uString_newFromLiteral( &pData, literal, internal::ConstCharArrayDetector< T, void >::size - 1, 16 ) : rtl_uString_new_WithLength( &pData, 16 );
#ifdef RTL_STRING_UNITTEST #ifdef RTL_STRING_UNITTEST
rtl_string_unittest_const_literal = true; rtl_string_unittest_const_literal = true;
#endif #endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment