[Spice-devel] [PATCH spice-server] red_worker: Do not sent empty monitor config message
Christophe Fergeau
cfergeau at redhat.com
Mon Oct 5 09:39:09 PDT 2015
On Thu, Oct 01, 2015 at 05:19:23PM +0200, Pavel Grunt wrote:
> Resolves:
> https://bugzilla.redhat.com/show_bug.cgi?id=1061942
> ---
> server/red_worker.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/server/red_worker.c b/server/red_worker.c
> index e2feb23..a106923 100644
> --- a/server/red_worker.c
> +++ b/server/red_worker.c
> @@ -9144,7 +9144,6 @@ static void red_marshall_monitors_config(RedChannelClient *rcc, SpiceMarshaller
> SpiceMsgDisplayMonitorsConfig *msg = spice_malloc0(sizeof(*msg) + heads_size);
> int count = 0; // ignore monitors_config->count, it may contain zero width monitors, remove them now
>
> - red_channel_client_init_send_data(rcc, SPICE_MSG_DISPLAY_MONITORS_CONFIG, NULL);
> for (i = 0 ; i < monitors_config->count; ++i) {
> if (monitors_config->heads[i].width == 0 || monitors_config->heads[i].height == 0) {
> continue;
> @@ -9157,9 +9156,12 @@ static void red_marshall_monitors_config(RedChannelClient *rcc, SpiceMarshaller
> msg->heads[count].y = monitors_config->heads[i].y;
> count++;
> }
> - msg->count = count;
> - msg->max_allowed = monitors_config->max_allowed;
> - spice_marshall_msg_display_monitors_config(base_marshaller, msg);
> + if (count > 0) {
> + red_channel_client_init_send_data(rcc, SPICE_MSG_DISPLAY_MONITORS_CONFIG, NULL);
> + msg->count = count;
> + msg->max_allowed = monitors_config->max_allowed;
> + spice_marshall_msg_display_monitors_config(base_marshaller, msg);
> + }
> free(msg);
> }
Do you know why we get this empty monitors config from the guest in the
first place?
Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20151005/84dc8665/attachment.sig>
More information about the Spice-devel
mailing list