diff options
author | Tobias Markmann <tm@ayena.de> | 2015-02-07 23:48:10 (GMT) |
---|---|---|
committer | Swift Review <review@swift.im> | 2015-02-09 11:09:23 (GMT) |
commit | 7d3df55bf5fd93b3eaca36cc43cb22ea7879bf7e (patch) | |
tree | 6e48bd5233498068609f4c3e62eda25a2acfe4d6 /Swiften/Serializer/PayloadSerializers/PubSubEventSerializer.h | |
parent | 2b81680fc59dd3170635967948727b4dc49b951e (diff) | |
download | swift-7d3df55bf5fd93b3eaca36cc43cb22ea7879bf7e.zip swift-7d3df55bf5fd93b3eaca36cc43cb22ea7879bf7e.tar.bz2 |
Fix data race in DummyEventLoop and BoostConnection(Server)Test reported by TSAN
The data race is on the events_ member in DummyEventLoop.
A BoostIOServerThread can post events to the DummyEventLoop and thereby
access its events_ data member while the test's main code processes
events of the loop.
To prevent access to the DummyEventLoop by the BoostIOServiceThread
after the DummyEventLoop is deleted, the BoostIOServiceThread is
deleted before the DummyEventLoop.
Process remaining events in BoostConnectionTest::tearDown like we do in
BoostConnectionServerTest::tearDown.
Test-Information:
Run multiple times on NetworkTest as TSAN enabled build on Linux.
Without the patch it reports a data race for the events_ deque member.
Change-Id: I3c85535338fc0ce0263dbfc3534aceb1dd09c137
Diffstat (limited to 'Swiften/Serializer/PayloadSerializers/PubSubEventSerializer.h')
0 files changed, 0 insertions, 0 deletions