View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0025057 | Open CASCADE | OCCT:Foundation Classes | public | 2014-07-08 15:45 | 2021-03-22 13:39 |
Reporter | Assigned To | bugmaster | |||
Priority | normal | Severity | minor | ||
Status | closed | Resolution | fixed | ||
Product Version | 6.7.1 | ||||
Target Version | 6.8.0 | Fixed in Version | 6.8.0 | ||
Summary | 0025057: Message_Algorithm fails to find messages defined for base class | ||||
Description | When generating messages for flags set in its status, Message_Algorithm class parses hierarchy of its descendants to construct message keys in the form "class.Status" (e.g. "TrivialAlgorithm.Error1"). This iteration actually always stops at the first step, because method Message_MsgFile::Msg() always returns some string, even if there is no message registered with specified key (error is reported then). Another problem is that when error string is generated, it does not contain name of the message key requested, which makes debug more difficult. This has been broken by 0023920. | ||||
Tags | No tags attached. | ||||
Test case number | Not needed | ||||
related to | 0023920 | closed | Roman Lygin | Community | Change use of static variables in Message package to prevent data races in Shape Healing |
parent of | 0032235 | closed | kgv | Open CASCADE | Foundation Classes, Message_MsgFile - force initialization of global mutex |
|
Fix pushed to branch CR25057, please review. New method HasMsg() is added in Message_MsgFile class to check if message with given key is registered. That method is used in Message_Algorithm to check if message is defined on given level of class hierarchy. Generation of error message in Message_MsgFile::Msg() is revised: now it includes a message key and gets added to the registry, to avoid re-generation in case of multiple requests. Access to message registry maintained by the Message_MsgFile class is protected from concurrent access by mutex. |
|
Please test the patch. |
|
Branch CR25057 has been updated forcibly by mkv. SHA-1: a9bf98a2fd6e19f5acb7bc7a6862a96b039230c5 |
|
Dear BugMaster, Branch CR25057 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested. SHA-1: a9bf98a2fd6e19f5acb7bc7a6862a96b039230c5 Number of compiler warnings: occt component : Linux: 15 (15 on master) Windows: 0 (0 on master) MacOS: 199 (199 on master) products component : Linux: 11 (11 on master) Windows: 2 (2 on master) Regressions/Differences: No regressions/differences Testing cases: Not needed Testing on Linux: Total MEMORY difference: 352566732 / 352298144 Total CPU difference: 52441.330000000125 / 54524.60999999987 Testing on Windows: Total MEMORY difference: 377562116 / 378488680 Total CPU difference: 41033.53125 / 46775.453125 There are no differences in images found by testdiff. |
|
Branch CR25057 has been deleted by inv. SHA-1: a9bf98a2fd6e19f5acb7bc7a6862a96b039230c5 |
occt: master c67cd62e 2014-07-08 12:11:16
Committer: bugmaster Details Diff |
0025057: Message_Algorithm fails to find messages defined for base class New method HasMsg() is added in Message_MsgFile class to check if message with given key is registered. That method is used in Message_Algorithm to check if message is defined on given level of class hierarchy. Generation of error message in Message_MsgFile::Msg() is revised: now it includes a message key and gets added to the registry, to avoid re-generation in case of multiple requests. Access to message registry maintained by the Message_MsgFile class is protected from concurrent access by mutex. |
Affected Issues 0025057 |
|
mod - src/Message/Message_Algorithm.cxx | Diff File | ||
mod - src/Message/Message_MsgFile.cdl | Diff File | ||
mod - src/Message/Message_MsgFile.cxx | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2014-07-08 15:45 |
|
New Issue | |
2014-07-08 15:45 |
|
Assigned To | => abv |
2014-07-08 15:46 |
|
Relationship added | related to 0023920 |
2014-07-08 16:24 |
|
Note Added: 0030008 | |
2014-07-08 16:24 |
|
Assigned To | abv => pdn |
2014-07-08 16:24 |
|
Status | new => resolved |
2014-07-14 14:41 |
|
Assigned To | pdn => kgv |
2014-07-14 14:52 | kgv | Note Added: 0030124 | |
2014-07-14 14:52 | kgv | Assigned To | kgv => bugmaster |
2014-07-14 14:52 | kgv | Status | resolved => reviewed |
2014-07-15 19:17 |
|
Assigned To | bugmaster => mkv |
2014-07-15 20:22 | git | Note Added: 0030173 | |
2014-07-17 13:46 |
|
Note Added: 0030227 | |
2014-07-17 13:47 |
|
Test case number | => Not needed |
2014-07-17 13:47 |
|
Assigned To | mkv => bugmaster |
2014-07-17 13:47 |
|
Status | reviewed => tested |
2014-07-22 15:13 | bugmaster | Changeset attached | => occt master c67cd62e |
2014-07-22 15:13 | bugmaster | Status | tested => verified |
2014-07-22 15:13 | bugmaster | Resolution | open => fixed |
2014-07-22 15:57 | git | Note Added: 0030313 | |
2014-11-11 12:46 |
|
Fixed in Version | => 6.8.0 |
2014-11-11 12:53 |
|
Status | verified => closed |
2021-03-22 13:39 | kgv | Relationship added | parent of 0032235 |