Jacek Caban : jscript: Don't unescape '\v'.
Alexandre Julliard
julliard at winehq.org
Wed Dec 29 11:14:54 CST 2010
Module: wine
Branch: master
Commit: 48202ee09ea0ab7a93920252276e3bf8cc170888
URL: http://source.winehq.org/git/wine.git/?a=commit;h=48202ee09ea0ab7a93920252276e3bf8cc170888
Author: Jacek Caban <jacek at codeweavers.com>
Date: Wed Dec 29 16:01:56 2010 +0100
jscript: Don't unescape '\v'.
---
dlls/jscript/lex.c | 3 ---
dlls/jscript/tests/lang.js | 24 ++++++++++++++++++++++++
2 files changed, 24 insertions(+), 3 deletions(-)
diff --git a/dlls/jscript/lex.c b/dlls/jscript/lex.c
index 0329fa4..723f0ef 100644
--- a/dlls/jscript/lex.c
+++ b/dlls/jscript/lex.c
@@ -266,9 +266,6 @@ static BOOL unescape(WCHAR *str)
case 'n':
c = '\n';
break;
- case 'v':
- c = '\v';
- break;
case 'f':
c = '\f';
break;
diff --git a/dlls/jscript/tests/lang.js b/dlls/jscript/tests/lang.js
index bdf039a..5a361d7 100644
--- a/dlls/jscript/tests/lang.js
+++ b/dlls/jscript/tests/lang.js
@@ -942,6 +942,30 @@ ok((Infinity != NaN) === true, "(Infinity != NaN) !== true");
ok((Infinity != NaN) === true, "(Infinity != NaN) !== true");
ok((0 == NaN) === false, "(0 === NaN) != false");
+// escape tests
+var escapeTests = [
+ ["\'", "\\'", 39],
+ ["\"", "\\\"", 34],
+ ["\\", "\\\\", 92],
+ ["\b", "\\b", 8],
+ ["\t", "\\t", 9],
+ ["\n", "\\n", 10],
+ ["\v", "\\v", 118],
+ ["\f", "\\f", 12],
+ ["\r", "\\r", 13],
+ ["\xf3", "\\xf3", 0xf3],
+ ["\u1234", "\\u1234", 0x1234],
+ ["\a", "\\a", 97],
+ ["\?", "\\?", 63]
+];
+
+for(i=0; i<escapeTests.length; i++) {
+ tmp = escapeTests[i][0].charCodeAt(0);
+ ok(tmp === escapeTests[i][2], "escaped '" + escapeTests[i][1] + "' = " + tmp + " expected " + escapeTests[i][2]);
+}
+
+tmp = !+"\v1";
+ok(tmp === true, '!+"\v1" = ' + tmp);
ok(typeof(testFunc2) === "function", "typeof(testFunc2) = " + typeof(testFunc2));
tmp = testFunc2(1);
More information about the wine-cvs
mailing list