我使用下一个代码分配一个颜色条目,然后用它来正确绘制:
char *color_name = "red";
XColor color, exact;
XAllocNamedColor(display, colormap, color_name, &color, &exact);
然后,当我不再需要颜色条目时,我尝试释放它:
XFreeColors(display, colormap, &color.pixel, 1, 0);
此调用会生成下一个错误:
Error of failed request: BadAccess (attempt to access private resource denied)
Major opcode of failed request: 88 (X_FreeColors)
Serial number of failed request: 17
Current serial number in output stream: 19
我是不是做错了什么?我怎样才能释放该颜色条目?该颜色条目应该被释放吗?
最佳答案
已解决:我对 XFreeColors 进行了两次调用:
XFreeColors(display, colormap, &color.pixel, 1, 0);
XFreeColors(display, colormap, &exact.pixel, 1, 0);
不能进行第二次精确调用,这是没有必要的。
关于c - 无法使用 XFreeColors() 释放 Xlib 中的颜色图条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1093295/