dovecot-2.1: istream: Don't treat max_block_size=0 as unlimited.
dovecot at dovecot.org
dovecot at dovecot.org
Wed Jan 4 12:00:24 EET 2012
details: http://hg.dovecot.org/dovecot-2.1/rev/59f5238c6e61
changeset: 13885:59f5238c6e61
user: Timo Sirainen <tss at iki.fi>
date: Wed Jan 04 12:00:13 2012 +0200
description:
istream: Don't treat max_block_size=0 as unlimited.
diffstat:
src/lib/file-copy.c | 2 +-
src/lib/istream.c | 5 +++--
src/plugins/fts-squat/squat-test.c | 2 +-
3 files changed, 5 insertions(+), 4 deletions(-)
diffs (46 lines):
diff -r 997a2855fd74 -r 59f5238c6e61 src/lib/file-copy.c
--- a/src/lib/file-copy.c Tue Jan 03 14:42:51 2012 +0200
+++ b/src/lib/file-copy.c Wed Jan 04 12:00:13 2012 +0200
@@ -69,7 +69,7 @@
if (fchown(fd_out, (uid_t)-1, st.st_gid) < 0 && errno != EPERM)
i_error("fchown(%s) failed: %m", tmppath);
- input = i_stream_create_fd(fd_in, 0, FALSE);
+ input = i_stream_create_fd(fd_in, IO_BLOCK_SIZE, FALSE);
output = o_stream_create_fd_file(fd_out, 0, FALSE);
while ((ret = o_stream_send_istream(output, input)) > 0) ;
diff -r 997a2855fd74 -r 59f5238c6e61 src/lib/istream.c
--- a/src/lib/istream.c Tue Jan 03 14:42:51 2012 +0200
+++ b/src/lib/istream.c Wed Jan 04 12:00:13 2012 +0200
@@ -460,6 +460,8 @@
{
size_t old_size;
+ i_assert(stream->max_buffer_size > 0);
+
old_size = stream->buffer_size;
stream->buffer_size = stream->pos + bytes;
@@ -468,8 +470,7 @@
else
stream->buffer_size = nearest_power(stream->buffer_size);
- if (stream->max_buffer_size > 0 &&
- stream->buffer_size > stream->max_buffer_size)
+ if (stream->buffer_size > stream->max_buffer_size)
stream->buffer_size = stream->max_buffer_size;
if (stream->buffer_size <= old_size)
diff -r 997a2855fd74 -r 59f5238c6e61 src/plugins/fts-squat/squat-test.c
--- a/src/plugins/fts-squat/squat-test.c Tue Jan 03 14:42:51 2012 +0200
+++ b/src/plugins/fts-squat/squat-test.c Wed Jan 04 12:00:13 2012 +0200
@@ -69,7 +69,7 @@
return 1;
valid = buffer_create_dynamic(default_pool, 4096);
- input = i_stream_create_fd(fd, 0, FALSE);
+ input = i_stream_create_fd(fd, (size_t)-1, FALSE);
ret = 0;
while (ret == 0 && (line = i_stream_read_next_line(input)) != NULL) {
if (last != input->v_offset/(1024*100)) {
More information about the dovecot-cvs
mailing list