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

Hang due to infinite loop when removing tabs from TabBar

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P1: Critical
    • Resolution: Done
    • Affects Version/s: 5.8.0 RC
    • Fix Version/s: 5.9.0 Alpha
    • Component/s: Quick: Controls 2
    • Labels:
      None
    • Environment:
      Desktop Qt 5.8 RC, MSVC 2015, x64, Windows 7
    • Commits:
      24acfcafdf66f9ade03d0f98520a5d6c02bb2a1c

      Description

      If a TabBar is not given an overridden value of implicitWidth, the process of removing tabs will hang the process. This appears to be a binding loop in the calculation of implicitWidth.

      Fixing the width of the TabButton, the implicitWidth of the TabBar, or aloowing a ColumnLayout to override the width via Layout.fillWidth all seem to avoid this problem. See comments in main.qml (which demonstrates the hang) for the different things I tried.

      As I'm not sure how to relate callstacks when interrupting it in C++ to the JS binding code, I wasn't able to pin it down any more.

      Hang occurs with the Default and Material styles, Universal looks strange but doesn't seem to have the same infinite loop.

        Attachments

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

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            puetzk Kevin Puetz
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes