From cedbc3ae77b148d4964d7d499b978cfe21e6ff07 Mon Sep 17 00:00:00 2001 From: Romain Bignon Date: Tue, 27 Mar 2012 11:55:24 +0200 Subject: [PATCH] check types of compared objects in __eq__() operators --- weboob/applications/qhavedate/contacts.py | 2 ++ weboob/capabilities/messages.py | 3 +++ 2 files changed, 5 insertions(+) diff --git a/weboob/applications/qhavedate/contacts.py b/weboob/applications/qhavedate/contacts.py index df0d8681..d758d435 100644 --- a/weboob/applications/qhavedate/contacts.py +++ b/weboob/applications/qhavedate/contacts.py @@ -67,6 +67,8 @@ class ThreadMessage(QFrame): def __eq__(self, m): + if not isinstance(m, Message): + return False return self.message == m.message class ContactThread(QWidget): diff --git a/weboob/capabilities/messages.py b/weboob/capabilities/messages.py index 292977f0..5ba0ce75 100644 --- a/weboob/capabilities/messages.py +++ b/weboob/capabilities/messages.py @@ -117,6 +117,9 @@ class Message(_Message): return '%s.%s' % (self.thread.id, self._parent_id) def __eq__(self, msg): + if not isinstance(msg, Message): + return False + if self.thread: return unicode(self.thread.id) == unicode(msg.thread.id) and \ unicode(self.id) == unicode(msg.id)