diff options
| author | Manolo Gouy <Manolo> | 2018-04-16 13:00:29 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2018-04-16 13:00:29 +0000 |
| commit | 26aabc91e1b2e7417272e91df4c8a0867eb6bbba (patch) | |
| tree | 5ef8988cdc991c2532279a9a386927453f6e0617 /src/drivers/Xlib/Fl_Xlib_Graphics_Driver_image.cxx | |
| parent | 9b01ff63e7f48fd8503bbc94ca12c761397ac7c6 (diff) | |
Remove virtual member Fl_GraphicsDriver::mask_bitmap(char **) and its re-implementations.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12843 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src/drivers/Xlib/Fl_Xlib_Graphics_Driver_image.cxx')
| -rw-r--r-- | src/drivers/Xlib/Fl_Xlib_Graphics_Driver_image.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_image.cxx b/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_image.cxx index dd8c136d2..80fe2c8ce 100644 --- a/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_image.cxx +++ b/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_image.cxx @@ -869,14 +869,15 @@ void Fl_Xlib_Graphics_Driver::draw_fixed(Fl_Pixmap *pxm, int X, int Y, int W, in void Fl_Xlib_Graphics_Driver::cache(Fl_Pixmap *pxm) { Fl_Image_Surface *surf = new Fl_Image_Surface(pxm->data_w(), pxm->data_h()); Fl_Surface_Device::push_current(surf); - uchar *bitmap = 0; - Fl_Surface_Device::surface()->driver()->mask_bitmap(&bitmap); + uchar **pbitmap = surf->driver()->mask_bitmap(); + *pbitmap = 0; fl_draw_pixmap(pxm->data(), 0, 0, FL_BLACK); - Fl_Surface_Device::surface()->driver()->mask_bitmap(0); + uchar *bitmap = *pbitmap; if (bitmap) { *Fl_Graphics_Driver::mask(pxm) = (fl_uintptr_t)create_bitmask(pxm->data_w(), pxm->data_h(), bitmap); delete[] bitmap; } + *pbitmap = 0; Fl_Surface_Device::pop_current(); Fl_Offscreen id = surf->get_offscreen_before_delete(); delete surf; |
