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

Invoking ListView.positionViewAtEnd locks up application if ListView is flicking

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: P1: Critical P1: Critical
    • 5.12.0 Beta 2
    • 5.6.3, 5.9.5, 5.11.0, 5.11.2, 5.12.0 Alpha
    • None
    • Kubuntu 18.04 x86-64, g++ 7.3.0
      OpenGL version: 4.6.0 NVIDIA 390.48
    • Linux/X11
    • 98e7ec5920a8c5e2408c662c6cf2b78cfdb9c727 (qt/qtdeclarative/5.12)

      Steps to reproduce bug

      Using the attached example project in test.tar.xz:

      1. Use the mouse to flick the list upwards (i.e. the list scrolls towards increasing indices).  The list should be flicked with sufficient speed to have it scroll for a good amount of time.
      2. While the list is moving, press the "Go to end" button.
      3. The application will freeze.

      While the application is frozen, memory usage rapidly increases.  I do not know if the application eventually recovers (didn't want to risk the OOM killer).

      I've noticed similar behavior when flicking downwards (i.e. towards decreasing indices) and calling positionViewAtBeginning.  I've been able to reproduce this behavior on 5.11.0, 5.11.2, and 5.12.0 alpha.

      Expected behavior

      The application should move the list to the bottom-most row.

      Workaround

      Stopping flicking (i.e. calling Flickable.cancelFlick) before calling positionViewAtEnd seems to work around the issue.

        1. test.tar.xz
          2 kB
          yipdw1
        2. simpler.qml
          0.6 kB
          Shawn Rutledge
        For Gerrit Dashboard: QTBUG-70941
        # Subject Branch Project Status CR V

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

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes