summaryrefslogtreecommitdiffstats
path: root/server/red_parse_qxl.c
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2010-06-23 08:53:04 +0200
committerGerd Hoffmann <kraxel@redhat.com>2010-06-29 12:30:19 +0200
commitef3e20e29ff124eeb10729c0d512b1d231276394 (patch)
tree272f147bc95ddb2087344b5b1798fc17f421c088 /server/red_parse_qxl.c
parent85155b3f441e178858a592341e32a07b82d17dbe (diff)
downloadspice-ef3e20e29ff124eeb10729c0d512b1d231276394.tar.gz
spice-ef3e20e29ff124eeb10729c0d512b1d231276394.tar.xz
spice-ef3e20e29ff124eeb10729c0d512b1d231276394.zip
qxl abi: parse QXLFill.
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
Diffstat (limited to 'server/red_parse_qxl.c')
-rw-r--r--server/red_parse_qxl.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/server/red_parse_qxl.c b/server/red_parse_qxl.c
index cbdbf720..7dad295b 100644
--- a/server/red_parse_qxl.c
+++ b/server/red_parse_qxl.c
@@ -20,6 +20,14 @@
#include "red_memslots.h"
#include "red_parse_qxl.h"
+static void red_get_fill_ptr(RedMemSlotInfo *slots, int group_id,
+ SpiceFill *red, QXLFill *qxl)
+{
+ red->brush = qxl->brush;
+ red->rop_descriptor = qxl->rop_descriptor;
+ red->mask = qxl->mask;
+}
+
static void red_get_alpha_blend_ptr(RedMemSlotInfo *slots, int group_id,
SpiceAlphaBlnd *red, QXLAlphaBlnd *qxl)
{
@@ -75,7 +83,7 @@ void red_get_drawable(RedMemSlotInfo *slots, int group_id,
red->u.copy = qxl->u.copy;
break;
case QXL_DRAW_FILL:
- red->u.fill = qxl->u.fill;
+ red_get_fill_ptr(slots, group_id, &red->u.fill, &qxl->u.fill);
break;
case QXL_DRAW_INVERS:
red->u.invers = qxl->u.invers;
@@ -129,7 +137,7 @@ void red_get_compat_drawable(RedMemSlotInfo *slots, int group_id,
red->u.copy = qxl->u.copy;
break;
case QXL_DRAW_FILL:
- red->u.fill = qxl->u.fill;
+ red_get_fill_ptr(slots, group_id, &red->u.fill, &qxl->u.fill);
break;
case QXL_DRAW_INVERS:
red->u.invers = qxl->u.invers;