summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2010-03-02 15:51:12 +0100
committerAlexander Larsson <alexl@redhat.com>2010-03-08 19:45:27 +0100
commitf7a77f9881d5cd1d360b043d6b619216603941dd (patch)
treef51302aa48c9a0cda58d72dd4e575ae9eeadb102 /common
parentc0fdcd1a10d0eae92fec9e00382b445d669c7428 (diff)
downloadspice-f7a77f9881d5cd1d360b043d6b619216603941dd.tar.gz
spice-f7a77f9881d5cd1d360b043d6b619216603941dd.tar.xz
spice-f7a77f9881d5cd1d360b043d6b619216603941dd.zip
Make glz_decoder non-optional canvas_base in canvas constructors
It can still be NULL, but we simplify the headers by always including it. There is no practical performance difference here.
Diffstat (limited to 'common')
-rw-r--r--common/cairo_canvas.c7
-rw-r--r--common/cairo_canvas.h2
-rw-r--r--common/canvas_base.c13
-rw-r--r--common/gdi_canvas.c8
-rw-r--r--common/gl_canvas.c7
-rw-r--r--common/gl_canvas.h2
6 files changed, 11 insertions, 28 deletions
diff --git a/common/cairo_canvas.c b/common/cairo_canvas.c
index ed815d19..a3211dea 100644
--- a/common/cairo_canvas.c
+++ b/common/cairo_canvas.c
@@ -2155,9 +2155,7 @@ CairoCanvas *canvas_create(pixman_image_t *image, int bits,
#else
CairoCanvas *canvas_create(pixman_image_t *image, int bits
#endif
-#ifdef USE_GLZ
, SpiceGlzDecoder *glz_decoder
-#endif
#ifndef CAIRO_CANVAS_NO_CHUNKS
, void *get_virt_opaque, get_virt_fn_t get_virt,
void *validate_virt_opaque, validate_virt_fn_t validate_virt
@@ -2181,10 +2179,7 @@ CairoCanvas *canvas_create(pixman_image_t *image, int bits
#else
init_ok = canvas_base_init(&canvas->base, bits
#endif
-#ifdef USE_GLZ
- ,
- glz_decoder
-#endif
+ , glz_decoder
#ifndef CAIRO_CANVAS_NO_CHUNKS
,
get_virt_opaque,
diff --git a/common/cairo_canvas.h b/common/cairo_canvas.h
index 390c61cf..38009035 100644
--- a/common/cairo_canvas.h
+++ b/common/cairo_canvas.h
@@ -69,9 +69,7 @@ CairoCanvas *canvas_create(pixman_image_t *image, int bits,
#else
CairoCanvas *canvas_create(pixman_image_t *image, int bits
#endif
-#ifdef USE_GLZ
, SpiceGlzDecoder *glz_decoder
-#endif
#ifndef CAIRO_CANVAS_NO_CHUNKS
, void *get_virt_opaque, get_virt_fn_t get_virt,
void *validate_virt_opaque, validate_virt_fn_t validate_virt
diff --git a/common/canvas_base.c b/common/canvas_base.c
index 8bac5923..aeb1cb56 100644
--- a/common/canvas_base.c
+++ b/common/canvas_base.c
@@ -622,6 +622,11 @@ static pixman_image_t *canvas_get_glz(CanvasBase *canvas, LZImage *image)
#ifdef WIN32
canvas->glz_data.decode_data.dc = canvas->dc;
#endif
+
+ if (canvas->glz_data.decoder == NULL) {
+ CANVAS_ERROR("glz not supported");
+ }
+
canvas->glz_data.decoder->ops->decode(canvas->glz_data.decoder,
image->lz_rgb.data, NULL,
&canvas->glz_data.decode_data);
@@ -816,7 +821,8 @@ static pixman_image_t *canvas_get_image_internal(CanvasBase *canvas, SPICE_ADDRE
break;
}
#endif
-#ifdef USE_GLZ
+
+#if defined(CAIRO_CANVAS_CACHE)
case SPICE_IMAGE_TYPE_GLZ_RGB: {
access_test(canvas, descriptor, sizeof(SpiceLZRGBImage));
LZImage *image = (LZImage *)descriptor;
@@ -824,6 +830,7 @@ static pixman_image_t *canvas_get_image_internal(CanvasBase *canvas, SPICE_ADDRE
break;
}
#endif
+
case SPICE_IMAGE_TYPE_FROM_CACHE:
return canvas->bits_cache->ops->get(canvas->bits_cache, descriptor->id);
case SPICE_IMAGE_TYPE_BITMAP: {
@@ -1546,9 +1553,7 @@ static int canvas_base_init(CanvasBase *canvas, int depth,
#else
static int canvas_base_init(CanvasBase *canvas, int depth
#endif
-#ifdef USE_GLZ
, SpiceGlzDecoder *glz_decoder
-#endif
#ifndef CAIRO_CANVAS_NO_CHUNKS
, void *get_virt_opaque, get_virt_fn_t get_virt,
void *validate_virt_opaque, validate_virt_fn_t validate_virt
@@ -1583,9 +1588,7 @@ static int canvas_base_init(CanvasBase *canvas, int depth
return 0;
}
#endif
-#ifdef USE_GLZ
canvas->glz_data.decoder = glz_decoder;
-#endif
if (depth == 16) {
canvas->color_shift = 5;
diff --git a/common/gdi_canvas.c b/common/gdi_canvas.c
index c4750a8e..40305df8 100644
--- a/common/gdi_canvas.c
+++ b/common/gdi_canvas.c
@@ -1707,9 +1707,7 @@ GdiCanvas *gdi_canvas_create(HDC dc, int bits,
#else
GdiCanvas *gdi_canvas_create(HDC dc, int bits
#endif
-#ifdef USE_GLZ
, SpiceGlzDecoder *glz_decoder
-#endif
)
{
GdiCanvas *canvas;
@@ -1729,11 +1727,7 @@ GdiCanvas *gdi_canvas_create(HDC dc, int bits
#else
init_ok = gdi_canvas_base_init(&canvas->base, bits
#endif
-#ifdef USE_GLZ
- ,
- glz_decoder
-#endif
- );
+ , glz_decoder);
canvas->dc = dc;
canvas->lock = lock;
return canvas;
diff --git a/common/gl_canvas.c b/common/gl_canvas.c
index 6b5eda97..f173194e 100644
--- a/common/gl_canvas.c
+++ b/common/gl_canvas.c
@@ -811,9 +811,7 @@ GLCanvas *gl_canvas_create(void *usr_data, int width, int height, int depth,
#else
GLCanvas *gl_canvas_create(void *usr_data, int width, int height, int depth
#endif
-#ifdef USE_GLZ
, SpiceGlzDecoder *glz_decoder
-#endif
#ifndef CAIRO_CANVAS_NO_CHUNKS
, void *get_virt_opaque, get_virt_fn_t get_virt,
void *validate_virt_opaque, validate_virt_fn_t validate_virt
@@ -843,10 +841,7 @@ GLCanvas *gl_canvas_create(void *usr_data, int width, int height, int depth
#else
init_ok = canvas_base_init(&canvas->base, depth
#endif
-#ifdef USE_GLZ
- ,
- glz_decoder
-#endif
+ , glz_decoder
#ifndef CAIRO_CANVAS_NO_CHUNKS
,
get_virt_opaque,
diff --git a/common/gl_canvas.h b/common/gl_canvas.h
index 1c573407..ec0cbdbf 100644
--- a/common/gl_canvas.h
+++ b/common/gl_canvas.h
@@ -64,9 +64,7 @@ GLCanvas *gl_canvas_create(void *usr_data, int width, int height, int depth,
#else
GLCanvas *gl_canvas_create(void *usr_data, int width, int height, int depth
#endif
-#ifdef USE_GLZ
, SpiceGlzDecoder *glz_decoder
-#endif
#ifndef CAIRO_CANVAS_NO_CHUNKS
, void *get_virt_opaque, get_virt_fn_t get_virt,
void *validate_virt_opaque, validate_virt_fn_t validate_virt