diff --git a/include/extern.h b/include/extern.h index 41b024d23..3d9c6c5f4 100644 --- a/include/extern.h +++ b/include/extern.h @@ -1070,6 +1070,7 @@ E void FDECL(nocmov, (int x, int y)); #ifdef MAIL #ifdef UNIX +E void NDECL(free_maildata); E void NDECL(getmailstatus); E void NDECL(ck_server_admin_msg); #endif diff --git a/src/mail.c b/src/mail.c index 7c3546835..9c09fdc47 100644 --- a/src/mail.c +++ b/src/mail.c @@ -80,6 +80,13 @@ static long laststattime; #define MAILPATH "/usr/mail/" #endif +void +free_maildata() +{ + if (mailbox) + free(mailbox); +} + void getmailstatus() { diff --git a/src/save.c b/src/save.c index f1e4ecf7b..93b0d06c5 100644 --- a/src/save.c +++ b/src/save.c @@ -1329,6 +1329,9 @@ free_dungeons() void freedynamicdata() { +#if defined(UNIX) && defined(MAIL) + free_maildata(); +#endif unload_qtlist(); free_menu_coloring(); free_invbuf(); /* let_to_name (invent.c) */