TD: Fix several coverity issues:

* CID 316569: Uninitialized scalar variable
* CID 350651: Unchecked dynamic_cast
* CID 350565: Unchecked dynamic_cast
* CID 350595: Unchecked dynamic_cast
* CID 350638: Unchecked dynamic_cast
* CID 350547: Division or modulo by float zero
This commit is contained in:
wmayer
2022-03-13 15:40:49 +01:00
parent f6f21f4fa6
commit 68171bd20c
4 changed files with 28 additions and 21 deletions

View File

@@ -105,7 +105,7 @@ void execInsertPrefixChar(Gui::Command* cmd, std::string prefixChar) {
for (auto selected : selection) {
auto object = selected.getObject();
if (object->isDerivedFrom(TechDraw::DrawViewDimension::getClassTypeId())) {
auto dim = dynamic_cast<TechDraw::DrawViewDimension*>(selected.getObject());
auto dim = static_cast<TechDraw::DrawViewDimension*>(selected.getObject());
std::string formatSpec = dim->FormatSpec.getStrValue();
formatSpec = prefixChar + formatSpec;
dim->FormatSpec.setValue(formatSpec);
@@ -190,7 +190,7 @@ void execRemovePrefixChar(Gui::Command* cmd) {
{
auto object = selected.getObject();
if (object->isDerivedFrom(TechDraw::DrawViewDimension::getClassTypeId())) {
auto dim = dynamic_cast<TechDraw::DrawViewDimension*>(selected.getObject());
auto dim = static_cast<TechDraw::DrawViewDimension*>(selected.getObject());
std::string formatSpec = dim->FormatSpec.getStrValue();
int pos = formatSpec.find("%.");
if (pos != 0)
@@ -360,7 +360,7 @@ void execIncreaseDecreaseDecimal(Gui::Command* cmd, int delta) {
for (auto selected : selection) {
auto object = selected.getObject();
if (object->isDerivedFrom(TechDraw::DrawViewDimension::getClassTypeId())) {
auto dim = dynamic_cast<TechDraw::DrawViewDimension*>(selected.getObject());
auto dim = static_cast<TechDraw::DrawViewDimension*>(selected.getObject());
std::string formatSpec = dim->FormatSpec.getStrValue();
std::string searchStr("%.");
int numFound = formatSpec.find(searchStr) + 2;
@@ -2343,7 +2343,7 @@ namespace TechDrawGui {
for (auto selected : selection) {
auto object = selected.getObject();
if (object->isDerivedFrom(TechDraw::DrawViewDimension::getClassTypeId())) {
auto dim = dynamic_cast<TechDraw::DrawViewDimension*>(selected.getObject());
auto dim = static_cast<TechDraw::DrawViewDimension*>(selected.getObject());
std::string dimType = dim->Type.getValueAsString();
if (dimType == needDimType)
validDimension.push_back(dim);