]> Pileus Git - ~andy/gtk/blobdiff - glib/gdataset.c
adapted clist pixmap clipping
[~andy/gtk] / glib / gdataset.c
index 86a5bfbc7c959f4c090cccc6a7dd040fadc2753f..aef270cbf4d6144c9dabd87a9b3c0a1943d69629 100644 (file)
@@ -38,16 +38,17 @@ struct _GDatasetData
   gpointer data;
   GDestroyNotify destroy_func;
 };
+
 struct _GDataset
 {
-  gpointer location;
+  gconstpointer location;
   GDatasetData *data_list;
 };
 
 
 /* --- prototypes --- */
-static inline GDataset*        g_dataset_lookup        (const gpointer dataset_location);
-static inline void     g_dataset_destroy_i     (GDataset       *dataset);
+static inline GDataset*        g_dataset_lookup        (gconstpointer dataset_location);
+static inline void     g_dataset_destroy_i     (GDataset     *dataset);
 static void            g_dataset_initialize    (void);
 static guint*          g_dataset_id_new        (void);
 
@@ -64,7 +65,7 @@ static guint g_dataset_id_index = G_DATASET_ID_BLOCK_SIZE + 1;
 
 /* --- functions --- */
 static inline GDataset*
-g_dataset_lookup (const gpointer       dataset_location)
+g_dataset_lookup (gconstpointer        dataset_location)
 {
   register GDataset *dataset;
   
@@ -108,7 +109,7 @@ g_dataset_destroy_i (GDataset *dataset)
 }
 
 void
-g_dataset_destroy (const gpointer  dataset_location)
+g_dataset_destroy (gconstpointer  dataset_location)
 {
   register GDataset *dataset;
   
@@ -120,9 +121,9 @@ g_dataset_destroy (const gpointer  dataset_location)
 }
 
 void
-g_dataset_id_set_destroy (const gpointer  dataset_location,
-                         guint           key_id,
-                         GDestroyNotify  destroy_func)
+g_dataset_id_set_destroy (gconstpointer  dataset_location,
+                         guint          key_id,
+                         GDestroyNotify destroy_func)
 {
   g_return_if_fail (dataset_location != NULL);
   
@@ -149,8 +150,8 @@ g_dataset_id_set_destroy (const gpointer  dataset_location,
 }
 
 gpointer
-g_dataset_id_get_data (const gpointer  dataset_location,
-                      guint           key_id)
+g_dataset_id_get_data (gconstpointer  dataset_location,
+                      guint          key_id)
 {
   g_return_val_if_fail (dataset_location != NULL, NULL);
   
@@ -173,10 +174,10 @@ g_dataset_id_get_data (const gpointer  dataset_location,
 }
 
 void
-g_dataset_id_set_data_full (const gpointer  dataset_location,
-                           guint           key_id,
-                           gpointer        data,
-                           GDestroyNotify  destroy_func)
+g_dataset_id_set_data_full (gconstpointer  dataset_location,
+                           guint          key_id,
+                           gpointer       data,
+                           GDestroyNotify destroy_func)
 {
   register GDataset *dataset;
   register GDatasetData *list;
@@ -190,7 +191,9 @@ g_dataset_id_set_data_full (const gpointer  dataset_location,
       dataset = g_chunk_new (GDataset, g_dataset_mem_chunk);
       dataset->location = dataset_location;
       dataset->data_list = NULL;
-      g_hash_table_insert (g_dataset_location_ht, dataset->location, dataset);
+      g_hash_table_insert (g_dataset_location_ht, 
+                          (gpointer) dataset->location, /* Yuck */
+                          dataset);
     }
   
   list = dataset->data_list;