- Fixed unwanted creation of temporary inside RW_pointer types, causing
authorMichael Andres <ma@suse.de>
Fri, 17 Feb 2006 16:01:42 +0000 (16:01 +0000)
committerMichael Andres <ma@suse.de>
Fri, 17 Feb 2006 16:01:42 +0000 (16:01 +0000)
  wrong unique/use_count values reported.

zypp/base/PtrTypes.h

index 413a52a..1fe96fb 100644 (file)
@@ -75,9 +75,13 @@ namespace zypp
           /** Check whether pointer is not shared. */
           bool unique( const _constPtr & ptr_r )
           { return ptr_r.unique(); }
+          bool unique( const _Ptr & ptr_r )
+          { return ptr_r.unique(); }
           /** Return number of references. */
           long use_count( const _constPtr & ptr_r ) const
           { return ptr_r.use_count(); }
+          long use_count( const _Ptr & ptr_r ) const
+          { return ptr_r.use_count(); }
         };
 
       template<class _D>
@@ -88,9 +92,13 @@ namespace zypp
           /** Check whether pointer is not shared. */
           bool unique( const _constPtr & ptr_r )
           { return !ptr_r || (ptr_r->refCount() <= 1); }
+          bool unique( const _Ptr & ptr_r )
+          { return !ptr_r || (ptr_r->refCount() <= 1); }
           /** Return number of references. */
           long use_count( const _constPtr & ptr_r ) const
           { return ptr_r ? ptr_r->refCount() : 0; }
+          long use_count( const _Ptr & ptr_r ) const
+          { return ptr_r ? ptr_r->refCount() : 0; }
         };
     }
     ///////////////////////////////////////////////////////////////////