- for (i = 0; uids[i] != NULL; ++i) {
- wordlist = makewordlist(wordlist, uids[i]);
+ for (i = 0; uids != NULL && uids[i] != NULL; ++i) {
+ words = makewordlist(NULL, uids[i]);
+ for (wl = words; wl != NULL; wl = wl->next) {
+ if (llfind(wordlist, wl->object,
+ (int (*)(const void *, const void *)) strcmp
+ ) == NULL) {
+ wordlist = lladd(wordlist, strdup(wl->object));
+ }
+ }
+ llfree(words, NULL);