We always need both values, except in a test, so we don't need to lock twice and risk scheduling in between. Also, removed the resetting in Done. This copied a mutex, which isn't allowed. Static analyzers tend to trip over that.