Change logic to not steal a thenable if it's already a promise.