git: Line endings of README.txt
[projects/chimara/chimara.git] / libchimara / glk.c
index f5df12ee4cc80c7fd88dd055bb11f91f52f6085f..f3ae9c1a61c0e2eec4c94ccdd9cecebc0589dca3 100644 (file)
@@ -7,7 +7,7 @@
 #include "gi_blorb.h"
 #include "window.h"
 
-G_GNUC_INTERNAL GPrivate *glk_data_key = NULL;
+G_GNUC_INTERNAL GPrivate glk_data_key = G_PRIVATE_INIT(NULL);
 
 /**
  * glk_exit:
@@ -43,7 +43,7 @@ G_GNUC_INTERNAL GPrivate *glk_data_key = NULL;
 void
 glk_exit(void)
 {
-       ChimaraGlkPrivate *glk_data = g_private_get(glk_data_key);
+       ChimaraGlkPrivate *glk_data = g_private_get(&glk_data_key);
        
        shutdown_glk_pre();
        
@@ -74,15 +74,15 @@ glk_exit(void)
                glk_put_string("\n");
                flush_window_buffer(largewin);
        }
-       
-       g_mutex_lock(glk_data->shutdown_lock);
+
+       g_mutex_lock(&glk_data->shutdown_lock);
        for(win = glk_window_iterate(NULL, NULL); win; win = glk_window_iterate(win, NULL)) {
                if(win->type == wintype_TextGrid || win->type == wintype_TextBuffer)
                        g_signal_handler_unblock(win->widget, win->shutdown_keypress_handler);
        }
-       g_cond_wait(glk_data->shutdown_key_pressed, glk_data->shutdown_lock);
-       g_mutex_unlock(glk_data->shutdown_lock);
-       
+       g_cond_wait(&glk_data->shutdown_key_pressed, &glk_data->shutdown_lock);
+       g_mutex_unlock(&glk_data->shutdown_lock);
+
        shutdown_glk_post();
 
        g_signal_emit_by_name(glk_data->self, "stopped");