DKIM: use string-allocate facilities for DNS lookup
[exim.git] / src / src / mime.c
index 36737e9eb235a1e20967ee54e2755ea17b6566db..5d3505a7cd60c08fd45bef737e9d2cf42ac2c1ab 100644 (file)
@@ -4,7 +4,7 @@
 
 /* Copyright (c) Tom Kistner <tom@duncanthrax.net> 2004, 2015
  * License: GPL
- * Copyright (c) The Exim Maintainers 2016
+ * Copyright (c) The Exim Maintainers 2017
  */
 
 #include "exim.h"
@@ -490,6 +490,7 @@ while ((c = *fname))
     val = string_catn(val, fname++, 1);
 
 val = string_catn(val, US"?=", 2);
+*len = val->ptr;
 return string_from_gstring(val);
 }
 
@@ -646,9 +647,7 @@ while(1)
                  NULL, &err_msg);
                DEBUG(D_acl) debug_printf_indent("MIME:    plain-name %s\n", temp_string);
 
-               size = Ustrlen(temp_string);
-
-               if (size == slen)
+               if (!temp_string || (size = Ustrlen(temp_string))  == slen)
                  decoding_failed = TRUE;
                else
                  /* build up a decoded filename over successive