]> git.ipfire.org Git - thirdparty/mlmmj.git/commitdiff
mlmmj-unsub: eliminate useless memory duplication
authorBaptiste Daroussin <bapt@FreeBSD.org>
Thu, 4 Nov 2021 13:34:44 +0000 (14:34 +0100)
committerBaptiste Daroussin <bapt@FreeBSD.org>
Thu, 4 Nov 2021 13:34:44 +0000 (14:34 +0100)
src/mlmmj-unsub.c

index ce0a18b0c2ba0eb955a24e71343c63ed4808ba23..9b5405ac82000babe14b71febc7555dc299579e1 100644 (file)
@@ -96,7 +96,8 @@ static void notify_unsub(struct mlmmj_list *list, const char *subaddr,
 {
         char *fromaddr, *tostr;
        text *txt;
-        char *queuefilename = NULL, *listtext;
+        char *queuefilename = NULL;
+       const char *listtext;
 
        myasprintf(&fromaddr, "%s%sbounces-help@%s", list->name, list->delim,
            list->fqdn);
@@ -105,20 +106,19 @@ static void notify_unsub(struct mlmmj_list *list, const char *subaddr,
        switch(typesub) {
                default:
                case SUB_NORMAL:
-                       listtext = mystrdup("notifyunsub");
+                       listtext = "notifyunsub";
                        break;
                case SUB_DIGEST:
-                       listtext = mystrdup("notifyunsub-digest");
+                       listtext = "notifyunsub-digest";
                        break;
                case SUB_NOMAIL:
-                       listtext = mystrdup("notifyunsub-nomail");
+                       listtext = "notifyunsub-nomail";
                        break;
        }
        
        txt = open_text(list, "notify", "unsub",
                        subreason_strs[reasonsub], subtype_strs[typesub],
                        listtext);
-       myfree(listtext);
        MY_ASSERT(txt);
        register_unformatted(txt, "subaddr", subaddr);
        register_unformatted(txt, "oldsub", subaddr); /* DEPRECATED */
@@ -142,7 +142,8 @@ static void generate_unsubconfirm(struct mlmmj_list *list, const char *subaddr,
                           const char *mlmmjsend,
                           enum subtype typesub, enum subreason reasonsub)
 {
-       char *confirmaddr, *tmpstr;
+       const char *tmpstr;
+       char *confirmaddr;
        text *txt;
        char *queuefilename, *fromaddr;
        char *randomstr = NULL, *confirmfilename = NULL, *listtext;
@@ -182,16 +183,16 @@ static void generate_unsubconfirm(struct mlmmj_list *list, const char *subaddr,
        switch(typesub) {
                default:
                case SUB_NORMAL:
-                       listtext = mystrdup("unsub-confirm");
-                       tmpstr = mystrdup("confunsub-");
+                       listtext = "unsub-confirm";
+                       tmpstr = "confunsub-";
                        break;
                case SUB_DIGEST:
-                       listtext = mystrdup("unsub-confirm-digest");
-                       tmpstr = mystrdup("confunsub-digest-");
+                       listtext = "unsub-confirm-digest";
+                       tmpstr = "confunsub-digest-";
                        break;
                case SUB_NOMAIL:
-                       listtext = mystrdup("unsub-confirm-nomail");
-                       tmpstr = mystrdup("confunsub-nomail-");
+                       listtext = "unsub-confirm-nomail";
+                       tmpstr = "confunsub-nomail-";
                        break;
        }
 
@@ -199,12 +200,10 @@ static void generate_unsubconfirm(struct mlmmj_list *list, const char *subaddr,
            randomstr, list->fqdn);
 
        myfree(randomstr);
-       myfree(tmpstr);
 
        txt = open_text(list, "confirm", "unsub",
                        subreason_strs[reasonsub], subtype_strs[typesub],
                        listtext);
-       myfree(listtext);
        MY_ASSERT(txt);
        register_unformatted(txt, "subaddr", subaddr);
        register_unformatted(txt, "confaddr", confirmaddr); /* DEPRECATED */