Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 // Windows/Handle.h
3 #ifndef __WINDOWS_HANDLE_H
4 #define __WINDOWS_HANDLE_H
6 namespace NWindows {
8 class CHandle
9 {
10 protected:
11 HANDLE _handle;
12 public:
13 operator HANDLE() { return _handle; }
14 CHandle(): _handle(NULL) {}
15 ~CHandle() { Close(); }
16 bool Close()
17 {
18 if (_handle == NULL)
19 return true;
20 if (!::CloseHandle(_handle))
21 return false;
22 _handle = NULL;
23 return true;
24 }
25 void Attach(HANDLE handle)
26 { _handle = handle; }
27 HANDLE Detach()
28 {
29 HANDLE handle = _handle;
30 _handle = NULL;
31 return handle;
32 }
33 };
35 }
37 #endif