2002-09-28 Marcus Brinkmann <marcus@g10code.de>
authorMarcus Brinkmann <mb@g10code.com>
Sat, 28 Sep 2002 20:08:01 +0000 (20:08 +0000)
committerMarcus Brinkmann <mb@g10code.com>
Sat, 28 Sep 2002 20:08:01 +0000 (20:08 +0000)
* conversion.c (_gpgme_hextobyte): Prevent superfluous
multiplication with base.  Reported by St�phane Corth�sy.

* keylist.c (gpgme_op_keylist_ext_start): Use private asynchronous
operation type in invocation of _gpgme_op_reset.

gpgme/ChangeLog
gpgme/conversion.c
gpgme/keylist.c

index 325a064..a2cd246 100644 (file)
@@ -1,3 +1,11 @@
+2002-09-28  Marcus Brinkmann  <marcus@g10code.de>
+
+       * conversion.c (_gpgme_hextobyte): Prevent superfluous
+       multiplication with base.  Reported by Stéphane Corthésy.
+
+       * keylist.c (gpgme_op_keylist_ext_start): Use private asynchronous
+       operation type in invocation of _gpgme_op_reset.
+
 2002-09-20  Werner Koch  <wk@gnupg.org>
 
        * ath.c: Include sys/time.h if sys/select.h is not available.
index 8302f99..ad85a8a 100644 (file)
@@ -23,6 +23,7 @@
 #include <config.h>
 #endif
 
+#include <string.h>
 #include <ctype.h>
 #include "gpgme.h"
 #include "util.h"
@@ -34,7 +35,8 @@ _gpgme_hextobyte (const byte *str)
   int val = 0;
   int i;
 
-  for (i = 0; i < 2; i++)
+#define NROFHEXDIGITS 2
+  for (i = 0; i < NROFHEXDIGITS; i++)
     {
       if (*str >= '0' && *str <= '9')
        val += *str - '0';
@@ -44,7 +46,8 @@ _gpgme_hextobyte (const byte *str)
        val += 10 + *str - 'a';
       else
        return -1;
-      val *= 16;
+      if (i < NROFHEXDIGITS - 1)
+       val *= 16;
       str++;
     }
   return val;
index 6ae9b1e..044fb75 100644 (file)
@@ -633,9 +633,7 @@ gpgme_op_keylist_ext_start (GpgmeCtx ctx, const char *pattern[],
 {
   GpgmeError err = 0;
 
-  /* Keylist operations are always "synchronous" in the sense that we
-     don't add ourself to the global FD table.  */
-  err = _gpgme_op_reset (ctx, 1);
+  err = _gpgme_op_reset (ctx, 2);
   if (err)
     goto leave;