summaryrefslogtreecommitdiff
path: root/connectivity/source/drivers/hsqldb/HStorageMap.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'connectivity/source/drivers/hsqldb/HStorageMap.cxx')
-rw-r--r--connectivity/source/drivers/hsqldb/HStorageMap.cxx18
1 files changed, 10 insertions, 8 deletions
diff --git a/connectivity/source/drivers/hsqldb/HStorageMap.cxx b/connectivity/source/drivers/hsqldb/HStorageMap.cxx
index 64566b136e0e..dd84f849ec72 100644
--- a/connectivity/source/drivers/hsqldb/HStorageMap.cxx
+++ b/connectivity/source/drivers/hsqldb/HStorageMap.cxx
@@ -171,10 +171,11 @@ namespace connectivity
TStorages& rMap = lcl_getStorageMap();
// check if the storage is already in our map
TStorages::iterator aFind = ::std::find_if(rMap.begin(),rMap.end(),
- ::o3tl::compose1(
- ::std::bind2nd(::std::equal_to<Reference<XStorage> >(),_xStorage)
- ,::o3tl::compose1(::o3tl::select1st<TStorageURLPair>(),::o3tl::compose1(::o3tl::select1st<TStorages::mapped_type>(),::o3tl::select2nd<TStorages::value_type>())))
- );
+ [&_xStorage] (TStorages::value_type storage) {
+ // TStoragePair (second) -> TStorageURLPair (first) -> uno::Reference<XStorage> (first)
+ return storage.second.first.first == _xStorage;
+ });
+
if ( aFind == rMap.end() )
{
aFind = rMap.insert(TStorages::value_type(lcl_getNextCount(),TStorages::mapped_type(TStorageURLPair(_xStorage,_sURL),TStreamMap()))).first;
@@ -202,10 +203,11 @@ namespace connectivity
TStorages& rMap = lcl_getStorageMap();
// check if the storage is already in our map
TStorages::iterator aFind = ::std::find_if(rMap.begin(),rMap.end(),
- ::o3tl::compose1(
- ::std::bind2nd(::std::equal_to<Reference<XStorage> >(),_xStorage)
- ,::o3tl::compose1(::o3tl::select1st<TStorageURLPair>(),::o3tl::compose1(::o3tl::select1st<TStorages::mapped_type>(),::o3tl::select2nd<TStorages::value_type>())))
- );
+ [&_xStorage] (TStorages::value_type storage) {
+ // TStoragePair (second) -> TStorageURLPair (first) -> uno::Reference<XStorage> (first)
+ return storage.second.first.first == _xStorage;
+ });
+
if ( aFind != rMap.end() )
sKey = aFind->first;
return sKey;