diff --git a/src/bannedcontactmodel.cpp b/src/bannedcontactmodel.cpp
index 70aa6c0f18269f6090804b3b44af457c49c96152..af2b58eeda2a341e2c7d600d6622cd8fabeb5e3f 100644
--- a/src/bannedcontactmodel.cpp
+++ b/src/bannedcontactmodel.cpp
@@ -137,6 +137,8 @@ BannedContactModel::columnCount( const QModelIndex& parent ) const
 void
 BannedContactModel::add(ContactMethod* cm)
 {
+    if (d_ptr->m_lBanned.contains(cm))
+        return;
     beginInsertRows(QModelIndex(),d_ptr->m_lBanned.size(),d_ptr->m_lBanned.size());
     d_ptr->m_lBanned << cm;
     endInsertRows();