Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-136998

qmllint crashes when checking required properties

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P1: Critical
    • 6.10
    • 6.10
    • QML: Tooling
    • None

    Description

      The attached file triggers a segmentation fault with the current qmllint from dev:

      ==111572==ERROR: AddressSanitizer: SEGV on unknown address 0x0000000000b8 (pc 0x70ecd0f8c900 bp 0x7ffffc4fc4d0 sp 0x7ffffc4fc100 T0)
      ==111572==The signal is caused by a READ memory access.
      ==111572==Hint: address points to the zero page.
      #0 0x70ecd0f8c900 in QArrayDataPointer<char16_t>::QArrayDataPointer(QArrayDataPointer<char16_t> const&) /home/fabian/projects/qtdev/qtbase/src/corelib/tools/qarraydatapointer.h:38
      #1 0x70ecd0f8c900 in QString::QString(QString const&) /home/fabian/projects/qtdev/qtbase/src/corelib/text/qstring.h:1375:51
      #2 0x70ecd0f8c900 in QQmlJSScope::filePath() const /home/fabian/projects/qtdev/qtdeclarative/src/qmlcompiler/qqmljsscope_p.h:203:39
      #3 0x70ecd0f8c900 in QQmlJSImportVisitor::checkRequiredProperties()::$_4::operator()(QDeferredSharedPointer<QQmlJSScope const> const&, QString const&, QDeferredSharedPointer<QQmlJSScope const> const&, QDeferredSharedPointer<QQmlJSScope const> const&, QDeferredSharedPointer<QQmlJSScope const> const&) const /home/fabian/projects/qtdev/qtdeclarative/src/qmlcompiler/qqmljsimportvisitor.cpp:1061:47
      #4 0x70ecd0f8c900 in QQmlJSImportVisitor::checkRequiredProperties() /home/fabian/projects/qtdev/qtdeclarative/src/qmlcompiler/qqmljsimportvisitor.cpp:1121:25
      #5 0x70ecd0f6950a in QQmlJSImportVisitor::endVisit(QQmlJS::AST::UiProgram*) /home/fabian/projects/qtdev/qtdeclarative/src/qmlcompiler/qqmljsimportvisitor.cpp:529:5
      #6 0x70eccfe53916 in QQmlJS::AST::UiProgram::accept0(QQmlJS::AST::BaseVisitor*) /home/fabian/projects/qtdev/qtdeclarative/src/qml/parser/qqmljsast.cpp:1196:14
      #7 0x70ecd12fd6e3 in QQmlJS::AST::Node::accept(QQmlJS::AST::BaseVisitor*) /home/fabian/projects/qtdev/qtdeclarative/src/qml/parser/qqmljsast_p.h:273:17
      #8 0x70ecd12fd6e3 in QQmlJSTypeResolver::init(QQmlJSImportVisitor*, QQmlJS::AST::Node*) /home/fabian/projects/qtdev/qtdeclarative/src/qmlcompiler/qqmljstyperesolver.cpp:191:18
      #9 0x70ecd10ae656 in QQmlJSLinter::lintFile(QString const&, QString const*, bool, QJsonArray*, QList<QString> const&, QList<QString> const&, QList<QString> const&, QList<QQmlJS::LoggerCategory> const&) /home/fabian/projects/qtdev/qtdeclarative/src/qmlcompiler/qqmljslinter.cpp:643:18
      #10 0x5ce434409dc4 in main /home/fabian/projects/qtdev/qtdeclarative/tools/qmllint/main.cpp:431:33
      #11 0x70eccca376b4 in __libc_start_call_main /usr/src/debug/glibc/glibc/csu/../sysdeps/nptl/libc_start_call_main.h:58:16
      #12 0x70eccca37768 in __libc_start_main /usr/src/debug/glibc/glibc/csu/../csu/libc-start.c:360:3
      #13 0x5ce4342b73a4 in _start (/home/fabian/new/qtrel/qtbase/bin/qmllint+0x883a4) (BuildId: 1ef24ec42a3e97e0685cdc06494ce82ee76e0649)

      This can be reproduced by running the file through qmllint without any arguments.

      Attachments

        Issue Links

          For Gerrit Dashboard: QTBUG-136998
          # Subject Branch Project Status CR V

          Activity

            People

              olivier.decanniere Olivier De Cannière
              fabiankosmale Fabian Kosmale
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There is 1 open Gerrit change