fix completion block being called on cancel