Fixed bug - glk_stylehint_set doesn't loop infinitely anymore
[rodin/chimara.git] / libchimara / style.c
index 61764a9020b5527bcad2432951628b4d5880888d..07a10fef638ecccb3404972014d9397aae776c31 100644 (file)
@@ -4,6 +4,10 @@
 
 extern GPrivate *glk_data_key;
 static gboolean chimara_style_initialized = FALSE;
+static gboolean style_accept(GScanner *scanner, GTokenType token);
+static gboolean style_accept_style_identifier(GScanner *scanner);
+static gboolean style_accept_style_hint(GScanner *scanner, GtkTextTag *current_tag);
+static void style_add_tag_to_textbuffer(gpointer key, gpointer tag, gpointer tag_table);
 
 /**
  * glk_set_style:
@@ -458,8 +462,8 @@ glk_stylehint_set(glui32 wintype, glui32 styl, glui32 hint, glsi32 val)
        gchar *tag_name = get_tag_name(styl);
 
        /* Iterate over all the window and update their styles if nessecary */
-       winid_t win = glk_window_iterate(NULL, NULL);
-       while(win != NULL) {
+       winid_t win;
+       for(win = glk_window_iterate(NULL, NULL); win; win = glk_window_iterate(win, NULL)) {
                if(wintype != wintype_TextBuffer)
                        continue; /* FIXME: add support for text grid windows */