diff --git a/dlls/jscript/lex.c b/dlls/jscript/lex.c index dcdb3f37e19..4cf4d412a26 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 e9f26ef8476..c7f93639cb1 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();