From b51f6ce6fda5ec1373d1bd44503f1fa368e2eb99 Mon Sep 17 00:00:00 2001 From: dawg Date: Tue, 13 Sep 2011 07:50:39 +0200 Subject: [PATCH] small bug in isemail --- std/net/isemail.d | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/std/net/isemail.d b/std/net/isemail.d index 9eead7088..8210c2a3a 100644 --- a/std/net/isemail.d +++ b/std/net/isemail.d @@ -597,7 +597,7 @@ EmailStatus isEmail (Char) (const(Char)[] email, CheckDns checkDNS = CheckDns.no case Token.cr: case Token.space: case Token.tab: - if (token == Token.cr && (i++ == email.length || email.get(i, e) != Token.lf)) + if (token == Token.cr && (++i == email.length || email.get(i, e) != Token.lf)) { returnStatus ~= EmailStatusCode.errorCrNoLf; break; @@ -1129,6 +1129,9 @@ unittest assert("(\u000D)test@iana.org".isEmail(CheckDns.no, EmailStatusCode.any).statusCode == EmailStatusCode.errorCrNoLf, `No LF after the CR`); + assert("(\u000D".isEmail(CheckDns.no, EmailStatusCode.any).statusCode == EmailStatusCode.errorCrNoLf, + `No LF after the CR`); + assert("test@iana.org(\u000D)".isEmail(CheckDns.no, EmailStatusCode.any).statusCode == EmailStatusCode.errorCrNoLf, `No LF after the CR`);