Filters: fix "vacation" in Exim filter. Bug 2593
[exim.git] / src / src / transports / autoreply.c
index ce7f7e1e2a42e2d628c4541a990b796b7fb49b67..865abbf4f555b73b005817027da9a001fc557be2 100644 (file)
@@ -474,11 +474,10 @@ if (oncelog && *oncelog && to)
   else
     {
     EXIM_DATUM key_datum, result_datum;
-    uschar * dirname = string_copy(oncelog);
-    uschar * s;
+    uschar * dirname, * s;
 
-debug_printf("%s %d: oncelog '%s'\n", __FUNCTION__, __LINE__, oncelog);
-    if ((s = Ustrrchr(dirname, '/'))) *s = '\0';
+    dirname = (s = Ustrrchr(oncelog, '/'))
+      ? string_copyn(oncelog, s - oncelog) : NULL;
     EXIM_DBOPEN(oncelog, dirname, O_RDWR|O_CREAT, ob->mode, &dbm_file);
     if (!dbm_file)
       {