timeout zero instead of None