X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/3e151103c954aad7871a197b438b8d79d557e07e..3b0fc690e5b096f17cedb923471cad4a11cc23d5:/sbr/readconfig.c diff --git a/sbr/readconfig.c b/sbr/readconfig.c index 7f30975d..5900c375 100644 --- a/sbr/readconfig.c +++ b/sbr/readconfig.c @@ -20,7 +20,6 @@ static struct procstr procs[] = { { "context", &context }, { "mh-sequences", &mh_seq }, { "buildmimeproc", &buildmimeproc }, - { "faceproc", &faceproc }, { "fileproc", &fileproc }, { "formatproc", &formatproc }, { "incproc", &incproc }, @@ -32,7 +31,6 @@ static struct procstr procs[] = { { "mshproc", &mshproc }, { "packproc", &packproc }, { "postproc", &postproc }, - { "rmfproc", &rmfproc }, { "rmmproc", &rmmproc }, { "sendproc", &sendproc }, { "showmimeproc", &showmimeproc }, @@ -108,5 +106,23 @@ readconfig (struct node **npp, FILE *ib, char *file, int ctx) break; } + if (opp == NULL) { + /* Check for duplicated profile entries. But only on this + very first call from context_read(), when opp is NULL. */ + + for (np = m_defs; np; np = np->n_next) { + /* Yes, this is O(N^2). The profile should be small enough so + that's not a performance problem. */ + struct node *np2; + for (np2 = np->n_next; np2; np2 = np2->n_next) { + if (!mh_strcasecmp (np->n_name, np2->n_name)) { + admonish (NULL, "multiple \"%s\" profile components " + "in %s, ignoring \"%s\"", + np->n_name, defpath, np2->n_field); + } + } + } + } + opp = npp; }