[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdepim/kleopatra/models
From:       Marc Mutz <mutz () kde ! org>
Date:       2007-08-14 14:40:07
Message-ID: 1187102407.661057.686.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 700013 by mutz:

more existing-key-overwrite fixes

 M  +3 -3      keylistmodel.cpp  


--- trunk/KDE/kdepim/kleopatra/models/keylistmodel.cpp #700012:700013
@@ -568,8 +568,8 @@
         return QList<QModelIndex>();
     std::vector<Key> merged;
     merged.reserve( keys.size() + mKeysByFingerprint.size() );
-    std::merge( mKeysByFingerprint.begin(), mKeysByFingerprint.end(),
-                keys.begin(), keys.end(),
+    std::merge( keys.begin(), keys.end(),
+                mKeysByFingerprint.begin(), mKeysByFingerprint.end(),
                 std::back_inserter( merged ), ByFingerprint<std::less>() );
     merged.erase( std::unique( merged.begin(), merged.end(), \
ByFingerprint<std::equal_to>() ), merged.end() );  
@@ -591,7 +591,6 @@
         while ( it1 != end1 && it2 != end2 ) {
             const std::vector<Key> & v1 = it1->second;
             const std::vector<Key> & v2 = it2->second;
-            // first sort the new list:
             if ( it1->first < it2->first ) {
                 // take *it1:
                 mKeysByChainId.insert( it2, *it1 );
@@ -607,6 +606,7 @@
                             v2.begin(), v2.end(),
                             std::back_inserter( tmp ),
                             ByFingerprint<std::less>() );
+		tmp.erase( std::unique( tmp.begin(), tmp.end(), ByFingerprint<std::equal_to>() ), \
tmp.end() );  it2->second.swap( tmp );
                 ++it1;
                 ++it2;


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic