From: Jacek Caban Subject: jscript: Fixed parsing /=/ regexp Message-Id: <4F799183.5090803@codeweavers.com> Date: Mon, 02 Apr 2012 13:46:11 +0200 --- dlls/jscript/lex.c | 3 +-- dlls/jscript/tests/regexp.js | 3 +++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/jscript/lex.c b/dlls/jscript/lex.c index dcdb3f3..4cf4d41 100644 --- a/dlls/jscript/lex.c +++ b/dlls/jscript/lex.c @@ -963,8 +963,7 @@ literal_t *parse_regexp(parser_ctx_t *ctx) TRACE("\n"); - while(*ctx->ptr != '/') - ctx->ptr--; + while(*--ctx->ptr != '/'); re = ++ctx->ptr; while(ctx->ptr < ctx->end && *ctx->ptr != '/') { diff --git a/dlls/jscript/tests/regexp.js b/dlls/jscript/tests/regexp.js index e9f26ef..c7f9363 100644 --- a/dlls/jscript/tests/regexp.js +++ b/dlls/jscript/tests/regexp.js @@ -580,4 +580,7 @@ ok(i === 1, "String.prototype.seatch.apply(obj, 'b') = " + i); i = " undefined ".search(); ok(i === null, "' undefined '.search() = " + i); +tmp = "=)".replace(/=/, "?"); +ok(tmp === "?)", "'=)'.replace(/=/, '?') = " + tmp); + reportSuccess();