Hi,
Please find the latest report on new defect(s) introduced to LibreOffice found with Coverity Scan.
3 new defect(s) introduced to LibreOffice found with Coverity Scan.
2 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 3 of 3 defect(s)
** CID 1458168: (FORWARD_NULL)
________________________________________________________________________________________________________
*** CID 1458168: (FORWARD_NULL)
/vcl/unx/generic/gdi/gdiimpl.cxx: 1749 in X11SalGraphicsImpl::drawPolyLine(const
basegfx::B2DHomMatrix &, const basegfx::B2DPolygon &, double, const basegfx::B2DVector &, const
std::vector<double, std::allocator<double>> *, basegfx::B2DLineJoin,
com::sun::star::drawing::LineCap, double, bool)()
1743 // MM01 need to do line dashing as fallback stuff here now
1744 basegfx::B2DPolyPolygon aPolyPolygonLine;
1745
1746 if(bStrokeUsed)
1747 {
1748 // apply LineStyle
CID 1458168: (FORWARD_NULL)
Passing null pointer "pStroke" to "applyLineDashing", which dereferences it.
1749 basegfx::utils::applyLineDashing(
1750 rPolygon, // source
1751 *pStroke, // pattern
1752 &aPolyPolygonLine, // target for lines
1753 nullptr, // target for gaps
1754 fDotDashLength); // full length if available
/vcl/unx/generic/gdi/gdiimpl.cxx: 1699 in X11SalGraphicsImpl::drawPolyLine(const
basegfx::B2DHomMatrix &, const basegfx::B2DPolygon &, double, const basegfx::B2DVector &, const
std::vector<double, std::allocator<double>> *, basegfx::B2DLineJoin,
com::sun::star::drawing::LineCap, double, bool)()
1693 {
1694 // MM01 - check on stroke change. Used against not used, or if oth used,
1695 // equal or different? Triangulation geometry creation depends heavily
1696 // on stroke, independent of being transformation independent
1697 const bool
bStrokeWasUsed(!pSystemDependentData_Triangulation->getStroke().empty());
1698
CID 1458168: (FORWARD_NULL)
Passing null pointer "pStroke" to "operator !=", which dereferences it.
1699 if(bStrokeWasUsed != bStrokeUsed
1700 || (bStrokeUsed && *pStroke != pSystemDependentData_Triangulation->getStroke()))
1701 {
1702 // data invalid, forget
1703 pSystemDependentData_Triangulation.reset();
1704 }
** CID 1458167: (FORWARD_NULL)
________________________________________________________________________________________________________
*** CID 1458167: (FORWARD_NULL)
/vcl/headless/svpgdi.cxx: 1381 in SvpSalGraphics::drawPolyLine(_cairo *, basegfx::B2DRange *, const
Color &, bool, const basegfx::B2DHomMatrix &, const basegfx::B2DPolygon &, double, const
basegfx::B2DVector &, const std::vector<double, std::allocator<double>> *, basegfx::B2DLineJoin,
com::sun::star::drawing::LineCap, double, bool)()
1375 // MM01 need to do line dashing as fallback stuff here now
1376 basegfx::B2DPolyPolygon aPolyPolygonLine;
1377
1378 if(!bDoDirectCairoStroke && bStrokeUsed)
1379 {
1380 // apply LineStyle
CID 1458167: (FORWARD_NULL)
Passing null pointer "pStroke" to "applyLineDashing", which dereferences it.
1381 basegfx::utils::applyLineDashing(
1382 rPolyLine, // source
1383 *pStroke, // pattern
1384 &aPolyPolygonLine, // target for lines
1385 nullptr, // target for gaps
1386 fDotDashLength); // full length if available
/vcl/headless/svpgdi.cxx: 1340 in SvpSalGraphics::drawPolyLine(_cairo *, basegfx::B2DRange *, const
Color &, bool, const basegfx::B2DHomMatrix &, const basegfx::B2DPolygon &, double, const
basegfx::B2DVector &, const std::vector<double, std::allocator<double>> *, basegfx::B2DLineJoin,
com::sun::star::drawing::LineCap, double, bool)()
1334 if(!bDoDirectCairoStroke && pSystemDependentData_CairoPath)
1335 {
1336 // MM01 - check on stroke change. Used against not used, or if both used,
1337 // equal or different?
1338 const bool bStrokeWasUsed(!pSystemDependentData_CairoPath->getStroke().empty());
1339
CID 1458167: (FORWARD_NULL)
Passing null pointer "pStroke" to "operator !=", which dereferences it.
1340 if(bStrokeWasUsed != bStrokeUsed
1341 || (bStrokeUsed && *pStroke != pSystemDependentData_CairoPath->getStroke()))
1342 {
1343 // data invalid, forget
1344 pSystemDependentData_CairoPath.reset();
1345 }
/vcl/headless/svpgdi.cxx: 1331 in SvpSalGraphics::drawPolyLine(_cairo *, basegfx::B2DRange *, const
Color &, bool, const basegfx::B2DHomMatrix &, const basegfx::B2DPolygon &, double, const
basegfx::B2DVector &, const std::vector<double, std::allocator<double>> *, basegfx::B2DLineJoin,
com::sun::star::drawing::LineCap, double, bool)()
1325 // MM01 decide if to stroke directly
1326 static bool bDoDirectCairoStroke(true);
1327
1328 // MM01 activate to stroke directly
1329 if(bDoDirectCairoStroke && bStrokeUsed)
1330 {
CID 1458167: (FORWARD_NULL)
Passing null pointer "pStroke" to "data", which dereferences it.
1331 cairo_set_dash(cr, pStroke->data(), pStroke->size(), 0.0);
1332 }
1333
1334 if(!bDoDirectCairoStroke && pSystemDependentData_CairoPath)
1335 {
1336 // MM01 - check on stroke change. Used against not used, or if both used,
** CID 1458166: Null pointer dereferences (FORWARD_NULL)
________________________________________________________________________________________________________
*** CID 1458166: Null pointer dereferences (FORWARD_NULL)
/vcl/opengl/gdiimpl.cxx: 1664 in OpenGLSalGraphicsImpl::drawPolyLine(const basegfx::B2DHomMatrix &,
const basegfx::B2DPolygon &, double, const basegfx::B2DVector &, const std::vector<double,
std::allocator<double>> *, basegfx::B2DLineJoin, com::sun::star::drawing::LineCap, double, bool)()
1658 const bool bStrokeUsed(0.0 != fDotDashLength);
1659 basegfx::B2DPolyPolygon aPolyPolygonLine;
1660
1661 if(bStrokeUsed)
1662 {
1663 // apply LineStyle
CID 1458166: Null pointer dereferences (FORWARD_NULL)
Passing null pointer "pStroke" to "applyLineDashing", which dereferences it.
1664 basegfx::utils::applyLineDashing(
1665 rPolygon, // source
1666 *pStroke, // pattern
1667 &aPolyPolygonLine, // target for lines
1668 nullptr, // target for gaps
1669 fDotDashLength); // full length if available
________________________________________________________________________________________________________
To view the defects in Coverity Scan visit,
https://u2389337.ct.sendgrid.net/ls/click?upn=nJaKvJSIH-2FPAfmty-2BK5tYpPklAc1eEA-2F1zfUjH6teExViPHTTReBArhCRZ3BE4kCjKjDqn2Dq3ZyEbAvAs31gRpU3vMPHDnoSx68vDAWjNU-3DAQ5T_OTq2XUZbbipYjyLSo6GRo-2FpVxQ9OzkDINu9UTS-2FQhSdO0F0jQniitrGlNxDIzPJiN8VugIhwRKLym8J-2FLQOgZZnyRix-2B4YBsnauNQV37c8VAMQxVNoLXoCAt7TxdxQF0-2F0EF36v-2FVQrH0SUWKhuxSZzcy-2BBrd3avT8wt2yagWiUX0yH7HvcELM16jRs8zuFOigZiMq4LyMuWLzvYRi0bqGQgSmxO4abGPPl8IszJUxpMf6P-2B1gLnOJFrQ1GYSNm-2B
Context
- New Defects reported by Coverity Scan for LibreOffice · scan-admin
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.