summaryrefslogtreecommitdiff
path: root/render/instance.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-10-10 05:38:36 +0000
committerDana Jansens <danakj@orodu.net>2003-10-10 05:38:36 +0000
commitf8c81e8ca4ffb8421f823e40178f4ddafd868c68 (patch)
tree5cce6dcbab0667262b667228af8ac41a3421fb70 /render/instance.c
parent647baa7740992d95641c45f11eb177099152561f (diff)
add a check to make sure the color hash is empty on shutdown
Diffstat (limited to 'render/instance.c')
-rw-r--r--render/instance.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/render/instance.c b/render/instance.c
index 4ce1c3df..76c09a36 100644
--- a/render/instance.c
+++ b/render/instance.c
@@ -24,6 +24,19 @@ static RrInstance *definst = NULL;
static void RrTrueColorSetup (RrInstance *inst);
static void RrPseudoColorSetup (RrInstance *inst);
+#ifdef DEBUG
+#include "color.h"
+#endif
+static void
+dest(gpointer data)
+{
+#ifdef DEBUG
+ RrColor *c = data;
+ if (c->refcount > 0)
+ g_error("removing color from hash table with references");
+#endif
+}
+
RrInstance* RrInstanceNew (Display *display, gint screen)
{
definst = g_new (RrInstance, 1);
@@ -36,7 +49,8 @@ RrInstance* RrInstanceNew (Display *display, gint screen)
definst->pseudo_colors = NULL;
- definst->color_hash = g_hash_table_new(g_int_hash, g_int_equal);
+ definst->color_hash = g_hash_table_new_full(g_int_hash, g_int_equal,
+ NULL, dest);
switch (definst->visual->class) {
case TrueColor: