* gpgmeplug.c (findCertificates): Reintroduced a free which must
authorWerner Koch <wk@gnupg.org>
Mon, 1 Jul 2002 11:36:48 +0000 (11:36 +0000)
committerWerner Koch <wk@gnupg.org>
Mon, 1 Jul 2002 11:36:48 +0000 (11:36 +0000)
have been removed after my last fix.  This avoids a memory leak
when a fingerprint was not found.  Removed the double loop
increment in the code to release the arrays.

gpgmeplug/ChangeLog
gpgmeplug/gpgmeplug.c

index 85bc4ed..bf8acd8 100644 (file)
@@ -1,3 +1,10 @@
+2002-07-01  Werner Koch  <wk@gnupg.org>
+
+       * gpgmeplug.c (findCertificates): Reintroduced a free which must
+       have been removed after my last fix.  This avoids a memory leak
+       when a fingerprint was not found.  Removed the double loop
+       increment in the code to release the arrays.
+
 2002-06-28  Werner Koch  <wk@gnupg.org>
 
        * gpgmeplug.c (xmalloc): New.
index f681b1e..538f569 100644 (file)
@@ -2363,6 +2363,7 @@ bool findCertificates( const char* addressee,
             break;
           }
         }
+        free (dn); 
       }
     }
   }
@@ -2378,7 +2379,7 @@ bool findCertificates( const char* addressee,
     *certificates = xmalloc(   sizeof(char) * siz );
     memset( *certificates, 0, sizeof(char) * siz );
     /* fill the buffer */
-    for( iFound=0; iFound < nFound; ++iFound ) {
+    for (iFound=0; iFound < nFound; iFound++) {
       if( !iFound )
         strcpy(*certificates, DNs[iFound] );
       else {
@@ -2388,7 +2389,6 @@ bool findCertificates( const char* addressee,
       strcat(  *certificates, openBracket );
       strcat(  *certificates, FPRs[iFound] );
       strcat(  *certificates, closeBracket );
-      ++iFound;
       free( DNs[ iFound ] );
       free( FPRs[iFound ] );
     }