Tighten contract for when the promise doneProc is called

The contract is that, if the doneProc is passed in, it will always be called.

Change-Id: I8ce1f11522ba64beadcf4647bf21ed3ecb898a1c
Reviewed-on: https://skia-review.googlesource.com/c/160766
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2 files changed