X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/halibut/blobdiff_plain/96f3af166d2258373cdb68eb37a78cc9ff851b80..refs/heads/master:/keywords.c diff --git a/keywords.c b/keywords.c index eef96a6..14aa6bd 100644 --- a/keywords.c +++ b/keywords.c @@ -33,7 +33,7 @@ keyword *kw_lookup(keywordlist *kl, wchar_t *str) { */ keywordlist *get_keywords(paragraph *source) { int errors = FALSE; - keywordlist *kl = mknew(keywordlist); + keywordlist *kl = snew(keywordlist); numberstate *n = number_init(); int prevpara = para_NotParaType; @@ -68,13 +68,13 @@ keywordlist *get_keywords(paragraph *source) { if (source->kwtext || source->type == para_Biblio) { keyword *kw, *ret; - kw = mknew(keyword); + kw = snew(keyword); kw->key = p; kw->text = source->kwtext; kw->para = source; ret = add234(kl->keys, kw); if (ret != kw) { - error(err_multikw, &source->fpos, &ret->para->fpos, p); + err_multikw(&source->fpos, &ret->para->fpos, p); sfree(kw); /* FIXME: what happens to kw->text? Does it leak? */ } @@ -82,7 +82,8 @@ keywordlist *get_keywords(paragraph *source) { } else { if (kl->nlooseends >= kl->looseendssize) { kl->looseendssize = kl->nlooseends + 32; - kl->looseends = resize(kl->looseends, kl->looseendssize); + kl->looseends = sresize(kl->looseends, kl->looseendssize, + word *); } kl->looseends[kl->nlooseends++] = source->kwtext; } @@ -123,7 +124,7 @@ void subst_keywords(paragraph *source, keywordlist *kl) { kw = kw_lookup(kl, ptr->text); if (!kw) { - error(err_nosuchkw, &ptr->fpos, ptr->text); + err_nosuchkw(&ptr->fpos, ptr->text); subst = NULL; } else subst = dup_word_list(kw->text); @@ -133,7 +134,7 @@ void subst_keywords(paragraph *source, keywordlist *kl) { kw->para->type != para_BiblioCited) ustrlow(subst->text); - close = mknew(word); + close = snew(word); close->text = NULL; close->alt = NULL; close->type = word_XrefEnd;