Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0030697Open CASCADE[OCCT] OCCT:DRAWpublic2019-05-06 23:092019-10-05 22:16
Assigned Tomzernova 
PlatformOSOS Version
Product Version[OCCT] 6.8.0 
Target Version[OCCT] 7.5.0*Fixed in Version 
Summary0030697: Draw Harness - Draw_Printer should not be set to Message::DefaultMessenger() by default
DescriptionCurrently Draw Harness removes std::cout printer from Message::DefaultMessenger() and appends Draw_Printer instead. Draw_Printer redirects output to Tcl command result, which results in the following issues:
- DefaultMessenger() is a global callback which can be used by any OCCT code, not exactly designed for Tcl output of particular command. This might include errors, failures and warnings, so that command output might become unexpectedly broken. Example - vreadpixel command which uses a workaround clearing Tcl output to avoid breaking tests (as result, messages from TKOpenGl are discarded and might remain unnoticed).
- Feeding Tcl interpreter is not thread safe, while DefaultMessenger() can be used for emitting messages from working threads resulting in Draw Harness crash.
- Draw_Printer accumulates messages internally and prints them into console only after command execution completion. This is annoying behavior for a long process reporting some intermediate messages - so that important problems can be seen only at the very end of command.

It is proposed reverted patch making Draw_Printer as default printer ad Draw Harness start and reconsider its usage in particular commands. The origin of Draw_Printer are Data Exchange plugins, so that them should be checked carefully.
TagsNo tags attached.
Test case number
Attached Files

- Relationships
related to 0024644closedbugmaster Draw_Printer - provide the way to control messages gravity filter 
related to 0025748assignedmsv Foundation Classes - Parallel version of progress indicator 
related to 0031036reviewedbugmaster Foundation Classes, Message_PrinterOStream - add option printing colored text into console 

-  Notes
git (administrator)
2019-05-06 23:12

Branch CR30697 has been created by kgv.

SHA-1: 80145f0110178da4585ea764914f24bfef7abbac

Detailed log of new commits:

Author: kgv
Date: Mon May 6 23:05:13 2019 +0300

    0030697: Draw Harness - Draw_Printer should not be set to Message::DefaultMessenger() by default

- Issue History
Date Modified Username Field Change
2019-05-06 23:09 kgv New Issue
2019-05-06 23:09 kgv Assigned To => kgv
2019-05-06 23:12 git Note Added: 0084205
2019-05-06 23:14 kgv Relationship added related to 0024644
2019-05-06 23:14 kgv Product Version => 6.8.0
2019-05-12 16:46 kgv Relationship added related to 0025748
2019-09-04 15:43 abv Target Version 7.4.0 => 7.5.0*
2019-10-05 20:16 kgv Assigned To kgv => mzernova
2019-10-05 20:16 kgv Status new => assigned
2019-10-05 22:16 kgv Relationship added related to 0031036

Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker