diff options
author | speidy <speidy@gmail.com> | 2016-12-29 00:41:16 -0500 |
---|---|---|
committer | speidy <speidy@gmail.com> | 2016-12-29 00:41:16 -0500 |
commit | 1f930f252ff1ccac30bae24740b0a2a7fd6f6bac (patch) | |
tree | 81ad968d4a2eb55778a47805b33639deeb6bae22 /xrdp/xrdp_mm.c | |
parent | a62c467f71b2bc94ba766cfe14dd971049b2e880 (diff) | |
download | xrdp-proprietary-1f930f252ff1ccac30bae24740b0a2a7fd6f6bac.tar.gz xrdp-proprietary-1f930f252ff1ccac30bae24740b0a2a7fd6f6bac.zip |
xrdp: fix for codec frame acks handling.
can handle zero unacked frames now.
This should make RemoteFX usable with Parallels Client. they always
wan't zero unacked frames on the wire.
Diffstat (limited to 'xrdp/xrdp_mm.c')
-rw-r--r-- | xrdp/xrdp_mm.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/xrdp/xrdp_mm.c b/xrdp/xrdp_mm.c index bb6bc5d8..0e6c3e54 100644 --- a/xrdp/xrdp_mm.c +++ b/xrdp/xrdp_mm.c @@ -2258,21 +2258,6 @@ xrdp_mm_check_wait_objs(struct xrdp_mm *self) enc_done->enc->flags, enc_done->enc->frame_id); } - else - { -#if 1 - ex = self->wm->client_info->max_unacknowledged_frame_count; - if (self->encoder->frame_id_client + ex > self->encoder->frame_id_server) - { - if (self->encoder->frame_id_server > self->encoder->frame_id_server_sent) - { - LLOGLN(10, ("xrdp_mm_check_wait_objs: 1 -- %d", self->encoder->frame_id_server)); - self->encoder->frame_id_server_sent = self->encoder->frame_id_server; - self->mod->mod_frame_ack(self->mod, 0, self->encoder->frame_id_server); - } - } -#endif - } g_free(enc_done->enc->drects); g_free(enc_done->enc->crects); g_free(enc_done->enc); @@ -2303,7 +2288,7 @@ xrdp_mm_frame_ack(struct xrdp_mm *self, int frame_id) return 1; } ex = self->wm->client_info->max_unacknowledged_frame_count; - if (self->encoder->frame_id_client + ex > self->encoder->frame_id_server) + if (self->encoder->frame_id_client + ex >= self->encoder->frame_id_server) { if (self->encoder->frame_id_server > self->encoder->frame_id_server_sent) { |