DiscussionsIssue archiveOCCT:Visualization

Archived issue #0022832

Not documented limitation of Graphic3d_StructureManager

CommunityOCCT:Visualizationclosed5 public notes

Search issues

Description

Post from the Forum - http://www.opencascade.org/org/forum/thread_22291/.
"Hi,

You can use "ImportExport" sample MFC application to reproduce this defect. Just keep clicking on new button in toolbar or new menu item until your application crashes.
There is no test data required. No drawing or anything is added to the project.
I have Windows XP installed and I'm building my application in Visual Studio 2005.
This problem is coming on both 32 bit and 64 bit machines.

Thanks & [signature removed]
Gaurav"

Steps to reproduce

1. Run ImportExport Sample.
2. Open 99 new documents ==> Ok.
3. Open 100-th new document:
 - Release mode => Crash
 - Debug mode => message "...Graphic3d_InitializationError: Too many ViewManagers are defined".

Additional information

This behavior is result of the limitation of the current implementation:
==> #define StructureManager_MAX 100
This definition used in static array.
========================================
Suggestion.
1. The limitation should be documented
2. To be analyzed in order to define feasibility of the limitation removing.

Public activity

5 archived notes

Participants are labeled by their role within this record.

01Commenter 1
The limitation is to be mentioned in V3d_Viewer, Visual3d_ViewManager and Graphic3d_StructureManager classes documentation, like this:

"Currently, creating more than 99 viewer instances is not supported and results in an exception. This limitation might be addressed in some future OCCT releases."
02Commenter 2
Information about viewers count limitation was added in V3d_Viewer, Visual3d_ViewManager and Graphic3d_StructureManager classes CDL documentation.
03Commenter 3
The Git branch CR22832 is ready to be reviewed.
Please review.
04Commenter 4
Branch CR22832 reviewed without remarks, ready for testing.
05Commenter 1
Dear BugMaster,
Branch CR22832 (and products from GIT master) was compiled on Linux and Windows platforms and tested.

Regression:
Not detected

Improvements:
Not detected

Testing case:
Not needed

Related records