Uploaded image for project: 'Qt for Python'
  1. Qt for Python
  2. PYSIDE-2487

Reg->6.5.3: Cannot Disconnect Signal That is Inherited to slot that has no Slot() decorator

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P2: Important P2: Important
    • 6.6.0
    • 6.5.3
    • PySide
    • None
    • All
    • a8f7ee753 (dev), d3d4973ef (6.6), 9d3ee797a (6.5), 9e2ac0478 (dev), 9182f703a (6.6), 3b291b3bd (6.5)

      Hello PySide devs,

      With PySide6 6.5.3, there is an issue when disconnecting signals.

      from PySide6 import QtCore
      
      class Parent(QtCore.QObject):
          sig = QtCore.Signal()
      
          def pslot(self):
              pass
      
      class Child(Parent):
          pass
      
      x = Child()
      # disconnecting slot defined in parent fails since PySide >= 6.5.3
      x.sig.connect(x.pslot)
      x.sig.disconnect(x.pslot)
      

      The key for triggering the failure is that the signal must come from an inherited class member.

        1. pyside2487_65_diag.diff
          6 kB
          Friedemann Kleint
        2. pyside2487_diag.diff
          7 kB
          Friedemann Kleint
        3. pyside2487_log.txt
          4 kB
          Friedemann Kleint
        4. pyside2487.py
          0.8 kB
          Friedemann Kleint
        For Gerrit Dashboard: PYSIDE-2487
        # Subject Branch Project Status CR V

            kleint Friedemann Kleint
            j9ac9k Ognyan Moore
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: