From d82c8b251a1b3757e9833ff6b35ba3803427187e Mon Sep 17 00:00:00 2001 From: Zach Pomerantz Date: Fri, 27 Jan 2017 13:19:41 -0500 Subject: [PATCH] use sleep_for to avoid WIN32 sleep_until bug --- assignment-client/src/audio/AudioMixer.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/assignment-client/src/audio/AudioMixer.cpp b/assignment-client/src/audio/AudioMixer.cpp index deff1dfa6f..04acae6f05 100644 --- a/assignment-client/src/audio/AudioMixer.cpp +++ b/assignment-client/src/audio/AudioMixer.cpp @@ -468,7 +468,9 @@ std::chrono::microseconds AudioMixer::timeFrame(p_high_resolution_clock::time_po timestamp = std::max(now, nextTimestamp); // sleep until the next frame should start - std::this_thread::sleep_until(timestamp); + // WIN32 sleep_until is broken until VS2015 Update 2 + // instead, std::max (above) guarantees that timestamp >= now, so we can sleep_for + std::this_thread::sleep_for(timestamp - now); return duration; }