From 0b8c2c72c988488895d74d1bb36e60378283a4da Mon Sep 17 00:00:00 2001 From: Jochen Nitschke Date: Sun, 11 Jun 2017 13:37:46 +0200 Subject: replace double checked locking patterns in getTypes macros with thread safe local statics Change-Id: Ie7c44fb35ba0b24e154631a4805463230e2c69e7 Reviewed-on: https://gerrit.libreoffice.org/38662 Tested-by: Jenkins Reviewed-by: Noel Grandin --- include/ucbhelper/macros.hxx | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) (limited to 'include/ucbhelper') diff --git a/include/ucbhelper/macros.hxx b/include/ucbhelper/macros.hxx index 09dca56d5750..6be773977867 100644 --- a/include/ucbhelper/macros.hxx +++ b/include/ucbhelper/macros.hxx @@ -48,20 +48,13 @@ Class::getImplementationId() \ css::uno::Sequence< css::uno::Type > SAL_CALL \ Class::getTypes() \ { \ - static cppu::OTypeCollection* pCollection = nullptr; \ - if ( !pCollection ) \ - { \ - osl::Guard< osl::Mutex > aGuard( osl::Mutex::getGlobalMutex() ); \ - if ( !pCollection ) \ - { \ - static cppu::OTypeCollection collection( + static cppu::OTypeCollection collection( + #define GETTYPES_IMPL_END \ ); \ - pCollection = &collection; \ - } \ - } \ - return (*pCollection).getTypes(); \ + \ + return collection.getTypes(); \ } -- cgit