The 'Child::_revert_quota_and_destroy' assumes to be called from the client's context, which is normally the case when destroying sessions. However, if a client's session outlives the client (because the asynchronous close request to the server is still pending), the session cleanup is performed in the context of the server. Here, the 'session_response' implementation wrongly called '_revert_quota_and_destroy' to the effect that the session quota was withdrawn from the server (good) but subsequently transferred back to the server (bad). The patch replaces the call of '_revert_quota_and_destroy' with only the first - correct - part of the transaction. |
||
---|---|---|
.. | ||
base | ||
cxx | ||
ldso | ||
startup | ||
target.mk |