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

Python: QtWebEngineWidgets.QWebEngineView hangs the app on a particular Fedora PC

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P1: Critical
    • None
    • 6.3.0, 6.3.1, 6.3.2, 6.4.0
    • WebEngine
    • None
    • Fedora 35 or 37, Python 3.10 or 3.11, PySide6 installed with pip in a virtual environment (currently, 6.3.2, but I tried 6.3.0 to 6.4.0).
    • Linux/X11

    Description

      As Friedemann Kleint advised, I re-report bug PYSIDE-2072 here.

      Consider the following code:

      from PySide6 import QtWebEngineWidgets, QtWidgets
      
      app = QtWidgets.QApplication()
      w = QtWebEngineWidgets.QWebEngineView()
      w.setGeometry(0, 0, 600, 400)
      w.show()
      app.exec()
      

      It works on all my computers but one. There, I have Fedora 35 installed. On the PC, it hangs, making the window unresponsive. The appeared window indefinitely waits for a futex to be released, not responding to anything. Recently, I upgraded the OS to Fedora 37, with the same result (there, I have Python 3.11).

      In stderr, I see the following:

      qt.webenginecontext:
      
      GL Type: desktop
       Surface Type: OpenGL
       Surface Profile: CompatibilityProfile
       Surface Version: 4.3
       QSG RHI Backend: OpenGL
       Using Supported QSG Backend: yes
       Using Software Dynamic GL: no
       Using Multithreaded OpenGL: no
      
      Init Parameters:
       * application-name mwe.py
       * browser-subprocess-path venv/lib64/python3.10/site-packages/PySide6/Qt/libexec/QtWebEngineProcess
       * create-default-gl-context
       * disable-features ConsolidatedMovementXY,InstalledApp,BackgroundFetch,WebOTP,WebPayments,WebUSB,PictureInPicture
       * disable-setuid-sandbox
       * disable-speech-api
       * enable-features NetworkServiceInProcess,TracingServiceInProcess
       * enable-threaded-compositing
       * enable-use-zoom-for-dsf false
       * in-process-gpu
       * use-gl desktop
      

      I've had no luck deciphering the values.

      To reproduce,

      1. create a Python virtual environment: python -m venv venv
      2. activate it: source venv/bin/activate
      3. update pip and wheel (just in case): pip install -U pip wheel
      4. install PySide6: pip install PySide6
      5. feed the code to Python:
      • either launch python and paste the code there
      • or save the code into a file and do python <filename>.py

      The expected result is a window of a white rectangle appearing, which can be resized by mouse, minimized, or closed.

      Instead, a white rectangle appears, but it doesn't respond to anything.

      I can't provide a C++ MWE for it.

      Attachments

        1. GPU Internals.pdf
          592 kB
        2. PyQt6-6.4.0.pdf
          83 kB
        3. PySide6-6.4.0.pdf
          83 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            allan.jensen Allan Sandfeld Jensen
            stsav012 Anton Yablokov
            Votes:
            1 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes