]> Dogcows Code - chaz/openbox/blobdiff - src/frame.cc
free the surfaces' pixeldata after rendering it
[chaz/openbox] / src / frame.cc
index 17ebdb65f1dd54ff5056beb59f21a488e6ac770e..a4188b6ee44b93111beb9f0d3e84f2c9cd52f798 100644 (file)
@@ -1,8 +1,6 @@
 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
 
-#ifdef HAVE_CONFIG_H
-# include "../config.h"
-#endif
+#include "config.h"
 
 extern "C" {
 #ifdef    SHAPE
@@ -229,6 +227,7 @@ static void render(int screen, const otk::Size &size, Window win,
   XSetWindowBackgroundPixmap(**otk::display, win, s->pixmap());
   XClearWindow(**otk::display, win);
   if (*surface) delete *surface;
+  s->freePixelData();
   *surface = s;
 }
 
@@ -384,6 +383,7 @@ void Frame::renderLabel()
   XSetWindowBackgroundPixmap(**otk::display, _label, s->pixmap());
   XClearWindow(**otk::display, _label);
   if (_label_sur) delete _label_sur;
+  s->freePixelData();
   _label_sur = s;
 }
 
This page took 0.019734 seconds and 4 git commands to generate.