From: Andrii Grynenko Date: Wed, 22 Nov 2017 04:58:05 +0000 (-0800) Subject: Fix ASAN failure in FutureDAG test X-Git-Tag: v2017.11.27.00~6 X-Git-Url: http://plrg.eecs.uci.edu/git/?p=folly.git;a=commitdiff_plain;h=8bfce3ed35f7597ce59278a845e9be6d75609a41;hp=f9953b79c493c19f54ffe827275ddf21f00a7b58 Fix ASAN failure in FutureDAG test Summary: dogscience Reviewed By: yfeldblum Differential Revision: D6387604 fbshipit-source-id: 3e33da3e3c6801d6e2186637c8fb6adaf1eef6f6 --- diff --git a/folly/experimental/FutureDAG.h b/folly/experimental/FutureDAG.h index 48d8dd2d..ee3dcffb 100644 --- a/folly/experimental/FutureDAG.h +++ b/folly/experimental/FutureDAG.h @@ -134,10 +134,9 @@ class FutureDAG : public std::enable_shared_from_this { } nodes[sourceHandle].promise.setValue(); - auto that = shared_from_this(); - return nodes[sinkHandle].promise.getFuture().ensure([that] {}).then( - [this, sourceHandle, sinkHandle]() { - clean_state(sourceHandle, sinkHandle); + return nodes[sinkHandle].promise.getFuture().then( + [that = shared_from_this(), sourceHandle, sinkHandle]() { + that->clean_state(sourceHandle, sinkHandle); }); }