summaryrefslogtreecommitdiff
path: root/Command
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2012-01-29 22:55:06 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-01-29 22:55:06 -0400
commita964012fc36d22e4554dd12e3594579fb3190501 (patch)
tree31c3a5ea4fb78088b4981eb4185737353ec1ff3e /Command
parent0609e102396083afa6380f8b67a69fa849235d16 (diff)
switch to the strict state monad
I had not realized what a memory leak the lazy state monad could be, although I have not seen much evidence of actual leaking in git-annex. However, if running git-annex on a great many files, this could matter. The additional Utility.State.changeState adds even more strictness, avoiding a problem I saw in github-backup where repeatedly modifying state built up a huge pile of thunks.
Diffstat (limited to 'Command')
-rw-r--r--Command/Status.hs2
1 files changed, 1 insertions, 1 deletions
diff --git a/Command/Status.hs b/Command/Status.hs
index d2d8d4c07..a1d4eea08 100644
--- a/Command/Status.hs
+++ b/Command/Status.hs
@@ -7,7 +7,7 @@
module Command.Status where
-import Control.Monad.State
+import Control.Monad.State.Strict
import qualified Data.Map as M
import qualified Data.Set as S
import Data.Set (Set)