New $queue_name variable
[users/jgh/exim.git] / src / exim_monitor / em_menu.c
index 81df0d37c8aa8f8949550f498e4a795ca933fb9b..ccdfa05ba8779bacd2fd56bc75ace918a46d1ef2 100644 (file)
@@ -2,7 +2,7 @@
 *                  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. */
 
 
@@ -148,10 +148,10 @@ call_data = call_data;
 for (i = 0; i < (spool_is_split? 2:1); i++)
   {
   message_subdir[0] = (i != 0)? ((uschar *)client_data)[5] : 0;
-  sprintf(CS buffer, "%s/msglog/%s/%s", spool_directory, message_subdir,
-    (uschar *)client_data);
-  f = fopen(CS buffer, "r");
-  if (f != NULL) break;
+  snprintf(CS buffer, sizeof(buffer), "%s/msglog/%s/%s/%s",
+    spool_directory, queue_name, message_subdir, (uschar *)client_data);
+  if ((f = fopen(CS buffer, "r")))
+    break;
   }
 
 if (f == NULL)
@@ -181,11 +181,11 @@ call_data = call_data;
 
 for (i = 0; i < (spool_is_split? 2:1); i++)
   {
-  message_subdir[0] = (i != 0)? ((uschar *)client_data)[5] : 0;
-  sprintf(CS buffer, "%s/input/%s/%s-D", spool_directory, message_subdir,
-    (uschar *)client_data);
-  f = fopen(CS buffer, "r");
-  if (f != NULL) break;
+  message_subdir[0] = i != 0 ? ((uschar *)client_data)[5] : 0;
+  snprintf(CS buffer, sizeof(buffer), "%s/input/%s/%s/%s-D",
+    spool_directory, queue_name, message_subdir, (uschar *)client_data);
+  if ((f = fopen(CS buffer, "r")))
+    break;
   }
 
 if (f == NULL)