]> Dogcows Code - chaz/openbox/commitdiff
increment the count 1 right off the start for the cache
authorDana Jansens <danakj@orodu.net>
Wed, 22 Jan 2003 23:14:42 +0000 (23:14 +0000)
committerDana Jansens <danakj@orodu.net>
Wed, 22 Jan 2003 23:14:42 +0000 (23:14 +0000)
otk/rendercolor.cc

index b5e037d382272e1a9cd026b09c31a8b0b8625f66..eb3ffdbc3e3cf3957621ec3fa1501a9df360d5aa 100644 (file)
@@ -47,6 +47,8 @@ void RenderColor::create()
 {
   unsigned long color = _blue | _green << 8 | _red << 16;
   
+  printf("CREATE COLOR: %lx\n", color);
+  
   // try get a gc from the cache
   CacheItem *item = _cache[_screen][color];
 
@@ -79,17 +81,21 @@ void RenderColor::create()
     assert(_gc);
 
     // insert into the cache
-    _cache[_screen][color] = new CacheItem(_gc);
+    item = new CacheItem(_gc);
+    _cache[_screen][color] = item;
+    ++item->count;
   }
 }
 
 RenderColor::~RenderColor()
 {
   unsigned long color = _blue | _green << 8 | _red << 16;
-  
+
   CacheItem *item = _cache[_screen][color];
   assert(item); // it better be in the cache ...
 
+  printf("DESTROY COLOR: %lx %d\n", color, item->count);
+  
   if (--item->count <= 0) {
     // remove from the cache
     XFreeGC(**display, _gc);
This page took 0.02268 seconds and 4 git commands to generate.