Index: base/synchronization/condition_variable_win.cc |
diff --git a/base/synchronization/condition_variable_win.cc b/base/synchronization/condition_variable_win.cc |
index 927362a2a7223828cb41922b2151789dae1d2520..377fc9d23bf5a28063168098fcf5995aec420f57 100644 |
--- a/base/synchronization/condition_variable_win.cc |
+++ b/base/synchronization/condition_variable_win.cc |
@@ -99,7 +99,7 @@ void WinVistaCondVar::TimedWait(const TimeDelta& max_time) { |
DWORD timeout = static_cast<DWORD>(max_time.InMilliseconds()); |
CRITICAL_SECTION* cs = user_lock_.lock_.native_handle(); |
-#if !defined(NDEBUG) |
+#if !defined(NDEBUG) || defined(DCHECK_ALWAYS_ON) |
user_lock_.CheckHeldAndUnmark(); |
#endif |
@@ -107,7 +107,7 @@ void WinVistaCondVar::TimedWait(const TimeDelta& max_time) { |
DCHECK(GetLastError() != WAIT_TIMEOUT); |
} |
-#if !defined(NDEBUG) |
+#if !defined(NDEBUG) || defined(DCHECK_ALWAYS_ON) |
user_lock_.CheckUnheldAndMark(); |
#endif |
} |