fix bug in exempt_ptr
authorkhizmax <libcds.dev@gmail.com>
Mon, 24 Nov 2014 07:08:17 +0000 (10:08 +0300)
committerkhizmax <libcds.dev@gmail.com>
Mon, 24 Nov 2014 07:08:17 +0000 (10:08 +0300)
cds/urcu/exempt_ptr.h

index 0a7ba1f55262b5146e13f14a43594131319b96fa..9fb2d302f870cdacece69d7513912f452b60c1b7 100644 (file)
@@ -144,8 +144,8 @@ namespace cds { namespace urcu {
         /// Disposes the pointer. Should be called only outside of RCU critical section
         void release()
         {
-            assert( !rcu::is_locked() );
             if ( !empty() ) {
+                assert( !rcu::is_locked() );
                 rcu::template retire_ptr<disposer>( m_pNode );
                 m_pNode = nullptr;
             }