on master help sign in
'invlidate' removes the entry directly.
4d01793Kazu Yamamoto
tls-session-manager/Network/TLS/SessionManager.hs+2−5
@@ -122,10 +122,7 @@ resume reaper use k = do
122invalidate :: Reaper DB Item
122invalidate :: Reaper DB Item
123 -> SessionID -> IO ()
123 -> SessionID -> IO ()
124invalidate reaper k = do
124invalidate reaper k = do
125− -- repaerDelete does not exist
126− -- So, let's set the entry used and hope that it will be
127− -- cleaned in the future.
128 db <- reaperRead reaper
125 db <- reaperRead reaper
129 case Q.lookup k db of
126 case Q.lookup k db of
130− Nothing -> return ()
127+ Nothing -> return ()
131− Just (_,(_,ref)) -> atomicModifyIORef' ref $ \_ -> (Used, ())
128+ Just (p,v) -> reaperAdd reaper (k,p,v,Del)