| Index: third_party/mojo/src/mojo/edk/system/mutex.cc | 
| diff --git a/third_party/mojo/src/mojo/edk/system/mutex.cc b/third_party/mojo/src/mojo/edk/system/mutex.cc | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..216b35a0388446f0ae910ac0e068af8ae0720616 | 
| --- /dev/null | 
| +++ b/third_party/mojo/src/mojo/edk/system/mutex.cc | 
| @@ -0,0 +1,38 @@ | 
| +// Copyright 2014 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +#include "mojo/edk/system/mutex.h" | 
| + | 
| +#if !defined(NDEBUG) || defined(DCHECK_ALWAYS_ON) | 
| + | 
| +#include "base/logging.h" | 
| + | 
| +namespace mojo { | 
| +namespace system { | 
| + | 
| +Mutex::Mutex() : lock_() { | 
| +} | 
| + | 
| +Mutex::~Mutex() { | 
| +  DCHECK(owning_thread_ref_.is_null()); | 
| +} | 
| + | 
| +void Mutex::AssertHeld() const { | 
| +  DCHECK(owning_thread_ref_ == base::PlatformThread::CurrentRef()); | 
| +} | 
| + | 
| +void Mutex::CheckHeldAndUnmark() { | 
| +  DCHECK(owning_thread_ref_ == base::PlatformThread::CurrentRef()); | 
| +  owning_thread_ref_ = base::PlatformThreadRef(); | 
| +} | 
| + | 
| +void Mutex::CheckUnheldAndMark() { | 
| +  DCHECK(owning_thread_ref_.is_null()); | 
| +  owning_thread_ref_ = base::PlatformThread::CurrentRef(); | 
| +} | 
| + | 
| +}  // namespace system | 
| +}  // namespace mojo | 
| + | 
| +#endif  // !NDEBUG || DCHECK_ALWAYS_ON | 
|  |