From ec66c2b1b655eaa17aac40789d482f22c78b483a Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Tue, 3 Apr 2012 17:58:31 -0700 Subject: [PATCH] Implement EndPaint. --- protocols/rdp/include/rdp_gdi.h | 1 + protocols/rdp/src/client.c | 1 + protocols/rdp/src/rdp_gdi.c | 5 +++++ 3 files changed, 7 insertions(+) diff --git a/protocols/rdp/include/rdp_gdi.h b/protocols/rdp/include/rdp_gdi.h index 97cc3057..1f68352e 100644 --- a/protocols/rdp/include/rdp_gdi.h +++ b/protocols/rdp/include/rdp_gdi.h @@ -51,5 +51,6 @@ void guac_rdp_gdi_memblt(rdpContext* context, MEMBLT_ORDER* memblt); void guac_rdp_gdi_opaquerect(rdpContext* context, OPAQUE_RECT_ORDER* opaque_rect); void guac_rdp_gdi_palette_update(rdpContext* context, PALETTE_UPDATE* palette); void guac_rdp_gdi_set_bounds(rdpContext* context, rdpBounds* bounds); +void guac_rdp_gdi_end_paint(rdpContext* context); #endif diff --git a/protocols/rdp/src/client.c b/protocols/rdp/src/client.c index e6a028b9..d7f0b8d4 100644 --- a/protocols/rdp/src/client.c +++ b/protocols/rdp/src/client.c @@ -145,6 +145,7 @@ boolean rdp_freerdp_pre_connect(freerdp* instance) { xfree(pointer); /* Set up GDI */ + instance->update->EndPaint = guac_rdp_gdi_end_paint; instance->update->Palette = guac_rdp_gdi_palette_update; instance->update->SetBounds = guac_rdp_gdi_set_bounds; diff --git a/protocols/rdp/src/rdp_gdi.c b/protocols/rdp/src/rdp_gdi.c index e2202e73..7153f4bb 100644 --- a/protocols/rdp/src/rdp_gdi.c +++ b/protocols/rdp/src/rdp_gdi.c @@ -264,3 +264,8 @@ void guac_rdp_gdi_set_bounds(rdpContext* context, rdpBounds* bounds) { } +void guac_rdp_gdi_end_paint(rdpContext* context) { + guac_client* client = ((rdp_freerdp_context*) context)->client; + guac_socket_flush(client->socket); +} +