MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0031132Community[OCCT] OCCT:Visualizationpublic2019-11-05 18:322019-11-11 11:21
ReporterVico Liang 
Assigned ToVico Liang 
PrioritynormalSeverityminor 
StatusfeedbackResolutionunable to reproduce 
PlatformOSOS Version
Product Version[OCCT] 7.4.0 
Target Version[OCCT] 7.5.0*Fixed in Version 
Summary0031132: Visualization - Deactivate should not trigger Standard_ProgramError.
DescriptionStack trace as below, Standard_ProgramError exception should not occur.

void AIS_InteractiveContext::Deactivate (const Handle(AIS_InteractiveObject)& theObj)
SelectMgr_ViewerSelector::Deactivate (const Handle(SelectMgr_Selection)& theSelection)
void SelectMgr_ToleranceMap::Decrement (const Standard_Integer& theTolerance)

Standard_ProgramError_Raise_if (*aFreq == 0, "SelectMgr_ToleranceMap::Decrement() - internal error");

Above codes will trigger Standard_ProgramError in some cases. Not always.

The file "deactivate throw.brep" has two wires, use Boolean fuse to unite these two wires to one. and then try to display and deactivate it. The first time should throw.
TagsNo tags attached.
Test case number
Attached Files? file icon deactivate throw.brep (761 bytes) 2019-11-05 19:51
jpg file icon deactivate throw.jpg (119,069 bytes) 2019-11-05 19:51

- Relationships
related to 0030452closedbugmaster Open CASCADE Visualization - SelectMgr_ViewerSelector::Deactivate() raises exception when called twice 

-  Notes
(0088737)
kgv (developer)
2019-11-05 18:35

This is an assertion for invalid situation.
Reproducer is needed for analysis.
(0088738)
kgv (developer)
2019-11-05 18:54

Please also specify OCCT version.
(0088739)
Vico Liang (developer)
2019-11-05 19:56

Uploaded files and picture to help reproduce the issue. The version is testing on OCCT7.4.0 after enable exception build.
(0088751)
kgv (developer)
2019-11-06 14:36

Steps to reproduce are incomplete - nothing happens with provided scenario.
pload MODELING VISUALIZATION
restore {deactivate throw.brep} b
explode b
bfuse r b_1 b_2
vclear
vinit View1
vdisplay r
vfit
vselmode r 0 0
(0088821)
Vico Liang (developer)
2019-11-09 05:30

Dear kgv,
I found that this problem just occurs when there is dirty selection in context. The AIS_Object's shape is updated, but its selection is still in AIS_Context. We need to remove the old selection from AIS_Context before calling Deactivate. This might not be a bug of OCCT. it's a program issue should be avoided from coding. You can close this.
Thanks.
(0088887)
kgv (developer)
2019-11-11 11:20

Good to hear, that you have found the problem at application side.

But we can keep the bug open, if you can prepare a reproducer and there are some doubts that this can be an OCCT bug.

- Issue History
Date Modified Username Field Change
2019-11-05 18:32 Vico Liang New Issue
2019-11-05 18:32 Vico Liang Assigned To => kgv
2019-11-05 18:35 kgv Note Added: 0088737
2019-11-05 18:53 kgv Relationship added related to 0030452
2019-11-05 18:54 kgv Note Added: 0088738
2019-11-05 19:39 Vico Liang Product Version => 7.4.0
2019-11-05 19:51 Vico Liang File Added: deactivate throw.brep
2019-11-05 19:51 Vico Liang File Added: deactivate throw.jpg
2019-11-05 19:54 Vico Liang Description Updated View Revisions
2019-11-05 19:56 Vico Liang Note Added: 0088739
2019-11-06 14:36 kgv Note Added: 0088751
2019-11-09 05:30 Vico Liang Note Added: 0088821
2019-11-11 11:20 kgv Note Added: 0088887
2019-11-11 11:21 kgv Assigned To kgv => Vico Liang
2019-11-11 11:21 kgv Status new => feedback
2019-11-11 11:21 kgv Resolution open => unable to reproduce


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker