qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] implement vnc_dpy_setdata
@ 2012-03-08 10:19 Gerd Hoffmann
  2012-03-13  2:01 ` Anthony Liguori
  0 siblings, 1 reply; 2+ messages in thread
From: Gerd Hoffmann @ 2012-03-08 10:19 UTC (permalink / raw)
  To: qemu-devel; +Cc: Gerd Hoffmann

The comment is wrong, we have to do something in the setdata callback.
Changing the framebuffer backing storage (happens when the guest pans
the display) renders the whole screen content invalid.

Trigger #1: cirrus vga + 32bit linux guest + vesafb with ypan enabled.
Trigger #2: std vga + http://patchwork.ozlabs.org/patch/145479/

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 ui/vnc.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/ui/vnc.c b/ui/vnc.c
index 8ee39bc..bdec33a 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -1936,7 +1936,10 @@ static void pixel_format_message (VncState *vs) {
 
 static void vnc_dpy_setdata(DisplayState *ds)
 {
-    /* We don't have to do anything */
+    VncDisplay *vd = ds->opaque;
+
+    *(vd->guest.ds) = *(ds->surface);
+    vnc_dpy_update(ds, 0, 0, ds_get_width(ds), ds_get_height(ds));
 }
 
 static void vnc_colordepth(VncState *vs)
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [Qemu-devel] [PATCH] implement vnc_dpy_setdata
  2012-03-08 10:19 [Qemu-devel] [PATCH] implement vnc_dpy_setdata Gerd Hoffmann
@ 2012-03-13  2:01 ` Anthony Liguori
  0 siblings, 0 replies; 2+ messages in thread
From: Anthony Liguori @ 2012-03-13  2:01 UTC (permalink / raw)
  To: Gerd Hoffmann; +Cc: qemu-devel

On 03/08/2012 04:19 AM, Gerd Hoffmann wrote:
> The comment is wrong, we have to do something in the setdata callback.
> Changing the framebuffer backing storage (happens when the guest pans
> the display) renders the whole screen content invalid.
>
> Trigger #1: cirrus vga + 32bit linux guest + vesafb with ypan enabled.
> Trigger #2: std vga + http://patchwork.ozlabs.org/patch/145479/
>
> Signed-off-by: Gerd Hoffmann<kraxel@redhat.com>

Applied.  Thanks.

Regards,

Anthony Liguori

> ---
>   ui/vnc.c |    5 ++++-
>   1 files changed, 4 insertions(+), 1 deletions(-)
>
> diff --git a/ui/vnc.c b/ui/vnc.c
> index 8ee39bc..bdec33a 100644
> --- a/ui/vnc.c
> +++ b/ui/vnc.c
> @@ -1936,7 +1936,10 @@ static void pixel_format_message (VncState *vs) {
>
>   static void vnc_dpy_setdata(DisplayState *ds)
>   {
> -    /* We don't have to do anything */
> +    VncDisplay *vd = ds->opaque;
> +
> +    *(vd->guest.ds) = *(ds->surface);
> +    vnc_dpy_update(ds, 0, 0, ds_get_width(ds), ds_get_height(ds));
>   }
>
>   static void vnc_colordepth(VncState *vs)

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-03-13  2:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-08 10:19 [Qemu-devel] [PATCH] implement vnc_dpy_setdata Gerd Hoffmann
2012-03-13  2:01 ` Anthony Liguori

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).