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

QtPDF: crash when pinch-zooming on a PDF page with text on iOS

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 6.4.0 RC1, 6.5.0 Beta1
    • 6.4.0 Beta4
    • PDF
    • None
    • iOS/tvOS/watchOS
    • c1dc52321c (qt/qtwebengine/dev) b21fb54f98 (qt/qtwebengine/6.4) b21fb54f98 (qt/tqtc-qtwebengine/6.4) 34cfcf8529 (qt/qtwebengine/6.4.0) 34cfcf8529 (qt/tqtc-qtwebengine/6.4.0)

    Description

      In QQuickPdfSelection::pageText(), m_document was null.

                                                                                                                                                                                                                                                                                                                                                                                                                
      1  QQuickPdfDocument::document() const                                                                                  qquickpdfdocument.cpp            159  
      2  QQuickPdfSelection::pageText() const                                                                                 qquickpdfselection.cpp           326  
      3  QQuickPdfSelection::inputMethodQuery(Qt::InputMethodQuery) const                                                     qquickpdfselection.cpp           286  
      4  QQuickItem::event(QEvent *)                                                                                          qquickitem.cpp                   8670 
      5  QCoreApplicationPrivate::notify_helper(QObject *, QEvent *)                                                          qcoreapplication.cpp             1193 
      6  doNotify(QObject *, QEvent *)                                                                                        qcoreapplication.cpp             1122 
      7  QCoreApplication::notify(QObject *, QEvent *)                                                                        qcoreapplication.cpp             1105 
      8  QGuiApplication::notify(QObject *, QEvent *)                                                                         qguiapplication.cpp              1928 
      9  QCoreApplication::notifyInternal2(QObject *, QEvent *)                                                               qcoreapplication.cpp             1026 
      10 QCoreApplication::sendEvent(QObject *, QEvent *)                                                                     qcoreapplication.cpp             1442 
      11 ImeState::update(QFlags<Qt::InputMethodQuery>)                                                                       qiosinputcontext.mm              272  
      12 QIOSInputContext::update(QFlags<Qt::InputMethodQuery>)                                                               qiosinputcontext.mm              645  
      13 QIOSInputContext::reset()                                                                                            qiosinputcontext.mm              720  
      14 QIOSInputContext::setFocusObject(QObject *)                                                                          qiosinputcontext.mm              598  
      15 QIOSInputContext::update(QFlags<Qt::InputMethodQuery>)                                                               qiosinputcontext.mm              637  
      16 QInputMethod::update(QFlags<Qt::InputMethodQuery>)                                                                   qinputmethod.cpp                 291  
      17 QQuickItem::updateInputMethod(QFlags<Qt::InputMethodQuery>)                                                          qquickitem.cpp                   5574 
      18 QQuickDeliveryAgentPrivate::updateFocusItemTransform()                                                               qquickdeliveryagent.cpp          605  
      19 QQuickDeliveryAgentPrivate::setFocusInScope(QQuickItem *, QQuickItem *, Qt::FocusReason, QFlags<QQuickDeliveryAgentP qquickdeliveryagent.cpp          412  
      20 QQuickItem::setParentItem(QQuickItem *)                                                                              qquickitem.cpp                   2742 
      21 QQuickTableViewPrivate::initItemCallback(int, QObject *)                                                             qquicktableview.cpp              3479 
      22 QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<int, QObject *>, void, void (QQuickTableViewPri qobjectdefs_impl.h               135  
      23 void QtPrivate::FunctionPointer<void (QQuickTableViewPrivate:: *)(int, QObject *)>::call<QtPrivate::List<int, QObjec qobjectdefs_impl.h               172  
      24 QtPrivate::QPrivateSlotObject<void (QQuickTableViewPrivate:: *)(int, QObject *), QtPrivate::List<int, QObject *>, vo qobject_p.h                      285  
      25 QtPrivate::QSlotObjectBase::call(QObject *, void * *)                                                                qobjectdefs_impl.h               363  
      26 void doActivate<false>(QObject *, int, void * *)                                                                     qobject.cpp                      3972 
      27 QMetaObject::activate(QObject *, QMetaObject const *, int, void * *)                                                 qobject.cpp                      4032 
      28 QQmlInstanceModel::initItem(int, QObject *)                                                                          moc_qqmlobjectmodel_p.cpp        362  
      29 QQmlTableInstanceModelIncubationTask::setInitialState(QObject *)                                                     qqmltableinstancemodel.cpp       487  
      30 QQmlIncubatorPrivate::incubate(QQmlInstantiationInterrupt&)                                                          qqmlincubator.cpp                298  
      31 QQmlEnginePrivate::incubate(QQmlIncubator&, QQmlRefPointer<QQmlContextData> const&)                                  qqmlincubator.cpp                54   
      32 QQmlComponentPrivate::incubateObject(QQmlIncubator *, QQmlComponent *, QQmlEngine *, QQmlRefPointer<QQmlContextData> qqmlcomponent.cpp                1282 
      33 QQmlTableInstanceModel::incubateModelItem(QQmlDelegateModelItem *, QQmlIncubator::IncubationMode)                    qqmltableinstancemodel.cpp       309  
      34 QQmlTableInstanceModel::object(int, QQmlIncubator::IncubationMode)                                                   qqmltableinstancemodel.cpp       139  
      35 QQuickTableViewPrivate::createFxTableItem(QPoint const&, QQmlIncubator::IncubationMode)                              qquicktableview.cpp              1911 
      36 QQuickTableViewPrivate::loadFxTableItem(QPoint const&, QQmlIncubator::IncubationMode)                                qquicktableview.cpp              1969 
      37 QQuickTableViewPrivate::processLoadRequest()                                                                         qquicktableview.cpp              2616 
      38 QQuickTableViewPrivate::loadEdge(Qt::Edge, QQmlIncubator::IncubationMode)                                            qquicktableview.cpp              3106 
      39 QQuickTableViewPrivate::loadAndUnloadVisibleEdges(QQmlIncubator::IncubationMode)                                     qquicktableview.cpp              3146 
      40 QQuickTableViewPrivate::updateTable()                                                                                qquicktableview.cpp              3294 
      41 QQuickTableViewPrivate::updateTableRecursive()                                                                       qquicktableview.cpp              3236 
      42 QQuickTableView::viewportMoved(QFlags<Qt::Orientation>)                                                              qquicktableview.cpp              4895 
      43 QQuickFlickablePrivate::itemGeometryChanged(QQuickItem *, QQuickGeometryChange, QRectF const&)                       qquickflickable.cpp              331  
      44 QQuickItem::geometryChange(QRectF const&, QRectF const&)::$_2::operator()(QQuickItemPrivate::ChangeListener const&)  qquickitem.cpp                   3767 
      45 void QQuickItemPrivate::notifyChangeListeners<QQuickItem::geometryChange(QRectF const&, QRectF const&)::$_2>(QFlags< qquickitem_p.h                   350  
      46 QQuickItem::geometryChange(QRectF const&, QRectF const&)                                                             qquickitem.cpp                   3765 
      47 QQuickItem::setY(double)                                                                                             qquickitem.cpp                   6952 
      48 QQuickFlickablePrivate::setViewportY(double)                                                                         qquickflickable.cpp              1815 
      49 QQuickTimeLineValueProxy<QQuickFlickablePrivate>::setValue(double)                                                   qquicktimeline_p_p.h             152  
      50 QQuickTimeLinePrivate::advance(int)                                                                                  qquicktimeline.cpp               792  
      51 QQuickTimeLine::updateCurrentTime(int)                                                                               qquicktimeline.cpp               668  
      52 QAbstractAnimationJob::setCurrentTime(int)                                                                           qabstractanimationjob.cpp        479  
      53 QQmlAnimationTimer::updateAnimationsTime(long long)                                                                  qabstractanimationjob.cpp        100  
      54 QUnifiedTimer::updateAnimationTimers()                                                                               qabstractanimation.cpp           288  
      55 QAnimationDriver::advanceAnimation()                                                                                 qabstractanimation.cpp           755  
      56 QSGAnimationDriver::advance()                                                                                        qsgcontext.cpp                   192  
      57 QSGThreadedRenderLoop::polishAndSync(QSGThreadedRenderLoop::Window *, bool)                                          qsgthreadedrenderloop.cpp        1606 
      58 QSGThreadedRenderLoop::handleUpdateRequest(QQuickWindow *)                                                           qsgthreadedrenderloop.cpp        1347 
      59 QQuickWindow::event(QEvent *)                                                                                        qquickwindow.cpp                 1521 
      60 QCoreApplicationPrivate::notify_helper(QObject *, QEvent *)                                                          qcoreapplication.cpp             1193 
      61 doNotify(QObject *, QEvent *)                                                                                        qcoreapplication.cpp             1122 
      62 QCoreApplication::notify(QObject *, QEvent *)                                                                        qcoreapplication.cpp             1105 
      63 QGuiApplication::notify(QObject *, QEvent *)                                                                         qguiapplication.cpp              1928 
      64 QCoreApplication::notifyInternal2(QObject *, QEvent *)                                                               qcoreapplication.cpp             1026 
      65 QCoreApplication::sendEvent(QObject *, QEvent *)                                                                     qcoreapplication.cpp             1442 
      66 QPlatformWindow::deliverUpdateRequest()                                                                              qplatformwindow.cpp              774  
      67 QIOSScreen::deliverUpdateRequests() const                                                                            qiosscreen.mm                    391  
      68 invocation function for block in QIOSScreen::QIOSScreen(UIScreen *)                                                  qiosscreen.mm                    273  
      69 -[NSObject(DisplayLinkBlock) invokeDisplayLinkBlock:]                                                                qiosscreen.mm                    39   
      70 CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long)                 (arm64e) /Users/rutledge/Library      
      71 CA::Display::DisplayLink::dispatch_deferred_display_links()                                                          (arm64e) /Users/rutledge/Library      
      72 __setupUpdateSequence_block_invoke                                                                                   (arm64e) /Users/rutledge/Library      
      73 _UIUpdateSequenceRun                                                                                                 (arm64e) /Users/rutledge/Library      
      74 schedulerStepScheduledMainSection                                                                                    (arm64e) /Users/rutledge/Library      
      75 runloopSourceCallback                                                                                                (arm64e) /Users/rutledge/Library      
      76 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__                                                           (arm64e) /Users/rutledge/Library      
      77 __CFRunLoopDoSource0                                                                                                 (arm64e) /Users/rutledge/Library      
      78 __CFRunLoopDoSources0                                                                                                (arm64e) /Users/rutledge/Library      
      79 __CFRunLoopRun                                                                                                       (arm64e) /Users/rutledge/Library      
      80 CFRunLoopRunSpecific                                                                                                 (arm64e) /Users/rutledge/Library      
      81 GSEventRunModal                                                                                                      (arm64e) /Users/rutledge/Library      
      82 -[UIApplication _run]                                                                                                (arm64e) /Users/rutledge/Library      
      83 UIApplicationMain                                                                                                    (arm64e) /Users/rutledge/Library      
      84 qt_main_wrapper                                                                                                                                                                                                            qioseventdispatcher.mm                                                                                                                                                         206  0x104b06854 
      85 start                                                                                                                                                                                                                      (arm64e) /Users/rutledge/Library/Developer/Xcode/iOS DeviceSupport/15.4.1 (19E258) arm64e/Symbols/usr/lib/dyld                                                                      0x10d715ce4                                                                                                                                                                          
      

      Attachments

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

        Activity

          People

            srutledg Shawn Rutledge
            srutledg Shawn Rutledge
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes