diff options
author | Maxime Dénès <mail@maximedenes.fr> | 2017-03-24 09:00:10 +0100 |
---|---|---|
committer | Maxime Dénès <mail@maximedenes.fr> | 2017-03-24 09:00:10 +0100 |
commit | 66ad590733b3a4dafe3c55a0b59d4f13f6c4b7bc (patch) | |
tree | bd9de08a53a13a5ccf74f2fdd65ade7e4ab03c43 /lib/future.ml | |
parent | 461aca5aebaf9c928b5125728e257062215db9a6 (diff) | |
parent | 9c80dd80feb1cc2ae6d0dc6e08985d4f51d4f329 (diff) |
Merge branch 'v8.6' into trunk
Diffstat (limited to 'lib/future.ml')
-rw-r--r-- | lib/future.ml | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/future.ml b/lib/future.ml index b60b32bb6..1360b7ac4 100644 --- a/lib/future.ml +++ b/lib/future.ml @@ -151,8 +151,8 @@ let chain ~pure ck f = create ~uuid ~name fix_exn (match !c with | Closure _ | Delegated _ -> Closure (fun () -> f (force ~pure ck)) | Exn _ as x -> x - | Val (v, None) when pure -> Closure (fun () -> f v) - | Val (v, Some _) when pure -> Closure (fun () -> f v) + | Val (v, None) when pure -> Val (f v, None) + | Val (v, Some _) when pure -> Val (f v, None) | Val (v, Some state) -> Closure (fun () -> !unfreeze state; f v) | Val (v, None) -> match !ck with |