fdo#43433: Binary URP works gracefully with old Java URP
...which did not support protocol properties yet. Change-Id: Ic5bb346764fb039856e16169d5ae96d01422e7e0
This commit is contained in:
@@ -669,7 +669,24 @@ void Bridge::sendRequestChangeRequest() {
|
||||
void Bridge::handleRequestChangeReply(
|
||||
bool exception, BinaryAny const & returnValue)
|
||||
{
|
||||
throwException(exception, returnValue);
|
||||
try {
|
||||
throwException(exception, returnValue);
|
||||
} catch (css::uno::RuntimeException & e) {
|
||||
// Before OOo 2.2, Java URP would throw a RuntimeException when
|
||||
// receiving a requestChange message (see i#35277 "Java URP: Support
|
||||
// Manipulation of Protocol Properties"):
|
||||
if (mode_ != MODE_REQUESTED) {
|
||||
throw;
|
||||
}
|
||||
SAL_WARN(
|
||||
"binaryurp",
|
||||
"requestChange caught RuntimeException \'" << e.Message
|
||||
<< "' in state 'requested'");
|
||||
mode_ = MODE_NORMAL;
|
||||
getWriter()->unblock();
|
||||
decrementCalls();
|
||||
return;
|
||||
}
|
||||
sal_Int32 n = *static_cast< sal_Int32 * >(
|
||||
returnValue.getValue(
|
||||
css::uno::TypeDescription(cppu::UnoType< sal_Int32 >::get())));
|
||||
|
Reference in New Issue
Block a user