]> git.cworth.org Git - wordgame/commitdiff
rack-fancy: Ignore any blank tiles drawn from the bag
authorCarl Worth <cworth@cworth.org>
Mon, 18 Dec 2006 18:06:04 +0000 (10:06 -0800)
committerCarl Worth <cworth@cworth.org>
Mon, 18 Dec 2006 18:06:04 +0000 (10:06 -0800)
rack-fancy.c

index f1a224f641bed92b3cf14818dbdc21cf7fc081b2..21c2953064307af7a78a69b0fcbcd3a670500427 100644 (file)
@@ -458,6 +458,7 @@ main (int argc, char *argv[])
     rack_t rack;
     char word[8];
     int i;
+    char *draw;
     GtkWidget *window;
     GooCanvas *canvas;
 
@@ -467,11 +468,14 @@ main (int argc, char *argv[])
     bag_init (&bag);
     bag_shuffle (&bag);
 
-    memcpy (word, bag.tiles, 7);
-    word[7] = '\0';
-
-    for (i = 0; i < 7; i++)
-       word[i] = toupper (word[i]);
+    /* Keep drawing until we get 7 non-blank tiles */
+    i = 0;
+    draw = bag.tiles;
+    while (i < 7) {
+       if (*draw != '?')
+           word[i++] = toupper (*draw);
+       draw++;
+    }
 
     dict_init (&dict);
     dict_add_words_from_file (&dict, "words.txt");