Module: wine Branch: master Commit: f8e3e92be3c979c52911bea326c28be9755cdfcf URL: http://source.winehq.org/git/wine.git/?a=commit;h=f8e3e92be3c979c52911bea326...
Author: Jacek Caban jacek@codeweavers.com Date: Mon Dec 12 14:43:35 2011 +0100
jscript: Don't use EXPR_NEWREF in forin_statement_event.
---
dlls/jscript/engine.c | 2 +- dlls/jscript/tests/lang.js | 5 +++++ 2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/dlls/jscript/engine.c b/dlls/jscript/engine.c index 0f9263f..7b85040 100644 --- a/dlls/jscript/engine.c +++ b/dlls/jscript/engine.c @@ -1012,7 +1012,7 @@ HRESULT forin_statement_eval(script_ctx_t *ctx, statement_t *_stat, return_type_ return hres; }
- hres = expr_eval(ctx, stat->in_expr, EXPR_NEWREF, &rt->ei, &exprval); + hres = expr_eval(ctx, stat->in_expr, 0, &rt->ei, &exprval); if(FAILED(hres)) return hres;
diff --git a/dlls/jscript/tests/lang.js b/dlls/jscript/tests/lang.js index bbd2c42..5677d32 100644 --- a/dlls/jscript/tests/lang.js +++ b/dlls/jscript/tests/lang.js @@ -803,6 +803,11 @@ obj1 = new Object(); for(obj1.nonexistent; tmp; tmp = false) ok(!("nonexistent" in obj1), "nonexistent added to obj1");
+obj1 = new Object(); +for(tmp in obj1.nonexistent) + ok(false, "for(tmp in obj1.nonexistent) called with tmp = " + tmp); +ok(!("nonexistent" in obj1), "nonexistent added to obj1 by for..in loop"); + ok((void 1) === undefined, "(void 1) !== undefined");
var inobj = new Object();