[PATCH 1/5] Fix compilation against FreeRDP and weston
Hardening
rdp.effort at gmail.com
Wed May 22 14:40:16 PDT 2013
The stream utils of FreeRDP have changed recently, this patch fixes
the compositor compilation against FreeRdp master.
The backend_init() prototype has changed too, this fixes it.
---
src/compositor-rdp.c | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/src/compositor-rdp.c b/src/compositor-rdp.c
index 0dae963..0771002 100644
--- a/src/compositor-rdp.c
+++ b/src/compositor-rdp.c
@@ -133,8 +133,8 @@ rdp_peer_refresh_rfx(pixman_region32_t *damage, pixman_image_t *image, freerdp_p
SURFACE_BITS_COMMAND *cmd = &update->surface_bits_command;
RdpPeerContext *context = (RdpPeerContext *)peer->context;
- stream_clear(context->encode_stream);
- stream_set_pos(context->encode_stream, 0);
+ Stream_Clear(context->encode_stream);
+ Stream_SetPosition(context->encode_stream, 0);
width = (damage->extents.x2 - damage->extents.x1);
height = (damage->extents.y2 - damage->extents.y1);
@@ -169,8 +169,8 @@ rdp_peer_refresh_rfx(pixman_region32_t *damage, pixman_image_t *image, freerdp_p
pixman_image_get_stride(image)
);
- cmd->bitmapDataLength = stream_get_length(context->encode_stream);
- cmd->bitmapData = stream_get_head(context->encode_stream);
+ cmd->bitmapDataLength = Stream_GetPosition(context->encode_stream);
+ cmd->bitmapData = Stream_Buffer(context->encode_stream);
update->SurfaceBits(update->context, cmd);
}
@@ -185,8 +185,8 @@ rdp_peer_refresh_nsc(pixman_region32_t *damage, pixman_image_t *image, freerdp_p
SURFACE_BITS_COMMAND *cmd = &update->surface_bits_command;
RdpPeerContext *context = (RdpPeerContext *)peer->context;
- stream_clear(context->encode_stream);
- stream_set_pos(context->encode_stream, 0);
+ Stream_Clear(context->encode_stream);
+ Stream_SetPosition(context->encode_stream, 0);
width = (damage->extents.x2 - damage->extents.x1);
height = (damage->extents.y2 - damage->extents.y1);
@@ -206,8 +206,8 @@ rdp_peer_refresh_nsc(pixman_region32_t *damage, pixman_image_t *image, freerdp_p
nsc_compose_message(context->nsc_context, context->encode_stream, (BYTE *)ptr,
cmd->width, cmd->height,
pixman_image_get_stride(image));
- cmd->bitmapDataLength = stream_get_length(context->encode_stream);
- cmd->bitmapData = stream_get_head(context->encode_stream);
+ cmd->bitmapDataLength = Stream_GetPosition(context->encode_stream);
+ cmd->bitmapData = Stream_Buffer(context->encode_stream);
update->SurfaceBits(update->context, cmd);
}
@@ -562,7 +562,7 @@ rdp_peer_context_new(freerdp_peer* client, RdpPeerContext* context)
context->nsc_context = nsc_context_new();
rfx_context_set_pixel_format(context->rfx_context, RDP_PIXEL_FORMAT_B8G8R8A8);
- context->encode_stream = stream_new(65536);
+ context->encode_stream = Stream_New(NULL, 65536);
}
static void
@@ -580,7 +580,7 @@ rdp_peer_context_free(freerdp_peer* client, RdpPeerContext* context)
if(context->item.flags & RDP_PEER_ACTIVATED)
weston_seat_release(&context->item.seat);
- stream_free(context->encode_stream);
+ Stream_Free(context->encode_stream, TRUE);
nsc_context_free(context->nsc_context);
rfx_context_free(context->rfx_context);
free(context->rfx_rects);
@@ -1012,7 +1012,7 @@ err_free:
WL_EXPORT struct weston_compositor *
backend_init(struct wl_display *display, int *argc, char *argv[],
- const char *config_file)
+ int config_fd)
{
struct rdp_compositor_config config;
rdp_compositor_config_init(&config);
@@ -1035,5 +1035,5 @@ backend_init(struct wl_display *display, int *argc, char *argv[],
};
parse_options(rdp_options, ARRAY_LENGTH(rdp_options), argc, argv);
- return rdp_compositor_create(display, &config, argc, argv, config_file);
+ return rdp_compositor_create(display, &config, argc, argv, config_fd);
}
--
1.8.1.2
More information about the wayland-devel
mailing list