id summary reporter owner description type status milestone component version severity resolution keywords cc 8068 Bad Memory Access in boost::future<>.then() after accessing given future Stephan Mehlhase viboes "When using ""then"" on a future and accessing the value of the future in the continuation, the memory of the future is freed/released and the further execution of the continuation happens in an undefined limbo state (leading to a crash with EXC_BAC_ACCESS at least on iOS. Here is a minimal example: {{{ #define BOOST_THREAD_VERSION 4 #include class Test { public: void test() { boost::shared_ptr listener(new Test()); boost::future con = boost::make_future(true); listener->foo(); // Works boost::future initDone = con.then([listener](boost::future& connected) { listener->foo(); // Works if (!connected.get()) { listener->foo(); return false; } listener->foo(); // EXC_BAD_ACCESS return true; }); } void foo() { std::cout << ""foo""; } }; }}} " Bugs closed To Be Determined thread Boost 1.53.0 Problem invalid