mirror of
https://github.com/hierynomus/sshj.git
synced 2025-12-07 15:50:57 +03:00
Fixed potential race condition identified in #203
This commit is contained in:
@@ -130,7 +130,12 @@ public final class ChannelInputStream
|
|||||||
buf.putRawBytes(data, offset, len);
|
buf.putRawBytes(data, offset, len);
|
||||||
buf.notifyAll();
|
buf.notifyAll();
|
||||||
}
|
}
|
||||||
win.consume(len);
|
// Potential fix for #203 (window consumed below 0).
|
||||||
|
// This seems to be a race condition if we receive more data, while we're already sending a SSH_MSG_CHANNEL_WINDOW_ADJUST
|
||||||
|
// And the window has not expanded yet.
|
||||||
|
synchronized (win) {
|
||||||
|
win.consume(len);
|
||||||
|
}
|
||||||
if (chan.getAutoExpand())
|
if (chan.getAutoExpand())
|
||||||
checkWindow();
|
checkWindow();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user