DiscussionsIssue archiveOCCT:Data Exchange

Archived issue #0026451

Crash importing STeP file

CommunityOCCT:Data Exchangeclosed19 public notes

Search issues

Description

Importing the attached file crashes OC.

I guess there are some invalid entities within, but other products seem to import the file fine (perhaps skipping them?).

Steps to reproduce

ReadStep D test_STEP.stp
>> no exceptions should be caught

Public activity

19 archived notes

Participants are labeled by their role within this record.

01Commenter 2
Branch [archived branch] has been created by Commenter 3.

[revision removed]


Detailed log of new commits:

Author: Commenter 3
Date: Thu Aug 27 12:02:35 2015 +0300

    0026451: Crash importing STeP file
    
    Add check for NULL.
02Commenter 3
Dear GKA,

could you please review branch CR26451?
03Commenter 3
Branch CR26451 is ready to be tested.
04Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
05Commenter 5
Dear Commenter 1,
Branch CR26451 was rebased on branch IR-2015-08-27 of occt git-repository.
[revision removed]
06Commenter 6
Dear Commenter 1,
Branch CR26451 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
[revision removed]

Number of compiler warnings:

occt component :
Linux: 15 (15 on master)
Windows: 0 (0 on master)

products component :
Linux: 39 (39 on master)
Windows: 0 (0 on master)

Regressions/Differences/Improvements:
No regressions/differences

Testing cases:
http://occt-tests/CR26451-master-occt-64/Debian70-64/bugs/step/bug26451.html
http://occt-tests/CR26451-master-occt-64/Windows-64-VC10/bugs/step/bug26451.html
bugs step bug26451: OK

Testing on Linux:
occt component :
Total MEMORY difference: 91691452 / 91194310 [+0.55%]
Total CPU difference: 17791.019999999047 / 17162.189999999384 [+3.66%]
products component :
Total MEMORY difference: 25222027 / 25216901 [+0.02%]
Total CPU difference: 7036.710000000023 / 7037.939999999998 [-0.02%]

Testing on Windows:
occt component :
Total MEMORY difference: 57104601 / 57097637 [+0.01%]
Total CPU difference: 16486.092079399015 / 16461.10071919891 [+0.15%]
products component :
Total MEMORY difference: 16228596 / 16228570 [+0.00%]
Total CPU difference: 5317.169284199959 / 5334.079792599963 [-0.32%]

There are following differences in images found by testdiff.
There are no differences in images found by testdiff.
07Commenter 2
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: mkv
Date: Fri Aug 28 15:41:17 2015 +0300

    Test case for issue CR26451

08Commenter 8
Dear ika,
could you please review following test case
bugs step bug26451
09Commenter 3
Dear MKV,

the test case is OK.
10Commenter 10
Dear Commenter 1,
Branch CR26451 is TESTED.
11Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]
12Author
Thanks, but this bug hasn't been fixed.

Consider the following code (more or less taken from the manuals):

Handle(XCAFApp_Application) App(XCAFApp_Application::GetApplication());
Handle(TDocStd_Document) Doc;
App->NewDocument("MDTV-XCAF",Doc);
STEPCAFControl_Reader reader;
if (reader.ReadFile(FileName)!=IFSelect_RetDone) throw
  std::runtime_error("OpenCASCADE STEP reading failed");
if (!reader.Transfer(Doc)) throw std::runtime_error("OpenCASCADE transfer failed");

6.9.0 would crash on "reader.ReadFile"; 6.9.1 will go on, but still crash on "reader.Trasnfer(Doc)".
There are still several null pointer checks needed.
13Commenter 2
Branch [archived branch] has been created by Commenter 3.

[revision removed]


Detailed log of new commits:

Author: Commenter 3
Date: Fri Nov 6 11:47:53 2015 +0300

    0026451: Crash importing STeP file
    
    Add check for NULL.
14Commenter 3
Dear GKA,

could you please review branch CR26451?
15Commenter 15
Branch CR26451 is ready to be tested
16Commenter 2
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
17Commenter 17
Branch [archived branch] has been rebased on the current master
18Commenter 18
Dear Commenter 1,

Branch CR26451 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
[revision removed]

Number of compiler warnings:
occt component:
   Linux: 0 (0 on master)
   Windows: 0 (0 on master)
   MacOS: 129 (129 on master)
products component:
   Linux: 39 (39 on master)
   Windows: 0 (0 on master)

Regressions/Differences:
Not detected

Testing cases:
bugs step bug26451 - OK
http://occt-tests/CR26451-master-occt-64/Debian70-64/bugs/step/bug26451.html
http://occt-tests/CR26451-master-occt-64/Windows-64-VC10/bugs/step/bug26451.html

Testing on Linux:
Total MEMORY difference: 92790930 / 92928671 [-0.15%]
Total CPU difference: 19870.069999999738 / 19784.679999999877 [+0.43%]

Testing on Windows:
Total MEMORY difference: 58087879 / 58096109 [-0.01%]
Total CPU difference: 18117.893739598912 / 18232.367273398875 [-0.63%]
19Commenter 2
Branch [archived branch] has been deleted by Participant.

[revision removed]

Related records