diff options
| author | Sam Varshavchik | 2022-01-17 21:07:13 -0500 |
|---|---|---|
| committer | Sam Varshavchik | 2022-01-17 21:07:13 -0500 |
| commit | f67b3067a0fee0b7e768f6bd9e12649cacc1f0d2 (patch) | |
| tree | d37e02ae1acfbb6779a7c21e97a32411ff3cb191 | |
| parent | 17cd2a82b61c728106ca385fee1f858b671f321e (diff) | |
| download | courier-libs-f67b3067a0fee0b7e768f6bd9e12649cacc1f0d2.tar.bz2 | |
Clean up maildir_getnew.
| -rw-r--r-- | imap/ChangeLog | 2 | ||||
| -rw-r--r-- | imap/imapd.c | 4 | ||||
| -rw-r--r-- | imap/pop3dserver.c | 2 | ||||
| -rw-r--r-- | maildir/maildirgetnew.c | 17 | ||||
| -rw-r--r-- | maildir/maildirmisc.h | 7 | ||||
| -rw-r--r-- | maildir/maildirshared.c | 6 | ||||
| -rw-r--r-- | sqwebmail/ChangeLog | 4 | ||||
| -rw-r--r-- | sqwebmail/maildir.c | 25 |
8 files changed, 18 insertions, 49 deletions
diff --git a/imap/ChangeLog b/imap/ChangeLog index 7ca1cd0..6a93b1e 100644 --- a/imap/ChangeLog +++ b/imap/ChangeLog @@ -1,5 +1,7 @@ 2022-01-17 Sam Varshavchik <mrsam@courier-mta.com> + * Remove unused parameters to maildir_getnew. + * Fix minor memory leaks. 5.1.7 diff --git a/imap/imapd.c b/imap/imapd.c index ccc1991..cfa2dd4 100644 --- a/imap/imapd.c +++ b/imap/imapd.c @@ -273,7 +273,7 @@ void emptytrash() if (l <= 0) l=1; - maildir_getnew(".", trash, NULL, NULL); + maildir_getnew(".", trash); if ((dir=maildir_folderdir(".", trash))) { maildir_purge(dir, l * 24 * 60 * 60); @@ -306,7 +306,7 @@ void emptytrash() l=atoi(p); if (l <= 0) l=1; - maildir_getnew(".", folder, NULL, NULL); + maildir_getnew(".", folder); if ((dir=maildir_folderdir(".", folder))) { maildir_purge(dir, l * 24 * 60 * 60); diff --git a/imap/pop3dserver.c b/imap/pop3dserver.c index 5e938ad..8e2c71b 100644 --- a/imap/pop3dserver.c +++ b/imap/pop3dserver.c @@ -1204,7 +1204,7 @@ char *p; msglist_l=0; msglist_a=0; purgetmp(); - maildir_getnew(".", INBOX, NULL, NULL); + maildir_getnew(".", INBOX); if (scancur()) { printed(printf("-ERR Maildir invalid (no 'cur' directory)\r\n")); diff --git a/maildir/maildirgetnew.c b/maildir/maildirgetnew.c index 0ef75db..940277f 100644 --- a/maildir/maildirgetnew.c +++ b/maildir/maildirgetnew.c @@ -38,13 +38,9 @@ #include "maildirmisc.h" -static void do_maildir_getnew(const char *, const char *, - void (*)(const char *, void *), - void *); +static void do_maildir_getnew(const char *, const char *); -void maildir_getnew(const char *maildir, const char *folder, - void (*callback_func)(const char *, void *), - void *callback_arg) +void maildir_getnew(const char *maildir, const char *folder) { char *dir=maildir_folderdir(maildir, folder); char *newd, *curd; @@ -58,7 +54,7 @@ char *newd, *curd; { strcat(strcpy(newd, dir), "/new"); strcat(strcpy(curd, dir), "/cur"); - do_maildir_getnew(newd, curd, callback_func, callback_arg); + do_maildir_getnew(newd, curd); } if (newd) free(newd); @@ -66,9 +62,7 @@ char *newd, *curd; free(dir); } -static void do_maildir_getnew(const char *newd, const char *curd, - void (*callback_func)(const char *, void *), - void *callback_arg) +static void do_maildir_getnew(const char *newd, const char *curd) { DIR *dirp; struct dirent *de; @@ -143,9 +137,6 @@ static void do_maildir_getnew(const char *newd, const char *curd, /* otherwise we could have infinite loop */ } - if (callback_func) - (*callback_func)(strrchr(cp, '/')+1, - callback_arg); free(np); free(cp); } diff --git a/maildir/maildirmisc.h b/maildir/maildirmisc.h index e1e7c19..a28df9c 100644 --- a/maildir/maildirmisc.h +++ b/maildir/maildirmisc.h @@ -119,12 +119,7 @@ void maildir_purge(const char *, /* directory */ unsigned); /* time_t to purge */ void maildir_getnew(const char *, /* maildir */ - const char *, /* folder */ - void (*)(const char *, void *), /* Callback function for - ** every moved msg. - */ - void *arg); /* Passthrough callback arg */ - + const char *); /* folder */ /* move messages from new to cur */ int maildir_deletefolder(const char *, /* maildir */ diff --git a/maildir/maildirshared.c b/maildir/maildirshared.c index 7123ce6..736fc39 100644 --- a/maildir/maildirshared.c +++ b/maildir/maildirshared.c @@ -722,10 +722,10 @@ struct stat stat1, stat2; int fd; maildir_purgetmp(dir); /* clean up after myself */ - maildir_getnew(dir, 0, NULL, NULL); + maildir_getnew(dir, 0); maildir_purgetmp(shared); - maildir_getnew(shared, 0, NULL, NULL); + maildir_getnew(shared, 0); /* Figure out if we REALLY need to sync something */ @@ -851,7 +851,7 @@ char *buf=maildir_getlink(filename); } free(cpy); } - + free(buf); return (0); } diff --git a/sqwebmail/ChangeLog b/sqwebmail/ChangeLog index 4cf2868..9a01ba5 100644 --- a/sqwebmail/ChangeLog +++ b/sqwebmail/ChangeLog @@ -1,5 +1,9 @@ 2022-01-17 Sam Varshavchik <mrsam@courier-mta.com> + * Remove unused parameters to maildir_getnew. + + * maildir.c (maildir_checknew): use maildir_getnew. + * Fix minor memory leaks. 6.0.9 diff --git a/sqwebmail/maildir.c b/sqwebmail/maildir.c index e19cbcb..71fa511 100644 --- a/sqwebmail/maildir.c +++ b/sqwebmail/maildir.c @@ -1122,30 +1122,7 @@ static void maildir_checknew(const char *folder, const char *dir) /* Move everything from new to cur */ - dirbuf=alloc_filename(dir, "new", ""); - - for (dirp=opendir(dirbuf); dirp && (dire=readdir(dirp)) != 0; ) - { - char *oldname, *newname; - char *p; - - if (dire->d_name[0] == '.') continue; - - oldname=alloc_filename(dirbuf, dire->d_name, ""); - - newname=malloc(strlen(oldname)+4); - if (!newname) enomem(); - - strcat(strcat(strcpy(newname, dir), "/cur/"), dire->d_name); - p=strrchr(newname, '/'); - if ((p=strchr(p, ':')) != NULL) *p=0; /* Someone screwed up */ - strcat(newname, ":2,"); - rename(oldname, newname); - free(oldname); - free(newname); - } - if (dirp) closedir(dirp); - free(dirbuf); + maildir_getnew(dir, 0); /* Look for any messages mark as deleted. When we delete a message ** we link it into the Trash folder, and mark the original with a T, |
