summaryrefslogtreecommitdiffstats
path: root/xrdp/xrdp_mm.c
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/xrdp_mm.c
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/xrdp_mm.c')
-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)
{