Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
What version of bluebird is the issue happening on? 3.4.7
What platform and version? (For example Node.js 0.12 or Google Chrome 32) Tested on Node 7, but I'm guessing it's true for all platforms
Did this issue happen with earlier version of bluebird? Probably.
Given:
(Promise.coroutine(function*() { yield function () { console.log('hi'); }; }))();
You would not expect "hi" to be written to log, because we're yielding a value (which is a function), and not calling the function.
But it does print "hi". And then returns a rejected error.
I have prepared a pull-request that contains a fix, which I will submit in a few minutes.
The text was updated successfully, but these errors were encountered:
Fixed petkaantonov#1314: yielding a function should not call the func…
c7f55fb
…tion When rejecting a non-promise value, string.replace is used, and the value is passed as second parameter. But string.replace, if the second value is a function, will call that function. This commit fixes this by using value.toString().
Fix LGTM. @petkaantonov ptal.
Sorry, something went wrong.
+ "" is sufficient
+ ""
Or String(value)
String(value)
I chose @benjamingr's change - it seems more explicit to me. Thanks for pointing the (I hope slightly) awkward code out.
0566325
No branches or pull requests
What version of bluebird is the issue happening on?
3.4.7
What platform and version? (For example Node.js 0.12 or Google Chrome 32)
Tested on Node 7, but I'm guessing it's true for all platforms
Did this issue happen with earlier version of bluebird?
Probably.
Given:
You would not expect "hi" to be written to log, because we're yielding a value (which is a function), and not calling the function.
But it does print "hi". And then returns a rejected error.
I have prepared a pull-request that contains a fix, which I will submit in a few minutes.
The text was updated successfully, but these errors were encountered: