Advice needed about some cppcheck reports
Michael Stahl
mstahl at redhat.com
Tue May 29 06:34:31 PDT 2012
On 28/05/12 18:03, julien2412 wrote:
> Hello,
>
> Here are some cases found by cppcheck and I don't know what to do for them :
> [sw/source/ui/docvw/SidebarWin.cxx:796] ->
> [sw/source/ui/docvw/SidebarWin.cxx:794]: (style) Found duplicate branches
> for if and else.
>
> 791 const SwViewOption* pVOpt =
> mrView.GetWrtShellPtr()->GetViewOptions();
> 792 sal_uLong nCntrl = Engine()->GetControlWord();
> 793 // turn off
> 794 if (!pVOpt->IsOnlineSpell())
> 795 nCntrl &= ~EE_CNTRL_ONLINESPELLING;
> 796 else
> 797 nCntrl &= ~EE_CNTRL_ONLINESPELLING;
> 798 Engine()->SetControlWord(nCntrl);
> 799
> 800 //turn back on
> 801 if (pVOpt->IsOnlineSpell())
> 802 nCntrl |= EE_CNTRL_ONLINESPELLING;
> 803 else
> 804 nCntrl &= ~EE_CNTRL_ONLINESPELLING;
> 805 Engine()->SetControlWord(nCntrl);
> => Just remove the if because we want to turn off in both cases ?
yes, clearly the intent here is to turn it off always and then perhaps
back on.
> [sw/source/ui/shells/langhelper.cxx:214] ->
> [sw/source/ui/shells/langhelper.cxx:212]: (style) Found duplicate branches
> for if and else.
> 209 const SwViewOption* pVOpt =
> rView.GetWrtShellPtr()->GetViewOptions();
> 210 sal_uLong nCntrl =
> pEditEngine->GetControlWord();
> 211 // turn off
> 212 if (!pVOpt->IsOnlineSpell())
> 213 nCntrl &= ~EE_CNTRL_ONLINESPELLING;
> 214 else
> 215 nCntrl &= ~EE_CNTRL_ONLINESPELLING;
> 216 pEditEngine->SetControlWord(nCntrl);
> 217
> 218 //turn back on
> 219 if (pVOpt->IsOnlineSpell())
> 220 nCntrl |= EE_CNTRL_ONLINESPELLING;
> 221 else
> 222 nCntrl &= ~EE_CNTRL_ONLINESPELLING;
> 223 pEditEngine->SetControlWord(nCntrl);
> => Idem former case ?
yes
> [connectivity/source/drivers/mozab/MDriver.cxx:240] ->
> [connectivity/source/drivers/mozab/MDriver.cxx:238]: (style) Found duplicate
> branches for if and else.
> 238 else if(url ==
> ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("sdbc:address:")) )
> 239 return Unknown; // TODO check
> 240 else
> 241 return Unknown;
> In 2010-11-19 was in the form "else if(url ==
> ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("sdbc:address:")) )" and before,
> like this since 2004-08-02
no idea, presumably TODO indicates there should be special handling for
the sdbc:address case?
> [sw/source/core/unocore/unomap.cxx:965] ->
> [sw/source/core/unocore/unomap.cxx:965]: (style) Same expression on both
> sides of '|'.
> [sw/source/core/unocore/unomap.cxx:968] ->
> [sw/source/core/unocore/unomap.cxx:968]: (style) Same expression on both
> sides of '|'.
> [sw/source/core/unocore/unomap.cxx:969] ->
> [sw/source/core/unocore/unomap.cxx:969]: (style) Same expression on both
> sides of '|'.
> 965 { SW_PROP_NMID(UNO_NAME_BACK_COLOR),
> FN_UNO_TABLE_CELL_BACKGROUND, CPPU_E2T(CPPUTYPE_INT32),
> PropertyAttribute::MAYBEVOID|PropertyAttribute::MAYBEVOID ,MID_BACK_COLOR
> },
> 966 { SW_PROP_NMID(UNO_NAME_BACK_GRAPHIC_URL),
> RES_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING),
> PropertyAttribute::MAYBEVOID ,MID_GRAPHIC_URL },
> 967 { SW_PROP_NMID(UNO_NAME_BACK_GRAPHIC_FILTER),
> RES_BACKGROUND, CPPU_E2T(CPPUTYPE_OUSTRING),
> PropertyAttribute::MAYBEVOID ,MID_GRAPHIC_FILTER },
> 968 { SW_PROP_NMID(UNO_NAME_BACK_GRAPHIC_LOCATION),
> FN_UNO_TABLE_CELL_BACKGROUND, CPPU_E2T(CPPUTYPE_GRAPHICLOC),
> PropertyAttribute::MAYBEVOID|PropertyAttribute::MAYBEVOID
> ,MID_GRAPHIC_POSITION},
> 969 { SW_PROP_NMID(UNO_NAME_BACK_TRANSPARENT),
> FN_UNO_TABLE_CELL_BACKGROUND, CPPU_E2T(CPPUTYPE_BOOLEAN),
> PropertyAttribute::MAYBEVOID|PropertyAttribute::MAYBEVOID
> ,MID_GRAPHIC_TRANSPARENT },
> => just remove extra PropertyAttribute::MAYBEVOID ?
it looks to me like none of the other PropertyAttribute values make
sense here, so just remove the duplicate.
> [sal/osl/unx/file.cxx:1261] -> [sal/osl/unx/file.cxx:1261]: (style) Same
> expression on both sides of '-'.
> 1257 if (nSize > 0)
> 1258 {
> 1259 c^= pData[0];
> 1260 pData += nSize;
> 1261 nSize -= nSize;
> 1262 }
> Just put nSize to 0 ?
makes sense
> Same thing here :
> [sal/osl/w32/file.cxx:880] -> [sal/osl/w32/file.cxx:880]: (style) Same
> expression on both sides of '-'.
> 876 if (nSize > 0)
> 877 {
> 878 c ^= pData[0];
> 879 pData += nSize;
> 880 nSize -= nSize;
> 881 }
>
> And here :
> [filter/source/graphicfilter/icgm/cgm.cxx:269] ->
> [filter/source/graphicfilter/icgm/cgm.cxx:269]: (style) Same expression on
> both sides of '-'.
> 267 if ( pLong[ nSwitch ] < 0 )
> 268 {
> 269 nRetValue -= nRetValue;
> 270 }
> 271 nRetValue /= 65536;
also makes sense
More information about the LibreOffice
mailing list