2002-09-13 Marcus Brinkmann <marcus@g10code.de>
authorMarcus Brinkmann <mb@g10code.com>
Fri, 13 Sep 2002 20:54:52 +0000 (20:54 +0000)
committerMarcus Brinkmann <mb@g10code.com>
Fri, 13 Sep 2002 20:54:52 +0000 (20:54 +0000)
* keylist.c (keylist_status_handler): Do not call finish_key() here.
(gpgme_op_keylist_ext_start): Set CTX->tmp_key to NULL.

trunk/gpgme/ChangeLog
trunk/gpgme/keylist.c

index b6ffaaa333e1190277cd664899e3323a27faef07..3e90b75bacb25bce07fc603ddb22bb936b539770 100644 (file)
@@ -1,3 +1,8 @@
+2002-09-13  Marcus Brinkmann  <marcus@g10code.de>
+
+       * keylist.c (keylist_status_handler): Do not call finish_key() here.
+       (gpgme_op_keylist_ext_start): Set CTX->tmp_key to NULL.
+
 2002-09-03  Marcus Brinkmann  <marcus@g10code.de>
 
        * Makefile.am (assuan_libobjs): Remove @LTLIBOBJS@ as we link them
index 21a6d873e5d0f2a6de15bdbdeba678cb556434a1..6ae9b1ee014340860757c04a1bd8cec9793e6322 100644 (file)
@@ -94,14 +94,13 @@ keylist_status_handler (GpgmeCtx ctx, GpgmeStatusCode code, char *args)
     return;
   test_and_allocate_result (ctx, keylist);
 
-  switch (code)
+   switch (code)
     {
     case GPGME_STATUS_TRUNCATED:
       ctx->result.keylist->truncated = 1;
       break;
 
     case GPGME_STATUS_EOF:
-      finish_key (ctx);
       if (ctx->result.keylist->truncated)
         append_xml_keylistinfo (&ctx->result.keylist->xmlinfo, "1");
       if (ctx->result.keylist->xmlinfo)
@@ -256,6 +255,7 @@ keylist_colon_handler (GpgmeCtx ctx, char *line)
   const char *trust_info = NULL;
   struct subkey_s *sk = NULL;
 
+  DEBUG3 ("keylist_colon_handler ctx=%p, key=%p, line=%s\n", ctx, key, line);
   if (ctx->error)
     return;
   if (!line)
@@ -640,6 +640,7 @@ gpgme_op_keylist_ext_start (GpgmeCtx ctx, const char *pattern[],
     goto leave;
 
   gpgme_key_release (ctx->tmp_key);
+  ctx->tmp_key = NULL;
 
   _gpgme_engine_set_status_handler (ctx->engine, keylist_status_handler, ctx);
   err = _gpgme_engine_set_colon_line_handler (ctx->engine,