summaryrefslogtreecommitdiff
path: root/otk/pseudorendercontrol.cc
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-02-13 05:07:25 +0000
committerDana Jansens <danakj@orodu.net>2003-02-13 05:07:25 +0000
commitdca8c61a91cab29128a72f252b70f4bd9f7786ff (patch)
tree539320479614725ef4255ffd61dba03a87efe84a /otk/pseudorendercontrol.cc
parent68482ff556b5b8b48bb536a4a95c5a1de01895cb (diff)
free the colors on shutdown
Diffstat (limited to 'otk/pseudorendercontrol.cc')
-rw-r--r--otk/pseudorendercontrol.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/otk/pseudorendercontrol.cc b/otk/pseudorendercontrol.cc
index 4e2691a2..2b878200 100644
--- a/otk/pseudorendercontrol.cc
+++ b/otk/pseudorendercontrol.cc
@@ -101,7 +101,12 @@ PseudoRenderControl::~PseudoRenderControl()
{
printf("Destroying PseudoColor RenderControl\n");
- delete _colors;
+ unsigned long *pixels = new unsigned long [ncolors], *p = pixels;
+ for (int i = 0; i < _ncolors; ++i, ++p)
+ *p = _colors[i].pixel;
+ XFreeColors(**display, display->screenInfo(_screen)->colormap(), pixels,
+ _ncolors, 0);
+ delete [] colors;
}
void PseudoRenderControl::reduceDepth(Surface &sf, XImage *im) const