-
-
Notifications
You must be signed in to change notification settings - Fork 15.8k
New issue
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
StackOverflowError when adding listener to DefaultPromise w/ ImmediateEventExecutor #4395
Comments
thanks for reporting @maxwindiff! |
Motivation: When the ImmediateEventExecutor is in use it is possible to get a StackOverFlowException if when a promise completes a new listener is added to that promise. Modifications: - Protect against the case where LateListeners.run() smashes the stack. Result: Fixes netty#4395
Motivation: When the ImmediateEventExecutor is in use it is possible to get a StackOverFlowException if when a promise completes a new listener is added to that promise. Modifications: - Protect against the case where LateListeners.run() smashes the stack. Result: Fixes #4395
Motivation: When the ImmediateEventExecutor is in use it is possible to get a StackOverFlowException if when a promise completes a new listener is added to that promise. Modifications: - Protect against the case where LateListeners.run() smashes the stack. Result: Fixes #4395
@Scottmitch Does this also fix #3450? |
@buchgr yes I think so. |
@Scottmitch I don't have the code anymore, but yeah it looks like it fixes both issues. I think it's a perfectly valid fix as it makes it work with all Netty provided Executors. However, it doesn't work with Guava's |
@buchgr - I also couldn't think of a good way to generalize the behavior of |
Motivation: When the ImmediateEventExecutor is in use it is possible to get a StackOverFlowException if when a promise completes a new listener is added to that promise. Modifications: - Protect against the case where LateListeners.run() smashes the stack. Result: Fixes netty#4395
This will produce a
StackOverflowError
:The error may not show up in console but if you add an exception breakpoint in IntelliJ / Eclipse you'll see it.
Reproduces on 4.1.0.Beta7
The text was updated successfully, but these errors were encountered: