Если бы условная переменная могла предположить, что это ложное пробуждение, возвращать ее не нужно, не так ли?
Необходимо проверить, изменились ли данные, защищенные мьютексом и переменной условия, для обнаружения ложного пробуждения. Условная переменная не может сделать это за вас.