Fix flow control:
The condition of the check if we are at a safe point to pause (i.e. we're not holding a lock) was inverted. Suspending the client did result in the server using upto datalimit memory, because the server child process did continue producing output while the server parent was holding back output to the client.
This commit is contained in:
parent
8666d19603
commit
661c78132a
|
@ -563,7 +563,7 @@ do_recursion (frame)
|
|||
* generating data, to give the buffers a chance to drain to the
|
||||
* remote client. We should not have locks active at this point,
|
||||
* but if there are writelocks around, we cannot pause here. */
|
||||
if (server_active && locktype != CVS_LOCK_NONE)
|
||||
if (server_active && locktype == CVS_LOCK_NONE)
|
||||
server_pause_check();
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in New Issue