[umbrello-devel] New Defects reported by Coverity Scan for Umbrello UML Modeller
scan-admin at coverity.com
scan-admin at coverity.com
Thu Aug 6 13:38:05 UTC 2015
Hi,
Please find the latest report on new defect(s) introduced to Umbrello UML Modeller found with Coverity Scan.
6 new defect(s) introduced to Umbrello UML Modeller found with Coverity Scan.
1 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 6 of 6 defect(s)
** CID 130238: Uninitialized members (UNINIT_CTOR)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.h: 72 in SQLImport::TableConstraints::TableConstraints()()
________________________________________________________________________________________________________
*** CID 130238: Uninitialized members (UNINIT_CTOR)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.h: 72 in SQLImport::TableConstraints::TableConstraints()()
66 TableConstraints()
67 : primaryKey(false),
68 uniqueKeys(false),
69 autoIncrement(false),
70 checkConstraint(false)
71 {
>>> CID 130238: Uninitialized members (UNINIT_CTOR)
>>> Non-static class member "notNullConstraint" is not initialized in this constructor nor in any functions that it calls.
72 }
73
74 bool primaryKey;
75 bool uniqueKeys;
76 bool notNullConstraint;
77 bool autoIncrement;
** CID 130237: Uninitialized variables (UNINIT)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 472 in SQLImport::parseTableConstraints(QString &)()
________________________________________________________________________________________________________
*** CID 130237: Uninitialized variables (UNINIT)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 472 in SQLImport::parseTableConstraints(QString &)()
466 *
467 * @param token string with current token
468 * @return table constraints
469 */
470 SQLImport::TableConstraints SQLImport::parseTableConstraints(QString &token)
471 {
>>> CID 130237: Uninitialized variables (UNINIT)
>>> Declaring variable "constraints".
472 TableConstraints constraints;
473
474 if (token.toLower() == QLatin1String("constraint")) {
475 constraints.constraintName = advance();
476 token = advance();
477 }
** CID 130234: (FORWARD_NULL)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 630 in SQLImport::parseCreateTable(QString &)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 630 in SQLImport::parseCreateTable(QString &)()
________________________________________________________________________________________________________
*** CID 130234: (FORWARD_NULL)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 630 in SQLImport::parseCreateTable(QString &)()
624 QString tableName = parseIdentifier(token);
625 DEBUG(DBG_SRC) << "parsing create table" << tableName;
626
627 UMLFolder *folder = UMLApp::app()->document()->rootFolder(Uml::ModelType::EntityRelationship);
628 UMLObject *o = Import_Utils::createUMLObject(UMLObject::ot_Entity,
629 tableName, folder, m_comment);
>>> CID 130234: (FORWARD_NULL)
>>> Assigning: "entity" = "dynamic_cast <UMLEntity *>(o)".
630 UMLEntity *entity = dynamic_cast<UMLEntity*>(o);
631 m_comment.clear();
632 if (token.toLower() == QLatin1String("as")) {
633 skipStmt(QLatin1String(";"));
634 return false;
635 } else if (token == QLatin1String("(")) {
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 630 in SQLImport::parseCreateTable(QString &)()
624 QString tableName = parseIdentifier(token);
625 DEBUG(DBG_SRC) << "parsing create table" << tableName;
626
627 UMLFolder *folder = UMLApp::app()->document()->rootFolder(Uml::ModelType::EntityRelationship);
628 UMLObject *o = Import_Utils::createUMLObject(UMLObject::ot_Entity,
629 tableName, folder, m_comment);
>>> CID 130234: (FORWARD_NULL)
>>> Assigning: "entity" = "dynamic_cast <UMLEntity *>(o)".
630 UMLEntity *entity = dynamic_cast<UMLEntity*>(o);
631 m_comment.clear();
632 if (token.toLower() == QLatin1String("as")) {
633 skipStmt(QLatin1String(";"));
634 return false;
635 } else if (token == QLatin1String("(")) {
** CID 130233: (FORWARD_NULL)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 582 in SQLImport::parseCreateDefinition(QString &, UMLEntity *)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 582 in SQLImport::parseCreateDefinition(QString &, UMLEntity *)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 582 in SQLImport::parseCreateDefinition(QString &, UMLEntity *)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 582 in SQLImport::parseCreateDefinition(QString &, UMLEntity *)()
________________________________________________________________________________________________________
*** CID 130233: (FORWARD_NULL)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 582 in SQLImport::parseCreateDefinition(QString &, UMLEntity *)()
576
577 // handle field type
578 QStringList fieldType = parseFieldType(token);
579 SQLImport::ColumnConstraints constraints = parseColumnConstraints(token);
580
581 DEBUG(DBG_SRC) << "field" << fieldName << fieldType.at(0);
>>> CID 130233: (FORWARD_NULL)
>>> Comparing "entity" to null implies that "entity" might be null.
582 if (entity && !fieldName.isEmpty()) {
583 UMLObject *type = addDatatype(fieldType);
584 UMLEntityAttribute *a = new UMLEntityAttribute(0, fieldName,
585 Uml::ID::None,
586 Uml::Visibility::Public,
587 type);
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 582 in SQLImport::parseCreateDefinition(QString &, UMLEntity *)()
576
577 // handle field type
578 QStringList fieldType = parseFieldType(token);
579 SQLImport::ColumnConstraints constraints = parseColumnConstraints(token);
580
581 DEBUG(DBG_SRC) << "field" << fieldName << fieldType.at(0);
>>> CID 130233: (FORWARD_NULL)
>>> Comparing "entity" to null implies that "entity" might be null.
582 if (entity && !fieldName.isEmpty()) {
583 UMLObject *type = addDatatype(fieldType);
584 UMLEntityAttribute *a = new UMLEntityAttribute(0, fieldName,
585 Uml::ID::None,
586 Uml::Visibility::Public,
587 type);
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 582 in SQLImport::parseCreateDefinition(QString &, UMLEntity *)()
576
577 // handle field type
578 QStringList fieldType = parseFieldType(token);
579 SQLImport::ColumnConstraints constraints = parseColumnConstraints(token);
580
581 DEBUG(DBG_SRC) << "field" << fieldName << fieldType.at(0);
>>> CID 130233: (FORWARD_NULL)
>>> Comparing "entity" to null implies that "entity" might be null.
582 if (entity && !fieldName.isEmpty()) {
583 UMLObject *type = addDatatype(fieldType);
584 UMLEntityAttribute *a = new UMLEntityAttribute(0, fieldName,
585 Uml::ID::None,
586 Uml::Visibility::Public,
587 type);
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 582 in SQLImport::parseCreateDefinition(QString &, UMLEntity *)()
576
577 // handle field type
578 QStringList fieldType = parseFieldType(token);
579 SQLImport::ColumnConstraints constraints = parseColumnConstraints(token);
580
581 DEBUG(DBG_SRC) << "field" << fieldName << fieldType.at(0);
>>> CID 130233: (FORWARD_NULL)
>>> Comparing "entity" to null implies that "entity" might be null.
582 if (entity && !fieldName.isEmpty()) {
583 UMLObject *type = addDatatype(fieldType);
584 UMLEntityAttribute *a = new UMLEntityAttribute(0, fieldName,
585 Uml::ID::None,
586 Uml::Visibility::Public,
587 type);
** CID 130232: (FORWARD_NULL)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 693 in SQLImport::parseAlterTable(QString &)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 704 in SQLImport::parseAlterTable(QString &)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 733 in SQLImport::parseAlterTable(QString &)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 693 in SQLImport::parseAlterTable(QString &)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 704 in SQLImport::parseAlterTable(QString &)()
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 733 in SQLImport::parseAlterTable(QString &)()
________________________________________________________________________________________________________
*** CID 130232: (FORWARD_NULL)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 693 in SQLImport::parseAlterTable(QString &)()
687 token = advance(); // key
688 token = advance();
689 const QStringList &fieldNames = parseIdentifierList(token);
690 if (!o) {
691 // report error
692 }
>>> CID 130232: (FORWARD_NULL)
>>> Assigning: "entity" = "dynamic_cast <UMLEntity *>(o)".
693 UMLEntity *entity = dynamic_cast<UMLEntity*>(o);
694 if (!addPrimaryKey(entity, constraintName, fieldNames)) {
695 ; // reporter error
696 }
697 }
698 else if (token.toLower() == QLatin1String("unique")) {
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 704 in SQLImport::parseAlterTable(QString &)()
698 else if (token.toLower() == QLatin1String("unique")) {
699 token = advance();
700 const QStringList &fieldNames = parseIdentifierList(token);
701 if (!o) {
702 // report error
703 }
>>> CID 130232: (FORWARD_NULL)
>>> Assigning: "entity" = "dynamic_cast <UMLEntity *>(o)".
704 UMLEntity *entity = dynamic_cast<UMLEntity*>(o);
705 if (!addUniqueConstraint(entity, constraintName, fieldNames)) {
706 ; // report error
707 }
708 }
709 // FOREIGN KEY (<NAME>) REFERENCES <TABLE> (<FIELD>)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 733 in SQLImport::parseAlterTable(QString &)()
727 token = advance(); // full
728 }
729
730 if (!o) {
731 // report error
732 }
>>> CID 130232: (FORWARD_NULL)
>>> Assigning: "entity" = "dynamic_cast <UMLEntity *>(o)".
733 UMLEntity *entity = dynamic_cast<UMLEntity*>(o);
734 if (!addForeignConstraint(entity, constraintName, localFieldNames, referencedTableName, referencedFieldNames)) {
735 ; // report error
736 }
737 }
738 }
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 693 in SQLImport::parseAlterTable(QString &)()
687 token = advance(); // key
688 token = advance();
689 const QStringList &fieldNames = parseIdentifierList(token);
690 if (!o) {
691 // report error
692 }
>>> CID 130232: (FORWARD_NULL)
>>> Assigning: "entity" = "dynamic_cast <UMLEntity *>(o)".
693 UMLEntity *entity = dynamic_cast<UMLEntity*>(o);
694 if (!addPrimaryKey(entity, constraintName, fieldNames)) {
695 ; // reporter error
696 }
697 }
698 else if (token.toLower() == QLatin1String("unique")) {
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 704 in SQLImport::parseAlterTable(QString &)()
698 else if (token.toLower() == QLatin1String("unique")) {
699 token = advance();
700 const QStringList &fieldNames = parseIdentifierList(token);
701 if (!o) {
702 // report error
703 }
>>> CID 130232: (FORWARD_NULL)
>>> Assigning: "entity" = "dynamic_cast <UMLEntity *>(o)".
704 UMLEntity *entity = dynamic_cast<UMLEntity*>(o);
705 if (!addUniqueConstraint(entity, constraintName, fieldNames)) {
706 ; // report error
707 }
708 }
709 // FOREIGN KEY (<NAME>) REFERENCES <TABLE> (<FIELD>)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 733 in SQLImport::parseAlterTable(QString &)()
727 token = advance(); // full
728 }
729
730 if (!o) {
731 // report error
732 }
>>> CID 130232: (FORWARD_NULL)
>>> Assigning: "entity" = "dynamic_cast <UMLEntity *>(o)".
733 UMLEntity *entity = dynamic_cast<UMLEntity*>(o);
734 if (!addForeignConstraint(entity, constraintName, localFieldNames, referencedTableName, referencedFieldNames)) {
735 ; // report error
736 }
737 }
738 }
** CID 130231: Null pointer dereferences (FORWARD_NULL)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 818 in SQLImport::addDatatype(const QStringList &)()
________________________________________________________________________________________________________
*** CID 130231: Null pointer dereferences (FORWARD_NULL)
/home/umbrello/src/umbrello/umbrello/codeimport/sqlimport.cpp: 818 in SQLImport::addDatatype(const QStringList &)()
812 {
813 UMLObject *datatype = 0;
814 UMLPackage *parent = UMLApp::app()->document()->datatypeFolder();
815 if (type.at(0).toLower() == QLatin1String("enum")) {
816 QString name = Model_Utils::uniqObjectName(UMLObject::ot_Enum, parent, type.at(0));
817 datatype = Import_Utils::createUMLObject(UMLObject::ot_Enum, name, parent);
>>> CID 130231: Null pointer dereferences (FORWARD_NULL)
>>> Assigning: "enumType" = "dynamic_cast <UMLEnum *>(datatype)".
818 UMLEnum *enumType = dynamic_cast<UMLEnum*>(datatype);
819 for (int i = 2; i < type.size(); i++) {
820 Import_Utils::addEnumLiteral(enumType, type.at(i));
821 }
822 } else {
823 datatype = Import_Utils::createUMLObject(UMLObject::ot_Datatype, type.at(0), parent);
________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, https://scan.coverity.com/projects/3327?tab=overview
To manage Coverity Scan email notifications for "umbrello-devel at kde.org", click https://scan.coverity.com/subscriptions/edit?email=umbrello-devel%40kde.org&token=5fd61726dd9f6c9e1c4e067b821d8371
More information about the umbrello-devel
mailing list