Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-81778 Fix floating point exceptions in Qt
  3. QTBUG-81777

Floating point exception in QQuickPath::createPath()

    XMLWordPrintable

Details

    • Technical task
    • Resolution: Unresolved
    • P2: Important
    • None
    • None

    Description

      When run with feenableexcept(FE_INVALID); (included from fenv.h), the following code results in a floating point exception:

      import QtQuick.Window 2.14
      
      Window {
          width: 400
          height: 200
          visible: true
      
          Path {}
      }
      
      13:52:53: Starting /home/mitch/dev/temp/quick-qt5_14_debug_7ef6e1-Debug/quick ...
      QML debugging is enabled. Only use this in a safe environment.
      ASAN:DEADLYSIGNAL
      =================================================================
      ==3898==ERROR: AddressSanitizer: FPE on unknown address 0x7f0dd24419d3 (pc 0x7f0dd24419d3 bp 0x7ffe03c52f10 sp 0x7ffe03c52af0 T0)
          #0 0x7f0dd24419d2 in QQuickPath::createPath(QPointF const&, QPointF const&, QStringList const&, double&, QList<QQuickPath::AttributePoint>&, bool*) /home/mitch/dev/qt5.14/qtdeclarative/src/quick/util/qquickpath.cpp:513
          #1 0x7f0dd244050c in QQuickPath::processPath() /home/mitch/dev/qt5.14/qtdeclarative/src/quick/util/qquickpath.cpp:417
          #2 0x7f0dd24430ea in QQuickPath::componentComplete() /home/mitch/dev/qt5.14/qtdeclarative/src/quick/util/qquickpath.cpp:610
          #3 0x7f0deda0ed8d in QQmlObjectCreator::finalize(QQmlInstantiationInterrupt&) /home/mitch/dev/qt5.14/qtdeclarative/src/qml/qml/qqmlobjectcreator.cpp:1410
          #4 0x7f0ded8a541e in QQmlComponentPrivate::complete(QQmlEnginePrivate*, QQmlComponentPrivate::ConstructionState*) /home/mitch/dev/qt5.14/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:969
          #5 0x7f0ded8a5745 in QQmlComponentPrivate::completeCreate() /home/mitch/dev/qt5.14/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:1005
          #6 0x7f0ded8a564b in QQmlComponent::completeCreate() /home/mitch/dev/qt5.14/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:997
          #7 0x7f0ded8a446f in QQmlComponent::create(QQmlContext*) /home/mitch/dev/qt5.14/qtdeclarative/src/qml/qml/qqmlcomponent.cpp:811
          #8 0x7f0ded9dfc63 in QQmlApplicationEnginePrivate::finishLoad(QQmlComponent*) /home/mitch/dev/qt5.14/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:134
          #9 0x7f0ded9df761 in QQmlApplicationEnginePrivate::startLoad(QUrl const&, QByteArray const&, bool) /home/mitch/dev/qt5.14/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:118
          #10 0x7f0ded9e047a in QQmlApplicationEngine::load(QUrl const&) /home/mitch/dev/qt5.14/qtdeclarative/src/qml/qml/qqmlapplicationengine.cpp:264
          #11 0x560ab453d3f0 in main ../quick/main.cpp:33
          #12 0x7f0deb12bb96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
          #13 0x560ab453d179 in _start (/home/mitch/dev/temp/quick-qt5_14_debug_7ef6e1-Debug/quick+0x8179)
      
      AddressSanitizer can not provide additional info.
      SUMMARY: AddressSanitizer: FPE /home/mitch/dev/qt5.14/qtdeclarative/src/quick/util/qquickpath.cpp:513 in QQuickPath::createPath(QPointF const&, QPointF const&, QStringList const&, double&, QList<QQuickPath::AttributePoint>&, bool*)
      ==3898==ABORTING
      13:52:54: /home/mitch/dev/temp/quick-qt5_14_debug_7ef6e1-Debug/quick exited with code 1
      

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            qt.team.quick.subscriptions Qt Quick and Widgets Team
            mitch_curtis Mitch Curtis
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes