From: Scott Moreau Date: Sun, 19 Aug 2012 01:52:42 +0000 (-0600) Subject: screenshot: Use correct buffer size for transformed outputs. X-Git-Tag: submit/trunk/20120913.174637~94 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bb5898341c344d421fce00f479efd66fb14457d3;p=profile%2Fivi%2Fweston.git screenshot: Use correct buffer size for transformed outputs. This is a workaround for screenshots with transformed outputs. It reorders the output positions so the correct buffer size is determined for the final image. This assumes the outputs are in succession on the x axis. The outputs are rendered in their transformed state. --- diff --git a/clients/screenshot.c b/clients/screenshot.c index 7395bf3..0fa4e4b 100644 --- a/clients/screenshot.c +++ b/clients/screenshot.c @@ -205,6 +205,12 @@ set_buffer_size(int *width, int *height) struct screenshooter_output *output; min_x = min_y = INT_MAX; max_x = max_y = INT_MIN; + int position = 0; + + wl_list_for_each_reverse(output, &output_list, link) { + output->offset_x = position; + position += output->width; + } wl_list_for_each(output, &output_list, link) { min_x = MIN(min_x, output->offset_x);