View Issue Details

IDProjectCategoryView StatusLast Update
0032310Open CASCADEOCCT:Data Exchangepublic2021-10-16 11:46
ReportermpvAssigned Tosmoskvin 
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version7.5.0 
Target Version7.6.0Fixed in Version7.6.0 
Summary0032310: Data Exchange - Invalid STEP export/import of backslashes in names [Regression since OCCT 7.5.0]
DescriptionThe number of '\' symbols in name of a shape or an assembly is doubled after STEP export and import.

In the provided script the original name is "a\b", but after step import it is "a\\b".
Steps To Reproduce
pload XDE OCAF MODELING
XNewDoc doc
box b 1 1 1
XAddShape doc b
SetName doc 0:1:1:1 "a\\b"
set original_name [GetName doc 0:1:1:1]
WriteStep doc box.step
Close doc
ReadStep doc2 box.step
set imported_name [GetName doc2 0:1:1:1]
Close doc2
if {$original_name!=$imported_name} { puts "Error: '$original_name'!='$imported_name'" }
TagsNo tags attached.
Test case numberbugs step bug32310

Relationships

related to 0032421 closedbugmaster Community STEP parsing problem: incorrect PRODUCT text 
related to 0007322 assignedgka Open CASCADE Data Exchange - Problem in XDE reading 
child of 0028454 closedbugmaster Community Data Exchange, STEP reader - names with special characters cannot be read 

Activities

kgv

2021-07-05 09:54

developer   ~0102274

...and each re-export of STEP file doubles the number of slashes in the name.

szy

2021-10-06 17:51

manager   ~0104526

for processing => 7.6.0.

git

2021-10-10 15:34

administrator   ~0104578

Branch CR32310 has been created by dpasukhi.

SHA-1: 350745d2208b26940567ffdd0fcb043d6e930c5d


Detailed log of new commits:

Author: dpasukhi
Date: Sun Oct 10 15:33:15 2021 +0300

    0032310: Data Exchange - Invalid STEP export/import of backslashes in names [Regression since OCCT 7.5.0]
    
    Fixed a problem with handling slashes
    Changed cleaning of the 'TEXT' fields of the step entity to direct order w/o removing operations

git

2021-10-10 16:01

administrator   ~0104580

Branch CR32310 has been updated forcibly by dpasukhi.

SHA-1: b233a964575898887a9aebb4d10de5251332109e

git

2021-10-11 11:02

administrator   ~0104581

Branch CR32310_1 has been created by dpasukhi.

SHA-1: 74418efa4279a3484367a20087cad09931b61737


Detailed log of new commits:

Author: dpasukhi
Date: Sun Oct 10 15:33:15 2021 +0300

    0032310: Data Exchange - Invalid STEP export/import of backslashes in names [Regression since OCCT 7.5.0]
    
    Fixed a problem with handling slashes
    Changed cleaning of the 'TEXT' fields of the step entity to direct order w/o removing operations

dpasukhi

2021-10-11 12:09

administrator   ~0104585

Dear IKA,
please review:
OCCT: CR32310_1
PROD: NO

{'//','//'} it is a problem, if we handle directives. Solution - cleanText() rework - create a single general loop to handle and filter any ASCII characters and control directives.

All tests are ok, see:
http://jenkins-test-occt.nnov.opencascade.com/view/CR32310-master-dpasukhi/view/COMPARE/

git

2021-10-13 13:47

administrator   ~0104618

Branch CR32310_2 has been created by dpasukhi.

SHA-1: 6a3b9bd968ef52c787ff9e838d5f56282dcbeaa7


Detailed log of new commits:

