diff --git a/src/engine-gpg.c b/src/engine-gpg.c index 173e940c..e9558202 100644 --- a/src/engine-gpg.c +++ b/src/engine-gpg.c @@ -26,7 +26,6 @@ #include #include #include -#include #ifdef HAVE_UNISTD_H # include #endif @@ -1039,10 +1038,10 @@ build_argv (engine_gpg_t gpg, const char *pgmname) if (_gpgme_io_pipe (fds, fd_data_map[datac].inbound ? 1 : 0) == -1) { - int saved_errno = errno; + int saved_err = gpg_error_from_syserror (); free (fd_data_map); free_argv (argv); - return gpg_error (saved_errno); + return saved_err; } if (_gpgme_io_set_close_notify (fds[0], close_notify_handler, gpg) diff --git a/src/engine-gpgsm.c b/src/engine-gpgsm.c index 7b221831..84a9315d 100644 --- a/src/engine-gpgsm.c +++ b/src/engine-gpgsm.c @@ -37,7 +37,6 @@ #include #endif #include /* FIXME */ -#include #include "gpgme.h" #include "util.h" @@ -986,8 +985,7 @@ status_handler (void *opaque, int fd) while (linelen > 0) { nwritten = gpgme_data_write (gpgsm->inline_data, src, linelen); - if (!nwritten || (nwritten < 0 && errno != EINTR) - || nwritten > linelen) + if (nwritten <= 0 || nwritten > linelen) { err = gpg_error_from_syserror (); break;