From 374ea9e9eb01e5a4975edf6e7bebb70708f1bee1 Mon Sep 17 00:00:00 2001 From: Manolo Gouy Date: Thu, 19 Apr 2018 13:14:37 +0000 Subject: Fix handling of bg argument of fl_draw_pixmap(char**, int , int , Fl_Color bg) during direct drawing of pixmap image data. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12859 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- src/fl_draw_pixmap.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/fl_draw_pixmap.cxx') diff --git a/src/fl_draw_pixmap.cxx b/src/fl_draw_pixmap.cxx index 735fe30c3..11ffe0f49 100644 --- a/src/fl_draw_pixmap.cxx +++ b/src/fl_draw_pixmap.cxx @@ -203,7 +203,7 @@ int fl_convert_pixmap(const char*const* cdata, uchar* out, Fl_Color bg) { // assume "None" or "#transparent" for any errors // "bg" should be transparent... Fl::get_color(bg, c[0], c[1], c[2]); - c[3] = 0; + c[3] = 255; if (Fl_Graphics_Driver::need_pixmap_bg_color) transparent_c = c; } // if parse } // for ncolors @@ -254,7 +254,7 @@ int fl_draw_pixmap(const char*const* cdata, int x, int y, Fl_Color bg) { // build the mask bitmap used by Fl_Pixmap: uchar **p = fl_graphics_driver->mask_bitmap(); - if (p) { + if (p && *p) { int W = (w+7)/8; uchar* bitmap = new uchar[W * h]; *p = bitmap; -- cgit v1.2.3