X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsrc%2Fauths%2Fget_data.c;h=8a05a82e4481922e8076dc285483e667b217d699;hb=23f2e90d7982f35e7a94a9df3128c1e574a26770;hp=37dcd37cc54a43ed6fe23780eb58df3ad46d822b;hpb=a310a8d09c56e6049714ae4e4070c16ecb6aa2b1;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/src/src/auths/get_data.c b/src/src/auths/get_data.c index 37dcd37cc..8a05a82e4 100644 --- a/src/src/auths/get_data.c +++ b/src/src/auths/get_data.c @@ -174,11 +174,7 @@ for (int i = 0; i < len; i++) if (ss[i+1] != '^') ss[i] = 0; else - { - i++; - len--; - memmove(ss + i, ss + i + 1, len - i); - } + if (--len > ++i) memmove(ss + i, ss + i + 1, len - i); /* The first string is attached to the AUTH command; others are sent unembellished. */ @@ -197,7 +193,7 @@ else has succeeded. There may be more data to send, but is there any point in provoking an error here? */ -if (smtp_read_response(sx, US buffer, buffsize, '2', timeout)) +if (smtp_read_response(sx, buffer, buffsize, '2', timeout)) { *inout = NULL; return OK;