Commit Graph

61 Commits

Author SHA1 Message Date
Roman Telezhynskyi
6a219c5ed4 Port set version bug from solvespace fork and cleanup version handling in DRW_TextCodec.
One of the most intrusive changes in QGIS' fork was that the debugging code was replaced with hardcoded changes to redirect the output to QGIS' internal logging mechanism. In this PR I've setup an interface to allow clients to create custom output debugging classes and assign these to be used by the library.

This will allow me to remove all the related downstream changes in QGIS' fork and re-sync these files back to upstream.
Interface for debug printers.
2021-11-23 13:12:11 +02:00
Roman Telezhynskyi
a8d8fa0946 Modernize debugging. 2021-11-23 11:28:54 +02:00
Roman Telezhynskyi
642fbe815d Use ununordered_map instead of map
Should result in a performance boost when reading large files.
2021-11-23 11:15:11 +02:00
Roman Telezhynskyi
c51d9d5b30 More modernization and cleanups. 2021-11-22 19:28:51 +02:00
Roman Telezhynskyi
5f6445cf93 Read extrusion tags for dimension entities
Dimension entities support DXF codes 210, 220, 230 and and DRW_Dimension
already had a extPoint member, but the tags were never used when
parsing.
2021-11-22 18:53:33 +02:00
Roman Telezhynskyi
b18f09d86e DRW_Coord: Simplify constructor. 2021-11-22 18:48:47 +02:00
Roman Telezhynskyi
c7fc0b8dcb Misc. typos 2021-11-22 18:44:44 +02:00
Roman Telezhynskyi
1b4dfc7988 Misc typos: length. 2021-11-22 18:39:20 +02:00
Roman Telezhynskyi
47e0e3d0f3 fixed heap use after free vulnerability CVE-2021-21900
as reported in TALOS-2021-1351 / CVE-2021-21900,
DRW_TableEntry::parseCode had the potential to trigger an use after free exception with a malformed DXF file.
2021-11-22 18:22:27 +02:00
Roman Telezhynskyi
b861d6a28e GCC warnings. 2021-09-25 17:18:33 +03:00
Roman Telezhynskyi
51ed05e1fa GCC warnings. 2021-09-25 12:57:15 +03:00
Roman Telezhynskyi
1b3e133309 GCC warnings. 2021-09-25 12:42:28 +03:00
Roman Telezhynskyi
2ffda9a073 Introduce *_MARK_NONFINAL_CLASS and *_MARK_NONFINAL_METHOD macroses to suppress GCC warning Wsuggest-final-types. 2021-09-25 11:43:05 +03:00
Roman Telezhynskyi
613502b392 Improve error handling for the dxf export. 2021-04-28 20:06:24 +03:00
Roman Telezhynskyi
2bb95154cd Fix Tape crash. 2021-02-06 15:52:21 +02:00
Roman Telezhynskyi
80d9fbc107 New function Warning. 2020-11-20 13:18:38 +02:00
Roman Telezhynskyi
4cea74d63b Loading measurements in Valentina. 2020-10-15 18:05:21 +03:00
Roman Telezhynskyi
b756460da8 Cppcheck warning.
We don't need support for reading ASTM notches.
2020-03-15 13:43:18 +02:00
Roman Telezhynskyi
1b663bb5e1 Export pattern to DXF-ASTM. 2020-03-15 13:35:31 +02:00
Roman Telezhynskyi
e619fdc80c Fix build.
--HG--
branch : develop
2020-01-20 13:16:38 +02:00
Roman Telezhynskyi
24e50455b0 Improve conversion for dxf file export.
We never checked if it really works. And it doesn't in many cases. Not always
Qt recognizes standard ANSI_* names as valid aliases for codepages. Because
codec itself can have many aliases we will test them one by one until one will
fit.

--HG--
branch : develop
2020-01-16 14:10:49 +02:00
Roman Telezhynskyi
110aa16650 Show warning if no available codec for code page when export in dxf.
--HG--
branch : develop
2020-01-11 12:04:31 +02:00
Roman Telezhynskyi
a214a78006 Continue replacing custom *_FALLTHROUGH macroses with Q_FALLTHROUGH().
--HG--
branch : develop
2019-03-27 13:31:02 +02:00
Roman Telezhynskyi
5f5b7e41fa Enable alternative operator representations for support old or nonconforming
compilers by default.

