Index: uspace/lib/cpp/include/__bits/thread/future.hpp
===================================================================
--- uspace/lib/cpp/include/__bits/thread/future.hpp	(revision 04c0fc5aa45ec90f84d2ef0b8b067f698c6f5f0e)
+++ uspace/lib/cpp/include/__bits/thread/future.hpp	(revision 9eea0b783493decf0abf11e5aa37be12b86e7706)
@@ -125,6 +125,10 @@
                 void set_value(const R& val, bool set)
                 {
+                    aux::threading::mutex::lock(mutex_);
                     value_ = val;
                     value_set_ = set;
+                    aux::threading::mutex::unlock(mutex_);
+
+                    aux::threading::condvar::broadcast(condvar_);
                 }
 