Author: dpasukhi
Date: Sun Oct 10 15:33:15 2021 +0300

    0032310: Data Exchange - Invalid STEP export/import of backslashes in names [Regression since OCCT 7.5.0]
    
    Fixed a problem with handling slashes and apostrophes
    Changed cleaning of the 'TEXT' fields of the step entity to direct order w/o removing operations
    Changed converting text locale to covert before cleaning directives and specials symbols (all directives and sp. symbols encoded in ASCII[0-125] and haven't any differ with any locals)
    Special case, when directives have two slashes before name changed to don't handle directives value and converts as is (combine two slashes as one and write, for example "\\X2\00C3" as "X2\00C3")

git

2021-10-13 17:16

administrator   ~0104621

Branch CR32310_2 has been updated forcibly by dpasukhi.

SHA-1: 89a036697a11c757127eeb9240d5e98c673c78af

dpasukhi

2021-10-13 22:02

administrator   ~0104626

Dear IKA,
please review:
OCCT: CR32310_2
PROD: NO

All remarks have been done.

All tests are ok, no regression see:
http://jenkins-test-occt.nnov.opencascade.com/view/CR32310-master-dpasukhi/view/COMPARE/

ika

2021-10-15 15:20

developer   ~0104649

Dear dpasukhi,

I have only one cosmetic remark:

+ const char aStrForCovert[2] = { aResChar, '\0' };
a misprint.

git

2021-10-15 15:28

administrator   ~0104650

Branch CR32310_3 has been created by dpasukhi.

SHA-1: fee7cccb7485c94d60a788e2d29f5e0d344fcf5b


Detailed log of new commits:

Author: dpasukhi
Date: Sun Oct 10 15:33:15 2021 +0300

    0032310: Data Exchange - Invalid STEP export/import of backslashes in names [Regression since OCCT 7.5.0]
    
    Fixed a problem with handling slashes and apostrophes
    Changed cleaning of the 'TEXT' fields of the step entity to direct order w/o removing operations
    Changed converting text locale to covert before cleaning directives and specials symbols (all directives and sp. symbols encoded in ASCII[0-125] and haven't any differ with any locals)
    Special case, when directives have two slashes before name changed to don't handle directives value and converts as is (combine two slashes as one and write, for example "\\X2\00C3" as "X2\00C3")

dpasukhi

2021-10-15 16:18

administrator   ~0104651

Dear IKA,
please review:
OCCT: CR32310_3
PROD: NO

All remarks have been done.

All tests are ok, no regression see:
http://jenkins-test-occt.nnov.opencascade.com/view/CR32310-master-dpasukhi/view/COMPARE/

ika

2021-10-15 16:21

developer   ~0104652

No more remarks.

Dear bugmaster,
please integrate.

OCCT: CR32310_3
PROD: NO

smoskvin

2021-10-16 10:04

administrator   ~0104667

Combination -
OCCT branch : IR-2021-10-15
master SHA - 475da0f1352e60eebf1432cf136042444c7c5488
49e51745631c52b6c452c65adae4d6dfa21a1b1e
Products branch : IR-2021-10-15 SHA - bd88028c52a28c63c191e235d0af754d59b66c81
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 17699.720000000394 / 17936.010000000137 [-1.32%]
Products
Total CPU difference: 11665.880000000112 / 11621.340000000107 [+0.38%]
Windows-64-VC14:
OCCT
Total CPU difference: 19656.34375 / 19690.109375 [-0.17%]
Products
Total CPU difference: 12872.390625 / 12807.375 [+0.51%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2021-10-16 11:46

administrator   ~0104677

Branch CR32310 has been deleted by mnt.

SHA-1: b233a964575898887a9aebb4d10de5251332109e

git

2021-10-16 11:46

administrator   ~0104678

Branch CR32310_1 has been deleted by mnt.

SHA-1: 74418efa4279a3484367a20087cad09931b61737

git

2021-10-16 11:46

administrator   ~0104679

Branch CR32310_2 has been deleted by mnt.

SHA-1: 89a036697a11c757127eeb9240d5e98c673c78af

git

2021-10-16 11:46

administrator   ~0104680

Branch CR32310_3 has been deleted by mnt.

SHA-1: fee7cccb7485c94d60a788e2d29f5e0d344fcf5b

Related Changesets

occt: master 475da0f1

2021-10-10 12:33:15

dpasukhi


Committer: smoskvin Details Diff
0032310: Data Exchange - Invalid STEP export/import of backslashes in names [Regression since OCCT 7.5.0]

Fixed a problem with handling slashes and apostrophes
Changed cleaning of the 'TEXT' fields of the step entity to direct order w/o removing operations
Changed converting text locale to covert before cleaning directives and specials symbols (all directives and sp. symbols encoded in ASCII[0-125] and haven't any differ with any locals)
Special case, when directives have two slashes before name changed to don't handle directives value and converts as is (combine two slashes as one and write, for example "\\X2\00C3" as "X2\00C3")
Affected Issues
0032310
mod - src/StepData/StepData_StepReaderData.cxx Diff File
mod - tests/bugs/step/bug28454_2 Diff File
add - tests/bugs/step/bug32310 Diff File

Issue History

Date Modified Username Field Change
2021-04-19 10:33 mpv New Issue
2021-04-19 10:33 mpv Assigned To => gka
2021-04-19 11:09 kgv Steps to Reproduce Updated
2021-04-19 11:09 kgv Summary Invalid STEP export/import of backslashes in names => Data Exchange - Invalid STEP export/import of backslashes in names
2021-07-05 09:54 kgv Note Added: 0102274
2021-07-05 10:01 kgv Summary Data Exchange - Invalid STEP export/import of backslashes in names => Data Exchange - Invalid STEP export/import of backslashes in names [Regression since OCCT 7.5.0]
2021-10-06 17:51 szy Note Added: 0104526
2021-10-06 17:51 szy Assigned To gka => dpasukhi
2021-10-06 17:51 szy Status new => assigned
2021-10-10 15:34 git Note Added: 0104578
2021-10-10 16:01 git Note Added: 0104580
2021-10-11 11:02 git Note Added: 0104581
2021-10-11 12:09 dpasukhi Note Added: 0104585
2021-10-11 12:09 dpasukhi Assigned To dpasukhi => ika
2021-10-11 12:09 dpasukhi Status assigned => resolved
2021-10-11 12:10 dpasukhi Relationship added child of 0028454
2021-10-12 14:08 dpasukhi Relationship added related to 0032421
2021-10-13 13:47 git Note Added: 0104618
2021-10-13 17:16 git Note Added: 0104621
2021-10-13 22:02 dpasukhi Note Added: 0104626
2021-10-14 12:24 dpasukhi Relationship added related to 0007322
2021-10-15 15:20 ika Note Added: 0104649
2021-10-15 15:27 ika Assigned To ika => dpasukhi
2021-10-15 15:27 ika Status resolved => assigned
2021-10-15 15:28 git Note Added: 0104650
2021-10-15 16:18 dpasukhi Note Added: 0104651
2021-10-15 16:18 dpasukhi Assigned To dpasukhi => ika
2021-10-15 16:18 dpasukhi Status assigned => resolved
2021-10-15 16:21 ika Note Added: 0104652
2021-10-15 16:21 ika Assigned To ika => bugmaster
2021-10-15 16:21 ika Status resolved => reviewed
2021-10-15 16:23 dpasukhi Test case number => bugs step bug32310
2021-10-16 10:04 smoskvin Note Added: 0104667
2021-10-16 10:04 smoskvin Status reviewed => tested
2021-10-16 11:13 smoskvin Changeset attached => occt master 475da0f1
2021-10-16 11:13 smoskvin Assigned To bugmaster => smoskvin
2021-10-16 11:13 smoskvin Status tested => verified
2021-10-16 11:13 smoskvin Resolution open => fixed
2021-10-16 11:46 git Note Added: 0104677
2021-10-16 11:46 git Note Added: 0104678
2021-10-16 11:46 git Note Added: 0104679
2021-10-16 11:46 git Note Added: 0104680