deepseq all things returned from ResourceT http
authorJoey Hess <joeyh@joeyh.name>
Mon, 14 Sep 2020 22:19:51 +0000 (18:19 -0400)
committerJoey Hess <joeyh@joeyh.name>
Mon, 14 Sep 2020 22:30:06 +0000 (18:30 -0400)
commitddf963d0194acf9f6f059fa37f3e89e59d682de9
tree9ee485ac3d256bdd41c2900df85cc626ef479c56
parente26960752ced6c99c680171cc162a245fd45fe0f
deepseq all things returned from ResourceT http

Potentially fixes https://git-annex.branchable.com/bugs/concurrent_git-annex-copy_to_s3_special_remote_fails/
although I don't know if it does.

My thinking is, ResourceT may allocate a resource and then free it,
and a unforced thunk to that resource could result in reading memory
that has since been overwritten by something else, or in a SEGV,
depending. While that seems kind of like a bug in ResourceT to me, if it
is what's happening, this will avoid it. If it's not, this doesn't
really hurt much since the values are all smallish.

This commit was sponsored by Graham Spencer on Patreon.
Remote/S3.hs
Types/Export.hs
Types/Import.hs
Utility/Url.hs