MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0028923Open CASCADE[OCCT] OCCT:Foundation Classespublic2017-07-19 12:222017-09-29 16:28
Reporterkgv 
Assigned Tobugmaster 
PrioritynormalSeverityminor 
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version[OCCT] 6.3.1 
Target Version[OCCT] 7.2.0Fixed in Version[OCCT] 7.2.0 
Summary0028923: Foundation Classes - Message_Messenger::Send() implementation is not thread-safe
DescriptionMessage_Messenger::Send() implementation iterates elements in NCollection_Sequence by index numbers, which is not thread-safe:
  Standard_Integer nb = myPrinters.Length();
  for (Standard_Integer i = 1; i <= nb; i++)
  {
    Handle(Message_Printer) aPrinter = myPrinters(i);
    if ( ! aPrinter.IsNull() ) 
      aPrinter->Send ( theString, theGravity, putEndl );
  }
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot required
Attached Files

- Relationships

-  Notes
(0068423)
git (administrator)
2017-07-19 12:53

Branch CR28923 has been created by kgv.

SHA-1: 1eadb4f1d6a9477f9df6e540aa46655421f2b5e8


Detailed log of new commits:

Author: kgv
Date: Wed Jul 19 12:52:32 2017 +0300

    # cosmetics

Author: kgv
Date: Wed Jul 19 12:34:09 2017 +0300

    0028923: Foundation Classes - Message_Messenger::Send() implementation is not thread-safe
    
    Use (Message_SequenceOfPrinters::Iterator instead of accessing sequence elements by index.
(0068424)
kgv (developer)
2017-07-19 12:54

Patch is ready for review.
(0068430)
abv (manager)
2017-07-19 14:18

No remarks, please test
(0068466)
bugmaster (administrator)
2017-07-20 10:12
edited on: 2017-07-20 12:03

Branch CR28923 from occt git-repository and master from products git-repository was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
SHA-1: 1eadb4f1d6a9477f9df6e540aa46655421f2b5e8

Number of compiler warnings:

occt component :
Linux: 0 (0 on master)
Windows: 0 (0 on master)
MacOS : 0 (0 on master)

products component :
Linux: 10 (10 on master)
Windows: 0 (0 on master)
MacOS : 28 (28 on master)

Regressions/Differences/Improvements:
No regressions/differences

Testing cases:
Not requared

Testing on Linux:
occt component :
Total CPU difference: 19049.300000000203 / 19401.700000000146 [-1.82%]
Total MEMORY difference: 92466631 / 92413321 [+0.06%]
products component :
Total CPU difference: 6479.440000000057 / 6549.0400000000745 [-1.06%]
Total MEMORY difference: 38168914 / 38040477 [+0.34%]
Testing on Windows:
occt component :
Total CPU difference: 18090.3595630985 / 17787.76442339872 [+1.70%]
Total MEMORY difference: 59104753 / 59107100 [-0.00%]
products component :
Total CPU difference: 6802.3456045000685 / 6684.861251400067 [+1.76%]
Total MEMORY difference: 28934014 / 28820451 [+0.39%]

There are no differences in images found by testdiff.

(0068576)
git (administrator)
2017-07-21 16:16

Branch CR28923 has been deleted by kgv.

SHA-1: 1eadb4f1d6a9477f9df6e540aa46655421f2b5e8

- Related Changesets
occt: master 983fd6c0
Timestamp: 2017-07-19 09:34:09
Author: kgv
Committer: bugmaster
Details ] Diff ]
0028923: Foundation Classes - Message_Messenger::Send() implementation is not thread-safe

Use (Message_SequenceOfPrinters::Iterator instead of accessing sequence elements by index.
mod - src/Message/FILES Diff ] File ]
mod - src/Message/Message_Messenger.cxx Diff ] File ]
mod - src/Message/Message_Messenger.hxx Diff ] File ]
rm - src/Message/Message_Messenger.lxx Diff ] File ]
mod - src/Message/Message_Printer.cxx Diff ] File ]
mod - src/Message/Message_Printer.hxx Diff ] File ]
rm - src/Message/Message_Printer.lxx Diff ] File ]
mod - src/Message/Message_PrinterOStream.cxx Diff ] File ]
mod - src/Message/Message_PrinterOStream.hxx Diff ] File ]
rm - src/Message/Message_PrinterOStream.lxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2017-07-19 12:22 kgv New Issue
2017-07-19 12:22 kgv Assigned To => abv
2017-07-19 12:53 git Note Added: 0068423
2017-07-19 12:54 kgv Note Added: 0068424
2017-07-19 12:54 kgv Status new => resolved
2017-07-19 12:55 kgv Product Version 7.1.0 => 6.3.1
2017-07-19 14:18 abv Note Added: 0068430
2017-07-19 14:18 abv Assigned To abv => bugmaster
2017-07-19 14:18 abv Status resolved => reviewed
2017-07-19 15:24 mkv Assigned To bugmaster => mkv
2017-07-20 10:12 bugmaster Note Added: 0068466
2017-07-20 10:12 bugmaster Assigned To mkv => bugmaster
2017-07-20 10:12 bugmaster Status reviewed => tested
2017-07-20 10:12 bugmaster Test case number => Not required
2017-07-20 12:02 bugmaster Note Edited: 0068466 View Revisions
2017-07-20 12:03 bugmaster Note Edited: 0068466 View Revisions
2017-07-21 16:08 bugmaster Changeset attached => occt master 983fd6c0
2017-07-21 16:08 bugmaster Status tested => verified
2017-07-21 16:08 bugmaster Resolution open => fixed
2017-07-21 16:16 git Note Added: 0068576
2017-09-29 16:17 user533 Fixed in Version => 7.2.0
2017-09-29 16:28 user533 Status verified => closed


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker