summaryrefslogtreecommitdiff
path: root/src/Fl_Image_Surface.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/Fl_Image_Surface.cxx')
-rw-r--r--src/Fl_Image_Surface.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Fl_Image_Surface.cxx b/src/Fl_Image_Surface.cxx
index f58949c19..e0c5fe1fc 100644
--- a/src/Fl_Image_Surface.cxx
+++ b/src/Fl_Image_Surface.cxx
@@ -42,7 +42,10 @@ Fl_Image_Surface::Fl_Image_Surface(int w, int h, int high_res, Fl_Offscreen off)
/** The destructor. */
-Fl_Image_Surface::~Fl_Image_Surface() { delete platform_surface; }
+Fl_Image_Surface::~Fl_Image_Surface() {
+ if (is_current()) platform_surface->end_current();
+ delete platform_surface;
+}
void Fl_Image_Surface::origin(int x, int y) {platform_surface->origin(x, y);}