Use statically-allocated thread private data
[projects/chimara/chimara.git] / libchimara / glkunix.c
index 284fc1cd19f74f8f5df9ba622e4feaf26af68a83..bdadbafca72b48f9bfff88fcbb0d2d5c537217f7 100644 (file)
@@ -7,7 +7,7 @@
 #include "fileref.h"
 #include "stream.h"
 
-extern GPrivate *glk_data_key;
+extern GPrivate glk_data_key;
 
 /**
  * glkunix_stream_open_pathname_gen:
@@ -27,7 +27,7 @@ extern GPrivate *glk_data_key;
 strid_t
 glkunix_stream_open_pathname_gen(char *pathname, glui32 writemode, glui32 textmode, glui32 rock)
 {
-       ChimaraGlkPrivate *glk_data = g_private_get(glk_data_key);
+       ChimaraGlkPrivate *glk_data = g_private_get(&glk_data_key);
 
        if(!glk_data->in_startup)
                ILLEGAL("glkunix_stream_open_pathname_gen() may only be called from "
@@ -36,7 +36,7 @@ glkunix_stream_open_pathname_gen(char *pathname, glui32 writemode, glui32 textmo
        g_return_val_if_fail(pathname, NULL);
        g_return_val_if_fail(strlen(pathname) > 0, NULL);
 
-       frefid_t fileref = fileref_new(pathname, rock,
+       frefid_t fileref = fileref_new(pathname, NULL, rock,
                textmode? fileusage_TextMode : fileusage_BinaryMode,
                writemode? filemode_Write : filemode_Read);
        return file_stream_new(fileref, writemode? filemode_Write : filemode_Read, rock, FALSE);
@@ -58,7 +58,7 @@ glkunix_stream_open_pathname_gen(char *pathname, glui32 writemode, glui32 textmo
 strid_t
 glkunix_stream_open_pathname(char *pathname, glui32 textmode, glui32 rock)
 {
-       ChimaraGlkPrivate *glk_data = g_private_get(glk_data_key);
+       ChimaraGlkPrivate *glk_data = g_private_get(&glk_data_key);
 
        if(!glk_data->in_startup)
                ILLEGAL("glkunix_stream_open_pathname() may only be called from "
@@ -67,7 +67,7 @@ glkunix_stream_open_pathname(char *pathname, glui32 textmode, glui32 rock)
        g_return_val_if_fail(pathname, NULL);
        g_return_val_if_fail(strlen(pathname) > 0, NULL);
 
-       frefid_t fileref = fileref_new(pathname, rock, textmode? fileusage_TextMode : fileusage_BinaryMode, filemode_Read);
+       frefid_t fileref = fileref_new(pathname, NULL, rock, textmode? fileusage_TextMode : fileusage_BinaryMode, filemode_Read);
        return file_stream_new(fileref, filemode_Read, rock, FALSE);
 }
 
@@ -89,8 +89,8 @@ glkunix_set_base_file(char *filename)
        g_return_if_fail(filename);
        g_return_if_fail(strlen(filename) > 0);
 
-       ChimaraGlkPrivate *glk_data = g_private_get(glk_data_key);
-       
+       ChimaraGlkPrivate *glk_data = g_private_get(&glk_data_key);
+
        gchar *dirname = g_path_get_dirname(filename);
        if(!g_file_test(dirname, G_FILE_TEST_IS_DIR))
        {
@@ -190,4 +190,4 @@ parse_command_line(glkunix_argumentlist_t glkunix_arguments[], int argc, char *a
        g_slist_free(arglist);
        
        return TRUE;
-}
\ No newline at end of file
+}