Note that this means that there is no new code. The code has been taken directly from condition_variable_win.cc/h compensating minimally to be able to split up the two code paths. Tested by: 1) Disabling native implementation and send to try bots. 2) Only return native implementation (i.e. if native implementation returns NULL there will be a crash when using the condition variable) and send to try bots. 3) The final cl sent to trybots. All tests pass. The changes are due to static analyzer code complaints. BUG=N/A Review URL: https://webrtc-codereview.appspot.com/1191004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@3728 4adac7df-926f-26a2-2b94-8c16560cd09d
39 lines
1.1 KiB
C++
39 lines
1.1 KiB
C++
/*
|
|
* Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#ifndef WEBRTC_SYSTEM_WRAPPERS_SOURCE_CRITICAL_SECTION_WIN_H_
|
|
#define WEBRTC_SYSTEM_WRAPPERS_SOURCE_CRITICAL_SECTION_WIN_H_
|
|
|
|
#include "webrtc/typedefs.h"
|
|
#include "webrtc/system_wrappers/interface/critical_section_wrapper.h"
|
|
#include <windows.h>
|
|
|
|
namespace webrtc {
|
|
|
|
class CriticalSectionWindows : public CriticalSectionWrapper {
|
|
public:
|
|
CriticalSectionWindows();
|
|
|
|
virtual ~CriticalSectionWindows();
|
|
|
|
virtual void Enter();
|
|
virtual void Leave();
|
|
|
|
private:
|
|
CRITICAL_SECTION crit;
|
|
|
|
friend class ConditionVariableEventWin;
|
|
friend class ConditionVariableNativeWin;
|
|
};
|
|
|
|
} // namespace webrtc
|
|
|
|
#endif // WEBRTC_SYSTEM_WRAPPERS_SOURCE_CRITICAL_SECTION_WIN_H_
|