]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Do not expose TidyPointer internals. No functionality changes intended.
authorAlex Rousskov <rousskov@measurement-factory.com>
Thu, 31 Mar 2016 23:33:45 +0000 (17:33 -0600)
committerAlex Rousskov <rousskov@measurement-factory.com>
Thu, 31 Mar 2016 23:33:45 +0000 (17:33 -0600)
src/base/TidyPointer.h
src/security/LockingPointer.h

index ce2c3bd96631db5739bf28fda56f9cfd40825114..50b21e2a09760fd304c196243f370e1f7c4ac9a8 100644 (file)
@@ -27,8 +27,7 @@ public:
     explicit operator bool() const { return raw; }
     /// Returns raw and possibly NULL pointer
     T *get() const { return raw; }
-    /// Address of the raw pointer, for pointer-setting functions
-    T **addr() { return &raw; }
+
     /// Reset raw pointer - delete last one and save new one.
     void reset(T *t) {
         deletePointer();
index 3d3c6e089041d9aa549dc3b13e425dae2310246c..837012f356c96cf6a1f9c82507e31ef1c86153e9 100644 (file)
@@ -58,15 +58,12 @@ public:
     }
 
 #if __cplusplus >= 201103L
-    explicit LockingPointer(LockingPointer<T, DeAllocator, lock> &&o): Parent(o.get()) {
-        *o.addr() = nullptr;
+    explicit LockingPointer(LockingPointer<T, DeAllocator, lock> &&o): Parent(o.release()) {
     }
 
     LockingPointer<T, DeAllocator, lock> &operator =(LockingPointer<T, DeAllocator, lock> &&o) {
-        if (o.get() != this->get()) {
-            this->reset(o.get());
-            *o.addr() = nullptr;
-        }
+        if (o.get() != this->get())
+            this->reset(o.release());
         return *this;
     }
 #endif