Problemas con Python y QT5 en la versión 24.8.2.1

|Distributor ID:|Ubuntu|
|Description:|Ubuntu 24.10|
|Release:|24.10|
|Codename:|oracular|
LibreOffice: 24.8.2.1

Tengo una macro que dejó de funcionar después de actualizar. Libreoffice se cierra directamente cuando la macro intenta crear una caja diálogo con QT5.

Este código de ejemplo reproduce el error:

class LoginDialog(QDialog):
    def __init__(self, parent=None):
        super().__init__(parent)

        # Crear los campos de entrada de texto para usuario y contraseña
        self.user_label = QLabel('Usuario:')
        self.user_edit = QLineEdit()
        self.password_label = QLabel('Contraseña:')
        self.password_edit = QLineEdit()
        self.password_edit.setEchoMode(QLineEdit.Password)

        # Crear el botón de aceptar y cancelar
        self.ok_button = QPushButton('Aceptar')
        self.cancel_button = QPushButton('Cancelar')

        # Crear el diseño vertical y agregar los widgets
        layout = QVBoxLayout()
        layout.addWidget(self.user_label)
        layout.addWidget(self.user_edit)
        layout.addWidget(self.password_label)
        layout.addWidget(self.password_edit)
        layout.addWidget(self.ok_button)
        layout.addWidget(self.cancel_button)

        # Configurar el diálogo con el diseño vertical
        self.setLayout(layout)
        self.setWindowTitle('Iniciar sesión')

        # Conectar el botón de aceptar y cancelar a sus respectivas funciones
        self.ok_button.clicked.connect(self.accept)
        self.cancel_button.clicked.connect(self.reject)

    def get_credentials(self):
        # Devolver el nombre de usuario y contraseña ingresados como tupla
        return self.user_edit.text(), self.password_edit.text()


def test():
    doc = XSCRIPTCONTEXT.getDocument()
    sheet = doc.Sheets[0]
    cell = sheet.getCellByPosition(0,1)
    
    dialog = LoginDialog()
    if dialog.exec_() == QDialog.Accepted:
        cell.setString("QT ok!")

    cell = sheet.getCellByPosition(0,0)
    oCursor = sheet.createCursor()
    oCursor.gotoEndOfUsedArea(False)
    oCursor.gotoStartOfUsedArea(True)
    rg  = oCursor.getRows().getCount()

    cell.setValue(rg)

No he podido encontrar en ningún lado el reporte de error como para diagnosticar mejor que pasa.