diff options
Diffstat (limited to 'tools/qmlformat')
-rw-r--r-- | tools/qmlformat/dumpastvisitor.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/tools/qmlformat/dumpastvisitor.cpp b/tools/qmlformat/dumpastvisitor.cpp index 57a1ea9fcb..2b7b1c7c2f 100644 --- a/tools/qmlformat/dumpastvisitor.cpp +++ b/tools/qmlformat/dumpastvisitor.cpp @@ -603,7 +603,8 @@ bool needsSemicolon(int kind) QString DumpAstVisitor::parseBlock(Block *block, bool hasNext, bool allowBraceless) { - bool hasOneLine = (block->statements == nullptr || block->statements->next == nullptr) && allowBraceless; + bool hasOneLine = + (block->statements != nullptr && block->statements->next == nullptr) && allowBraceless; QString result = hasOneLine ? "\n" : "{\n"; m_indentLevel++; @@ -619,6 +620,8 @@ QString DumpAstVisitor::parseBlock(Block *block, bool hasNext, bool allowBracele if (block->statements) { m_blockNeededBraces |= !needsSemicolon(block->statements->statement->kind) || (block->statements->next != nullptr); + } else { + m_blockNeededBraces = true; } return result; @@ -864,6 +867,9 @@ QString DumpAstVisitor::parseStatementList(StatementList *list) { QString result = ""; + if (list == nullptr) + return ""; + result += getOrphanedComments(list); for (auto *item = list; item != nullptr; item = item->next) { |