Fix infinite look when constructing a Function with no arguments
authorLars Knoll <lars.knoll@digia.com>
Tue, 11 Dec 2012 18:34:48 +0000 (19:34 +0100)
committerErik Verbruggen <erik.verbruggen@digia.com>
Tue, 11 Dec 2012 09:49:50 +0000 (10:49 +0100)
Change-Id: Ic64d8f68678df3a6d71b0681ce32ad8f2a8802fe
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
qv4ecmaobjects.cpp

index 88acebf..b7d2e88 100644 (file)
@@ -1950,13 +1950,14 @@ Value FunctionCtor::construct(ExecutionContext *ctx)
 
     QString args;
     QString body;
-    if (ctx->argumentCount > 0)
+    if (ctx->argumentCount > 0) {
         body = ctx->argument(ctx->argumentCount - 1).toString(ctx)->toQString();
 
-    for (uint i = 0; i < ctx->argumentCount - 1; ++i) {
-        if (i)
-            args += QLatin1String(", ");
-        args += ctx->argument(i).toString(ctx)->toQString();
+        for (uint i = 0; i < ctx->argumentCount - 1; ++i) {
+            if (i)
+                args += QLatin1String(", ");
+            args += ctx->argument(i).toString(ctx)->toQString();
+        }
     }
 
     QString function = QLatin1String("function(") + args + QLatin1String("){") + body + QLatin1String("}");