Started using thread-private data. Multisession still doesn't work, but regular opera...
[rodin/chimara.git] / libchimara / resource.c
index ad5dbf115d1c4a7fc6a3ecb436ba9b61e7c697c5..b3c98ecbdc1ee9724daed6849b2bee1ad1f46136 100644 (file)
@@ -1,6 +1,6 @@
 #include "resource.h"
 
-extern ChimaraGlkPrivate *glk_data;
+extern GPrivate *glk_data_key;
 
 /**
  * giblorb_set_resource_map:
@@ -19,6 +19,7 @@ extern ChimaraGlkPrivate *glk_data;
 giblorb_err_t
 giblorb_set_resource_map(strid_t file)
 {
+       ChimaraGlkPrivate *glk_data = g_private_get(glk_data_key);
        giblorb_map_t *newmap; /* create map allocates memory */
        giblorb_err_t error = giblorb_create_map(file, &newmap);
 
@@ -50,6 +51,8 @@ giblorb_set_resource_map(strid_t file)
 giblorb_map_t*
 giblorb_get_resource_map()
 {
+       ChimaraGlkPrivate *glk_data = g_private_get(glk_data_key);
+       
        if(glk_data->resource_map == NULL) {
                WARNING("Resource map not set yet.\n");
        }