diff options
Diffstat (limited to 'cli_ure/source/uno_bridge/cli_data.cxx')
-rw-r--r-- | cli_ure/source/uno_bridge/cli_data.cxx | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/cli_ure/source/uno_bridge/cli_data.cxx b/cli_ure/source/uno_bridge/cli_data.cxx index 24b3753ef61d..c7c027691a08 100644 --- a/cli_ure/source/uno_bridge/cli_data.cxx +++ b/cli_ure/source/uno_bridge/cli_data.cxx @@ -716,9 +716,11 @@ OUString mapCliString(System::String ^ data) if (data != nullptr) { - OSL_ASSERT(sizeof(wchar_t) == sizeof(sal_Unicode)); + static_assert(sizeof(wchar_t) == sizeof(sal_Unicode), "char mismatch"); pin_ptr<wchar_t const> pdata= PtrToStringChars(data); - return OUString(SAL_U(pdata), const_cast<System::String^>(data)->Length); + return OUString( + reinterpret_cast<sal_Unicode const *>(pdata), + const_cast<System::String^>(data)->Length); } else { @@ -818,8 +820,9 @@ void Bridge::map_to_uno(void * uno_data, System::Object^ cli_data, { System::String ^s= safe_cast<System::String^>(cli_data); pin_ptr<const wchar_t> pdata= PtrToStringChars(s); - rtl_uString_newFromStr_WithLength( (rtl_uString**) uno_data, - SAL_U(pdata), s->Length ); + rtl_uString_newFromStr_WithLength( + reinterpret_cast<rtl_uString **>(uno_data), + reinterpret_cast<sal_Unicode const *>(pdata), s->Length); } break; } @@ -1294,8 +1297,10 @@ void Bridge::map_to_uno(void * uno_data, System::Object^ cli_data, rtl_uString** pStr= & ((rtl_uString**) & ((uno_Sequence*) seq.get())->elements)[i]; *pStr= NULL; - rtl_uString_newFromStr_WithLength( pStr, SAL_U(pdata), - arStr[i]->Length); + rtl_uString_newFromStr_WithLength( + pStr, + reinterpret_cast<sal_Unicode const *>(pdata), + arStr[i]->Length); } break; } |