Expansions: fix forced-fail of extract. Bug 1815
[exim.git] / src / exim_monitor / em_menu.c
index 6975e709dd91f9281d27f705467f800a7842a9db..51a952e9920bdff1270322717f1a621b773004d4 100644 (file)
@@ -2,7 +2,7 @@
 *                  Exim Monitor                  *
 *************************************************/
 
 *                  Exim Monitor                  *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2009 */
+/* Copyright (c) University of Cambridge 1995 - 2016 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 
 /* See the file NOTICE for conditions of use and distribution. */
 
 
@@ -556,6 +556,7 @@ static void addrecipAction(Widget w, XtPointer client_data, XtPointer call_data)
 w = w;      /* Keep picky compilers happy */
 call_data = call_data;
 Ustrncpy(actioned_message, client_data, 24);
 w = w;      /* Keep picky compilers happy */
 call_data = call_data;
 Ustrncpy(actioned_message, client_data, 24);
+actioned_message[23] = '\0';
 action_required = US"-Mar";
 dialog_ref_widget = menushell;
 create_dialog(US"Recipient address to add?", US"");
 action_required = US"-Mar";
 dialog_ref_widget = menushell;
 create_dialog(US"Recipient address to add?", US"");
@@ -572,6 +573,7 @@ static void markdelAction(Widget w, XtPointer client_data, XtPointer call_data)
 w = w;      /* Keep picky compilers happy */
 call_data = call_data;
 Ustrncpy(actioned_message, client_data, 24);
 w = w;      /* Keep picky compilers happy */
 call_data = call_data;
 Ustrncpy(actioned_message, client_data, 24);
+actioned_message[23] = '\0';
 action_required = US"-Mmd";
 dialog_ref_widget = menushell;
 create_dialog(US"Recipient address to mark delivered?", US"");
 action_required = US"-Mmd";
 dialog_ref_widget = menushell;
 create_dialog(US"Recipient address to mark delivered?", US"");
@@ -602,6 +604,7 @@ uschar *sender;
 w = w;      /* Keep picky compilers happy */
 call_data = call_data;
 Ustrncpy(actioned_message, client_data, 24);
 w = w;      /* Keep picky compilers happy */
 call_data = call_data;
 Ustrncpy(actioned_message, client_data, 24);
+actioned_message[23] = '\0';
 q = find_queue(actioned_message, queue_noop, 0);
 sender = !q ? US"" : q->sender[0] == 0 ? US"<>" : q->sender;
 action_required = US"-Mes";
 q = find_queue(actioned_message, queue_noop, 0);
 sender = !q ? US"" : q->sender[0] == 0 ? US"<>" : q->sender;
 action_required = US"-Mes";