Introduced a workaround for an issue in Qt5/PyQt4 attaching a QSslCertificate to a QTreeWidgetItem.

Fri, 25 Jan 2013 17:11:08 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Fri, 25 Jan 2013 17:11:08 +0100
changeset 2363
d5d006a038a4
parent 2362
68a92d01c1cc
child 2365
7e176de4c462

Introduced a workaround for an issue in Qt5/PyQt4 attaching a QSslCertificate to a QTreeWidgetItem.

E5Network/E5SslCertificatesDialog.py file | annotate | diff | comparison | revisions
--- a/E5Network/E5SslCertificatesDialog.py	Thu Jan 24 19:10:01 2013 +0100
+++ b/E5Network/E5SslCertificatesDialog.py	Fri Jan 25 17:11:08 2013 +0100
@@ -104,7 +104,7 @@
             parent = items[0]
         
         itm = QTreeWidgetItem(parent, [commonName, server, expiryDate])
-        itm.setData(0, self.CertRole, cert)
+        itm.setData(0, self.CertRole, cert.toPem())
     
     @pyqtSlot(QTreeWidgetItem, QTreeWidgetItem)
     def on_serversCertificatesTree_currentItemChanged(self, current, previous):
@@ -125,7 +125,8 @@
         """
         Private slot to show data of the selected server certificate.
         """
-        cert = self.serversCertificatesTree.currentItem().data(0, self.CertRole)
+        cert = QSslCertificate.fromData(
+            self.serversCertificatesTree.currentItem().data(0, self.CertRole))[0]
         dlg = E5SslInfoDialog(cert, self)
         dlg.exec_()
     
@@ -296,7 +297,7 @@
             parent = items[0]
         
         itm = QTreeWidgetItem(parent, [commonName, expiryDate])
-        itm.setData(0, self.CertRole, cert)
+        itm.setData(0, self.CertRole, cert.toPem())
     
     @pyqtSlot(QTreeWidgetItem, QTreeWidgetItem)
     def on_caCertificatesTree_currentItemChanged(self, current, previous):
@@ -317,7 +318,8 @@
         """
         Private slot to show data of the selected CA certificate.
         """
-        cert = self.caCertificatesTree.currentItem().data(0, self.CertRole)
+        cert = QSslCertificate.fromData(
+            self.caCertificatesTree.currentItem().data(0, self.CertRole))[0]
         dlg = E5SslInfoDialog(cert, self)
         dlg.exec_()
     

eric ide

mercurial