-
- if(!i->clipbuf) {
- fprintf(stderr, "endclip without any active clip buffers");
+
+ /* test for at least one cliplevel (the one we created ourselves) */
+ if(!i->clipbuf || (!i->clipbuf->next && !removelast)) {
+ fprintf(stderr, "endclip without any active clip buffers\n");
if(line->type == gfx_moveTo) {
} else if(line->type == gfx_lineTo) {
double x1=x*i->zoom,y1=y*i->zoom;
if(line->type == gfx_moveTo) {
} else if(line->type == gfx_lineTo) {
double x1=x*i->zoom,y1=y*i->zoom;
add_solidline(dev, x1, y1, x3, y3, width * i->multiply);
fill_solid(dev, color);
} else if(line->type == gfx_splineTo) {
add_solidline(dev, x1, y1, x3, y3, width * i->multiply);
fill_solid(dev, color);
} else if(line->type == gfx_splineTo) {
}
return gfximage_asXPM(&i->img, 64);
} else if(!strncmp(name,"page",4)) {
}
return gfximage_asXPM(&i->img, 64);
} else if(!strncmp(name,"page",4)) {
void gfxdevice_render_init(gfxdevice_t*dev)
{
internal_t*i = (internal_t*)rfx_calloc(sizeof(internal_t));
void gfxdevice_render_init(gfxdevice_t*dev)
{
internal_t*i = (internal_t*)rfx_calloc(sizeof(internal_t));