gchace.c bug. 1.2.6



Dowload all software and compiled an IRIX version of gimp.

The bug is in GLIB's 1.2.6 gcache.c !   node is NULL !?
My patch is   inside #if 1.

void
g_cache_remove (GCache   *cache,
		gpointer  value)
{
  GRealCache *rcache;
  GCacheNode *node;
  gpointer key;

  g_return_if_fail (cache != NULL);

  rcache = (GRealCache*) cache;

  key = g_hash_table_lookup (rcache->value_table, value);
  node = g_hash_table_lookup (rcache->key_table, key);
#if 1
/*   patch for removing GIMP scrip-fu crash */
   if (node == NULL)
     return;
#endif
  node->ref_count -= 1;
  if (node->ref_count == 0)
    {
      g_hash_table_remove (rcache->value_table, value);
      g_hash_table_remove (rcache->key_table, key);

      (* rcache->key_destroy_func) (key);
      (* rcache->value_destroy_func) (node->value);
      g_cache_node_destroy (node);
    }
}


***********************************************************
* Asbjørn Pettersen           Phone work: +47 77 66 08 91  *
* Kongsberg Spacetec a.s     Phone home: +47 77674022  *
*                              Telefax:    +47 77 65 58 59  *
* Prestvannveien 38          www:http://www.spacetec.no   *
* N-9005 Tromsoe, Norway     email:ape@spacetec.no  *
***********************************************************



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]