0031756: Data Exchange - broken parsing of STEP entity in case of missing last parameter
authordpasukhi <dpasukhi@opencascade.com>
Fri, 27 Nov 2020 19:32:18 +0000 (22:32 +0300)
committerbugmaster <bugmaster@opencascade.com>
Wed, 23 Dec 2020 16:30:47 +0000 (19:30 +0300)
commit2057c37b67d5c54f9668c95e34f55944933c9eb6
treead3698a51b3bd0101733e1bb179b0e9126a47953
parent3273937d01e05de09794537458ebe85b09dcb437
0031756: Data Exchange - broken parsing of STEP entity in case of missing last parameter

- Parser is corrected to handle case of missing arguments properly (report error without corruption of the next entity)
- Added counter of entity arguments for appropriate error messages
- Plain C tools and data structures (recfile.*, stepfile.*) are converted to C++ class (StepFile_ReadData) to avoid use of static variables, so that reader can be safely used in a multi-threaded environment
14 files changed:
src/StepFile/FILES
src/StepFile/StepFile_Read.cxx
src/StepFile/StepFile_ReadData.cxx [new file with mode: 0644]
src/StepFile/StepFile_ReadData.hxx [new file with mode: 0644]
src/StepFile/lex.step.cxx
src/StepFile/recfile.pc [deleted file]
src/StepFile/recfile.ph [deleted file]
src/StepFile/step.lex
src/StepFile/step.tab.cxx
src/StepFile/step.tab.hxx
src/StepFile/step.yacc
src/StepFile/stepread.cxx [deleted file]
src/StepFile/stepread.ph [deleted file]
tests/bugs/step/bug31756 [new file with mode: 0644]