summaryrefslogtreecommitdiff
path: root/cppu/source/uno/lbmap.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'cppu/source/uno/lbmap.cxx')
-rw-r--r--cppu/source/uno/lbmap.cxx44
1 files changed, 22 insertions, 22 deletions
diff --git a/cppu/source/uno/lbmap.cxx b/cppu/source/uno/lbmap.cxx
index ad27087b9b02..5fc1ab82eb9c 100644
--- a/cppu/source/uno/lbmap.cxx
+++ b/cppu/source/uno/lbmap.cxx
@@ -236,32 +236,32 @@ static void mediate_mapInterface(
typelib_InterfaceTypeDescription * pInterfaceTypeDescr )
{
OSL_ENSURE( pMapping && ppOut, "### null ptr!" );
- if (pMapping && ppOut)
- {
- uno_Mediate_Mapping * that = static_cast< uno_Mediate_Mapping * >( pMapping );
- uno_Mapping * pFrom2Uno = that->aFrom2Uno.get();
+ if (!(pMapping && ppOut))
+ return;
- uno_Interface * pUnoI = nullptr;
- (*pFrom2Uno->mapInterface)( pFrom2Uno, reinterpret_cast<void **>(&pUnoI), pInterface, pInterfaceTypeDescr );
- if (nullptr == pUnoI)
- {
- void * pOut = *ppOut;
- if (nullptr != pOut)
- {
- uno_ExtEnvironment * pTo = that->aTo.get()->pExtEnv;
- OSL_ENSURE( nullptr != pTo, "### cannot release out interface: leaking!" );
- if (nullptr != pTo)
- (*pTo->releaseInterface)( pTo, pOut );
- *ppOut = nullptr; // set to 0 anyway, because mapping was not successful!
- }
- }
- else
+ uno_Mediate_Mapping * that = static_cast< uno_Mediate_Mapping * >( pMapping );
+ uno_Mapping * pFrom2Uno = that->aFrom2Uno.get();
+
+ uno_Interface * pUnoI = nullptr;
+ (*pFrom2Uno->mapInterface)( pFrom2Uno, reinterpret_cast<void **>(&pUnoI), pInterface, pInterfaceTypeDescr );
+ if (nullptr == pUnoI)
+ {
+ void * pOut = *ppOut;
+ if (nullptr != pOut)
{
- uno_Mapping * pUno2To = that->aUno2To.get();
- (*pUno2To->mapInterface)( pUno2To, ppOut, pUnoI, pInterfaceTypeDescr );
- (*pUnoI->release)( pUnoI );
+ uno_ExtEnvironment * pTo = that->aTo.get()->pExtEnv;
+ OSL_ENSURE( nullptr != pTo, "### cannot release out interface: leaking!" );
+ if (nullptr != pTo)
+ (*pTo->releaseInterface)( pTo, pOut );
+ *ppOut = nullptr; // set to 0 anyway, because mapping was not successful!
}
}
+ else
+ {
+ uno_Mapping * pUno2To = that->aUno2To.get();
+ (*pUno2To->mapInterface)( pUno2To, ppOut, pUnoI, pInterfaceTypeDescr );
+ (*pUnoI->release)( pUnoI );
+ }
}
}