diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-11-21 11:48:58 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2018-11-21 13:00:02 +0100 |
commit | 55e42805ea796cc92d2e93dfce9200b9c13eaeb4 (patch) | |
tree | b8543b0dd478ec2adf25fd199a9bf7d126bf824b /forms | |
parent | 2dbd02b576f28224204ac962f6ce20fde6687093 (diff) |
improve function-local statics in forms..reportdesign
Change-Id: I285e2e75c8d9cad35445c89f00ef68b155806ea2
Reviewed-on: https://gerrit.libreoffice.org/63703
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'forms')
-rw-r--r-- | forms/source/component/Columns.cxx | 9 | ||||
-rw-r--r-- | forms/source/component/Edit.cxx | 6 | ||||
-rw-r--r-- | forms/source/component/File.cxx | 14 | ||||
-rw-r--r-- | forms/source/component/ImageButton.cxx | 5 | ||||
-rw-r--r-- | forms/source/component/clickableimage.cxx | 5 | ||||
-rw-r--r-- | forms/source/runtime/formoperations.cxx | 18 | ||||
-rw-r--r-- | forms/source/xforms/convert.cxx | 8 |
7 files changed, 20 insertions, 45 deletions
diff --git a/forms/source/component/Columns.cxx b/forms/source/component/Columns.cxx index 24a431aca5d5..42de375a20b9 100644 --- a/forms/source/component/Columns.cxx +++ b/forms/source/component/Columns.cxx @@ -63,10 +63,10 @@ const sal_uInt16 COMPATIBLE_HIDDEN = 0x0008; const css::uno::Sequence<OUString>& getColumnTypes() { - static css::uno::Sequence<OUString> aColumnTypes(10); - if (aColumnTypes.getConstArray()[0].isEmpty()) + static css::uno::Sequence<OUString> aColumnTypes = [&]() { - OUString* pNames = aColumnTypes.getArray(); + css::uno::Sequence<OUString> tmp(10); + OUString* pNames = tmp.getArray(); pNames[TYPE_CHECKBOX] = "CheckBox"; pNames[TYPE_COMBOBOX] = "ComboBox"; pNames[TYPE_CURRENCYFIELD] = "CurrencyField"; @@ -77,7 +77,8 @@ const css::uno::Sequence<OUString>& getColumnTypes() pNames[TYPE_PATTERNFIELD] = "PatternField"; pNames[TYPE_TEXTFIELD] = "TextField"; pNames[TYPE_TIMEFIELD] = "TimeField"; - } + return tmp; + }(); return aColumnTypes; } diff --git a/forms/source/component/Edit.cxx b/forms/source/component/Edit.cxx index 589b0e7ffd3b..5eacc041a2ba 100644 --- a/forms/source/component/Edit.cxx +++ b/forms/source/component/Edit.cxx @@ -61,12 +61,8 @@ using namespace ::com::sun::star::form::binding; Sequence<Type> OEditControl::_getTypes() { - static Sequence<Type> aTypes; - if (!aTypes.getLength()) - { // my two base classes - aTypes = concatSequences(OBoundControl::_getTypes(), OEditControl_BASE::getTypes()); - } + static Sequence<Type> const aTypes = concatSequences(OBoundControl::_getTypes(), OEditControl_BASE::getTypes()); return aTypes; } diff --git a/forms/source/component/File.cxx b/forms/source/component/File.cxx index 281f18e9a476..b2fc1da00430 100644 --- a/forms/source/component/File.cxx +++ b/forms/source/component/File.cxx @@ -46,18 +46,8 @@ using namespace ::com::sun::star::util; Sequence<Type> OFileControlModel::_getTypes() { - static Sequence<Type> aTypes; - if (!aTypes.getLength()) - { - // my base class - Sequence<Type> aBaseClassTypes = OControlModel::_getTypes(); - - Sequence<Type> aOwnTypes(1); - Type* pOwnTypes = aOwnTypes.getArray(); - pOwnTypes[0] = cppu::UnoType<XReset>::get(); - - aTypes = concatSequences(aBaseClassTypes, aOwnTypes); - } + static Sequence<Type> const aTypes = + concatSequences(OControlModel::_getTypes(), Sequence<Type>{ cppu::UnoType<XReset>::get() }); return aTypes; } diff --git a/forms/source/component/ImageButton.cxx b/forms/source/component/ImageButton.cxx index 51b21175dc4d..74092fba5e1c 100644 --- a/forms/source/component/ImageButton.cxx +++ b/forms/source/component/ImageButton.cxx @@ -143,9 +143,8 @@ void OImageButtonModel::read(const Reference<XObjectInputStream>& _rxInStream) // OImageButtonControl Sequence<Type> OImageButtonControl::_getTypes() { - static Sequence<Type> aTypes; - if (!aTypes.getLength()) - aTypes = concatSequences(OClickableImageBaseControl::_getTypes(), OImageButtonControl_BASE::getTypes()); + static Sequence<Type> const aTypes = + concatSequences(OClickableImageBaseControl::_getTypes(), OImageButtonControl_BASE::getTypes()); return aTypes; } diff --git a/forms/source/component/clickableimage.cxx b/forms/source/component/clickableimage.cxx index bae745377e41..36637975e9ba 100644 --- a/forms/source/component/clickableimage.cxx +++ b/forms/source/component/clickableimage.cxx @@ -77,9 +77,8 @@ namespace frm Sequence<Type> OClickableImageBaseControl::_getTypes() { - static Sequence<Type> aTypes; - if (!aTypes.getLength()) - aTypes = concatSequences(OControl::_getTypes(), OClickableImageBaseControl_BASE::getTypes()); + static Sequence<Type> const aTypes = + concatSequences(OControl::_getTypes(), OClickableImageBaseControl_BASE::getTypes()); return aTypes; } diff --git a/forms/source/runtime/formoperations.cxx b/forms/source/runtime/formoperations.cxx index 76e3ec2a9647..8eaca59166d8 100644 --- a/forms/source/runtime/formoperations.cxx +++ b/forms/source/runtime/formoperations.cxx @@ -1188,19 +1188,13 @@ namespace frm // nobody's interested in ... return; - static Sequence< sal_Int16 > s_aModifyDependentFeatures; - if ( s_aModifyDependentFeatures.getLength() == 0 ) + static Sequence< sal_Int16 > const s_aModifyDependentFeatures { - sal_Int16 pModifyDependentFeatures[] = - { - FormFeature::MoveToNext, - FormFeature::MoveToInsertRow, - FormFeature::SaveRecordChanges, - FormFeature::UndoRecordChanges - }; - size_t const nFeatureCount = SAL_N_ELEMENTS( pModifyDependentFeatures ); - s_aModifyDependentFeatures = Sequence< sal_Int16 >( pModifyDependentFeatures, nFeatureCount ); - } + FormFeature::MoveToNext, + FormFeature::MoveToInsertRow, + FormFeature::SaveRecordChanges, + FormFeature::UndoRecordChanges + }; Reference< XFeatureInvalidation > xInvalidation = m_xFeatureInvalidation; _rClearForCallback.clear(); diff --git a/forms/source/xforms/convert.cxx b/forms/source/xforms/convert.cxx index f82dfd9e0a7d..f00dd5e166db 100644 --- a/forms/source/xforms/convert.cxx +++ b/forms/source/xforms/convert.cxx @@ -288,12 +288,8 @@ void Convert::init() Convert& Convert::get() { // create our Singleton instance on demand - static Convert* pConvert = nullptr; - if( pConvert == nullptr ) - pConvert = new Convert(); - - OSL_ENSURE( pConvert != nullptr, "no converter?" ); - return *pConvert; + static Convert aConvert; + return aConvert; } bool Convert::hasType( const css::uno::Type& rType ) |