sexp: Improve printing of data with a leading zero.
authorWerner Koch <wk@gnupg.org>
Sat, 7 Sep 2013 08:06:46 +0000 (10:06 +0200)
committerWerner Koch <wk@gnupg.org>
Wed, 25 Sep 2013 15:07:28 +0000 (17:07 +0200)
* src/sexp.c (suitable_encoding): Detect leading zero byte.

src/sexp.c

index 54d0c4a..6a2a9be 100644 (file)
@@ -1725,6 +1725,8 @@ suitable_encoding (const unsigned char *buffer, size_t length)
   if (*buffer & 0x80)
     return 0; /* If the MSB is set we assume that buffer represents a
                  negative number.  */
+  if (!*buffer)
+    return 0; /* Starting with a zero is pretty much a binary string.  */
 
   for (s=buffer; length; s++, length--)
     {