* vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s.
authorWerner Koch <wk@gnupg.org>
Tue, 20 Aug 2002 11:59:38 +0000 (11:59 +0000)
committerWerner Koch <wk@gnupg.org>
Tue, 20 Aug 2002 11:59:38 +0000 (11:59 +0000)
gpgme/ChangeLog
gpgme/vasprintf.c

index 0a31b5c..2e6f116 100644 (file)
@@ -1,3 +1,7 @@
+2002-08-20  Werner Koch  <wk@gnupg.org>
+
+       * vasprintf.c (int_vasprintf): Hack to handle NULL passed for %s.
+
 2002-08-20  Marcus Brinkmann  <marcus@g10code.de>
 
        * gpgme.c (_gpgme_set_op_info): Append data on subsequent calls.
index 9e39966..30b5e83 100644 (file)
@@ -97,7 +97,13 @@ int_vasprintf (result, format, args)
              total_width += 307;
              break;
            case 's':
-             total_width += strlen (va_arg (ap, char *));
+              {
+                char *tmp = va_arg (ap, char *);
+                if (tmp)
+                  total_width += strlen (tmp);
+                else /* in case the vsprintf does prints a text */
+                  total_width += 25; /* e.g. "(null pointer reference)" */
+              }
              break;
            case 'p':
            case 'n':