From e16606d51eeece9cb3b1f7d477695cb67bbb5046 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Wilfried=20G=C3=B6esgens?= Date: Tue, 24 Apr 2007 21:48:35 +0000 Subject: [PATCH] * paste together multiple errors in a right manner. --- citadel/serv_extensions.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/citadel/serv_extensions.c b/citadel/serv_extensions.c index 181467fef..5a34e2a82 100644 --- a/citadel/serv_extensions.c +++ b/citadel/serv_extensions.c @@ -58,7 +58,6 @@ static size_t nSizErrmsg = 0; static long DetailErrorFlags; - char *ErrSubject = "Startup Problems"; char *ErrGeneral = "Citadel had trouble on starting up. %s This means, citadel won't be the service provider for a specific service you configured it to.\n\n" "If you don't want citadel to provide these services, turn them off in WebCit via %s%s\n\n%s\n\n" @@ -135,16 +134,30 @@ void AppendString(char **target, char *append, size_t *len, size_t rate) } } memcpy (*target + oLen, append, AddLen); - (*target)[AddLen + 1] = '\n'; - (*target)[AddLen + 2] = '\0'; + (*target)[oLen + AddLen + 1] = '\n'; + (*target)[oLen + AddLen + 2] = '\0'; } void AddPortError(char *Port, char *ErrorMessage) { + char *pos; + long len; + DetailErrorFlags |= ERR_PORT; AppendString(&errormessages, ErrorMessage, &nSizErrmsg, 10); AppendString(&portlist, Port, &nSizPort, 2); + + pos = strchr (portlist, ':'); + *pos = ';'; + + len = strlen (errormessages); + if (nSizErrmsg * SIZ > len + 3) + { + errormessages[len] = ';'; + errormessages[len+1] = ' '; + errormessages[len+2] = '\0'; + } } -- 2.30.2