X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/halibut/blobdiff_plain/e4ea58f8cb4dccaa8e99306a3497de1e37600480..bb9e7835935e7a2098f2ce27964342d4c4557e3f:/misc.c diff --git a/misc.c b/misc.c index 304cb1f..12333e7 100644 --- a/misc.c +++ b/misc.c @@ -213,23 +213,22 @@ int compare_wordlists(word *a, word *b) { return compare_wordlists_literally(a, b); } -void mark_attr_ends(paragraph *sourceform) { - paragraph *p; +void mark_attr_ends(word *words) +{ word *w, *wp; - for (p = sourceform; p; p = p->next) { - wp = NULL; - for (w = p->words; w; w = w->next) { - if (isattr(w->type)) { - int before = (wp && isattr(wp->type) && - sameattr(wp->type, w->type)); - int after = (w->next && isattr(w->next->type) && - sameattr(w->next->type, w->type)); - w->aux |= (before ? - (after ? attr_Always : attr_Last) : - (after ? attr_First : attr_Only)); - } - wp = w; + + wp = NULL; + for (w = words; w; w = w->next) { + if (isattr(w->type)) { + int before = (wp && isattr(wp->type) && + sameattr(wp->type, w->type)); + int after = (w->next && isattr(w->next->type) && + sameattr(w->next->type, w->type)); + w->aux |= (before ? + (after ? attr_Always : attr_Last) : + (after ? attr_First : attr_Only)); } + wp = w; } } @@ -497,7 +496,7 @@ void cmdline_cfg_add(paragraph *cfg, char *string) while (cfg->origkeyword[len]) len += 1 + strlen(cfg->origkeyword+len); - ustring = ufroma_dup(string, CS_FIXME); + ustring = ufroma_locale_dup(string); upos = ulen; ulen += 2 + ustrlen(ustring);