aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/qmldom/qqmldomreformatter.cpp4
-rw-r--r--tests/auto/qml/qmlformat/data/elisionCommaConfusion.formatted.js1
-rw-r--r--tests/auto/qml/qmlformat/data/elisionCommaConfusion.js3
-rw-r--r--tests/auto/qml/qmlformat/tst_qmlformat.cpp2
4 files changed, 8 insertions, 2 deletions
diff --git a/src/qmldom/qqmldomreformatter.cpp b/src/qmldom/qqmldomreformatter.cpp
index 944bcea9de..d1c70d47c5 100644
--- a/src/qmldom/qqmldomreformatter.cpp
+++ b/src/qmldom/qqmldomreformatter.cpp
@@ -897,8 +897,8 @@ bool ScriptFormatter::visit(FunctionExpression *ast)
bool ScriptFormatter::visit(Elision *ast)
{
for (Elision *it = ast; it; it = it->next) {
- if (ast->commaToken.isValid()) {
- outWithComments(ast->commaToken, ast);
+ if (it->commaToken.isValid()) {
+ outWithComments(it->commaToken, it);
ensureSpaceIfNoComment();
}
}
diff --git a/tests/auto/qml/qmlformat/data/elisionCommaConfusion.formatted.js b/tests/auto/qml/qmlformat/data/elisionCommaConfusion.formatted.js
new file mode 100644
index 0000000000..49f266ae3c
--- /dev/null
+++ b/tests/auto/qml/qmlformat/data/elisionCommaConfusion.formatted.js
@@ -0,0 +1 @@
+[ /*1*/ , /*2*/ , /*3*/ , /*4*/ ];
diff --git a/tests/auto/qml/qmlformat/data/elisionCommaConfusion.js b/tests/auto/qml/qmlformat/data/elisionCommaConfusion.js
new file mode 100644
index 0000000000..e5b01a5381
--- /dev/null
+++ b/tests/auto/qml/qmlformat/data/elisionCommaConfusion.js
@@ -0,0 +1,3 @@
+
+
+[ /*1*/ , /*2*/ , /*3*/ , /*4*/ ];
diff --git a/tests/auto/qml/qmlformat/tst_qmlformat.cpp b/tests/auto/qml/qmlformat/tst_qmlformat.cpp
index c882d58f20..0305a2018e 100644
--- a/tests/auto/qml/qmlformat/tst_qmlformat.cpp
+++ b/tests/auto/qml/qmlformat/tst_qmlformat.cpp
@@ -117,6 +117,8 @@ void TestQmlformat::plainJS_data()
<< "caseWithComment.formatted.js";
QTest::newRow("longStatementList") << "longStatementList.js"
<< "longStatementList.formatted.js";
+ QTest::newRow("elisionCommaConfusion") << "elisionCommaConfusion.js"
+ << "elisionCommaConfusion.formatted.js";
}
void TestQmlformat::plainJS()