1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "mojo/system/message_in_transit_queue.h" 6 7 #include "base/logging.h" 8 #include "base/stl_util.h" 9 10 namespace mojo { 11 namespace system { 12 13 MessageInTransitQueue::MessageInTransitQueue() { 14 } 15 16 MessageInTransitQueue::MessageInTransitQueue(PassContents, 17 MessageInTransitQueue* other) { 18 queue_.swap(other->queue_); 19 } 20 21 MessageInTransitQueue::~MessageInTransitQueue() { 22 if (!IsEmpty()) { 23 LOG(WARNING) << "Destroying nonempty message queue"; 24 Clear(); 25 } 26 } 27 28 void MessageInTransitQueue::Clear() { 29 STLDeleteElements(&queue_); 30 } 31 32 } // namespace system 33 } // namespace mojo 34