diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog index 7c47da87..2111ebbd 100644 --- a/gpgme/ChangeLog +++ b/gpgme/ChangeLog @@ -1,3 +1,8 @@ +2008-05-09 Werner Koch + + * engine-gpgconf.c (gpgconf_read): Do not pass empty lines to the + callback. + 2008-05-07 Werner Koch * engine-gpgconf.c (gpgconf_write): Change argv[0] to a diff --git a/gpgme/engine-gpgconf.c b/gpgme/engine-gpgconf.c index ede2c9cf..38a293e4 100644 --- a/gpgme/engine-gpgconf.c +++ b/gpgme/engine-gpgconf.c @@ -247,8 +247,11 @@ gpgconf_read (void *engine, char *arg1, char *arg2, mark--; *mark = '\0'; - /* Got a full line. */ - err = (*cb) (hook, line); + /* Got a full line. Due to the CR removal code (which + occurs only on Windows) we might be one-off and thus + would see empty lines. Don't pass them to the + callback. */ + err = *line? (*cb) (hook, line) : NULL; if (err) goto leave; } diff --git a/gpgme/gpgme.h b/gpgme/gpgme.h index 7bd8aae5..ec498c01 100644 --- a/gpgme/gpgme.h +++ b/gpgme/gpgme.h @@ -72,7 +72,7 @@ extern "C" { AM_PATH_GPGME macro) check that this header matches the installed library. Warning: Do not edit the next line. configure will do that for you! */ -#define GPGME_VERSION "1.1.7-svn1311" +#define GPGME_VERSION "1.1.7-svn1312"