Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Reuse ThrowForNonFreeStatus in StartOperationCommon
It's not 100% the same logic as before; previously, if an operation was in progress while Dispose was called, and then another operation was issued while that previous operation was still in progress, this would throw an OperationDisposedException, whereas now it'll throw an InvalidOperationException until the previous operation completes, then it'll throw an OperationDisposedException. But a) there are race conditions here, so code doing this needs to be able to handle both exceptions for the same failure, and b) the previous logic was inconsistent with the exact same kind of thing in StartConfiguring, for no good reason. This brings them in sink, and shares the same code, also reducing the size of StartOperationCommon.
- Loading branch information