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