Fixed long standing listing bug.
authorWerner Koch <wk@gnupg.org>
Wed, 29 Aug 2001 10:46:49 +0000 (10:46 +0000)
committerWerner Koch <wk@gnupg.org>
Wed, 29 Aug 2001 10:46:49 +0000 (10:46 +0000)
trunk/gpgme/ChangeLog
trunk/gpgme/keylist.c

index 5dc5dfe4905bacd64ab65e2146559931fb769c28..fedd4b1f461042fe304fb8b99cd130dc5e9a8cff 100644 (file)
@@ -1,3 +1,10 @@
+2001-08-29  Werner Koch  <wk@gnupg.org>
+
+       * keylist.c (keylist_colon_handler): Do a finish key if we receive
+       an EOF here.  This is probably the reason for a lot of bugs
+       related to keylisting.  It is so obvious.  Kudos to Enno Cramer
+       for pointing that out. 
+
 2001-08-28  Werner Koch  <wk@gnupg.org>
 
        * gpgme.c, gpgme.h (gpgme_get_op_info): New.
index c95f943a7efbfad094240396d06451c0aaf612f9..11bbf5d966e4bea04d3db1dc2a77775e06c09d11 100644 (file)
@@ -156,8 +156,11 @@ keylist_colon_handler ( GpgmeCtx ctx, char *line )
 
     if ( ctx->out_of_core )
         return;
-    if (!line)
-        return; /* EOF */
+    if (!line) { /* EOF */
+        if (ctx->tmp_key)
+            finish_key (ctx);
+        return; 
+    }
 
     for (p = line; p; p = pend) {
         field++;