From 569829b6fd4d50daff3fb86b57bed3cb6af32bd0 Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Fri, 8 Aug 2008 17:53:22 +0000 Subject: [PATCH] 2008-08-08 Marcus Brinkmann * rungpg.c (command_handler): Remove I/O callback on error, too. --- gpgme/ChangeLog | 4 ++++ gpgme/rungpg.c | 13 +++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog index 39c6165f..4629cc24 100644 --- a/gpgme/ChangeLog +++ b/gpgme/ChangeLog @@ -1,3 +1,7 @@ +2008-08-08 Marcus Brinkmann + + * rungpg.c (command_handler): Remove I/O callback on error, too. + 2008-06-29 Marcus Brinkmann * gpgme.c (gpgme_cancel_async): Remove unused variable. diff --git a/gpgme/rungpg.c b/gpgme/rungpg.c index 51ca545b..ca4145ca 100644 --- a/gpgme/rungpg.c +++ b/gpgme/rungpg.c @@ -645,12 +645,6 @@ command_handler (void *opaque, int fd) err = gpg->cmd.fnc (gpg->cmd.fnc_value, gpg->cmd.code, gpg->cmd.keyword, fd, &processed); - if (err) - return err; - - /* We always need to send at least a newline character. */ - if (!processed) - _gpgme_io_write (fd, "\n", 1); gpg->cmd.code = 0; /* And sleep again until read_status will wake us up again. */ @@ -660,6 +654,13 @@ command_handler (void *opaque, int fd) gpg->cmd.fd = gpg->fd_data_map[gpg->cmd.idx].fd; gpg->fd_data_map[gpg->cmd.idx].fd = -1; + if (err) + return err; + + /* We always need to send at least a newline character. */ + if (!processed) + _gpgme_io_write (fd, "\n", 1); + return 0; }