There are any number of issues that can come up in the progress callback, and we should let the user cancel at that point as well.