X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fmodules%2Flistsub%2Fserv_listsub.c;h=6c9ed1f743340e114e3f3cf861dcad4b79799ff7;hb=dade39dc9ec1d4ab56f14842a162373542e26a67;hp=bc00efa00b24ba956231b9f534bc747ac08edcc5;hpb=ace3b2c330af622a0f0a79edd369fca8e13a71a2;p=citadel.git diff --git a/citadel/modules/listsub/serv_listsub.c b/citadel/modules/listsub/serv_listsub.c index bc00efa00..6c9ed1f74 100644 --- a/citadel/modules/listsub/serv_listsub.c +++ b/citadel/modules/listsub/serv_listsub.c @@ -79,7 +79,7 @@ int CountThisSubscriber(OneRoomNetCfg *OneRNCfg, StrBuf *email) int found_sub = 0; int i; - for (i = 0; i < sizeof (ActiveSubscribers); i++) + for (i = 0; i < 2; i++) { Line = OneRNCfg->NetConfigs[ActiveSubscribers[i]]; while (Line != NULL) @@ -97,18 +97,6 @@ int CountThisSubscriber(OneRoomNetCfg *OneRNCfg, StrBuf *email) } /* - subpending, - unsubpending, - ignet_push_share, - listrecp, - digestrecp, - pop3client, - rssclient, - participate, - roommailalias, - maxRoomNetCfg - -/ * * Enter a subscription request */ void do_subscribe(StrBuf **room, StrBuf **email, StrBuf **subtype, StrBuf **webpage) { @@ -289,7 +277,7 @@ void do_subscribe(StrBuf **room, StrBuf **email, StrBuf **subtype, StrBuf **webp FMT_RFC822, "Please confirm your list subscription" ); - free(cf_req); + free(pcf_req); cprintf("%d Subscription entered; confirmation request sent\n", CIT_OK); FreeStrBuf(&UrlRoom); @@ -524,7 +512,7 @@ void do_confirm(StrBuf **room, StrBuf **token) { ConfirmType = maxRoomNetCfg; - for (i = 0; i < sizeof (ConfirmSubscribers); i++) + for (i = 0; i < 2; i++) { PrevLine = &OneRNCfg->NetConfigs[ConfirmSubscribers[i]]; Line = *PrevLine; @@ -571,7 +559,7 @@ void do_confirm(StrBuf **room, StrBuf **token) { success = 1; } else if (ConfirmType == unsubpending) { - for (i = 0; i < sizeof (ActiveSubscribers); i++) + for (i = 0; i < 2; i++) { PrevLine = &OneRNCfg->NetConfigs[ActiveSubscribers[i]]; Line = *PrevLine; @@ -634,6 +622,7 @@ void cmd_subs(char *cmdbuf) { Segments[i] = NewStrBufPlain(NULL, StrLength(Segments[0])); StrBufExtract_NextToken(Segments[i], Segments[0], &Pos, '|'); + i++; } if (!strcasecmp(ChrPtr(Segments[1]), "subscribe")) { @@ -655,6 +644,11 @@ void cmd_subs(char *cmdbuf) else { cprintf("%d Invalid command\n", ERROR + ILLEGAL_VALUE); } + + for (; i>=0; i--) + { + FreeStrBuf(&Segments[i]); + } }