diff options
Diffstat (limited to 'src/input/input_smb.c')
-rw-r--r-- | src/input/input_smb.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/input/input_smb.c b/src/input/input_smb.c index 4d7e9a94a..e49eaa889 100644 --- a/src/input/input_smb.c +++ b/src/input/input_smb.c @@ -91,7 +91,9 @@ smb_plugin_read_block (input_plugin_t *this_gen, fifo_buffer_t *fifo, off_t total_bytes; buf_element_t *buf = fifo->buffer_pool_alloc (fifo); - if (todo < 0 || todo > buf->size) { + if (todo > buf->max_size) + todo = buf->max_size; + if (todo < 0) { buf->free_buffer (buf); return NULL; } |