X-Git-Url: http://the.earth.li/gitweb/?a=blobdiff_plain;f=wordlist.c;h=10b53a80285745f4d7111e64d2bbf957a097ef45;hb=e0e1556867850c43983674881ca00436ceec13a8;hp=0a9a836a67e10c7c2ca5e57c609f72edfe3f9c63;hpb=46c27e2883a78388c895dc883dbb9b902fc8350d;p=onak.git diff --git a/wordlist.c b/wordlist.c index 0a9a836..10b53a8 100644 --- a/wordlist.c +++ b/wordlist.c @@ -5,7 +5,7 @@ * * Copyright 2004 Project Purple * - * $Id: wordlist.c,v 1.1 2004/05/27 03:34:35 noodles Exp $ + * $Id: wordlist.c,v 1.3 2004/05/28 03:23:04 noodles Exp $ */ #include @@ -80,12 +80,19 @@ struct ll *makewordlist(struct ll *wordlist, char *word) struct ll *makewordlistfromkey(struct ll *wordlist, struct openpgp_publickey *key) { - char **uids; - int i; + char **uids; + int i; + struct ll *words = NULL; + struct ll *wl = NULL; uids = keyuids(key, NULL); for (i = 0; uids[i] != NULL; ++i) { - wordlist = makewordlist(wordlist, uids[i]); + words = makewordlist(NULL, uids[i]); + for (wl = words; wl != NULL; wl = wl->next) { + if (llfind(wordlist, wl->object, strcmp) == NULL) { + wordlist = lladd(wordlist, strdup(wl->object)); + } + } free(uids[i]); uids[i] = NULL; }