summaryrefslogtreecommitdiffstats
path: root/src/extension/internal/cairo-render-context.cpp
diff options
context:
space:
mode:
authorJohan B. C. Engelen <jbc.engelen@swissonline.ch>2010-03-14 16:09:04 +0000
committerJohan Engelen <goejendaagh@zonnet.nl>2010-03-14 16:09:04 +0000
commitb4e77d3df0d0d9f3e648abe71a04cf782b559525 (patch)
tree42b354a4b7b4f2f9e2fce7067ffd77e5a95de59c /src/extension/internal/cairo-render-context.cpp
parentCreate better names when intput devices are reported with broken ones. (diff)
downloadinkscape-b4e77d3df0d0d9f3e648abe71a04cf782b559525.tar.gz
inkscape-b4e77d3df0d0d9f3e648abe71a04cf782b559525.zip
Fixes crash of bug #537457, but export is incorrect.
Fixed bugs: - https://launchpad.net/bugs/537457 (bzr r9187)
Diffstat (limited to 'src/extension/internal/cairo-render-context.cpp')
-rw-r--r--src/extension/internal/cairo-render-context.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp
index c33beab8a..877bdb952 100644
--- a/src/extension/internal/cairo-render-context.cpp
+++ b/src/extension/internal/cairo-render-context.cpp
@@ -80,7 +80,7 @@
#include <pango/pangofc-fontmap.h>
//#define TRACE(_args) g_printf _args
-#define TRACE(_args)
+#define TRACE(_args) g_message _args
//#define TEST(_args) _args
#define TEST(_args)
@@ -662,7 +662,11 @@ CairoRenderContext::popLayer(void)
surface_width *= 1.25;
surface_height *= 1.25;
}
- mask_ctx->setupSurface( surface_width, surface_height );
+ if (!mask_ctx->setupSurface( surface_width, surface_height )) {
+ TRACE(("mask: setupSurface failed\n"));
+ _renderer->destroyContext(mask_ctx);
+ return;
+ }
TRACE(("mask surface: %f x %f at %i dpi\n", surface_width, surface_height, _dpi ));
// set rendering mode to normal
@@ -815,6 +819,7 @@ CairoRenderContext::setSurfaceTarget(cairo_surface_t *surface, bool is_vector, c
bool
CairoRenderContext::_finishSurfaceSetup(cairo_surface_t *surface, cairo_matrix_t *ctm)
{
+g_message("enter");
if(surface == NULL) {
return false;
}
@@ -841,7 +846,7 @@ CairoRenderContext::_finishSurfaceSetup(cairo_surface_t *surface, cairo_matrix_t
}
_is_valid = TRUE;
-
+g_message("leave");
return true;
}