aboutsummaryrefslogtreecommitdiffstats
path: root/g10/mdfilter.c
diff options
context:
space:
mode:
Diffstat (limited to 'g10/mdfilter.c')
-rw-r--r--g10/mdfilter.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/g10/mdfilter.c b/g10/mdfilter.c
index 2cdbd326d..951fd730e 100644
--- a/g10/mdfilter.c
+++ b/g10/mdfilter.c
@@ -42,17 +42,13 @@ md_filter( void *opaque, int control,
{
size_t size = *ret_len;
md_filter_context_t *mfx = opaque;
- int i, c, rc=0;
+ int i, rc=0;
if( control == IOBUFCTRL_UNDERFLOW ) {
if( mfx->maxbuf_size && size > mfx->maxbuf_size )
size = mfx->maxbuf_size;
- for(i=0; i < size; i++ ) {
- if( (c = iobuf_get(a)) == -1 )
- break;
- buf[i] = c;
- }
-
+ i = iobuf_read( a, buf, size );
+ if( i == -1 ) i = 0;
if( i ) {
md_write(mfx->md, buf, i );
if( mfx->md2 )