diff --git a/scripts/cppcheck.sh b/scripts/cppcheck.sh index c0d276445..47c85de83 100755 --- a/scripts/cppcheck.sh +++ b/scripts/cppcheck.sh @@ -6,11 +6,12 @@ CPPCHECK="../../../../cppcheck/cppcheck" $CPPCHECK \ -j4 -f -q \ + -UDRW_DBG \ -U__INTEL_COMPILER_UPDATE \ -UqApp \ --template '{file}:{line}:{message}:{id}' \ --inline-suppr \ - --platform=unix32 \ + --platform=unix64 \ --std=c++11 \ --std=posix \ --enable=all \ diff --git a/src/app/tape/tmainwindow.cpp b/src/app/tape/tmainwindow.cpp index 599663941..fe15a6369 100644 --- a/src/app/tape/tmainwindow.cpp +++ b/src/app/tape/tmainwindow.cpp @@ -1923,9 +1923,10 @@ void TMainWindow::SetupMenu() { QAction *action = new QAction(this); recentFileActs[i] = action; - connect(action, &QAction::triggered, this, [action, this]() + connect(action, &QAction::triggered, this, [this]() { - if (action != nullptr) + QAction *action = qobject_cast(sender()); + if (action) { const QString filePath = action->data().toString(); if (not filePath.isEmpty()) diff --git a/src/libs/vdxf/dxiface.cpp b/src/libs/vdxf/dxiface.cpp index a8ad79ff5..4f2a4baa1 100644 --- a/src/libs/vdxf/dxiface.cpp +++ b/src/libs/vdxf/dxiface.cpp @@ -311,7 +311,7 @@ UTF8STRING dx_iface::AddFont(const QFont &f) return ts.name; } -std::string dx_iface::LocaleToISO() const +std::string dx_iface::LocaleToISO() { QMap locMap; locMap["croatian"] = "ISO8859-2"; diff --git a/src/libs/vdxf/dxiface.h b/src/libs/vdxf/dxiface.h index b35f64bb6..c0620df3a 100644 --- a/src/libs/vdxf/dxiface.h +++ b/src/libs/vdxf/dxiface.h @@ -26,7 +26,7 @@ public: : path() {} - dx_ifaceImg(const DRW_Image& p) + explicit dx_ifaceImg(const DRW_Image& p) : DRW_Image(p), path() {} @@ -42,7 +42,7 @@ public: : ent() {} - dx_ifaceBlock(const DRW_Block& p) + explicit dx_ifaceBlock(const DRW_Block& p) : DRW_Block(p), ent() {} @@ -132,7 +132,7 @@ private: void InitTextstyles(); void InitAppId(); - std::string LocaleToISO() const; + static std::string LocaleToISO(); }; #endif // DX_IFACE_H diff --git a/src/libs/vdxf/libdxfrw/drw_base.h b/src/libs/vdxf/libdxfrw/drw_base.h index 16d2d5d50..43f5d925f 100644 --- a/src/libs/vdxf/libdxfrw/drw_base.h +++ b/src/libs/vdxf/libdxfrw/drw_base.h @@ -194,6 +194,12 @@ public: z(iz) {} + DRW_Coord(const DRW_Coord &data) + : x(data.x), + y(data.y), + z(data.z) + {} + DRW_Coord &operator = (const DRW_Coord& data) { if ( &data == this ) @@ -310,7 +316,7 @@ public: addDouble(d); } - DRW_Variant(int c, UTF8STRING s) + DRW_Variant(int c, const UTF8STRING &s) : content(), type(), code(c), @@ -320,7 +326,7 @@ public: addString(s); } - DRW_Variant(int c, DRW_Coord crd) + DRW_Variant(int c, const DRW_Coord &crd) : content(), type(), code(c), @@ -352,11 +358,11 @@ public: ~DRW_Variant() = default; - void addString(UTF8STRING s) {setType(STRING); sdata = s; content.s = &sdata;} + void addString(const UTF8STRING &s) {setType(STRING); sdata = s; content.s = &sdata;} void addInt(int i) {setType(INTEGER); content.i = i;} void addDouble(double d) {setType(DOUBLE); content.d = d;} void addCoord() {setType(COORD); vdata.x=0.0; vdata.y=0.0; vdata.z=0.0; content.v = &vdata;} - void addCoord(DRW_Coord v) {setType(COORD); vdata = v; content.v = &vdata;} + void addCoord(const DRW_Coord &v) {setType(COORD); vdata = v; content.v = &vdata;} void setType(enum TYPE t) { type = t;} void setCoordX(double d) { if (type == COORD) vdata.x = d;} void setCoordY(double d) { if (type == COORD) vdata.y = d;} @@ -376,6 +382,7 @@ public: int code; /*!< dxf code of this value*/ private: + DRW_Variant &operator=(const DRW_Variant &) Q_DECL_EQ_DELETE; std::string sdata; DRW_Coord vdata; }; diff --git a/src/libs/vdxf/libdxfrw/drw_entities.cpp b/src/libs/vdxf/libdxfrw/drw_entities.cpp index 99107a2b8..76972b2e8 100644 --- a/src/libs/vdxf/libdxfrw/drw_entities.cpp +++ b/src/libs/vdxf/libdxfrw/drw_entities.cpp @@ -55,7 +55,7 @@ void DRW_Entity::calculateAxis(DRW_Coord extPoint){ * apply extrusion in a point using arbitary axis (previous calculated) * @author Rallaz */ -void DRW_Entity::extrudePoint(DRW_Coord extPoint, DRW_Coord *point){ +void DRW_Entity::extrudePoint(DRW_Coord extPoint, DRW_Coord *point) const{ double px, py, pz; px = (extAxisX.x*point->x)+(extAxisY.x*point->y)+(extPoint.x*point->z); py = (extAxisX.y*point->x)+(extAxisY.y*point->y)+(extPoint.y*point->z); @@ -782,7 +782,6 @@ bool DRW_Ellipse::parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs){ //parts are the number of vertex to split polyline, default 128 void DRW_Ellipse::toPolyline(DRW_Polyline *pol, int parts){ double radMajor, radMinor, cosRot, sinRot, incAngle, curAngle; - double cosCurr, sinCurr; radMajor = sqrt(secPoint.x*secPoint.x + secPoint.y*secPoint.y); radMinor = radMajor*ratio; //calculate sin & cos of included angle @@ -797,8 +796,8 @@ void DRW_Ellipse::toPolyline(DRW_Polyline *pol, int parts){ curAngle = endparam; i = parts+2; } - cosCurr = cos(curAngle); - sinCurr = sin(curAngle); + double cosCurr = cos(curAngle); + double sinCurr = sin(curAngle); double x = basePoint.x + (cosCurr*cosRot*radMajor) - (sinCurr*sinRot*radMinor); double y = basePoint.y + (cosCurr*sinRot*radMajor) + (sinCurr*cosRot*radMinor); pol->addVertex( DRW_Vertex(x, y, 0.0, 0.0)); diff --git a/src/libs/vdxf/libdxfrw/drw_entities.h b/src/libs/vdxf/libdxfrw/drw_entities.h index 2c2ec9c83..d1fa43ab3 100644 --- a/src/libs/vdxf/libdxfrw/drw_entities.h +++ b/src/libs/vdxf/libdxfrw/drw_entities.h @@ -216,7 +216,7 @@ protected: //calculates extrusion axis (normal vector) void calculateAxis(DRW_Coord extPoint); //apply extrusion to @extPoint and return data in @point - void extrudePoint(DRW_Coord extPoint, DRW_Coord *point); + void extrudePoint(DRW_Coord extPoint, DRW_Coord *point) const; virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0)=0; //parses dwg common start part to read entity bool parseDwg(DRW::Version version, dwgBuffer *buf, dwgBuffer* strBuf, duint32 bs=0); @@ -398,23 +398,23 @@ public: virtual void applyExtrusion(); //! center point in OCS - const DRW_Coord & center() { return basePoint; } + const DRW_Coord & center() const { return basePoint; } //! the radius of the circle - double radius() { return radious; } + double radius() const { return radious; } //! start angle in radians - double startAngle() { return staangle; } + double startAngle() const { return staangle; } //! end angle in radians - double endAngle() { return endangle; } + double endAngle() const { return endangle; } //! thickness - double thick() { return thickness; } + double thick() const { return thickness; } //! extrusion - const DRW_Coord & extrusion() { return extPoint; } + const DRW_Coord & extrusion() const { return extPoint; } protected: //! interpret code in dxf reading process or dispatch to inherited class void parseCode(int code, dxfReader *reader); //! interpret dwg data (was already determined to be part of this object) - virtual bool parseDwg(DRW::Version v, dwgBuffer *buf, duint32 bs=0); + virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); public: double staangle; /*!< start angle, code 50 in radians*/ @@ -448,7 +448,7 @@ protected: //! interpret code in dxf reading process or dispatch to inherited class void parseCode(int code, dxfReader *reader); //! interpret dwg data (was already determined to be part of this object) - virtual bool parseDwg(DRW::Version v, dwgBuffer *buf, duint32 bs=0); + virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); private: void correctAxis(); @@ -479,7 +479,7 @@ public: protected: void parseCode(int code, dxfReader *reader); - virtual bool parseDwg(DRW::Version v, dwgBuffer *buf, duint32 bs=0); + virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); public: DRW_Coord thirdPoint; /*!< third point, code 12, 22 & 32 */ @@ -506,19 +506,19 @@ protected: public: //! first corner (2D) - const DRW_Coord & firstCorner() { return basePoint; } + const DRW_Coord & firstCorner() const { return basePoint; } //! second corner (2D) - const DRW_Coord & secondCorner() { return secPoint; } + const DRW_Coord & secondCorner() const { return secPoint; } //! third corner (2D) - const DRW_Coord & thirdCorner() { return thirdPoint; } + const DRW_Coord & thirdCorner() const { return thirdPoint; } //! fourth corner (2D) - const DRW_Coord & fourthCorner() { return thirdPoint; } + const DRW_Coord & fourthCorner() const { return thirdPoint; } //! thickness - double thick() { return thickness; } + double thick() const { return thickness; } //! elevation - double elevation() { return basePoint.z; } + double elevation() const { return basePoint.z; } //! extrusion - const DRW_Coord & extrusion() { return extPoint; } + const DRW_Coord & extrusion() const { return extPoint; } }; @@ -545,18 +545,18 @@ public: eType = DRW::E3DFACE; } - virtual void applyExtrusion(){} + virtual void applyExtrusion() {} //! first corner in WCS - const DRW_Coord & firstCorner() { return basePoint; } + const DRW_Coord & firstCorner() const { return basePoint; } //! second corner in WCS - const DRW_Coord & secondCorner() { return secPoint; } + const DRW_Coord & secondCorner() const { return secPoint; } //! third corner in WCS - const DRW_Coord & thirdCorner() { return thirdPoint; } + const DRW_Coord & thirdCorner() const { return thirdPoint; } //! fourth corner in WCS - const DRW_Coord & fourthCorner() { return fourPoint; } + const DRW_Coord & fourthCorner() const { return fourPoint; } //! edge visibility flags - InvisibleEdgeFlags edgeFlags() { return static_cast(invisibleflag); } + InvisibleEdgeFlags edgeFlags() const { return static_cast(invisibleflag); } protected: //! interpret code in dxf reading process or dispatch to inherited class @@ -590,7 +590,7 @@ public: protected: void parseCode(int code, dxfReader *reader); - virtual bool parseDwg(DRW::Version v, dwgBuffer *buf, duint32 bs=0); + virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); public: UTF8STRING name; /*!< block name, code 2 */ @@ -628,7 +628,7 @@ public: protected: void parseCode(int code, dxfReader *reader); - virtual bool parseDwg(DRW::Version v, dwgBuffer *buf, duint32 bs=0); + virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); public: UTF8STRING name; /*!< block name, code 2 */ @@ -706,7 +706,7 @@ public: protected: void parseCode(int code, dxfReader *reader); - bool parseDwg(DRW::Version v, dwgBuffer *buf, duint32 bs=0); + bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); public: int vertexnum; /*!< number of vertex, code 90 */ @@ -963,6 +963,7 @@ public: std::vector vertlist; /*!< vertex list */ private: + DRW_Polyline &operator=(const DRW_Polyline &) Q_DECL_EQ_DELETE; std::listhadlesList; //list of handles, only in 2004+ duint32 firstEH; //handle of first entity, only in pre-2004 duint32 lastEH; //handle of last entity, only in pre-2004 @@ -1078,7 +1079,7 @@ private: */ class DRW_HatchLoop { public: - DRW_HatchLoop(int t) + explicit DRW_HatchLoop(int t) : type(t), numedges(0), objlist() @@ -1342,26 +1343,26 @@ protected: public: DRW_Coord getDefPoint() const {return defPoint;} /*!< Definition point, code 10, 20 & 30 */ - void setDefPoint(const DRW_Coord p) {defPoint =p;} + void setDefPoint(const DRW_Coord &p) {defPoint =p;} DRW_Coord getTextPoint() const {return textPoint;} /*!< Middle point of text, code 11, 21 & 31 */ - void setTextPoint(const DRW_Coord p) {textPoint =p;} + void setTextPoint(const DRW_Coord &p) {textPoint =p;} std::string getStyle() const {return style;} /*!< Dimension style, code 3 */ - void setStyle(const std::string s) {style = s;} + void setStyle(const std::string &s) {style = s;} int getAlign() const { return align;} /*!< attachment point, code 71 */ void setAlign(const int a) { align = a;} int getTextLineStyle() const { return linesty;} /*!< Dimension text line spacing style, code 72, default 1 */ void setTextLineStyle(const int l) { linesty = l;} std::string getText() const {return text;} /*!< Dimension text explicitly entered by the user, code 1 */ - void setText(const std::string t) {text = t;} + void setText(const std::string &t) {text = t;} double getTextLineFactor() const { return linefactor;} /*!< Dimension text line spacing factor, code 41, default 1? */ void setTextLineFactor(const double l) { linefactor = l;} double getDir() const { return rot;} /*!< rotation angle of the dimension text, code 53 (optional) default 0 */ void setDir(const double d) { rot = d;} - DRW_Coord getExtrusion(){return extPoint;} /*!< extrusion, code 210, 220 & 230 */ - void setExtrusion(const DRW_Coord p) {extPoint =p;} - std::string getName(){return name;} /*!< Name of the block that contains the entities, code 2 */ - void setName(const std::string s) {name = s;} + DRW_Coord getExtrusion() const {return extPoint;} /*!< extrusion, code 210, 220 & 230 */ + void setExtrusion(const DRW_Coord &p) {extPoint = p;} + std::string getName() const {return name;} /*!< Name of the block that contains the entities, code 2 */ + void setName(const std::string &s) {name = s;} // int getType(){ return type;} /*!< Dimension type, code 70 */ bool hasActualMeasurement() const { return hasActual; } void setActualMeasurement(double value) { hasActual = true; actual = value; } @@ -1369,15 +1370,15 @@ public: protected: DRW_Coord getPt2() const {return clonePoint;} - void setPt2(const DRW_Coord p) {clonePoint= p;} + void setPt2(const DRW_Coord &p) {clonePoint= p;} DRW_Coord getPt3() const {return def1;} - void setPt3(const DRW_Coord p) {def1= p;} + void setPt3(const DRW_Coord &p) {def1= p;} DRW_Coord getPt4() const {return def2;} - void setPt4(const DRW_Coord p) {def2= p;} + void setPt4(const DRW_Coord &p) {def2= p;} DRW_Coord getPt5() const {return circlePoint;} - void setPt5(const DRW_Coord p) {circlePoint= p;} + void setPt5(const DRW_Coord &p) {circlePoint= p;} DRW_Coord getPt6() const {return arcPoint;} - void setPt6(const DRW_Coord p) {arcPoint= p;} + void setPt6(const DRW_Coord &p) {arcPoint= p;} double getAn50() const {return angle;} /*!< Angle of rotated, horizontal, or vertical dimensions, code 50 */ void setAn50(const double d) {angle = d;} double getOb52() const {return oblique;} /*!< oblique angle, code 52 */ @@ -1387,6 +1388,7 @@ protected: public: int type; /*!< Dimension type, code 70 */ private: + DRW_Dimension &operator=(const DRW_Dimension &) Q_DECL_EQ_DELETE; std::string name; /*!< Name of the block that contains the entities, code 2 */ DRW_Coord defPoint; /*!< definition point, code 10, 20 & 30 (WCS) */ DRW_Coord textPoint; /*!< Middle point of text, code 11, 21 & 31 (OCS) */ @@ -1429,19 +1431,21 @@ public: eType = DRW::DIMALIGNED; type = 1; } - DRW_DimAligned(const DRW_Dimension& d): DRW_Dimension(d) { + explicit DRW_DimAligned(const DRW_Dimension& d) + : DRW_Dimension(d) + { eType = DRW::DIMALIGNED; } DRW_Coord getClonepoint() const {return getPt2();} /*!< Insertion for clones (Baseline & Continue), 12, 22 & 32 */ - void setClonePoint(DRW_Coord c){setPt2(c);} + void setClonePoint(DRW_Coord &c){setPt2(c);} DRW_Coord getDimPoint() const {return getDefPoint();} /*!< dim line location point, code 10, 20 & 30 */ - void setDimPoint(const DRW_Coord p){setDefPoint(p);} + void setDimPoint(const DRW_Coord &p){setDefPoint(p);} DRW_Coord getDef1Point() const {return getPt3();} /*!< Definition point 1, code 13, 23 & 33 */ - void setDef1Point(const DRW_Coord p) {setPt3(p);} + void setDef1Point(const DRW_Coord &p) {setPt3(p);} DRW_Coord getDef2Point() const {return getPt4();} /*!< Definition point 2, code 14, 24 & 34 */ - void setDef2Point(const DRW_Coord p) {setPt4(p);} + void setDef2Point(const DRW_Coord &p) {setPt4(p);} protected: virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); @@ -1458,7 +1462,9 @@ public: eType = DRW::DIMLINEAR; type = 0; } - DRW_DimLinear(const DRW_Dimension& d): DRW_DimAligned(d) { + explicit DRW_DimLinear(const DRW_Dimension& d) + : DRW_DimAligned(d) + { eType = DRW::DIMLINEAR; } @@ -1480,14 +1486,16 @@ public: eType = DRW::DIMRADIAL; type = 4; } - DRW_DimRadial(const DRW_Dimension& d): DRW_Dimension(d) { + explicit DRW_DimRadial(const DRW_Dimension& d) + : DRW_Dimension(d) + { eType = DRW::DIMRADIAL; } DRW_Coord getCenterPoint() const {return getDefPoint();} /*!< center point, code 10, 20 & 30 */ - void setCenterPoint(const DRW_Coord p){setDefPoint(p);} + void setCenterPoint(const DRW_Coord &p){setDefPoint(p);} DRW_Coord getDiameterPoint() const {return getPt5();} /*!< Definition point for radius, code 15, 25 & 35 */ - void setDiameterPoint(const DRW_Coord p){setPt5(p);} + void setDiameterPoint(const DRW_Coord &p){setPt5(p);} double getLeaderLength() const {return getRa40();} /*!< Leader length, code 40 */ void setLeaderLength(const double d) {setRa40(d);} @@ -1507,14 +1515,16 @@ public: eType = DRW::DIMDIAMETRIC; type = 3; } - DRW_DimDiametric(const DRW_Dimension& d): DRW_Dimension(d) { + explicit DRW_DimDiametric(const DRW_Dimension& d) + : DRW_Dimension(d) + { eType = DRW::DIMDIAMETRIC; } DRW_Coord getDiameter1Point() const {return getPt5();} /*!< First definition point for diameter, code 15, 25 & 35 */ - void setDiameter1Point(const DRW_Coord p){setPt5(p);} + void setDiameter1Point(const DRW_Coord &p){setPt5(p);} DRW_Coord getDiameter2Point() const {return getDefPoint();} /*!< Oposite point for diameter, code 10, 20 & 30 */ - void setDiameter2Point(const DRW_Coord p){setDefPoint(p);} + void setDiameter2Point(const DRW_Coord &p){setDefPoint(p);} double getLeaderLength() const {return getRa40();} /*!< Leader length, code 40 */ void setLeaderLength(const double d) {setRa40(d);} @@ -1534,20 +1544,21 @@ public: eType = DRW::DIMANGULAR; type = 2; } - DRW_DimAngular(const DRW_Dimension& d): DRW_Dimension(d) { + explicit DRW_DimAngular(const DRW_Dimension& d): DRW_Dimension(d) + { eType = DRW::DIMANGULAR; } DRW_Coord getFirstLine1() const {return getPt3();} /*!< Definition point line 1-1, code 13, 23 & 33 */ - void setFirstLine1(const DRW_Coord p) {setPt3(p);} + void setFirstLine1(const DRW_Coord &p) {setPt3(p);} DRW_Coord getFirstLine2() const {return getPt4();} /*!< Definition point line 1-2, code 14, 24 & 34 */ - void setFirstLine2(const DRW_Coord p) {setPt4(p);} + void setFirstLine2(const DRW_Coord &p) {setPt4(p);} DRW_Coord getSecondLine1() const {return getPt5();} /*!< Definition point line 2-1, code 15, 25 & 35 */ - void setSecondLine1(const DRW_Coord p) {setPt5(p);} + void setSecondLine1(const DRW_Coord &p) {setPt5(p);} DRW_Coord getSecondLine2() const {return getDefPoint();} /*!< Definition point line 2-2, code 10, 20 & 30 */ - void setSecondLine2(const DRW_Coord p){setDefPoint(p);} + void setSecondLine2(const DRW_Coord &p){setDefPoint(p);} DRW_Coord getDimPoint() const {return getPt6();} /*!< Dimension definition point, code 16, 26 & 36 */ - void setDimPoint(const DRW_Coord p) {setPt6(p);} + void setDimPoint(const DRW_Coord &p) {setPt6(p);} protected: virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); @@ -1566,18 +1577,19 @@ public: eType = DRW::DIMANGULAR3P; type = 5; } - DRW_DimAngular3p(const DRW_Dimension& d): DRW_Dimension(d) { + explicit DRW_DimAngular3p(const DRW_Dimension& d): DRW_Dimension(d) + { eType = DRW::DIMANGULAR3P; } DRW_Coord getFirstLine() const {return getPt3();} /*!< Definition point line 1, code 13, 23 & 33 */ - void setFirstLine(const DRW_Coord p) {setPt3(p);} + void setFirstLine(const DRW_Coord &p) {setPt3(p);} DRW_Coord getSecondLine() const {return getPt4();} /*!< Definition point line 2, code 14, 24 & 34 */ - void setSecondLine(const DRW_Coord p) {setPt4(p);} + void setSecondLine(const DRW_Coord &p) {setPt4(p);} DRW_Coord getVertexPoint() const {return getPt5();} /*!< Vertex point, code 15, 25 & 35 */ - void SetVertexPoint(const DRW_Coord p) {setPt5(p);} + void SetVertexPoint(const DRW_Coord &p) {setPt5(p);} DRW_Coord getDimPoint() const {return getDefPoint();} /*!< Dimension definition point, code 10, 20 & 30 */ - void setDimPoint(const DRW_Coord p) {setDefPoint(p);} + void setDimPoint(const DRW_Coord &p) {setDefPoint(p);} protected: virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); @@ -1595,16 +1607,18 @@ public: eType = DRW::DIMORDINATE; type = 6; } - DRW_DimOrdinate(const DRW_Dimension& d): DRW_Dimension(d) { + explicit DRW_DimOrdinate(const DRW_Dimension& d) + : DRW_Dimension(d) + { eType = DRW::DIMORDINATE; } DRW_Coord getOriginPoint() const {return getDefPoint();} /*!< Origin definition point, code 10, 20 & 30 */ - void setOriginPoint(const DRW_Coord p) {setDefPoint(p);} + void setOriginPoint(const DRW_Coord &p) {setDefPoint(p);} DRW_Coord getFirstLine() const {return getPt3();} /*!< Feature location point, code 13, 23 & 33 */ - void setFirstLine(const DRW_Coord p) {setPt3(p);} + void setFirstLine(const DRW_Coord &p) {setPt3(p);} DRW_Coord getSecondLine() const {return getPt4();} /*!< Leader end point, code 14, 24 & 34 */ - void setSecondLine(const DRW_Coord p) {setPt4(p);} + void setSecondLine(const DRW_Coord &p) {setPt4(p);} protected: virtual bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); diff --git a/src/libs/vdxf/libdxfrw/drw_header.cpp b/src/libs/vdxf/libdxfrw/drw_header.cpp index a0e263998..0b41f380e 100644 --- a/src/libs/vdxf/libdxfrw/drw_header.cpp +++ b/src/libs/vdxf/libdxfrw/drw_header.cpp @@ -34,7 +34,7 @@ DRW_Header::DRW_Header() vpEntHeaderCtrl(0) {} -void DRW_Header::addComment(std::string c){ +void DRW_Header::addComment(const std::string &c){ if (!comments.empty()) comments += '\n'; comments += c; @@ -1703,6 +1703,7 @@ void DRW_Header::write(dxfWriter *writer, DRW::Version ver){ } void DRW_Header::addDouble(std::string key, double value, int code){ + // cppcheck-suppress publicAllocationError curr = new DRW_Variant(); curr->addDouble( value ); curr->code = code; @@ -1710,6 +1711,7 @@ void DRW_Header::addDouble(std::string key, double value, int code){ } void DRW_Header::addInt(std::string key, int value, int code){ + // cppcheck-suppress publicAllocationError curr = new DRW_Variant(); curr->addInt( value ); curr->code = code; @@ -1717,6 +1719,7 @@ void DRW_Header::addInt(std::string key, int value, int code){ } void DRW_Header::addStr(std::string key, std::string value, int code){ + // cppcheck-suppress publicAllocationError curr = new DRW_Variant(); curr->addString( value ); curr->code = code; @@ -1724,6 +1727,7 @@ void DRW_Header::addStr(std::string key, std::string value, int code){ } void DRW_Header::addCoord(std::string key, DRW_Coord value, int code){ + // cppcheck-suppress publicAllocationError curr = new DRW_Variant(); curr->addCoord( value ); curr->code = code; @@ -1797,7 +1801,6 @@ bool DRW_Header::getCoord(std::string key, DRW_Coord *varCoord){ bool DRW_Header::parseDwg(DRW::Version version, dwgBuffer *buf, dwgBuffer *hBbuf, duint8 mv){ bool result = true; duint32 size = buf->getRawLong32(); - duint32 bitSize = 0; duint32 endBitPos = 160; //start bit: 16 sentinel + 4 size DRW_DBG("\nbyte size of data: "); DRW_DBG(size); if (version > DRW::AC1021 && mv > 3) { //2010+ @@ -1812,7 +1815,7 @@ bool DRW_Header::parseDwg(DRW::Version version, dwgBuffer *buf, dwgBuffer *hBbuf //and mark the start of handle stream //header is one object reads data and continue read strings ??? if (version > DRW::AC1018) {//2007+ - bitSize = buf->getRawLong32(); + duint32 bitSize = buf->getRawLong32(); DRW_DBG("\nsize in bits: "); DRW_DBG(bitSize); endBitPos += bitSize; hBbuf->setPosition(endBitPos >>3); diff --git a/src/libs/vdxf/libdxfrw/drw_header.h b/src/libs/vdxf/libdxfrw/drw_header.h index 016348f78..b5af4ca44 100644 --- a/src/libs/vdxf/libdxfrw/drw_header.h +++ b/src/libs/vdxf/libdxfrw/drw_header.h @@ -83,7 +83,7 @@ public: void addCoord(std::string key, DRW_Coord value, int code); std::string getComments() const {return comments;} void write(dxfWriter *writer, DRW::Version ver); - void addComment(std::string c); + void addComment(const std::string &c); protected: void parseCode(int code, dxfReader *reader); @@ -92,7 +92,7 @@ private: bool getDouble(std::string key, double *varDouble); bool getInt(std::string key, int *varInt); bool getStr(std::string key, std::string *varStr); - bool getCoord(std::string key, DRW_Coord *varStr); + bool getCoord(std::string key, DRW_Coord *varCoord); void clearVars() { for (std::map::iterator it=vars.begin(); it!=vars.end(); ++it) diff --git a/src/libs/vdxf/libdxfrw/drw_objects.cpp b/src/libs/vdxf/libdxfrw/drw_objects.cpp index a529684b6..a3c6127b1 100644 --- a/src/libs/vdxf/libdxfrw/drw_objects.cpp +++ b/src/libs/vdxf/libdxfrw/drw_objects.cpp @@ -1128,7 +1128,7 @@ bool DRW_Vport::parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs){ void DRW_ImageDef::parseCode(int code, dxfReader *reader){ switch (code) { case 1: - name = reader->getUtf8String(); + fileName = reader->getUtf8String(); break; case 5: handle = reader->getHandleString(); @@ -1173,8 +1173,8 @@ bool DRW_ImageDef::parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs){ DRW_DBG("class Version: "); DRW_DBG(imgVersion); DRW_Coord size = buf->get2RawDouble(); (void)size; - name = sBuf->getVariableText(version, false); - DRW_DBG("appId name: "); DRW_DBG(name.c_str()); DRW_DBG("\n"); + fileName = sBuf->getVariableText(version, false); + DRW_DBG("appId name: "); DRW_DBG(fileName.c_str()); DRW_DBG("\n"); loaded = buf->getBit(); resolution = buf->getRawChar8(); up = buf->getRawDouble(); diff --git a/src/libs/vdxf/libdxfrw/drw_objects.h b/src/libs/vdxf/libdxfrw/drw_objects.h index 0630c249c..aeb8ddfb9 100644 --- a/src/libs/vdxf/libdxfrw/drw_objects.h +++ b/src/libs/vdxf/libdxfrw/drw_objects.h @@ -592,7 +592,7 @@ class DRW_ImageDef : public DRW_TableEntry {// SETOBJFRIENDS public: DRW_ImageDef() - : name(), + : fileName(), imgVersion(), u(), v(), @@ -617,7 +617,7 @@ protected: public: // std::string handle; /*!< entity identifier, code 5 */ - UTF8STRING name; /*!< File name of image, code 1 */ + UTF8STRING fileName; /*!< File name of image, code 1 */ int imgVersion; /*!< class version, code 90, 0=R14 version */ double u; /*!< image size in pixels U value, code 10 */ double v; /*!< image size in pixels V value, code 20 */ diff --git a/src/libs/vdxf/libdxfrw/intern/drw_dbg.cpp b/src/libs/vdxf/libdxfrw/intern/drw_dbg.cpp index 9c4f7f2e3..0456d48a1 100644 --- a/src/libs/vdxf/libdxfrw/intern/drw_dbg.cpp +++ b/src/libs/vdxf/libdxfrw/intern/drw_dbg.cpp @@ -61,6 +61,11 @@ DRW_dbg::DRW_dbg() prClass(new print_none) {} +DRW_dbg::~DRW_dbg() +{ + delete prClass; +} + void DRW_dbg::setLevel(LEVEL lvl){ level = lvl; delete prClass; @@ -73,7 +78,7 @@ void DRW_dbg::setLevel(LEVEL lvl){ } } -DRW_dbg::LEVEL DRW_dbg::getLevel(){ +DRW_dbg::LEVEL DRW_dbg::getLevel() const{ return level; } diff --git a/src/libs/vdxf/libdxfrw/intern/drw_dbg.h b/src/libs/vdxf/libdxfrw/intern/drw_dbg.h index a494c9cdb..f1d95404c 100644 --- a/src/libs/vdxf/libdxfrw/intern/drw_dbg.h +++ b/src/libs/vdxf/libdxfrw/intern/drw_dbg.h @@ -15,6 +15,7 @@ #include #include +#include //#include #define DRW_DBGSL(a) DRW_dbg::getInstance()->setLevel(a) @@ -35,7 +36,7 @@ public: DEBUG }; void setLevel(LEVEL lvl); - LEVEL getLevel(); + LEVEL getLevel() const; static DRW_dbg *getInstance(); void print(std::string s); void print(int i); @@ -50,7 +51,9 @@ public: void printPT(double x, double y, double z); private: + Q_DISABLE_COPY(DRW_dbg) DRW_dbg(); + ~DRW_dbg(); static DRW_dbg *instance; LEVEL level; std::ios_base::fmtflags flags; diff --git a/src/libs/vdxf/libdxfrw/intern/drw_textcodec.cpp b/src/libs/vdxf/libdxfrw/intern/drw_textcodec.cpp index 9051acd26..a17ca195b 100644 --- a/src/libs/vdxf/libdxfrw/intern/drw_textcodec.cpp +++ b/src/libs/vdxf/libdxfrw/intern/drw_textcodec.cpp @@ -48,7 +48,7 @@ void DRW_TextCodec::setVersion(std::string *v, bool dxfFormat){ } } -void DRW_TextCodec::setCodePage(std::string *c, bool dxfFormat){ +void DRW_TextCodec::setCodePage(const std::string *c, bool dxfFormat){ cp = correctCodePage(*c); if (version < DRW::AC1021) { @@ -71,7 +71,7 @@ void DRW_TextCodec::setCodePage(std::string *c, bool dxfFormat){ } } -std::string DRW_TextCodec::toUtf8(std::string s) { +std::string DRW_TextCodec::toUtf8(const std::string &s) { if (conv == nullptr) { return s; @@ -81,7 +81,7 @@ std::string DRW_TextCodec::toUtf8(std::string s) { return encodedString.toStdString(); } -std::string DRW_TextCodec::fromUtf8(std::string s) { +std::string DRW_TextCodec::fromUtf8(const std::__cxx11::string &s) { if (conv == nullptr) { return s; diff --git a/src/libs/vdxf/libdxfrw/intern/drw_textcodec.h b/src/libs/vdxf/libdxfrw/intern/drw_textcodec.h index 961ce1ba3..714780273 100644 --- a/src/libs/vdxf/libdxfrw/intern/drw_textcodec.h +++ b/src/libs/vdxf/libdxfrw/intern/drw_textcodec.h @@ -10,14 +10,14 @@ class DRW_TextCodec { public: DRW_TextCodec(); - std::string fromUtf8(std::string s); - std::string toUtf8(std::string s); - int getVersion(){return version;} + std::string fromUtf8(const std::string &s); + std::string toUtf8(const std::string &s); + int getVersion() const {return version;} void setVersion(std::string *v, bool dxfFormat); void setVersion(int v, bool dxfFormat); - void setCodePage(std::string *c, bool dxfFormat); - void setCodePage(std::string c, bool dxfFormat){setCodePage(&c, dxfFormat);} - std::string getCodePage(){return cp;} + void setCodePage(const std::string *c, bool dxfFormat); + void setCodePage(const std::string &c, bool dxfFormat){setCodePage(&c, dxfFormat);} + std::string getCodePage() const {return cp;} private: std::string correctCodePage(const std::string& s); diff --git a/src/libs/vdxf/libdxfrw/intern/dwgbuffer.cpp b/src/libs/vdxf/libdxfrw/intern/dwgbuffer.cpp index bf05aa5b6..f7040f17d 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgbuffer.cpp +++ b/src/libs/vdxf/libdxfrw/intern/dwgbuffer.cpp @@ -102,14 +102,6 @@ static unsigned int crc32Table[256] ={ 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d}; -union typeCast { - char buf[8]; - duint16 i16; - duint32 i32; - duint64 i64; - ddouble64 d64; -}; - bool dwgFileStream::setPos(duint64 p){ if (p >= sz) return false; @@ -368,6 +360,7 @@ double dwgBuffer::getBitDouble(){ } else { filestr->read (buffer,8); } + // cppcheck-suppress invalidPointerCast double* ret = reinterpret_cast( buffer ); return *ret; } @@ -429,6 +422,7 @@ double dwgBuffer::getRawDouble(){ for (int i = 0; i < 8; i++) buffer[i] = getRawChar8(); } + // cppcheck-suppress invalidPointerCast double* nOffset = reinterpret_cast( buffer ); return *nOffset; } @@ -713,9 +707,11 @@ double dwgBuffer::getDefaultDouble(double d){ } else { filestr->read (buffer,4); } + // cppcheck-suppress invalidPointerCast tmp = reinterpret_cast(&d); for (int i = 0; i < 4; i++) tmp[i] = buffer[i]; + // cppcheck-suppress invalidPointerCast double ret = *reinterpret_cast( tmp ); return ret; } else if (b == 2){ @@ -727,11 +723,13 @@ double dwgBuffer::getDefaultDouble(double d){ } else { filestr->read (buffer,6); } + // cppcheck-suppress invalidPointerCast tmp = reinterpret_cast(&d); for (int i = 2; i < 6; i++) tmp[i-2] = buffer[i]; tmp[4] = buffer[0]; tmp[5] = buffer[1]; + // cppcheck-suppress invalidPointerCast double ret = *reinterpret_cast( tmp ); return ret; } @@ -807,7 +805,6 @@ duint32 dwgBuffer::getEnColor(DRW::Version v) { if (v < DRW::AC1018) //2000- return getSBitShort(); duint32 rgb = 0; - duint32 cb = 0; duint16 idx = getBitShort(); DRW_DBG("idx reads COLOR: "); DRW_DBGH(idx); duint16 flags = static_cast(idx>>8); @@ -819,7 +816,7 @@ duint32 dwgBuffer::getEnColor(DRW::Version v) { // DRW_DBG("\nRGB COLOR: "); DRW_DBGH(rgb); // } if (flags & 0x20) { - cb = getBitLong(); + duint32 cb = getBitLong(); DRW_DBG("\nTransparency COLOR: "); DRW_DBGH(cb); } if (flags & 0x40) @@ -849,14 +846,13 @@ duint16 dwgBuffer::getBERawShort16(){ /* reads "size" bytes and stores in "buf" return false if fail */ bool dwgBuffer::getBytes(unsigned char *buf, int size){ - duint8 tmp; filestr->read (buf,size); if (!filestr->good()) return false; if (bitPos != 0){ for (int i=0; i((currByte << bitPos) | (tmp >> (8 - bitPos))); currByte = tmp; } @@ -875,10 +871,8 @@ duint16 dwgBuffer::crc8(duint16 dx, dint32 start, dint32 end){ if (!filestr->good()) return 0; - duint8 al; - while (n-- > 0) { - al = static_cast((*p) ^ (static_cast(dx & 0xFF))); + duint8 al = static_cast((*p) ^ (static_cast(dx & 0xFF))); dx = (dx>>8) & 0xFF; dx = static_cast(dx ^ crctable[al & 0xFF]); p++; diff --git a/src/libs/vdxf/libdxfrw/intern/dwgbuffer.h b/src/libs/vdxf/libdxfrw/intern/dwgbuffer.h index 80e753bf1..f90c8a583 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgbuffer.h +++ b/src/libs/vdxf/libdxfrw/intern/dwgbuffer.h @@ -25,7 +25,7 @@ class dwgBasicStream{ protected: dwgBasicStream(){} public: - virtual ~dwgBasicStream(){} + virtual ~dwgBasicStream() = default; virtual bool read(duint8* s, duint64 n) = 0; virtual duint64 size() = 0; virtual duint64 getPos() = 0; @@ -36,7 +36,7 @@ public: class dwgFileStream: public dwgBasicStream{ public: - dwgFileStream(std::istream *s) + explicit dwgFileStream(std::istream *s) : stream(nullptr), sz(0) { @@ -84,8 +84,8 @@ private: class dwgBuffer { public: - dwgBuffer(std::istream *stream, DRW_TextCodec *decoder = NULL); - dwgBuffer(duint8 *buf, int size, DRW_TextCodec *decoder= NULL); + dwgBuffer(std::istream *stream, DRW_TextCodec *dc = nullptr); + dwgBuffer(duint8 *buf, int size, DRW_TextCodec *dc = nullptr); dwgBuffer( const dwgBuffer& org ); dwgBuffer& operator=( const dwgBuffer& org ); ~dwgBuffer(); @@ -94,7 +94,7 @@ public: duint64 getPosition(); void resetPosition(){setPosition(0); setBitPos(0);} void setBitPos(duint8 pos); - duint8 getBitPos(){return bitPos;} + duint8 getBitPos() const {return bitPos;} bool moveBitPos(dint32 size); duint8 getBit(); //B diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader.cpp b/src/libs/vdxf/libdxfrw/intern/dwgreader.cpp index a41d4d42b..f67851bf7 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader.cpp +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader.cpp @@ -694,13 +694,13 @@ bool dwgReader::readDwgTables(DRW_Header& hdr, dwgBuffer *dbuf) { oc = mit->second; ObjectMap.erase(mit); DRW_DBG("vpEntHeader Control Obj Handle= "); DRW_DBGH(oc.handle); DRW_DBG(" "); DRW_DBG(oc.loc); DRW_DBG("\n"); - DRW_ObjControl vpEntHeaderCtrl; +// DRW_ObjControl vpEntHeaderCtrl; dbuf->setPosition(oc.loc); int size = dbuf->getModularShort(); - if (version > DRW::AC1021) //2010+ - bs = dbuf->getUModularChar(); - else - bs = 0; +// if (version > DRW::AC1021) //2010+ +// bs = dbuf->getUModularChar(); +// else +// bs = 0; tmpByteStr = new duint8[size]; dbuf->getBytes(tmpByteStr, size); dwgBuffer buff(tmpByteStr, size, &decoder); @@ -934,13 +934,12 @@ bool dwgReader::readPlineVertex(DRW_Polyline& pline, dwgBuffer *dbuf){ bool dwgReader::readDwgEntities(DRW_Interface& intfa, dwgBuffer *dbuf){ bool ret = true; - bool ret2 = true; DRW_DBG("\nobject map total size= "); DRW_DBG(ObjectMap.size()); std::map::iterator itB=ObjectMap.begin(); std::map::iterator itE=ObjectMap.end(); while (itB != itE){ - ret2 = readDwgEntity(dbuf, itB->second, intfa); + bool ret2 = readDwgEntity(dbuf, itB->second, intfa); ObjectMap.erase(itB); itB=ObjectMap.begin(); if (ret) @@ -1170,21 +1169,20 @@ bool dwgReader::readDwgEntity(dwgBuffer *dbuf, objHandle& obj, DRW_Interface& in bool dwgReader::readDwgObjects(DRW_Interface& intfa, dwgBuffer *dbuf){ bool ret = true; - bool ret2 = true; - duint32 i=0; DRW_DBG("\nentities map total size= "); DRW_DBG(ObjectMap.size()); DRW_DBG("\nobjects map total size= "); DRW_DBG(objObjectMap.size()); std::map::iterator itB=objObjectMap.begin(); std::map::iterator itE=objObjectMap.end(); while (itB != itE){ - ret2 = readDwgObject(dbuf, itB->second, intfa); + bool ret2 = readDwgObject(dbuf, itB->second, intfa); objObjectMap.erase(itB); itB=objObjectMap.begin(); if (ret) ret = ret2; } if (DRW_DBGGL == DRW_dbg::DEBUG) { + duint32 i=0; for (std::map::iterator it=remainingMap.begin(); it != remainingMap.end(); ++it){ DRW_DBG("\nnum.# "); DRW_DBG(i++); DRW_DBG(" Remaining object Handle, loc, type= "); DRW_DBG(it->first); DRW_DBG(" "); DRW_DBG(it->second.loc); DRW_DBG(" "); DRW_DBG(it->second.type); diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader.h b/src/libs/vdxf/libdxfrw/intern/dwgreader.h index 258e421ee..4ba954b5b 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader.h +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader.h @@ -140,6 +140,7 @@ public: : hadlesList() { reset();} + // cppcheck-suppress functionStatic void reset(){} bool parseDwg(DRW::Version version, dwgBuffer *buf, duint32 bs=0); std::listhadlesList; @@ -195,11 +196,11 @@ protected: std::string findTableName(DRW::TTYPE table, dint32 handle); void setCodePage(std::string *c){decoder.setCodePage(c, false);} - std::string getCodePage(){ return decoder.getCodePage();} + std::string getCodePage() const { return decoder.getCodePage();} bool readDwgHeader(DRW_Header& hdr, dwgBuffer *buf, dwgBuffer *hBuf); bool readDwgHandles(dwgBuffer *dbuf, duint32 offset, duint32 size); bool readDwgTables(DRW_Header& hdr, dwgBuffer *dbuf); - bool checkSentinel(dwgBuffer *buf, enum secEnum::DWGSection, bool start); + static bool checkSentinel(dwgBuffer *buf, enum secEnum::DWGSection, bool start); bool readDwgBlocks(DRW_Interface& intfa, dwgBuffer *dbuf); bool readDwgEntities(DRW_Interface& intfa, dwgBuffer *dbuf); diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader15.cpp b/src/libs/vdxf/libdxfrw/intern/dwgreader15.cpp index 21757c24f..f893b613f 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader15.cpp +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader15.cpp @@ -179,8 +179,7 @@ bool dwgReader15::readDwgHandles() { if (si.Id<0)//not found, ends return false; - bool ret = dwgReader::readDwgHandles(fileBuf, static_cast(si.address), static_cast(si.size)); - return ret; + return dwgReader::readDwgHandles(fileBuf, static_cast(si.address), static_cast(si.size)); } /*********** objects ************************/ @@ -189,9 +188,7 @@ bool dwgReader15::readDwgHandles() { * (using their object file offsets) */ bool dwgReader15::readDwgTables(DRW_Header& hdr) { - bool ret = dwgReader::readDwgTables(hdr, fileBuf); - - return ret; + return dwgReader::readDwgTables(hdr, fileBuf); } /** @@ -199,7 +196,5 @@ bool dwgReader15::readDwgTables(DRW_Header& hdr) { * (using their object file offsets) */ bool dwgReader15::readDwgBlocks(DRW_Interface& intfa) { - bool ret = true; - ret = dwgReader::readDwgBlocks(intfa, fileBuf); - return ret; + return dwgReader::readDwgBlocks(intfa, fileBuf); } diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader15.h b/src/libs/vdxf/libdxfrw/intern/dwgreader15.h index e3a1f97b7..1852a4e56 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader15.h +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader15.h @@ -31,14 +31,10 @@ public: bool readDwgTables(DRW_Header& hdr); bool readDwgBlocks(DRW_Interface& intfa); bool readDwgEntities(DRW_Interface& intfa){ - bool ret = true; - ret = dwgReader::readDwgEntities(intfa, fileBuf); - return ret; + return dwgReader::readDwgEntities(intfa, fileBuf); } bool readDwgObjects(DRW_Interface& intfa){ - bool ret = true; - ret = dwgReader::readDwgObjects(intfa, fileBuf); - return ret; + return dwgReader::readDwgObjects(intfa, fileBuf); } // bool readDwgEntity(objHandle& obj, DRW_Interface& intfa); }; diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader18.cpp b/src/libs/vdxf/libdxfrw/intern/dwgreader18.cpp index c1ca52631..ed367619d 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader18.cpp +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader18.cpp @@ -149,7 +149,10 @@ bool dwgReader18::parseDataPage(dwgSectionInfo si/*, duint8 *dData*/){ //get compresed data duint8 *cData = new duint8[pi.cSize]; if (!fileBuf->setPosition(pi.address+32)) + { + delete[]cData; return false; + } fileBuf->getBytes(cData, static_cast(pi.cSize)); //calculate checksum @@ -269,8 +272,8 @@ bool dwgReader18::readFileHeader() { DRW_DBG("\nGap array size= "); DRW_DBGH(buff.getRawLong32()); //TODO: verify CRC DRW_DBG("\nCRC32= "); DRW_DBGH(buff.getRawLong32()); - for (duint8 i = 0x68; i < 0x6c; ++i) - byteStr[i] = '\0'; +// for (duint8 i = 0x68; i < 0x6c; ++i) +// byteStr[i] = '\0'; // byteStr[i] = '\0'; duint32 crcCalc = buff.crc32(0x00,0,0x6C); DRW_DBG("\nCRC32 calculated= "); DRW_DBGH(crcCalc); diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader18.h b/src/libs/vdxf/libdxfrw/intern/dwgreader18.h index 6ed69fae0..d28dfeb46 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader18.h +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader18.h @@ -61,23 +61,17 @@ public: bool readDwgHandles(); bool readDwgTables(DRW_Header& hdr); bool readDwgBlocks(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgBlocks(intfa, &dataBuf); - return ret; + return dwgReader::readDwgBlocks(intfa, &dataBuf); } virtual bool readDwgEntities(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgEntities(intfa, &dataBuf); - return ret; + return dwgReader::readDwgEntities(intfa, &dataBuf); } virtual bool readDwgObjects(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgObjects(intfa, &dataBuf); - return ret; + return dwgReader::readDwgObjects(intfa, &dataBuf); } // bool readDwgEntity(objHandle& obj, DRW_Interface& intfa){ @@ -91,11 +85,12 @@ protected: private: Q_DISABLE_COPY(dwgReader18) - void genMagicNumber(); + // cppcheck-suppress unusedPrivateFunction + static void genMagicNumber(); // dwgBuffer* bufObj; void parseSysPage(duint8 *decompSec, duint32 decompSize); //called: Section page map: 0x41630e3b bool parseDataPage(dwgSectionInfo si/*, duint8 *dData*/); //called ???: Section map: 0x4163003b - duint32 checksum(duint32 seed, duint8* data, duint32 sz); + static duint32 checksum(duint32 seed, duint8* data, duint32 sz); private: duint32 securityFlags; diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader21.cpp b/src/libs/vdxf/libdxfrw/intern/dwgreader21.cpp index 83077a7e8..20b1b9b97 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader21.cpp +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader21.cpp @@ -481,10 +481,6 @@ bool dwgReader21::readDwgTables(DRW_Header& hdr) { bool dwgReader21::readDwgBlocks(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(dataSize), &decoder); - ret = dwgReader::readDwgBlocks(intfa, &dataBuf); - return ret; - - return false; + return dwgReader::readDwgBlocks(intfa, &dataBuf); } diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader21.h b/src/libs/vdxf/libdxfrw/intern/dwgreader21.h index 87125e3e1..5018a5934 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader21.h +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader21.h @@ -40,16 +40,12 @@ public: bool readDwgTables(DRW_Header& hdr); bool readDwgBlocks(DRW_Interface& intfa); virtual bool readDwgEntities(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(dataSize), &decoder); - ret = dwgReader::readDwgEntities(intfa, &dataBuf); - return ret; + return dwgReader::readDwgEntities(intfa, &dataBuf); } virtual bool readDwgObjects(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(dataSize), &decoder); - ret = dwgReader::readDwgObjects(intfa, &dataBuf); - return ret; + return dwgReader::readDwgObjects(intfa, &dataBuf); } //bool readDwgEntity(objHandle& obj, DRW_Interface& intfa){ // return false; diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader24.h b/src/libs/vdxf/libdxfrw/intern/dwgreader24.h index 4031b4bec..ddeb46ce7 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader24.h +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader24.h @@ -29,22 +29,16 @@ public: // bool readDwgHandles(){return false;} // bool readDwgTables(){return false;} bool readDwgBlocks(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgBlocks(intfa, &dataBuf); - return ret; + return dwgReader::readDwgBlocks(intfa, &dataBuf); } virtual bool readDwgEntities(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgEntities(intfa, &dataBuf); - return ret; + return dwgReader::readDwgEntities(intfa, &dataBuf); } virtual bool readDwgObjects(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgObjects(intfa, &dataBuf); - return ret; + return dwgReader::readDwgObjects(intfa, &dataBuf); } // bool readDwgEntity(objHandle& obj, DRW_Interface& intfa){ diff --git a/src/libs/vdxf/libdxfrw/intern/dwgreader27.h b/src/libs/vdxf/libdxfrw/intern/dwgreader27.h index 883f2665b..5e181d36b 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgreader27.h +++ b/src/libs/vdxf/libdxfrw/intern/dwgreader27.h @@ -29,22 +29,16 @@ public: // bool readDwgHandles(){return false;} // bool readDwgTables(){return false;} bool readDwgBlocks(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgBlocks(intfa, &dataBuf); - return ret; + return dwgReader::readDwgBlocks(intfa, &dataBuf); } virtual bool readDwgEntities(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgEntities(intfa, &dataBuf); - return ret; + return dwgReader::readDwgEntities(intfa, &dataBuf); } virtual bool readDwgObjects(DRW_Interface& intfa){ - bool ret = true; dwgBuffer dataBuf(objData, static_cast(uncompSize), &decoder); - ret = dwgReader::readDwgObjects(intfa, &dataBuf); - return ret; + return dwgReader::readDwgObjects(intfa, &dataBuf); } // bool readDwgEntity(objHandle& obj, DRW_Interface& intfa){ // DRW_UNUSED(obj); diff --git a/src/libs/vdxf/libdxfrw/intern/dwgutil.cpp b/src/libs/vdxf/libdxfrw/intern/dwgutil.cpp index 04e1d90fb..9b865de2e 100644 --- a/src/libs/vdxf/libdxfrw/intern/dwgutil.cpp +++ b/src/libs/vdxf/libdxfrw/intern/dwgutil.cpp @@ -40,11 +40,10 @@ std::string toHexStr(int n){ * @param blk number of codewords ( 1 cw == 255 bytes) */ void dwgRSCodec::decode239I(unsigned char *in, unsigned char *out, duint32 blk){ - int k=0; unsigned char data[255]; RScodec rsc(0x96, 8, 8); //(255, 239) for (duint32 i=0; iread(buffer,8); + // cppcheck-suppress invalidPointerCast result = reinterpret_cast(buffer); doubleData = *result; DRW_DBG(doubleData); DRW_DBG("\n"); diff --git a/src/libs/vdxf/libdxfrw/intern/dxfreader.h b/src/libs/vdxf/libdxfrw/intern/dxfreader.h index 5529e79e4..f33416a23 100644 --- a/src/libs/vdxf/libdxfrw/intern/dxfreader.h +++ b/src/libs/vdxf/libdxfrw/intern/dxfreader.h @@ -27,7 +27,7 @@ public: }; enum TYPE type; public: - dxfReader(std::istream *stream) + explicit dxfReader(std::istream *stream) : type(INVALID), filestr(stream), strData(), @@ -39,20 +39,20 @@ public: {} virtual ~dxfReader() = default; - bool readRec(int *code); + bool readRec(int *codeData); - std::string getString() {return strData;} + std::string getString() const {return strData;} int getHandleString();//Convert hex string to int std::string toUtf8String(std::string t) {return decoder.toUtf8(t);} std::string getUtf8String() {return decoder.toUtf8(strData);} - double getDouble() {return doubleData;} - int getInt32() {return intData;} - unsigned long long int getInt64() {return int64;} - bool getBool() { return (intData==0) ? false : true;} - int getVersion(){return decoder.getVersion();} + double getDouble() const {return doubleData;} + int getInt32() const {return intData;} + unsigned long long int getInt64() const {return int64;} + bool getBool() const { return (intData==0) ? false : true;} + int getVersion() const {return decoder.getVersion();} void setVersion(std::string *v, bool dxfFormat){decoder.setVersion(v, dxfFormat);} void setCodePage(std::string *c){decoder.setCodePage(c, true);} - std::string getCodePage(){ return decoder.getCodePage();} + std::string getCodePage() const { return decoder.getCodePage();} protected: virtual bool readCode(int *code) = 0; //return true if sucesful (not EOF) @@ -78,8 +78,11 @@ private: class dxfReaderBinary : public dxfReader { public: - dxfReaderBinary(std::istream *stream):dxfReader(stream){skip = false; } - virtual ~dxfReaderBinary() {} + explicit dxfReaderBinary(std::istream *stream) + : dxfReader(stream) + {skip = false; } + + virtual ~dxfReaderBinary() = default; virtual bool readCode(int *code); virtual bool readString(std::string *text); virtual bool readString(); @@ -92,8 +95,11 @@ public: class dxfReaderAscii : public dxfReader { public: - dxfReaderAscii(std::istream *stream):dxfReader(stream){skip = true; } - virtual ~dxfReaderAscii(){} + explicit dxfReaderAscii(std::istream *stream) + : dxfReader(stream) + {skip = true; } + + virtual ~dxfReaderAscii() = default; virtual bool readCode(int *code); virtual bool readString(std::string *text); virtual bool readString(); diff --git a/src/libs/vdxf/libdxfrw/intern/dxfwriter.cpp b/src/libs/vdxf/libdxfrw/intern/dxfwriter.cpp index 63a691ee3..3dff9d89c 100644 --- a/src/libs/vdxf/libdxfrw/intern/dxfwriter.cpp +++ b/src/libs/vdxf/libdxfrw/intern/dxfwriter.cpp @@ -91,12 +91,12 @@ return (filestr->good()); }*/ -bool dxfWriter::writeUtf8String(int code, std::string text) { +bool dxfWriter::writeUtf8String(int code, const std::string &text) { std::string t = encoder.fromUtf8(text); return writeString(code, t); } -bool dxfWriter::writeUtf8Caps(int code, std::string text) { +bool dxfWriter::writeUtf8Caps(int code, const std::string &text) { std::string strname = text; std::transform(strname.begin(), strname.end(), strname.begin(),::toupper); std::string t = encoder.fromUtf8(strname); @@ -194,6 +194,7 @@ bool dxfWriterBinary::writeDouble(int code, double data) { filestr->write(bufcode, 2); unsigned char *val; + // cppcheck-suppress invalidPointerCast val = reinterpret_cast(&data); for (int i=0; i<8; i++) { buffer[i] =val[i]; diff --git a/src/libs/vdxf/libdxfrw/intern/dxfwriter.h b/src/libs/vdxf/libdxfrw/intern/dxfwriter.h index 09b26c349..c9a8bf981 100644 --- a/src/libs/vdxf/libdxfrw/intern/dxfwriter.h +++ b/src/libs/vdxf/libdxfrw/intern/dxfwriter.h @@ -17,15 +17,15 @@ class dxfWriter { public: - dxfWriter(std::ofstream *stream) + explicit dxfWriter(std::ofstream *stream) : filestr(stream), encoder() {} virtual ~dxfWriter() = default; virtual bool writeString(int code, std::string text) = 0; - bool writeUtf8String(int code, std::string text); - bool writeUtf8Caps(int code, std::string text); + bool writeUtf8String(int code, const std::__cxx11::string &text); + bool writeUtf8Caps(int code, const std::__cxx11::string &text); std::string fromUtf8String(std::string t) {return encoder.fromUtf8(t);} virtual bool writeInt16(int code, int data) = 0; virtual bool writeInt32(int code, int data) = 0; @@ -34,7 +34,7 @@ public: virtual bool writeBool(int code, bool data) = 0; void setVersion(std::string *v, bool dxfFormat){encoder.setVersion(v, dxfFormat);} void setCodePage(std::string *c){encoder.setCodePage(c, true);} - std::string getCodePage(){return encoder.getCodePage();} + std::string getCodePage() const {return encoder.getCodePage();} protected: std::ofstream *filestr; private: @@ -44,8 +44,10 @@ private: class dxfWriterBinary : public dxfWriter { public: - dxfWriterBinary(std::ofstream *stream):dxfWriter(stream){} - virtual ~dxfWriterBinary() {} + explicit dxfWriterBinary(std::ofstream *stream) + : dxfWriter(stream) + {} + virtual ~dxfWriterBinary() = default; virtual bool writeString(int code, std::string text); virtual bool writeInt16(int code, int data); virtual bool writeInt32(int code, int data); @@ -56,8 +58,8 @@ public: class dxfWriterAscii : public dxfWriter { public: - dxfWriterAscii(std::ofstream *stream); - virtual ~dxfWriterAscii(){} + explicit dxfWriterAscii(std::ofstream *stream); + virtual ~dxfWriterAscii() = default; virtual bool writeString(int code, std::string text); virtual bool writeInt16(int code, int data); virtual bool writeInt32(int code, int data); diff --git a/src/libs/vdxf/libdxfrw/intern/rscodec.cpp b/src/libs/vdxf/libdxfrw/intern/rscodec.cpp index e518abfbb..508324e44 100644 --- a/src/libs/vdxf/libdxfrw/intern/rscodec.cpp +++ b/src/libs/vdxf/libdxfrw/intern/rscodec.cpp @@ -58,14 +58,13 @@ RScodec::~RScodec() { */ void RScodec::RSgenerate_gf(unsigned int pp) { int i, mask ; - int pb; mask = 1 ; alpha_to[mm] = 0 ; for (i=0; i>(mm-1-i)) & 1; + int pb = (pp >>(mm-1-i)) & 1; if (pb!=0) { alpha_to[mm] ^= mask; } @@ -110,7 +109,8 @@ void RScodec::RSgen_poly() { for (i=0; i<=bb; i++) gg[i] = index_of[gg[i]] ; } -int RScodec::calcDecode(unsigned char* data, int* recd, int** elp, int* d, int* l, int* u_lu, int* s, int* root, int* loc, int* z, int* err, int* reg, int bb) +int RScodec::calcDecode(unsigned char* data, int* recd, int** elp, int* d, int* l, int* u_lu, int* s, int* root, + int* loc, int* z, int* err, int* reg, int bb) const { if (!isOk) return -1; int count = 0; @@ -315,17 +315,16 @@ int RScodec::calcDecode(unsigned char* data, int* recd, int** elp, int* d, int* Encoding is done by using a feedback shift register with appropriate connections specified by the elements of gg[], which was generated above. Codeword is c(X) = data(X)*X**(nn-kk)+ b(X) */ -bool RScodec::encode(unsigned char *data, unsigned char *parity) { +bool RScodec::encode(unsigned char *data, unsigned char *parity) const { if (!isOk) return false; int i,j ; - int feedback ; unsigned char *idata = data; unsigned char *bd = parity; int bb = nn-kk;; //nn-kk length of parity data for (i=0; i=0; i--) { - feedback = index_of[idata[i]^bd[bb-1]] ; + int feedback = index_of[idata[i]^bd[bb-1]] ; if (feedback != -1) { for (j=bb-1; j>0; j--) if (gg[j] != -1) @@ -362,7 +361,7 @@ bool RScodec::encode(unsigned char *data, unsigned char *parity) { parity part of the transmitted codeword). Of course, these insoluble cases can be returned as error flags to the calling routine if desired. */ /** return value: number of corrected errors or -1 if can't correct it */ -int RScodec::decode(unsigned char *data) { +int RScodec::decode(unsigned char *data) const { if (!isOk) return -1; int bb = nn-kk;; //nn-kk length of parity data diff --git a/src/libs/vdxf/libdxfrw/intern/rscodec.h b/src/libs/vdxf/libdxfrw/intern/rscodec.h index 7fa3fc289..95b24f2a1 100644 --- a/src/libs/vdxf/libdxfrw/intern/rscodec.h +++ b/src/libs/vdxf/libdxfrw/intern/rscodec.h @@ -45,16 +45,17 @@ public: ~RScodec(); // bool encode(int *data, int *parity); // int decode(int *recd); - bool encode(unsigned char *data, unsigned char *parity); - int decode(unsigned char *data); - bool isOkey(){return isOk;} - const unsigned int* indexOf() {return index_of;} - const int* alphaTo() {return alpha_to;} + bool encode(unsigned char *data, unsigned char *parity) const; + int decode(unsigned char *data) const; + bool isOkey() const {return isOk;} + const unsigned int* indexOf() const {return index_of;} + const int* alphaTo() const {return alpha_to;} private: void RSgenerate_gf(unsigned int pp); void RSgen_poly(); - int calcDecode(unsigned char* data, int* recd, int** elp, int* d, int* l, int* u_lu, int* s, int* root, int* loc, int* z, int* err, int* reg, int bb); + int calcDecode(unsigned char* data, int* recd, int** elp, int* d, int* l, int* u_lu, int* s, int* root, int* loc, + int* z, int* err, int* reg, int bb) const; private: diff --git a/src/libs/vdxf/libdxfrw/libdwgr.cpp b/src/libs/vdxf/libdxfrw/libdwgr.cpp index 7200f5c9b..4fca984d3 100644 --- a/src/libs/vdxf/libdxfrw/libdwgr.cpp +++ b/src/libs/vdxf/libdxfrw/libdwgr.cpp @@ -65,9 +65,7 @@ void dwgR::setDebug(DRW::DBG_LEVEL lvl){ /*reads metadata and loads image preview*/ bool dwgR::getPreview(std::istream &stream){ - bool isOk = false; - - isOk = open(&stream); + bool isOk = open(&stream); if (!isOk) return false; @@ -88,9 +86,7 @@ bool dwgR::read(std::istream &stream, DRW_Interface *interface_, bool ext){ applyExt = ext; iface = interface_; - bool isOk = false; - - isOk = open(&stream); + bool isOk = open(&stream); if (!isOk) return false; diff --git a/src/libs/vdxf/libdxfrw/libdwgr.h b/src/libs/vdxf/libdxfrw/libdwgr.h index dff7a0930..2ece53e52 100644 --- a/src/libs/vdxf/libdxfrw/libdwgr.h +++ b/src/libs/vdxf/libdxfrw/libdwgr.h @@ -29,9 +29,9 @@ public: //read: return true if all ok bool read(std::istream &stream, DRW_Interface *interface_, bool ext); bool getPreview(std::istream &stream); - DRW::Version getVersion(){return version;} - DRW::error getError(){return error;} - void setDebug(DRW::DBG_LEVEL lvl); + DRW::Version getVersion() const {return version;} + DRW::error getError() const {return error;} + static void setDebug(DRW::DBG_LEVEL lvl); private: bool open(std::istream *stream); diff --git a/src/libs/vdxf/libdxfrw/libdxfrw.cpp b/src/libs/vdxf/libdxfrw/libdxfrw.cpp index 849156669..8892c94fd 100644 --- a/src/libs/vdxf/libdxfrw/libdxfrw.cpp +++ b/src/libs/vdxf/libdxfrw/libdxfrw.cpp @@ -1264,7 +1264,7 @@ bool dxfRW::writeViewport(DRW_Viewport *ent) { return true; } -DRW_ImageDef* dxfRW::writeImage(DRW_Image *ent, std::string name){ +DRW_ImageDef* dxfRW::writeImage(DRW_Image *ent, const std::string &name){ if (version > DRW::AC1009) { //search if exist imagedef with this mane (image inserted more than 1 time) //RLZ: imagedef_reactor seem needed to read in acad @@ -1280,7 +1280,7 @@ DRW_ImageDef* dxfRW::writeImage(DRW_Image *ent, std::string name){ imageDef.push_back(id); id->handle = ++entCount; } - id->name = name; + id->fileName = name; std::string idReactor = toHexStr(++entCount); writer->writeString(0, "IMAGE"); @@ -1775,7 +1775,7 @@ bool dxfRW::writeObjects() { writer->writeString(102, "}"); writer->writeString(100, "AcDbRasterImageDef"); writer->writeInt16(90, 0); //version 0=R14 to v2010 - writer->writeUtf8String(1, id->name); + writer->writeUtf8String(1, id->fileName); writer->writeDouble(10, id->u); writer->writeDouble(20, id->v); writer->writeDouble(11, id->up); diff --git a/src/libs/vdxf/libdxfrw/libdxfrw.h b/src/libs/vdxf/libdxfrw/libdxfrw.h index 86ccaaeae..4820565b7 100644 --- a/src/libs/vdxf/libdxfrw/libdxfrw.h +++ b/src/libs/vdxf/libdxfrw/libdxfrw.h @@ -25,9 +25,9 @@ class dxfWriter; class dxfRW { public: - dxfRW(const char* name); + explicit dxfRW(const char* name); ~dxfRW(); - void setDebug(DRW::DBG_LEVEL lvl); + static void setDebug(DRW::DBG_LEVEL lvl); /// reads the file specified in constructor /*! * An interface must be provided. It is used by the class to signal various @@ -60,13 +60,13 @@ public: bool writePolyline(DRW_Polyline *ent); bool writeSpline(DRW_Spline *ent); bool writeBlockRecord(std::string name); - bool writeBlock(DRW_Block *ent); + bool writeBlock(DRW_Block *bk); bool writeInsert(DRW_Insert *ent); bool writeMText(DRW_MText *ent); bool writeText(DRW_Text *ent); bool writeHatch(DRW_Hatch *ent); bool writeViewport(DRW_Viewport *ent); - DRW_ImageDef *writeImage(DRW_Image *ent, std::string name); + DRW_ImageDef *writeImage(DRW_Image *ent, const std::__cxx11::string &name); bool writeLeader(DRW_Leader *ent); bool writeDimension(DRW_Dimension *ent); void setEllipseParts(int parts){elParts = parts;} /*!< set parts munber when convert ellipse to polyline */ @@ -120,7 +120,7 @@ private: bool writeObjects(); bool writeExtData(const std::vector &ed); /*use version from dwgutil.h*/ - std::string toHexStr(int n);//RLZ removeme + static std::string toHexStr(int n);//RLZ removeme private: DRW::Version version; diff --git a/src/libs/vmisc/vabstractapplication.cpp b/src/libs/vmisc/vabstractapplication.cpp index 638689ab9..bb0983c04 100644 --- a/src/libs/vmisc/vabstractapplication.cpp +++ b/src/libs/vmisc/vabstractapplication.cpp @@ -81,6 +81,7 @@ VAbstractApplication::VAbstractApplication(int &argc, char **argv) #endif //defined(V_NO_ASSERT) #endif // QT_VERSION >= QT_VERSION_CHECK(5, 4, 1) + // cppcheck-suppress reademptycontainer if (not rules.isEmpty()) { QLoggingCategory::setFilterRules(rules); diff --git a/src/libs/vpropertyexplorer/vpropertyset.cpp b/src/libs/vpropertyexplorer/vpropertyset.cpp index 1e1e08fb3..cc37a5d6f 100644 --- a/src/libs/vpropertyexplorer/vpropertyset.cpp +++ b/src/libs/vpropertyexplorer/vpropertyset.cpp @@ -153,10 +153,10 @@ void VPE::VPropertySet::clear(bool delete_properties) QString VPE::VPropertySet::getPropertyID(const VProperty *prop, bool look_for_parent_id) const { - QString tmpResult; +// QString tmpResult; const VProperty* tmpCurrentProp = prop; - while (tmpCurrentProp && (look_for_parent_id || prop == tmpCurrentProp) && tmpResult.isEmpty()) + while (tmpCurrentProp && (look_for_parent_id || prop == tmpCurrentProp) /*&& tmpResult.isEmpty()*/) { // todo: The following code doesn't work, because .key() doesn't accept a const VProperty* pointer ... @@ -175,7 +175,8 @@ QString VPE::VPropertySet::getPropertyID(const VProperty *prop, bool look_for_pa tmpCurrentProp = tmpCurrentProp->getParent(); } - return tmpResult; +// return tmpResult; + return QString(); } // cppcheck-suppress unusedFunction