New Defects reported by Coverity Scan for LibreOffice
scan-admin at coverity.com
scan-admin at coverity.com
Mon Jul 28 17:45:23 UTC 2025
Hi,
Please find the latest report on new defect(s) introduced to LibreOffice found with Coverity Scan.
521 new defect(s) introduced to LibreOffice found with Coverity Scan.
1140 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent build analyzed by Coverity Scan.
New defect(s) Reported-by: Coverity Scan
Showing 20 of 521 defect(s)
** CID 1659910: Error handling issues (UNCAUGHT_EXCEPT)
/vcl/source/window/printdlg.cxx: 721 in vcl::PrintDialog::~PrintDialog()()
_____________________________________________________________________________________________
*** CID 1659910: Error handling issues (UNCAUGHT_EXCEPT)
/vcl/source/window/printdlg.cxx: 721 in vcl::PrintDialog::~PrintDialog()()
715 mxScrolledWindow->get_preferred_size().Width() + mxScrolledWindow->get_scroll_thickness(),
716 450);
717
718 m_xDialog->set_centered_on_parent(true);
719 }
720
>>> CID 1659910: Error handling issues (UNCAUGHT_EXCEPT)
>>> An exception of type "com::sun::star::uno::DeploymentException" is thrown but the exception specification "/*implicit*/noexcept" doesn't allow it to be thrown. This will result in a call to terminate().
721 PrintDialog::~PrintDialog()
722 {
723 std::shared_ptr<comphelper::ConfigurationChanges> batch(comphelper::ConfigurationChanges::create());
724 officecfg::Office::Common::Print::Dialog::RangeSectionExpanded::set(mxRangeExpander->get_expanded(), batch);
725 officecfg::Office::Common::Print::Dialog::LayoutSectionExpanded::set(mxLayoutExpander->get_expanded(), batch);
726 batch->commit();
** CID 1659909: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
_____________________________________________________________________________________________
*** CID 1659909: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/sc/source/ui/unoobj/dapiuno.cxx: 2271 in ScDataPilotFieldObj::getGroupInfo()()
2265 const ScDPSaveGroupItem& rGroup = pGroupDim->GetGroupByIndex( nIdx );
2266 ScFieldGroup aGroup;
2267 aGroup.maName = rGroup.GetGroupName();
2268 for( sal_Int32 nMemIdx = 0, nMemCount = rGroup.GetElementCount(); nMemIdx < nMemCount; ++nMemIdx )
2269 if (const OUString* pMem = rGroup.GetElementByIndex(nMemIdx))
2270 aGroup.maMembers.push_back( *pMem );
>>> CID 1659909: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "aGroup" is copied and then passed-by-reference as parameter to STL insertion function "std::vector<ScFieldGroup, std::allocator<ScFieldGroup> >::push_back(std::vector<ScFieldGroup, std::allocator<ScFieldGroup> >::value_type const &)", when it could be moved instead.
2271 aGroups.push_back( aGroup );
2272 }
2273 aInfo.Groups = new ScDataPilotFieldGroupsObj( std::move(aGroups) );
2274 }
2275 }
2276 else if( const ScDPSaveNumGroupDimension* pNumGroupDim = pDimData->GetNumGroupDim( pDim->GetName() ) )
** CID 1659908: Error handling issues (UNCAUGHT_EXCEPT)
/sd/source/ui/framework/configuration/ConfigurationController.cxx: 96 in sd::framework::ConfigurationController::Lock::~Lock()()
_____________________________________________________________________________________________
*** CID 1659908: Error handling issues (UNCAUGHT_EXCEPT)
/sd/source/ui/framework/configuration/ConfigurationController.cxx: 96 in sd::framework::ConfigurationController::Lock::~Lock()()
90 OSL_ASSERT(mxController.is());
91
92 if (mxController.is())
93 mxController->lock();
94 }
95
>>> CID 1659908: Error handling issues (UNCAUGHT_EXCEPT)
>>> An exception of type "com::sun::star::uno::RuntimeException" is thrown but the exception specification "/*implicit*/noexcept" doesn't allow it to be thrown. This will result in a call to terminate().
96 ConfigurationController::Lock::~Lock()
97 {
98 if (mxController.is())
99 suppress_fun_call_w_exception(mxController->unlock());
100 }
101
** CID 1659907: Error handling issues (UNCAUGHT_EXCEPT)
/sw/source/ui/dbui/mmaddressblockpage.cxx: 556 in SwCustomizeAddressBlockDialog::~SwCustomizeAddressBlockDialog()()
_____________________________________________________________________________________________
*** CID 1659907: Error handling issues (UNCAUGHT_EXCEPT)
/sw/source/ui/dbui/mmaddressblockpage.cxx: 556 in SwCustomizeAddressBlockDialog::~SwCustomizeAddressBlockDialog()()
550
551 void SwCustomizeAddressBlockDialog::UpdateFields()
552 {
553 m_xDragED->UpdateFields();
554 }
555
>>> CID 1659907: Error handling issues (UNCAUGHT_EXCEPT)
>>> An exception of type "com::sun::star::uno::RuntimeException" is thrown but the exception specification "/*implicit*/noexcept" doesn't allow it to be thrown. This will result in a call to terminate().
556 SwCustomizeAddressBlockDialog::~SwCustomizeAddressBlockDialog()
557 {
558 m_xDragED->EndDropTarget();
559 }
560
561 IMPL_LINK_NOARG(SwCustomizeAddressBlockDialog, OKHdl_Impl, weld::Button&, void)
** CID 1659906: API usage errors (LOCK)
_____________________________________________________________________________________________
*** CID 1659906: API usage errors (LOCK)
/sc/source/filter/oox/workbookfragment.cxx: 350 in oox::xls::<unnamed>::importSheetFragments(oox::xls::WorkbookFragment &, std::vector<std::pair<std::shared_ptr<oox::xls::WorksheetGlobals>, rtl::Reference<oox::core::FragmentHandler>>, std::allocator<std::pair<std::shared_ptr<oox::xls::WorksheetGlobals>, rtl::Reference<oox::core::FragmentHandler>>>> &)()
344 // This is a much more controlled re-enterancy hazard than
345 // allowing a yield deeper inside the filter code for progress
346 // bar updating.
347 Application::Yield();
348 }
349 #endif
>>> CID 1659906: API usage errors (LOCK)
>>> "waitUntilDone" waits while "rSharedPool.maMutex" is unlocked.
350 rSharedPool.waitUntilDone(pTag);
351
352 // threads joined in ThreadPool destructor
353 }
354
355 }
** CID 1659905: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/unoxml/source/rdf/librdf_repository.cxx: 2310 in <unnamed>::librdf_TypeConverter::extractStatement_NoLock(const com::sun::star::uno::Reference<com::sun::star::rdf::XResource> &, const com::sun::star::uno::Reference<com::sun::star::rdf::XURI> &, const com::sun::star::uno::Reference<com::sun::star::rdf::XNode> &)()
_____________________________________________________________________________________________
*** CID 1659905: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/unoxml/source/rdf/librdf_repository.cxx: 2310 in <unnamed>::librdf_TypeConverter::extractStatement_NoLock(const com::sun::star::uno::Reference<com::sun::star::rdf::XResource> &, const com::sun::star::uno::Reference<com::sun::star::rdf::XURI> &, const com::sun::star::uno::Reference<com::sun::star::rdf::XNode> &)()
2304 {
2305 std::shared_ptr<Resource> const pSubject(
2306 extractResource_NoLock(i_xSubject));
2307 std::shared_ptr<URI> const pPredicate(
2308 std::dynamic_pointer_cast<URI>(extractResource_NoLock(i_xPredicate)));
2309 std::shared_ptr<Node> const pObject(extractNode_NoLock(i_xObject));
>>> CID 1659905: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "pSubject" is passed-by-value as parameter to "std::shared_ptr<<unnamed>::librdf_TypeConverter::Resource>::shared_ptr(std::shared_ptr<<unnamed>::librdf_TypeConverter::Resource> const &) /*explicit =default*/", when it could be moved instead.
2310 return Statement(pSubject, pPredicate, pObject);
2311 }
2312
2313 librdf_statement* librdf_TypeConverter::mkStatement_Lock(librdf_world* i_pWorld,
2314 Statement const& i_rStatement)
2315 {
** CID 1659904: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
_____________________________________________________________________________________________
*** CID 1659904: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx: 749 in sw::sidebar::UpdateTree(SwDocShell &, const SwEditShell &, std::vector<svx::sidebar::TreeNode, std::allocator<svx::sidebar::TreeNode>> &, int &)()
743 }
744 if (aFieldsNode.children.size() > 0)
745 {
746 aStore.push_back(aFieldsNode);
747 rParIdx++;
748 }
>>> CID 1659904: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "aParaNode" is copied and then passed-by-reference as parameter to STL insertion function "std::vector<svx::sidebar::TreeNode, std::allocator<svx::sidebar::TreeNode> >::push_back(std::vector<svx::sidebar::TreeNode, std::allocator<svx::sidebar::TreeNode> >::value_type const &)", when it could be moved instead.
749 aStore.push_back(aParaNode);
750 aStore.push_back(aParaDFNode);
751 aStore.push_back(aCharNode);
752 aStore.push_back(aCharDFNode);
753 }
754
** CID 1659903: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/sw/source/uibase/docvw/HeaderFooterWin.cxx: 438 in SwHeaderFooterWin::PaintButton()()
_____________________________________________________________________________________________
*** CID 1659903: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/sw/source/uibase/docvw/HeaderFooterWin.cxx: 438 in SwHeaderFooterWin::PaintButton()()
432 double nFadeRate = double(m_nFadeRate) / 100.0;
433
434 const basegfx::BColorModifierSharedPtr aBColorModifier =
435 std::make_shared<basegfx::BColorModifier_interpolate>(COL_WHITE.getBColor(),
436 1.0 - nFadeRate);
437
>>> CID 1659903: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "aBColorModifier" is passed-by-value as parameter to "std::shared_ptr<basegfx::BColorModifier>::shared_ptr(std::shared_ptr<basegfx::BColorModifier> const &) /*explicit =default*/", when it could be moved instead.
438 aGhostedSeq.push_back(new drawinglayer::primitive2d::ModifiedColorPrimitive2D(std::move(aSeq), aBColorModifier));
439
440 pProcessor->process(aGhostedSeq);
441
442 if (bIsEmptyHeaderFooter)
443 m_xPushButton->set_custom_button(m_xVirDev.get());
** CID 1659902: API usage errors (LOCK)
/toolkit/source/controls/grid/sortablegriddatamodel.cxx: 812 in <unnamed>::SortableGridDataModel::getRowData(int)()
_____________________________________________________________________________________________
*** CID 1659902: API usage errors (LOCK)
/toolkit/source/controls/grid/sortablegriddatamodel.cxx: 812 in <unnamed>::SortableGridDataModel::getRowData(int)()
806 throwIfNotInitialized();
807
808 ::sal_Int32 const rowIndex = impl_getPrivateRowIndex_throw( aGuard, i_rowIndex );
809
810 Reference< XMutableGridDataModel > const delegator( m_delegator );
811 aGuard.unlock();
>>> CID 1659902: API usage errors (LOCK)
>>> "~unique_lock" unlocks "aGuard" while it is unlocked. [Note: The source code implementation of the function has been overridden by a builtin model.]
812 return delegator->getRowData( rowIndex );
813 }
814
815
816 void SortableGridDataModel::disposing(std::unique_lock<std::mutex>& /*rGuard*/)
817 {
** CID 1659901: Control flow issues (DEADCODE)
/tools/source/generic/config.cxx: 106 in ImplSysReadConfig(const rtl::OUString &, unsigned long &, bool &, bool &, unsigned int &)()
_____________________________________________________________________________________________
*** CID 1659901: Control flow issues (DEADCODE)
/tools/source/generic/config.cxx: 106 in ImplSysReadConfig(const rtl::OUString &, unsigned long &, bool &, bool &, unsigned int &)()
100 if( aFile.open( osl_File_OpenFlag_Read ) == ::osl::FileBase::E_None )
101 {
102 sal_uInt64 nPos = 0;
103 if( aFile.getSize( nPos ) == ::osl::FileBase::E_None )
104 {
105 if (nPos > SAL_MAX_SIZE) {
>>> CID 1659901: Control flow issues (DEADCODE)
>>> Execution cannot reach this statement: "aFile.close();".
106 aFile.close();
107 return nullptr;
108 }
109 pBuf.reset(new sal_uInt8[static_cast< std::size_t >(nPos)]);
110 sal_uInt64 nRead = 0;
111 if( aFile.read( pBuf.get(), nPos, nRead ) == ::osl::FileBase::E_None && nRead == nPos )
** CID 1659900: API usage errors (LOCK)
/toolkit/source/helper/listenermultiplexer.cxx: 178 in TabListenerMultiplexer::activated(int)()
_____________________________________________________________________________________________
*** CID 1659900: API usage errors (LOCK)
/toolkit/source/helper/listenermultiplexer.cxx: 178 in TabListenerMultiplexer::activated(int)()
172 }
173 }
174 }
175
176
177 void TabListenerMultiplexer::activated( sal_Int32 evt )
>>> CID 1659900: API usage errors (LOCK)
>>> "~unique_lock" unlocks "g" while it is unlocked. [Note: The source code implementation of the function has been overridden by a builtin model.]
178 IMPL_TABLISTENERMULTIPLEXER_LISTENERMETHOD_BODY_1PARAM( TabListenerMultiplexer, css::awt::XTabListener, activated, ::sal_Int32 )
179
180 void TabListenerMultiplexer::deactivated( sal_Int32 evt )
181 IMPL_TABLISTENERMULTIPLEXER_LISTENERMETHOD_BODY_1PARAM( TabListenerMultiplexer, css::awt::XTabListener, deactivated, ::sal_Int32 )
182
183
** CID 1659899: API usage errors (LOCK)
/toolkit/source/helper/listenermultiplexer.cxx: 225 in TreeExpansionListenerMultiplexer::requestChildNodes(const com::sun::star::awt::tree::TreeExpansionEvent &)()
_____________________________________________________________________________________________
*** CID 1659899: API usage errors (LOCK)
/toolkit/source/helper/listenermultiplexer.cxx: 225 in TreeExpansionListenerMultiplexer::requestChildNodes(const com::sun::star::awt::tree::TreeExpansionEvent &)()
219 IMPL_LISTENERMULTIPLEXER_LISTENERMETHOD( TreeSelectionListenerMultiplexer, css::view::XSelectionChangeListener, selectionChanged, css::lang::EventObject )
220
221
222 // class TreeSelectionListenerMultiplexer
223
224 IMPL_LISTENERMULTIPLEXER_BASEMETHODS( TreeExpansionListenerMultiplexer, css::awt::tree::XTreeExpansionListener )
>>> CID 1659899: API usage errors (LOCK)
>>> "~unique_lock" unlocks "g" while it is unlocked. [Note: The source code implementation of the function has been overridden by a builtin model.]
225 IMPL_LISTENERMULTIPLEXER_LISTENERMETHOD( TreeExpansionListenerMultiplexer, css::awt::tree::XTreeExpansionListener, requestChildNodes, css::awt::tree::TreeExpansionEvent )
226 IMPL_LISTENERMULTIPLEXER_LISTENERMETHOD_EXCEPTION( TreeExpansionListenerMultiplexer, css::awt::tree::XTreeExpansionListener, treeExpanding, css::awt::tree::TreeExpansionEvent, css::awt::tree::ExpandVetoException )
227 IMPL_LISTENERMULTIPLEXER_LISTENERMETHOD_EXCEPTION( TreeExpansionListenerMultiplexer, css::awt::tree::XTreeExpansionListener, treeCollapsing, css::awt::tree::TreeExpansionEvent, css::awt::tree::ExpandVetoException )
228 IMPL_LISTENERMULTIPLEXER_LISTENERMETHOD( TreeExpansionListenerMultiplexer, css::awt::tree::XTreeExpansionListener, treeExpanded, css::awt::tree::TreeExpansionEvent )
229 IMPL_LISTENERMULTIPLEXER_LISTENERMETHOD( TreeExpansionListenerMultiplexer, css::awt::tree::XTreeExpansionListener, treeCollapsed, css::awt::tree::TreeExpansionEvent )
230
** CID 1659898: API usage errors (LOCK)
/unotools/source/config/cmdoptions.cxx: 303 in SvtCommandOptions::SvtCommandOptions()()
_____________________________________________________________________________________________
*** CID 1659898: API usage errors (LOCK)
/unotools/source/config/cmdoptions.cxx: 303 in SvtCommandOptions::SvtCommandOptions()()
297 {
298 m_pImpl = std::make_shared<SvtCommandOptions_Impl>();
299 g_pCommandOptions = m_pImpl;
300 aGuard.unlock(); // because holdConfigItem will call this constructor
301 ItemHolder1::holdConfigItem(EItem::CmdOptions);
302 }
>>> CID 1659898: API usage errors (LOCK)
>>> "~unique_lock" unlocks "aGuard" while it is unlocked. [Note: The source code implementation of the function has been overridden by a builtin model.]
303 }
304
305 SvtCommandOptions::~SvtCommandOptions()
306 {
307 // Global access, must be guarded (multithreading!)
308 std::unique_lock aGuard( GetOwnStaticMutex() );
** CID 1659897: API usage errors (LOCK)
_____________________________________________________________________________________________
*** CID 1659897: API usage errors (LOCK)
/drawinglayer/source/primitive2d/sceneprimitive2d.cxx: 492 in drawinglayer::primitive2d::ScenePrimitive2D::create2DDecomposition(const drawinglayer::geometry::ViewInformation2D &) const()
486 nLinesPerThread * a,
487 a + 1 == nThreadCount ? aBZPixelRaster.getHeight() : nLinesPerThread * (a + 1)));
488 std::unique_ptr<Executor> pExecutor(new Executor(aTag, std::move(pNewZBufferProcessor3D), getChildren3D()));
489 rThreadPool.pushTask(std::move(pExecutor));
490 }
491
>>> CID 1659897: API usage errors (LOCK)
>>> "waitUntilDone" waits while "rThreadPool.maMutex" is unlocked.
492 rThreadPool.waitUntilDone(aTag);
493 }
494 else
495 {
496 // use default 3D primitive processor to create BitmapEx for aUnitVisiblePart and process
497 processor3d::ZBufferProcessor3D aZBufferProcessor3D(
** CID 1659896: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/svx/source/dialog/ClassificationDialog.cxx: 365 in svx::ClassificationDialog::readRecentlyUsed()()
_____________________________________________________________________________________________
*** CID 1659896: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/svx/source/dialog/ClassificationDialog.cxx: 365 in svx::ClassificationDialog::readRecentlyUsed()()
359 aResults.emplace_back(eType, sString, sAbbreviatedString, sIdentifier);
360 }
361 }
362 aWalker.next();
363 }
364 aWalker.parent();
>>> CID 1659896: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "aResults" is copied and then passed-by-reference as parameter to STL insertion function "std::vector<std::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult> >, std::allocator<std::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult> > > >::push_back(std::vector<std::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult> >, std::allocator<std::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult> > > >::value_type const &)", when it could be moved instead.
365 m_aRecentlyUsedValuesCollection.push_back(aResults);
366 }
367 aWalker.next();
368 }
369 aWalker.parent();
370 }
** CID 1659895: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
_____________________________________________________________________________________________
*** CID 1659895: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/libreofficekit/qa/gtktiledviewer/gtv-calc-header-bar.cxx: 203 in gtv_calc_header_bar_configure()
197 {
198 int nSize = std::round(std::atof(rValue.second.get<std::string>("size").c_str()));
199 if (nSize >= bar->m_nPositionPixel)
200 {
201 const int nScrolledSize = nSize - bar->m_nPositionPixel;
202 GtvCalcHeaderBarPrivateImpl::Header aHeader(nScrolledSize, rValue.second.get<std::string>("text"));
>>> CID 1659895: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "aHeader" is copied and then passed-by-reference as parameter to STL insertion function "std::vector<<unnamed>::GtvCalcHeaderBarPrivateImpl::Header, std::allocator<<unnamed>::GtvCalcHeaderBarPrivateImpl::Header> >::push_back(std::vector<<unnamed>::GtvCalcHeaderBarPrivateImpl::Header, std::allocator<<unnamed>::GtvCalcHeaderBarPrivateImpl::Header> >::value_type const &)", when it could be moved instead.
203 priv->m_aHeaders.push_back(aHeader);
204 }
205 }
206 }
207 catch (boost::property_tree::ptree_bad_path& rException)
208 {
** CID 1659894: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/sd/source/ui/presenter/CanvasUpdateRequester.cxx: 68 in sd::presenter::CanvasUpdateRequester::Instance(const com::sun::star::uno::Reference<com::sun::star::rendering::XSpriteCanvas> &)()
_____________________________________________________________________________________________
*** CID 1659894: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/sd/source/ui/presenter/CanvasUpdateRequester.cxx: 68 in sd::presenter::CanvasUpdateRequester::Instance(const com::sun::star::uno::Reference<com::sun::star::rendering::XSpriteCanvas> &)()
62 }
63 else
64 {
65 std::shared_ptr<CanvasUpdateRequester> const pNew(
66 new CanvasUpdateRequester(rxSharedCanvas), Deleter());
67 it->second = pNew;
>>> CID 1659894: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "pNew" is passed-by-value as parameter to "std::shared_ptr<sd::presenter::CanvasUpdateRequester>::shared_ptr(std::shared_ptr<sd::presenter::CanvasUpdateRequester> const &) /*explicit =default*/", when it could be moved instead.
68 return pNew;
69 }
70 }
71 else
72 {
73 ++it;
** CID 1659893: Incorrect expression (DIVIDE_BY_ZERO)
/scaddins/source/analysis/analysishelper.cxx: 1068 in sca::analysis::GetYieldmat(int, int, int, int, double, double, int)()
_____________________________________________________________________________________________
*** CID 1659893: Incorrect expression (DIVIDE_BY_ZERO)
/scaddins/source/analysis/analysishelper.cxx: 1068 in sca::analysis::GetYieldmat(int, int, int, int, double, double, int)()
1062 double fIssSet = GetYearFrac( nNullDate, nIssue, nSettle, nBase );
1063 double fSetMat = GetYearFrac( nNullDate, nSettle, nMat, nBase );
1064
1065 double y = 1.0 + fIssMat * fRate;
1066 y /= fPrice / 100.0 + fIssSet * fRate;
1067 y--;
>>> CID 1659893: Incorrect expression (DIVIDE_BY_ZERO)
>>> In expression "y /= fSetMat", division by expression "fSetMat" which may be zero has undefined behavior.
1068 y /= fSetMat;
1069
1070 return y;
1071 }
1072
1073
** CID 1659892: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
_____________________________________________________________________________________________
*** CID 1659892: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/editeng/source/editeng/impedit4.cxx: 2200 in ImpEditEngine::AddPortion(const EditSelection &, const com::sun::star::uno::Reference<com::sun::star::linguistic2::XSpellAlternatives> &, std::vector<svx::SpellPortion, std::allocator<svx::SpellPortion>> &, bool)()
2194 aPortion.eLanguage = GetLanguage( rSel.Min() ).nLang;
2195 aPortion.xAlternatives = xAlt;
2196 aPortion.bIsField = bIsField;
2197 rToFill.push_back(aPortion);
2198
2199 //save the spelled portions for later use
>>> CID 1659892: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "aPortion" is copied and then passed-by-reference as parameter to STL insertion function "std::vector<svx::SpellPortion, std::allocator<svx::SpellPortion> >::push_back(std::vector<svx::SpellPortion, std::allocator<svx::SpellPortion> >::value_type const &)", when it could be moved instead.
2200 mpSpellInfo->aLastSpellPortions.push_back(aPortion);
2201 mpSpellInfo->aLastSpellContentSelections.push_back(rSel);
2202 }
2203
2204 // Adds one or more portions of text to the SpellPortions depending on language changes
2205 void ImpEditEngine::AddPortionIterated(
** CID 1659891: API usage errors (LOCK)
/comphelper/source/misc/instancelocker.cxx: 333 in OLockListener::notifyClosing(const com::sun::star::lang::EventObject &)()
_____________________________________________________________________________________________
*** CID 1659891: API usage errors (LOCK)
/comphelper/source/misc/instancelocker.cxx: 333 in OLockListener::notifyClosing(const com::sun::star::lang::EventObject &)()
327 if ( xComponent.is() )
328 {
329 try { xComponent->dispose(); }
330 catch( uno::Exception& ){}
331 }
332 }
>>> CID 1659891: API usage errors (LOCK)
>>> "~unique_lock" unlocks "aGuard" while it is unlocked. [Note: The source code implementation of the function has been overridden by a builtin model.]
333 }
334
335
336 // XTerminateListener
337
338 void SAL_CALL OLockListener::queryTermination( const lang::EventObject& aEvent )
________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, https://scan.coverity.com/projects/libreoffice?tab=overview
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice/attachments/20250728/86f94c19/attachment.htm>
More information about the LibreOffice
mailing list