X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fpseudorendercontrol.cc;h=f2cf8059b271343025ea5261356dcc6cb17361ad;hb=afd477692d3268af445c3fc27057cf35e58ab51f;hp=4e2691a2198f85ac5ad485e3d09b068a9c3eb069;hpb=7a2a461582fe5213c1b24c86c8fef9dc18d5b60f;p=chaz%2Fopenbox diff --git a/otk/pseudorendercontrol.cc b/otk/pseudorendercontrol.cc index 4e2691a2..f2cf8059 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