GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
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
Fixes #1726 and possibly #1724.
I have almost no knowledge of the code, but shouldn't this be m_settings.reader.isWaiting?
I was about to refactor those methods into the Waiter struct... and then went the copy/past route ;)
Add test for #1726.
Fix libevent socket event handler.
Now always resumes the writer if one is active. Partially resolves issue #1726.
Fix libasync socket event handlind and connection close sequence.
Revert reader/writer connection close notifications.
There was still a chance for an assertion failure because LibeventTCPConnection.close only resumes a reader task if any is active, but no writer task.
Refactor waiter code in libasync to avoid repetition.
Okay, fixed and passing. Merging in.
Merge pull request #1727 from rejectedsoftware/issue_1726_tcp_close
Fix TCP close behavior in case of cuncurrent read+write operations. Fixes #1726.
(cherry picked from commit 7479a8b)