summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/src/functions.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/src/functions.h b/src/src/functions.h
index f8e0cd77e..07df8755b 100644
--- a/src/src/functions.h
+++ b/src/src/functions.h
@@ -788,7 +788,10 @@ static inline uschar *
string_copyn_taint_trc(const uschar * s, unsigned len,
const void * proto_mem, const char * func, int line)
{
-uschar * ss = store_get_3(len + 1, proto_mem, func, line);
+uschar * ss;
+unsigned slen = Ustrlen(s);
+if (len > slen) len = slen;
+ss = store_get_3(len + 1, proto_mem, func, line);
memcpy(ss, s, len);
ss[len] = '\0';
return ss;