diff --git a/libxrdp/xrdp_caps.c b/libxrdp/xrdp_caps.c index ec971648..66c8c88d 100644 --- a/libxrdp/xrdp_caps.c +++ b/libxrdp/xrdp_caps.c @@ -539,6 +539,10 @@ xrdp_caps_process_frame_ack(struct xrdp_rdp *self, struct stream *s, int len) g_writeln("xrdp_caps_process_frame_ack:"); self->client_info.use_frame_acks = 1; in_uint32_le(s, self->client_info.max_unacknowledged_frame_count); + if (self->client_info.max_unacknowledged_frame_count < 0) + { + self->client_info.max_unacknowledged_frame_count = 0; + } g_writeln(" max_unacknowledged_frame_count %d", self->client_info.max_unacknowledged_frame_count); return 0; }