New Defects reported by Coverity Scan for LibreOffice
scan-admin at coverity.com
scan-admin at coverity.com
Sat Apr 1 17:06:54 UTC 2017
Hi,
Please find the latest report on new defect(s) introduced to LibreOffice found with Coverity Scan.
19 new defect(s) introduced to LibreOffice found with Coverity Scan.
New defect(s) Reported-by: Coverity Scan
Showing 19 of 19 defect(s)
** CID 1403674: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4080 in ScInterpreter::ScRow()()
________________________________________________________________________________________________________
*** CID 1403674: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4080 in ScInterpreter::ScRow()()
4074 switch ( GetStackType() )
4075 {
4076 case svSingleRef :
4077 {
4078 SCCOL nCol1;
4079 SCROW nRow1;
>>> CID 1403674: Uninitialized variables (UNINIT)
>>> Declaring variable "nTab1" without initializer.
4080 SCTAB nTab1;
4081 PopSingleRef( nCol1, nRow1, nTab1 );
4082 nVal = (double) (nRow1 + 1);
4083 }
4084 break;
4085 case svDoubleRef :
** CID 1403673: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4146 in ScInterpreter::ScSheet()()
________________________________________________________________________________________________________
*** CID 1403673: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4146 in ScInterpreter::ScSheet()()
4140 SetError( FormulaError::IllegalArgument );
4141 }
4142 break;
4143 case svSingleRef :
4144 {
4145 SCCOL nCol1;
>>> CID 1403673: Uninitialized variables (UNINIT)
>>> Declaring variable "nRow1" without initializer.
4146 SCROW nRow1;
4147 SCTAB nTab1;
4148 PopSingleRef( nCol1, nRow1, nTab1 );
4149 nVal = nTab1 + 1;
4150 }
4151 break;
** CID 1403672: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4079 in ScInterpreter::ScRow()()
________________________________________________________________________________________________________
*** CID 1403672: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4079 in ScInterpreter::ScRow()()
4073 {
4074 switch ( GetStackType() )
4075 {
4076 case svSingleRef :
4077 {
4078 SCCOL nCol1;
>>> CID 1403672: Uninitialized variables (UNINIT)
>>> Declaring variable "nRow1" without initializer.
4079 SCROW nRow1;
4080 SCTAB nTab1;
4081 PopSingleRef( nCol1, nRow1, nTab1 );
4082 nVal = (double) (nRow1 + 1);
4083 }
4084 break;
** CID 1403671: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 3998 in ScInterpreter::ScColumn()()
________________________________________________________________________________________________________
*** CID 1403671: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 3998 in ScInterpreter::ScColumn()()
3992 {
3993 switch ( GetStackType() )
3994 {
3995 case svSingleRef :
3996 {
3997 SCCOL nCol1;
>>> CID 1403671: Uninitialized variables (UNINIT)
>>> Declaring variable "nRow1" without initializer.
3998 SCROW nRow1;
3999 SCTAB nTab1;
4000 PopSingleRef( nCol1, nRow1, nTab1 );
4001 nVal = (double) (nCol1 + 1);
4002 }
4003 break;
** CID 1403670: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4147 in ScInterpreter::ScSheet()()
________________________________________________________________________________________________________
*** CID 1403670: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4147 in ScInterpreter::ScSheet()()
4141 }
4142 break;
4143 case svSingleRef :
4144 {
4145 SCCOL nCol1;
4146 SCROW nRow1;
>>> CID 1403670: Uninitialized variables (UNINIT)
>>> Declaring variable "nTab1" without initializer.
4147 SCTAB nTab1;
4148 PopSingleRef( nCol1, nRow1, nTab1 );
4149 nVal = nTab1 + 1;
4150 }
4151 break;
4152 case svDoubleRef :
** CID 1403669: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4078 in ScInterpreter::ScRow()()
________________________________________________________________________________________________________
*** CID 1403669: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4078 in ScInterpreter::ScRow()()
4072 else
4073 {
4074 switch ( GetStackType() )
4075 {
4076 case svSingleRef :
4077 {
>>> CID 1403669: Uninitialized variables (UNINIT)
>>> Declaring variable "nCol1" without initializer.
4078 SCCOL nCol1;
4079 SCROW nRow1;
4080 SCTAB nTab1;
4081 PopSingleRef( nCol1, nRow1, nTab1 );
4082 nVal = (double) (nRow1 + 1);
4083 }
** CID 1403668: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 3999 in ScInterpreter::ScColumn()()
________________________________________________________________________________________________________
*** CID 1403668: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 3999 in ScInterpreter::ScColumn()()
3993 switch ( GetStackType() )
3994 {
3995 case svSingleRef :
3996 {
3997 SCCOL nCol1;
3998 SCROW nRow1;
>>> CID 1403668: Uninitialized variables (UNINIT)
>>> Declaring variable "nTab1" without initializer.
3999 SCTAB nTab1;
4000 PopSingleRef( nCol1, nRow1, nTab1 );
4001 nVal = (double) (nCol1 + 1);
4002 }
4003 break;
4004 case svDoubleRef :
** CID 1403667: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 3997 in ScInterpreter::ScColumn()()
________________________________________________________________________________________________________
*** CID 1403667: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 3997 in ScInterpreter::ScColumn()()
3991 else
3992 {
3993 switch ( GetStackType() )
3994 {
3995 case svSingleRef :
3996 {
>>> CID 1403667: Uninitialized variables (UNINIT)
>>> Declaring variable "nCol1" without initializer.
3997 SCCOL nCol1;
3998 SCROW nRow1;
3999 SCTAB nTab1;
4000 PopSingleRef( nCol1, nRow1, nTab1 );
4001 nVal = (double) (nCol1 + 1);
4002 }
** CID 1403666: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4145 in ScInterpreter::ScSheet()()
________________________________________________________________________________________________________
*** CID 1403666: Uninitialized variables (UNINIT)
/sc/source/core/tool/interpr1.cxx: 4145 in ScInterpreter::ScSheet()()
4139 else
4140 SetError( FormulaError::IllegalArgument );
4141 }
4142 break;
4143 case svSingleRef :
4144 {
>>> CID 1403666: Uninitialized variables (UNINIT)
>>> Declaring variable "nCol1" without initializer.
4145 SCCOL nCol1;
4146 SCROW nRow1;
4147 SCTAB nTab1;
4148 PopSingleRef( nCol1, nRow1, nTab1 );
4149 nVal = nTab1 + 1;
4150 }
** CID 1403665: Parse warnings (PARSE_ERROR)
/include/xmloff/xmlement.hxx: 48 in ()
________________________________________________________________________________________________________
*** CID 1403665: Parse warnings (PARSE_ERROR)
/include/xmloff/xmlement.hxx: 48 in ()
42 EnumT GetValue() const { return static_cast<EnumT>(nValue); }
43 };
44
45 // specialisation to avoid lots of "C2398: conversion from 'const sal_Int16' to 'sal_uInt16' requires a narrowing conversion"
46 // errors when compiling on MSVC
47 template<>
>>> CID 1403665: Parse warnings (PARSE_ERROR)
>>> During compilation of file '/mnt/xmloff/source/text/XMLIndexAlphabeticalSourceContext.cxx'
48 struct SvXMLEnumMapEntry<sal_uInt16>
49 {
50 private:
51 ::xmloff::token::XMLTokenEnum eToken;
52 sal_uInt16 nValue;
53 public:
** CID 1403664: Null pointer dereferences (NULL_RETURNS)
/vcl/source/window/toolbox.cxx: 4826 in ToolBox::KeyInput(const KeyEvent &)()
________________________________________________________________________________________________________
*** CID 1403664: Null pointer dereferences (NULL_RETURNS)
/vcl/source/window/toolbox.cxx: 4826 in ToolBox::KeyInput(const KeyEvent &)()
4820 {
4821 // #107712#, disabled entries are selectable now
4822 // leave toolbox and move focus to document
4823 if( mnHighItemId )
4824 {
4825 ImplToolItem *pItem = ImplGetItem( mnHighItemId );
>>> CID 1403664: Null pointer dereferences (NULL_RETURNS)
>>> Dereferencing a null pointer "pItem".
4826 if( !pItem->mbEnabled )
4827 {
4828 bGrabFocusToDocument = true;
4829 }
4830 }
4831 if( !bGrabFocusToDocument )
** CID 1403663: Null pointer dereferences (NULL_RETURNS)
/vcl/source/window/toolbox.cxx: 5210 in ToolBox::ImplShowFocus()()
________________________________________________________________________________________________________
*** CID 1403663: Null pointer dereferences (NULL_RETURNS)
/vcl/source/window/toolbox.cxx: 5210 in ToolBox::ImplShowFocus()()
5204 }
5205
5206 void ToolBox::ImplShowFocus()
5207 {
5208 if( mnHighItemId && HasFocus() )
5209 {
>>> CID 1403663: Null pointer dereferences (NULL_RETURNS)
>>> Assigning: "pItem" = null return value from "ImplGetItem".
5210 ImplToolItem* pItem = ImplGetItem( mnHighItemId );
5211 if( pItem->mpWindow && !pItem->mpWindow->IsDisposed() )
5212 {
5213 vcl::Window *pWin = pItem->mpWindow->ImplGetWindowImpl()->mpBorderWindow ? pItem->mpWindow->ImplGetWindowImpl()->mpBorderWindow.get() : pItem->mpWindow.get();
5214 pWin->ImplGetWindowImpl()->mbDrawSelectionBackground = true;
5215 pWin->Invalidate();
** CID 1403662: Incorrect expression (MIXED_ENUMS)
/xmloff/source/style/postuhdl.cxx: 53 in XMLPosturePropHdl::importXML(const rtl::OUString &, com::sun::star::uno::Any &, const SvXMLUnitConverter &) const()
________________________________________________________________________________________________________
*** CID 1403662: Incorrect expression (MIXED_ENUMS)
/xmloff/source/style/postuhdl.cxx: 53 in XMLPosturePropHdl::importXML(const rtl::OUString &, com::sun::star::uno::Any &, const SvXMLUnitConverter &) const()
47
48 bool XMLPosturePropHdl::importXML( const OUString& rStrImpValue, uno::Any& rValue, const SvXMLUnitConverter& ) const
49 {
50 FontItalic ePosture;
51 bool bRet = SvXMLUnitConverter::convertEnum( ePosture, rStrImpValue, aPostureGenericMapping );
52 if( bRet )
>>> CID 1403662: Incorrect expression (MIXED_ENUMS)
>>> Mixing enum types "com::sun::star::awt::FontSlant" and "FontItalic" for "<temporary>".
53 rValue <<= (awt::FontSlant)ePosture;
54
55 return bRet;
56 }
57
58 bool XMLPosturePropHdl::exportXML( OUString& rStrExpValue, const uno::Any& rValue, const SvXMLUnitConverter& ) const
** CID 1403661: Incorrect expression (MIXED_ENUMS)
/sc/source/core/data/dptabsrc.cxx: 1564 in ScDPDimension::getPropertyValue(const rtl::OUString &)()
________________________________________________________________________________________________________
*** CID 1403661: Incorrect expression (MIXED_ENUMS)
/sc/source/core/data/dptabsrc.cxx: 1564 in ScDPDimension::getPropertyValue(const rtl::OUString &)()
1558 }
1559 else if ( aPropertyName == SC_UNO_DP_FUNCTION )
1560 {
1561 ScGeneralFunction nVal = getFunction();
1562 if (nVal == ScGeneralFunction::MEDIAN)
1563 nVal = ScGeneralFunction::NONE;
>>> CID 1403661: Incorrect expression (MIXED_ENUMS)
>>> Mixing enum types "com::sun::star::sheet::GeneralFunction" and "ScGeneralFunction" for "<temporary>".
1564 aRet <<= (sheet::GeneralFunction)nVal;
1565 }
1566 else if ( aPropertyName == SC_UNO_DP_FUNCTION2 )
1567 {
1568 ScGeneralFunction eVal = getFunction();
1569 aRet <<= (sal_Int16)eVal;
** CID 1403660: Incorrect expression (MIXED_ENUMS)
/sc/source/ui/unoobj/dapiuno.cxx: 1835 in ScDataPilotFieldObj::setPropertyValue(const rtl::OUString &, const com::sun::star::uno::Any &)()
________________________________________________________________________________________________________
*** CID 1403660: Incorrect expression (MIXED_ENUMS)
/sc/source/ui/unoobj/dapiuno.cxx: 1835 in ScDataPilotFieldObj::setPropertyValue(const rtl::OUString &, const com::sun::star::uno::Any &)()
1829 uno::Sequence<sheet::GeneralFunction> aSeq;
1830 if( aValue >>= aSeq)
1831 {
1832 std::vector< ScGeneralFunction > aSubTotals(aSeq.getLength());
1833 for (sal_Int32 nIndex = 0; nIndex < aSeq.getLength(); nIndex++)
1834 {
>>> CID 1403660: Incorrect expression (MIXED_ENUMS)
>>> Mixing enum types "ScGeneralFunction" and "com::sun::star::sheet::GeneralFunction" for dereference of "std::vector<ScGeneralFunction, std::allocator<ScGeneralFunction> >::operator [](std::vector<ScGeneralFunction, std::allocator<ScGeneralFunction> >::size_type)".
1835 aSubTotals[nIndex] = static_cast<ScGeneralFunction>(aSeq[nIndex]);
1836 }
1837 setSubtotals( aSubTotals );
1838 }
1839 }
1840 else if ( aPropertyName == SC_UNONAME_SUBTOTALS2 )
** CID 1403659: Concurrent data access violations (MISSING_LOCK)
/comphelper/source/misc/threadpool.cxx: 156 in comphelper::ThreadPool::shutdownLocked(std::unique_lock<std::mutex> &)()
________________________________________________________________________________________________________
*** CID 1403659: Concurrent data access violations (MISSING_LOCK)
/comphelper/source/misc/threadpool.cxx: 156 in comphelper::ThreadPool::shutdownLocked(std::unique_lock<std::mutex> &)()
150 {
151 while( !maTasks.empty() )
152 maTasksChanged.wait( aGuard );
153 }
154 assert( maTasks.empty() );
155
>>> CID 1403659: Concurrent data access violations (MISSING_LOCK)
>>> Accessing "this->mbTerminate" without holding lock "comphelper::ThreadPool.maMutex". Elsewhere, "_ZN10comphelper10ThreadPoolE.mbTerminate" is accessed with "comphelper::ThreadPool.maMutex" held 1 out of 2 times (1 of these accesses strongly imply that it is necessary).
156 mbTerminate = true;
157
158 maTasksChanged.notify_all();
159
160 decltype(maWorkers) aWorkers;
161 std::swap(maWorkers, aWorkers);
** CID 1403658: (INTEGER_OVERFLOW)
/shell/source/backends/localebe/localebackend.cxx: 193 in ImplGetLocale(const char *)()
/shell/source/backends/localebe/localebackend.cxx: 199 in ImplGetLocale(const char *)()
________________________________________________________________________________________________________
*** CID 1403658: (INTEGER_OVERFLOW)
/shell/source/backends/localebe/localebackend.cxx: 193 in ImplGetLocale(const char *)()
187 break;
188 }
189
190 OUStringBuffer aLocaleBuffer;
191 if( uscore != nullptr )
192 {
>>> CID 1403658: (INTEGER_OVERFLOW)
>>> Truncation due to cast operation on operand "uscore++ - locale" from 64 bits to 32 bits. Example value for operand: "uscore++ - locale" = 146030727183.
193 aLocaleBuffer.appendAscii(locale, uscore++ - locale);
194 aLocaleBuffer.append("-");
195 aLocaleBuffer.appendAscii(uscore, cp - uscore);
196 }
197 else
198 {
/shell/source/backends/localebe/localebackend.cxx: 199 in ImplGetLocale(const char *)()
193 aLocaleBuffer.appendAscii(locale, uscore++ - locale);
194 aLocaleBuffer.append("-");
195 aLocaleBuffer.appendAscii(uscore, cp - uscore);
196 }
197 else
198 {
>>> CID 1403658: (INTEGER_OVERFLOW)
>>> Truncation due to cast operation on operand "cp - locale" from 64 bits to 32 bits. Example value for operand: "cp - locale" = 288230376353038338.
199 aLocaleBuffer.appendAscii(locale, cp - locale);
200 }
201
202 return aLocaleBuffer.makeStringAndClear();
203 }
204
** CID 1403657: Error handling issues (CHECKED_RETURN)
/xmloff/source/text/XMLFootnoteConfigurationImportContext.cxx: 267 in XMLFootnoteConfigurationImportContext::StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList> &)()
________________________________________________________________________________________________________
*** CID 1403657: Error handling issues (CHECKED_RETURN)
/xmloff/source/text/XMLFootnoteConfigurationImportContext.cxx: 267 in XMLFootnoteConfigurationImportContext::StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList> &)()
261 break;
262 case XML_TOK_FTNCONFIG_NUM_SYNC:
263 sNumSync = sValue;
264 break;
265 case XML_TOK_FTNCONFIG_START_AT:
266 {
>>> CID 1403657: Error handling issues (CHECKED_RETURN)
>>> Calling "convertEnum" without checking return value (as is done elsewhere 18 out of 21 times).
267 SvXMLUnitConverter::convertEnum(nNumbering, sValue,
268 aFootnoteNumberingMap);
269 break;
270 }
271 case XML_TOK_FTNCONFIG_POSITION:
272 bPosition = IsXMLToken( sValue, XML_DOCUMENT );
** CID 1403656: Error handling issues (CHECKED_RETURN)
/xmloff/source/text/XMLLineNumberingImportContext.cxx: 193 in XMLLineNumberingImportContext::ProcessAttribute(LineNumberingToken, const rtl::OUString &)()
________________________________________________________________________________________________________
*** CID 1403656: Error handling issues (CHECKED_RETURN)
/xmloff/source/text/XMLLineNumberingImportContext.cxx: 193 in XMLLineNumberingImportContext::ProcessAttribute(LineNumberingToken, const rtl::OUString &)()
187 { XML_RIGHT, style::LineNumberPosition::RIGHT },
188 { XML_INSIDE, style::LineNumberPosition::INSIDE },
189 { XML_OUTSIDE, style::LineNumberPosition::OUTSIDE },
190 { XML_TOKEN_INVALID, 0 }
191 };
192
>>> CID 1403656: Error handling issues (CHECKED_RETURN)
>>> Calling "convertEnum" without checking return value (as is done elsewhere 18 out of 21 times).
193 SvXMLUnitConverter::convertEnum(nNumberPosition, sValue,
194 aLineNumberPositionMap);
195 break;
196 }
197
198 case XML_TOK_LINENUMBERING_INCREMENT:
________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, https://u2389337.ct.sendgrid.net/wf/click?upn=08onrYu34A-2BWcWUl-2F-2BfV0V05UPxvVjWch-2Bd2MGckcRZBnDJeNb0HijxaS4JNJPxk3kpyAm2AYqo71yXmnOxB72ibeUH-2F-2F1Lhi9AZq3dRu-2F4-3D_g-2BrHdvqzaBa155F-2F8AmPhpJzY63UzWDisJV95WUBpGhqFw1ICExHG8aMaV2EoFpy6jMrrjOiH80klgpTwXdwbu9C3Nqhm5X91e0PbJ-2B1CNHeqkJgEwh7rwx9Nu7-2BcpHoZLPaYk7PiBmybdLTK0EvQJxFWBZKbY05g-2FEt4SqQHAG-2B3xOViowiokBOAkFf32b1urN1k72zOBfJyVhx63ANcC7fFp9Zup23RXG-2FpPwjYQo-3D
To manage Coverity Scan email notifications for "libreoffice at lists.freedesktop.org", click https://u2389337.ct.sendgrid.net/wf/click?upn=08onrYu34A-2BWcWUl-2F-2BfV0V05UPxvVjWch-2Bd2MGckcRbVDbis712qZDP-2FA8y06Nq4k1FZJSDV-2FTHi5VQof9xGafB4oBwGYxuHHknceo2QLpCrZ44Ciy7AqBR2QyX6OCB5N5X-2B1MAElavPQhH6nLwozJzqOkt2k8uOkYf2ZoppNa9QVe0T3fEZVQ7Kky1tOkLz_g-2BrHdvqzaBa155F-2F8AmPhpJzY63UzWDisJV95WUBpGhqFw1ICExHG8aMaV2EoFpy6jMrrjOiH80klgpTwXdwbuETjBC-2BmZQAs5kcEwL7bI1coccD-2FyeKDC4Eh1dx2IXkPAW-2B08mUHlwndv9I9KbIt8it-2BC8ndS5dicWYJGaswcPlU42VwQXF7-2B7-2FwJzrl-2FB-2FuVzPyDPa8vCwrZV7EMvUnbf4HQ-2Frgc2nSwdewVHAU30-3D
More information about the LibreOffice
mailing list