-
Notifications
You must be signed in to change notification settings - Fork 851
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
[core] fix m_GroupOf->updateReadState() in message mode #2204
[core] fix m_GroupOf->updateReadState() in message mode #2204
Conversation
@gou4shi1 Thanks for the PR! Looks like the return value of the P.S. Added description comments to related functions: |
Yes, the behavior with old recv buffer is not correct, when will the old recv buffer be deleted?
Thanks, I have applied your patch in this PR :) |
cd08fd9
to
b2cd1dc
Compare
It might stay in the next release to have a fallback option in case of unexpected issues. And can be removed afterwards. |
While the old receiver buffer is being supported, better to have it also functioning correctly. int32_t srt::CUDT::ackDataUpTo(int32_t ack)
{
// ...
#else
if (acksize > 0)
{
m_pRcvBuffer->ackData(acksize);
}
return ack;
#endif
} |
It's similar as #2186, applied :)
Actually "maybe readable" for messages across multiple packets (with old rcv buffer), right? |
When three independent solutions come to a single (similar) one, it confirms the solution must be correct 🙂
Hopefully readable 🙂 |
LOL |
Fix #2186 and part of #2046.
I noticed that the return value of
ackDataUpTo()
is only used to update group readiness, so it should use the last readable seq.More PRs will be extracted from #2046, base on the new rcv buffer.