diff --git a/runtime/bin/ffi_test/ffi_test_functions_vmspecific.cc b/runtime/bin/ffi_test/ffi_test_functions_vmspecific.cc index 2c95652de67..acb5980d4bc 100644 --- a/runtime/bin/ffi_test/ffi_test_functions_vmspecific.cc +++ b/runtime/bin/ffi_test/ffi_test_functions_vmspecific.cc @@ -480,9 +480,10 @@ intptr_t MyCallbackBlocking(intptr_t a) { auto callback = my_callback_blocking_fp_; // Define storage duration. std::condition_variable cv; bool notified = false; - const Work work = [a, &result, callback, &cv, ¬ified]() { + const Work work = [a, &result, callback, &mutex, &cv, ¬ified]() { result = callback(a); printf("C Da: Notify result ready.\n"); + std::unique_lock lock(mutex); notified = true; cv.notify_one(); };