Значение аргумента force по умолчанию равно 1(true). Из-за этого при вызове IsReady() навсегда проваливаемся в while(... | force) {}.