diff options
author | tommi@webrtc.org <tommi@webrtc.org> | 2015-03-07 20:14:50 +0000 |
---|---|---|
committer | tommi@webrtc.org <tommi@webrtc.org> | 2015-03-07 20:15:24 +0000 |
commit | 679d2f13522e1cf426f5088549521e591ce2f36c (patch) | |
tree | 4d41fd32dddbc63104e201e13cb66cf9e9aa0bf6 /webrtc/base/messagequeue.cc | |
parent | f696e49c9a19817dfbb6c766a6d98ac2336b14e8 (diff) | |
download | webrtc-679d2f13522e1cf426f5088549521e591ce2f36c.tar.gz |
Disable CS_TRACK_OWNER on Mac in debug mode.
Local testing indicates that the pthread_t member variable might be causing alignment problems on the Chromium bots. After landing this (and once the Chromium tree is open again), I'll try a roll again to see if this has an effect.
R=magjed@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/48449004
Cr-Commit-Position: refs/heads/master@{#8644}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8644 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'webrtc/base/messagequeue.cc')
-rw-r--r-- | webrtc/base/messagequeue.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/webrtc/base/messagequeue.cc b/webrtc/base/messagequeue.cc index 74b1024deb..37068980ba 100644 --- a/webrtc/base/messagequeue.cc +++ b/webrtc/base/messagequeue.cc @@ -59,7 +59,9 @@ void MessageQueueManager::AddInternal(MessageQueue *message_queue) { // MessageQueueManager methods should be non-reentrant, so we // ASSERT that is the case. If any of these ASSERT, please // contact bpm or jbeda. +#if CS_TRACK_OWNER // CurrentThreadIsOwner returns true by default. ASSERT(!crit_.CurrentThreadIsOwner()); +#endif CritScope cs(&crit_); message_queues_.push_back(message_queue); } @@ -71,7 +73,9 @@ void MessageQueueManager::Remove(MessageQueue *message_queue) { return Instance()->RemoveInternal(message_queue); } void MessageQueueManager::RemoveInternal(MessageQueue *message_queue) { +#if CS_TRACK_OWNER // CurrentThreadIsOwner returns true by default. ASSERT(!crit_.CurrentThreadIsOwner()); // See note above. +#endif // If this is the last MessageQueue, destroy the manager as well so that // we don't leak this object at program shutdown. As mentioned above, this is // not thread-safe, but this should only happen at program termination (when @@ -100,7 +104,9 @@ void MessageQueueManager::Clear(MessageHandler *handler) { return Instance()->ClearInternal(handler); } void MessageQueueManager::ClearInternal(MessageHandler *handler) { +#if CS_TRACK_OWNER // CurrentThreadIsOwner returns true by default. ASSERT(!crit_.CurrentThreadIsOwner()); // See note above. +#endif CritScope cs(&crit_); std::vector<MessageQueue *>::iterator iter; for (iter = message_queues_.begin(); iter != message_queues_.end(); iter++) |