]> git.sommitrealweird.co.uk Git - onak.git/blobdiff - wordlist.c
0.3.5 release.
[onak.git] / wordlist.c
index 71299e12c88fd3e811965bbd337ba8c9ad07fd5b..791c55d96e6fb10274c9084b12d7ed8541280b33 100644 (file)
@@ -40,11 +40,11 @@ struct ll *makewordlist(struct ll *wordlist, char *word)
        end = word;
        while (end != NULL && *end != 0) {
                start = end;
        end = word;
        while (end != NULL && *end != 0) {
                start = end;
-               while (*start != 0 && !isalnum(*start)) {
+               while (*start != 0 && (ispunct(*start) || isspace (*start))) {
                        start++;
                }
                end = start;
                        start++;
                }
                end = start;
-               while (*end != 0 && isalnum(*end)) {
+               while (*end != 0 && (!ispunct(*end) && !isspace (*end))) {
                        *end = tolower(*end);
                        end++;
                }
                        *end = tolower(*end);
                        end++;
                }
@@ -57,7 +57,7 @@ struct ll *makewordlist(struct ll *wordlist, char *word)
                        if (llfind(wordlist, start, 
                                (int (*)(const void *, const void *)) strcmp
                                        ) == NULL) {
                        if (llfind(wordlist, start, 
                                (int (*)(const void *, const void *)) strcmp
                                        ) == NULL) {
-                               wordlist = lladd(wordlist, start);
+                               wordlist = lladdend(wordlist, start);
                        }
                }
        }
                        }
                }
        }