summaryrefslogtreecommitdiffstats
path: root/xrdp
diff options
context:
space:
mode:
authorspeidy <speidy@gmail.com>2016-12-29 00:41:16 -0500
committerspeidy <speidy@gmail.com>2016-12-29 00:41:16 -0500
commit1f930f252ff1ccac30bae24740b0a2a7fd6f6bac (patch)
tree81ad968d4a2eb55778a47805b33639deeb6bae22 /xrdp
parenta62c467f71b2bc94ba766cfe14dd971049b2e880 (diff)
downloadxrdp-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')
-rw-r--r--xrdp/xrdp_mm.c17
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)
{