New Defects reported by Coverity Scan for LibreOffice
scan-admin at coverity.com
scan-admin at coverity.com
Tue Feb 27 06:08:13 UTC 2024
Hi,
Please find the latest report on new defect(s) introduced to LibreOffice found with Coverity Scan.
7 new defect(s) introduced to LibreOffice found with Coverity Scan.
3 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 7 of 7 defect(s)
** CID 1592381: (OVERRUN)
/oox/source/drawingml/scene3dhelper.cxx: 248 in oox::Scene3DHelper::getAPIAnglesFrom3DProperties(std::shared_ptr<oox::drawingml::Shape3DProperties>, const int &, double &, double &, double &)()
/oox/source/drawingml/scene3dhelper.cxx: 250 in oox::Scene3DHelper::getAPIAnglesFrom3DProperties(std::shared_ptr<oox::drawingml::Shape3DProperties>, const int &, double &, double &, double &)()
/oox/source/drawingml/scene3dhelper.cxx: 249 in oox::Scene3DHelper::getAPIAnglesFrom3DProperties(std::shared_ptr<oox::drawingml::Shape3DProperties>, const int &, double &, double &, double &)()
________________________________________________________________________________________________________
*** CID 1592381: (OVERRUN)
/oox/source/drawingml/scene3dhelper.cxx: 248 in oox::Scene3DHelper::getAPIAnglesFrom3DProperties(std::shared_ptr<oox::drawingml::Shape3DProperties>, const int &, double &, double &, double &)()
242 // OOXML markup are given, they overwrite the values from the preset camera type. Otherwise the
243 // values from the preset camera are used. OOXML requires that all three attributes must exist at
244 // the same time. Thus it is enough to test one of them.
245 if (!(*p3DProperties).maCameraRotation.mnRevolution.has_value())
246 {
247 // The angles are given in 1/60000 deg in aPrstCameraValuesArray.
>>> CID 1592381: (OVERRUN)
>>> Overrunning array "oox::aPrstCameraValuesArray" of 62 104-byte elements at element index 62 (byte offset 6551) using index "this->mnPrstCameraIndex" (which evaluates to 62).
248 nLatitude = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleX;
249 nLongitude = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleY;
250 nRevolution = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleZ;
251 }
252
253 // MS Office applies the shape rotation after the rotations from camera in case of non-legacy
/oox/source/drawingml/scene3dhelper.cxx: 250 in oox::Scene3DHelper::getAPIAnglesFrom3DProperties(std::shared_ptr<oox::drawingml::Shape3DProperties>, const int &, double &, double &, double &)()
244 // the same time. Thus it is enough to test one of them.
245 if (!(*p3DProperties).maCameraRotation.mnRevolution.has_value())
246 {
247 // The angles are given in 1/60000 deg in aPrstCameraValuesArray.
248 nLatitude = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleX;
249 nLongitude = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleY;
>>> CID 1592381: (OVERRUN)
>>> Overrunning array "oox::aPrstCameraValuesArray" of 62 104-byte elements at element index 62 (byte offset 6551) using index "this->mnPrstCameraIndex" (which evaluates to 62).
250 nRevolution = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleZ;
251 }
252
253 // MS Office applies the shape rotation after the rotations from camera in case of non-legacy
254 // cameras, and before for legacy cameras. ODF specifies to first rotate the shape. Thus we need
255 // to add shape rotation to nRevolution in case of non-legacy cameras. The shape rotation has
/oox/source/drawingml/scene3dhelper.cxx: 249 in oox::Scene3DHelper::getAPIAnglesFrom3DProperties(std::shared_ptr<oox::drawingml::Shape3DProperties>, const int &, double &, double &, double &)()
243 // values from the preset camera are used. OOXML requires that all three attributes must exist at
244 // the same time. Thus it is enough to test one of them.
245 if (!(*p3DProperties).maCameraRotation.mnRevolution.has_value())
246 {
247 // The angles are given in 1/60000 deg in aPrstCameraValuesArray.
248 nLatitude = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleX;
>>> CID 1592381: (OVERRUN)
>>> Overrunning array "oox::aPrstCameraValuesArray" of 62 104-byte elements at element index 62 (byte offset 6551) using index "this->mnPrstCameraIndex" (which evaluates to 62).
249 nLongitude = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleY;
250 nRevolution = aPrstCameraValuesArray[mnPrstCameraIndex].mfRotateAngleZ;
251 }
252
253 // MS Office applies the shape rotation after the rotations from camera in case of non-legacy
254 // cameras, and before for legacy cameras. ODF specifies to first rotate the shape. Thus we need
** CID 1592380: Incorrect expression (COPY_PASTE_ERROR)
/sd/source/ui/slideshow/slideshowimpl.cxx: 3439 in sd::SlideshowImpl::Notify(SfxBroadcaster &, const SfxHint &)()
________________________________________________________________________________________________________
*** CID 1592380: Incorrect expression (COPY_PASTE_ERROR)
/sd/source/ui/slideshow/slideshowimpl.cxx: 3439 in sd::SlideshowImpl::Notify(SfxBroadcaster &, const SfxHint &)()
3433 const SdrHintKind eHintKind(rSdrHint.GetKind());
3434
3435 switch (eHintKind)
3436 {
3437 case SdrHintKind::ObjectInserted:
3438 {
>>> CID 1592380: Incorrect expression (COPY_PASTE_ERROR)
>>> "mnEventObjectChange" in "this->mnEventObjectChange" looks like a copy-paste error.
3439 if (nullptr != mnEventObjectChange)
3440 // avoid multiple events
3441 return;
3442
3443 if (!isCurrentSlideInvolved(rSdrHint))
3444 // nothing to do when current slide is not involved
** CID 1592379: Control flow issues (DEADCODE)
/sc/source/core/tool/interpr1.cxx: 7720 in ScInterpreter::CalculateLookup(bool)()
________________________________________________________________________________________________________
*** CID 1592379: Control flow issues (DEADCODE)
/sc/source/core/tool/interpr1.cxx: 7720 in ScInterpreter::CalculateLookup(bool)()
7714 }
7715 nRow = nZIndex;
7716 }
7717 else
7718 {
7719 ScAddress aResultPos( nCol1, nRow1, nTab1);
>>> CID 1592379: Control flow issues (DEADCODE)
>>> Execution cannot reach the expression "287" inside this statement: "bFound = this->LookupQueryW...".
7720 bFound = LookupQueryWithCache( aResultPos, aParam, refData, 0,
7721 ( bHLookup ? SC_OPCODE_H_LOOKUP : SC_OPCODE_V_LOOKUP ) );
7722 nRow = aResultPos.Row();
7723 nCol = nSpIndex;
7724 }
7725
** CID 1592378: Control flow issues (DEADCODE)
/oox/source/export/chartexport.cxx: 1723 in oox::drawingml::ChartExport::exportPlotArea(const com::sun::star::uno::Reference<com::sun::star::chart::XChartDocument> &)()
________________________________________________________________________________________________________
*** CID 1592378: Control flow issues (DEADCODE)
/oox/source/export/chartexport.cxx: 1723 in oox::drawingml::ChartExport::exportPlotArea(const com::sun::star::uno::Reference<com::sun::star::chart::XChartDocument> &)()
1717 case chart2::PieChartSubType_PIE:
1718 sSubType = "pie";
1719 break;
1720 case chart2::PieChartSubType_BAR:
1721 sSubType = "bar";
1722 break;
>>> CID 1592378: Control flow issues (DEADCODE)
>>> Execution cannot reach this statement: "case (com::sun::star::chart...".
1723 case chart2::PieChartSubType_NONE:
1724 default:
1725 assert(false);
1726 }
1727
1728 exportOfPieChart(xChartType, sSubType);
** CID 1592377: Error handling issues (UNCAUGHT_EXCEPT)
/sw/source/filter/ww8/writerhelper.cxx: 834 in sw::util::RedlineStack::~RedlineStack()()
________________________________________________________________________________________________________
*** CID 1592377: Error handling issues (UNCAUGHT_EXCEPT)
/sw/source/filter/ww8/writerhelper.cxx: 834 in sw::util::RedlineStack::~RedlineStack()()
828 if (pOne->m_aStamp == pTwo->m_aStamp)
829 return (pOne->m_eType == RedlineType::Insert && pTwo->m_eType != RedlineType::Insert);
830 else
831 return (pOne->m_aStamp < pTwo->m_aStamp);
832 }
833
>>> CID 1592377: 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().
834 RedlineStack::~RedlineStack()
835 {
836 std::stable_sort(maStack.begin(), maStack.end(), CompareRedlines());
837 std::for_each(maStack.begin(), maStack.end(), SetInDocAndDelete(mrDoc));
838 }
839
** CID 1592376: Uninitialized members (UNINIT_CTOR)
/sd/source/ui/slideshow/slideshowimpl.cxx: 259 in sd::AnimationSlideController::AnimationSlideController(const com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> &, sd::AnimationSlideController::Mode)()
________________________________________________________________________________________________________
*** CID 1592376: Uninitialized members (UNINIT_CTOR)
/sd/source/ui/slideshow/slideshowimpl.cxx: 259 in sd::AnimationSlideController::AnimationSlideController(const com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess> &, sd::AnimationSlideController::Mode)()
253 , mnCurrentSlideIndex(0)
254 , mnHiddenSlideNumber( -1 )
255 , mxSlides( xSlides )
256 {
257 if( mxSlides.is() )
258 mnSlideCount = xSlides->getCount();
>>> CID 1592376: Uninitialized members (UNINIT_CTOR)
>>> Non-static class member "meMode2" is not initialized in this constructor nor in any functions that it calls.
259 }
260
261 sal_Int32 AnimationSlideController::getStartSlideIndex() const
262 {
263 if( mnStartSlideNumber >= 0 )
264 {
** CID 1592375: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/chart2/source/controller/main/ChartController.cxx: 1400 in chart::ChartController::executeDispatch_SourceData()()
________________________________________________________________________________________________________
*** CID 1592375: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
/chart2/source/controller/main/ChartController.cxx: 1400 in chart::ChartController::executeDispatch_SourceData()()
1394 }
1395 }
1396 auto aUndoGuard = std::make_shared<UndoLiveUpdateGuard>(SchResId(STR_ACTION_EDIT_DATA_RANGES),
1397 m_xUndoManager);
1398 SolarMutexGuard aSolarGuard;
1399 auto aDlg = std::make_shared<DataSourceDialog>(GetChartFrame(), xChartDoc);
>>> CID 1592375: Performance inefficiencies (COPY_INSTEAD_OF_MOVE)
>>> "aUndoGuard" is copied in call to copy constructor "std::shared_ptr<chart::UndoLiveUpdateGuard>", when it could be moved instead.
1400 weld::DialogController::runAsync(aDlg, [this, aUndoGuard](int nResult) {
1401 if (nResult == RET_OK)
1402 {
1403 impl_adaptDataSeriesAutoResize();
1404 aUndoGuard->commit();
1405 }
________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, https://u15810271.ct.sendgrid.net/ls/click?upn=u001.AxU2LYlgjL6eX23u9ErQy-2BKADyCpvUKOL6EWmZljiu6VvXBlQRUbS683tC8265rGNPXqJ1ffcoLZCnTuJFQbNcTEkb4XaEQkzovKhJ5DB3c-3Di5U8_A9M4dSy7guk8NP6DcfgslOyvJRzavztVIKj6nRqYjYpWom7SJFyX0y710bz0kUGtciFB2cC3TzuBw2WfMrYA1doWhvDMLsKxHyF156SXFilFpVe6U7TCQoX9yH3TIQuPRU0I-2BTAYmMIT5Y-2Fd0s08w57FeGCwysMrxycPQsENQXzzsM6DrTbK3uFkbTabcw08-2FJxfS8bXhbW8xUmScczfPBkAdRjz-2Fjumeeczs9AP4Ig-3D
More information about the LibreOffice
mailing list