View Issue Details

IDProjectCategoryView StatusLast Update
0031652Open CASCADEOCCT:Visualizationpublic2020-12-02 17:13
Reporterkgv Assigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version7.5.0 
Target Version7.5.0Fixed in Version7.5.0 
Summary0031652: Visualization - crash on highlighting HLR Computed presentation displayed with Shaded display mode
DescriptionWhen shape is displayed using AIS_Shaded display mode with HLR computed mode enabled, dynamic highlighting leads to NULL-dereference.

This is sequence of 0031431 patch.
Before the patch, several default Graphic3d_Structure::Compute() methods returned this, when HLR computation was undefined in subclass:
  virtual Handle(Graphic3d_Structure) Compute (const Handle(Graphic3d_DataStructureManager)& theProjector,
                                               const Handle(Geom_Transformation)& theTrsf)
  {
    (void )theProjector;
    (void )theTrsf;
    return this;
  }
Steps To Reproduce
pload MODELING VISUALIZATION
psphere s 1
vclear
vinit View1
vdisplay -dispMode 1 s
vfront
vfit
vhlr on -algoType polyAlgo
# crash
vmoveto 351 64
TagsNo tags attached.
Test case numberbugs/vis/bug31652

Relationships

child of 0031431 closedkgv Visualization, PrsMgr_PresentableObject - simplify HLR computing interface 

Activities

git

2020-07-05 00:16

administrator   ~0092991

Branch CR31652 has been created by kgv.

SHA-1: 7b9fceb0d1bbd5e0ef6842951941d7cf017a28d3


Detailed log of new commits:

Author: kgv
Date: Sat Jul 4 23:37:04 2020 +0300

    0031652: Visualization - crash on highlighting HLR Computed presentation displayed with Shaded display mode
    
    PrsMgr_PresentationManager::displayImmediate() now uses proper ZLayer for a shadow presentation
    of computed presentation (fixes dynamic highlighting on mouse move).
    Graphic3d_CView::SetComputedMode() - added invalidation of bounding box on turning OFF compute mode.
    AIS_ViewController::contextLazyMoveTo() now ignores MoveTo() while rotating
    view with temporary disabled compute mode (leading to undefined results and crashes).
    
    Graphic3d_Structure::Graphic3d_Structure() - do not copy Graphic3d_TOS_COMPUTED visual
    from linked structure, as Graphic3d_CView::SetComputedMode() does not compute such structures.

kgv

2020-07-05 11:41

developer   ~0092997

Patch is ready for review in OCCT branch CR31652.

http://vm-jenkins-test-12.nnov.opencascade.com:8080/view/CR31652-master-KGV/

osa

2020-07-06 09:45

developer   ~0093006

The patch was reviewed

bugmaster

2020-07-11 12:12

administrator   ~0093099

Combination -
OCCT branch : IR-2020-07-10
master SHA - 74440d215bf268902458b25e36a61c791f21fc38
a206de37fbfa0bf71bd534ae47192bbec23b8522
Products branch : IR-2020-07-10 SHA - 6e90d3ea8d7f26e39ec8b263c708ad6ecf5dfaaa
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: 17210.790000000085 / 17175.910000000105 [+0.20%]
Products
Total CPU difference: 11229.020000000071 / 11228.490000000076 [+0.00%]
Windows-64-VC14:
OCCT
Total CPU difference: 18725.6875 / 18705.46875 [+0.11%]
Products
Total CPU difference: 11144.125 / 13046.140625 [-14.58%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2020-07-11 12:31

administrator   ~0093124

Branch CR31652 has been deleted by inv.

SHA-1: 7b9fceb0d1bbd5e0ef6842951941d7cf017a28d3

Related Changesets

occt: master 6d1d35e4

2020-07-04 20:37:04

kgv


Committer: bugmaster Details Diff
0031652: Visualization - crash on highlighting HLR Computed presentation displayed with Shaded display mode

PrsMgr_PresentationManager::displayImmediate() now uses proper ZLayer for a shadow presentation
of computed presentation (fixes dynamic highlighting on mouse move).
Graphic3d_CView::SetComputedMode() - added invalidation of bounding box on turning OFF compute mode.
AIS_ViewController::contextLazyMoveTo() now ignores MoveTo() while rotating
view with temporary disabled compute mode (leading to undefined results and crashes).

Graphic3d_Structure::Graphic3d_Structure() - do not copy Graphic3d_TOS_COMPUTED visual
from linked structure, as Graphic3d_CView::SetComputedMode() does not compute such structures.
Affected Issues
0031652
mod - src/AIS/AIS_ViewController.cxx Diff File
mod - src/Graphic3d/Graphic3d_CView.cxx Diff File
mod - src/Graphic3d/Graphic3d_Structure.cxx Diff File
mod - src/PrsMgr/PrsMgr_PresentationManager.cxx Diff File
add - tests/bugs/vis/bug31652 Diff File

Issue History

Date Modified Username Field Change
2020-07-04 23:29 kgv New Issue
2020-07-04 23:29 kgv Assigned To => kgv
2020-07-04 23:30 kgv Relationship added child of 0031431
2020-07-04 23:34 kgv Description Updated
2020-07-05 00:16 git Note Added: 0092991
2020-07-05 11:41 kgv Note Added: 0092997
2020-07-05 11:41 kgv Assigned To kgv => osa
2020-07-05 11:41 kgv Status new => resolved
2020-07-06 09:45 osa Note Added: 0093006
2020-07-06 09:45 osa Assigned To osa => bugmaster
2020-07-06 09:45 osa Status resolved => reviewed
2020-07-11 12:12 bugmaster Note Added: 0093099
2020-07-11 12:12 bugmaster Status reviewed => tested
2020-07-11 12:15 bugmaster Test case number => bugs/vis/bug31652
2020-07-11 12:22 bugmaster Changeset attached => occt master 6d1d35e4
2020-07-11 12:22 bugmaster Status tested => verified
2020-07-11 12:22 bugmaster Resolution open => fixed
2020-07-11 12:31 git Note Added: 0093124
2020-12-02 16:43 emo Fixed in Version => 7.5.0
2020-12-02 17:13 emo Status verified => closed