Pascal Peridont 18 年之前
父節點
當前提交
ed9b81164b
共有 1 個文件被更改,包括 6 次插入6 次删除
  1. 6 6
      std/mtwin/mail/imap/Envelope.hx

+ 6 - 6
std/mtwin/mail/imap/Envelope.hx

@@ -111,20 +111,20 @@ class Envelope {
 					closeParenthesis();
 					closeParenthesis();
 				case "\"":
 				case "\"":
 					var b = new StringBuf();
 					var b = new StringBuf();
-					var prev = null;
+					var escape = false;
 					while( p < len ){
 					while( p < len ){
 						var c2 = s.charAt(p);
 						var c2 = s.charAt(p);
 						p++;
 						p++;
-						if( c2 == "\"" && prev != "\\" )
+						if( c2 == "\"" && !escape )
 							break;
 							break;
+						escape = (c2 == "\\" && !escape );
+						if( !escape )
 						b.add( c2 );
 						b.add( c2 );
-						prev = c2;
 					}
 					}
-					addElement( b.toString().split("\\\"").join("\"").split("\\\\").join("\\") );
+					addElement( b.toString() );
 				case " ":
 				case " ":
-					if( parCount == 0 ){
+					if( parCount == 0 )
 						argPos++;
 						argPos++;
-					}
 				default:
 				default:
 					var b = new StringBuf();
 					var b = new StringBuf();
 					p--;
 					p--;