summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/security.h
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/security.h')
-rw-r--r--winsup/cygwin/security.h11
1 files changed, 3 insertions, 8 deletions
diff --git a/winsup/cygwin/security.h b/winsup/cygwin/security.h
index cab33be8b..08bcc2f09 100644
--- a/winsup/cygwin/security.h
+++ b/winsup/cygwin/security.h
@@ -216,21 +216,16 @@ class security_descriptor {
protected:
PSECURITY_DESCRIPTOR psd;
DWORD sd_size;
- enum { local_alloced, malloced } type;
public:
- security_descriptor () : psd (NULL), sd_size (0), type (local_alloced) {}
+ security_descriptor () : psd (NULL), sd_size (0) {}
~security_descriptor () { free (); }
PSECURITY_DESCRIPTOR malloc (size_t nsize);
PSECURITY_DESCRIPTOR realloc (size_t nsize);
void free ();
- inline DWORD size () {
- if (!sd_size && psd && type == local_alloced)
- sd_size = LocalSize (psd);
- return sd_size;
- }
- inline DWORD copy (void *buf, DWORD buf_size) {
+ inline DWORD size () const { return sd_size; }
+ inline DWORD copy (void *buf, DWORD buf_size) const {
if (buf_size < size ())
return sd_size;
memcpy (buf, psd, sd_size);