--HG--
branch : develop
2018-12-11 22:27:55 +02:00
Roman Telezhynskyi
968996da86 It seems like mistake. ratio renamed to width.
--HG--
branch : develop
2018-07-16 19:55:37 +03:00
Roman Telezhynskyi
63b1eb8068 Cppcheck warning 'missingOverride'.
--HG--
branch : develop
2018-06-26 15:53:48 +03:00
Roman Telezhynskyi
3970bbdbc0 Refactoring. Use QChar instead of QString where possible.
--HG--
branch : develop
2018-04-12 13:13:19 +03:00
Roman Telezhynskyi
be83ff5a12 SonarQube warnings.
--HG--
branch : develop
2017-08-21 16:47:17 +03:00
Roman Telezhynskyi
a9367f7ae6 Prevent memory leak.
--HG--
branch : develop
2017-07-27 21:04:13 +03:00
Roman Telezhynskyi
cc0d6d994b Read layer settings for block from block's settings.
--HG--
branch : feature
2017-07-17 17:25:38 +03:00
Roman Telezhynskyi
c84f7ef828 Up to R12 DXF allows not to define default layer "0".
--HG--
branch : feature
2017-07-17 17:19:49 +03:00
Roman Telezhynskyi
2dd8519433 Code style fix.
Remove confusing commented code.

--HG--
branch : feature
2017-07-17 17:10:34 +03:00
Roman Telezhynskyi
74035ddeeb Fix opening files in version R10.
AutoCAD complains about missed groups.

--HG--
branch : feature
2017-07-17 13:35:20 +03:00
Roman Telezhynskyi
54eadfdb3c Export to DXF-AAMA.
--HG--
branch : feature
2017-07-16 21:10:48 +03:00
Roman Telezhynskyi
e56e59dec1 SonarQube warnings.
--HG--
branch : develop
2017-07-07 20:08:35 +03:00
Roman Telezhynskyi
2f98ec7c8a Fix memory leak.
--HG--
branch : develop
2017-07-07 18:11:48 +03:00
Roman Telezhynskyi
703c9f5f06 Clang warnings.
--HG--
branch : develop
2017-07-07 10:22:24 +03:00
Roman Telezhynskyi
42c2b45171 Fix error C2065: 'not': undeclared identifier.
--HG--
branch : develop
2017-07-06 22:12:46 +03:00
Roman Telezhynskyi
9ff99ab357 Clang warning.
--HG--
branch : develop
2017-07-06 19:07:53 +03:00
Roman Telezhynskyi
36d6e8e408 Fix error C2065: 'not': undeclared identifier.
--HG--
branch : develop
2017-07-06 19:04:58 +03:00
Roman Telezhynskyi
5968ed27cc error "QT_WARNING_PUSH was not declared in this scope".
--HG--
branch : develop
2017-07-06 16:10:46 +03:00
Roman Telezhynskyi
38afcf43f2 error "QT_WARNING_PUSH was not declared in this scope".
--HG--
branch : develop
2017-07-06 16:03:02 +03:00
Roman Telezhynskyi
9a074266b9 Completely disable warning Wstack-protector.
--HG--
branch : develop
2017-07-06 15:45:58 +03:00
Roman Telezhynskyi
21e9719954 Fix error "QT_WARNING_PUSH does not name a type".
--HG--
branch : develop
2017-07-06 15:08:34 +03:00
Roman Telezhynskyi
f701cc95f9 Suppress GCC's warning Wstack-protector.
--HG--
branch : develop
2017-07-06 14:49:49 +03:00
Roman Telezhynskyi
365f971d5f Fix building tests.
--HG--
branch : develop
2017-07-06 14:26:42 +03:00
Roman Telezhynskyi
490ccbe60a Remove dwg support.
--HG--
branch : develop
2017-07-06 14:10:14 +03:00
Roman Telezhynskyi
e6eb9c756b Cppcheck warnings.
--HG--
branch : develop
2017-07-06 12:58:26 +03:00
Roman Telezhynskyi
1726b55339 GCC warnings.
--HG--
branch : develop
2017-07-05 19:35:34 +03:00
Roman Telezhynskyi
22b448f98d Fixed text conversion.
--HG--
branch : feature
2017-06-29 20:03:35 +03:00