Fix NumberCtor::construct
authorLars Knoll <lars.knoll@digia.com>
Wed, 12 Dec 2012 21:05:42 +0000 (22:05 +0100)
committerSimon Hausmann <simon.hausmann@digia.com>
Wed, 12 Dec 2012 23:08:39 +0000 (00:08 +0100)
Change-Id: I4714a447d2a4fc71e73c7492fc8ed939efc0192f
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
qv4ecmaobjects.cpp

index bd360ee..fc428e6 100644 (file)
@@ -1309,17 +1309,15 @@ NumberCtor::NumberCtor(ExecutionContext *scope)
 
 Value NumberCtor::construct(ExecutionContext *ctx)
 {
-    double d = 0;
-    if (!ctx->argument(0).isUndefined())
-        d = ctx->argument(0).toNumber(ctx);
+    double d = ctx->argumentCount ? ctx->argument(0).toNumber(ctx) : 0;
     ctx->thisObject = Value::fromObject(ctx->engine->newNumberObject(Value::fromDouble(d)));
     return ctx->thisObject;
 }
 
 Value NumberCtor::call(ExecutionContext *ctx)
 {
-    double value = ctx->argumentCount ? ctx->argument(0).toNumber(ctx) : 0;
-    return Value::fromDouble(value);
+    double d = ctx->argumentCount ? ctx->argument(0).toNumber(ctx) : 0;
+    return Value::fromDouble(d);
 }
 
 void NumberPrototype::init(ExecutionContext *ctx, const Value &ctor)