I mean, if you set the initial status to Completed, GetResults will succeed, but not return any result as there's none to return yet.
The current test only checks SUCCEEDED(hr) to decide whether it should skip checking the results pointer. You will need to change that to make sure the returned result pointer is valid.
Right, I'll just do the deadbeef check.
Bernhard