diff options
Diffstat (limited to '')
-rw-r--r-- | tests/gpg/t-edit.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/tests/gpg/t-edit.c b/tests/gpg/t-edit.c index 4a22955a..8117d587 100644 --- a/tests/gpg/t-edit.c +++ b/tests/gpg/t-edit.c @@ -45,13 +45,15 @@ static void flush_data (GpgmeData dh) { char buf[100]; - size_t nread; - GpgmeError err; - - while (!(err = gpgme_data_read (dh, buf, 100, &nread))) - fwrite (buf, nread, 1, stdout); - if (err != GPGME_EOF) - fail_if_err (err); + int ret; + + ret = gpgme_data_seek (dh, 0, SEEK_SET); + if (ret) + fail_if_err (GPGME_File_Error); + while ((ret = gpgme_data_read (dh, buf, 100)) > 0) + fwrite (buf, ret, 1, stdout); + if (ret < 0) + fail_if_err (GPGME_File_Error); } |