diff options
author | Joe Crayne <joe@jerkface.net> | 2019-05-26 00:03:45 -0400 |
---|---|---|
committer | Joe Crayne <joe@jerkface.net> | 2019-05-26 00:03:45 -0400 |
commit | 1595a9ea3ca1080ebf7d060ea28aecf19df8f968 (patch) | |
tree | e1dccea8d7dff7a5fb5166a7e8b0d74ce8f24d4a /PointPrimitiveRing.hs | |
parent | 27aa69522ca3da4fe04f996eb87a13e295db0f9f (diff) |
Avoid adding redundant points to ring buffer.
Diffstat (limited to 'PointPrimitiveRing.hs')
-rw-r--r-- | PointPrimitiveRing.hs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/PointPrimitiveRing.hs b/PointPrimitiveRing.hs index c458421..54405e4 100644 --- a/PointPrimitiveRing.hs +++ b/PointPrimitiveRing.hs | |||
@@ -70,6 +70,12 @@ newRing storage sz toAttr = fix $ \retProxy -> do | |||
70 | updateRingCommands r | 70 | updateRingCommands r |
71 | return r | 71 | return r |
72 | 72 | ||
73 | clearRing :: Ring keys -> IO () | ||
74 | clearRing r = do | ||
75 | writeIORef (rBack r) 0 | ||
76 | writeIORef (rSize r) 0 | ||
77 | updateRingCommands r | ||
78 | |||
73 | updateRingCommands :: Ring keys -> IO () | 79 | updateRingCommands :: Ring keys -> IO () |
74 | updateRingCommands r = do | 80 | updateRingCommands r = do |
75 | back <- fromIntegral <$> readIORef (rBack r) | 81 | back <- fromIntegral <$> readIORef (rBack r) |