aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--camel/camel-stream-fs.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/camel/camel-stream-fs.c b/camel/camel-stream-fs.c
index 4571687ca7..e9771d8245 100644
--- a/camel/camel-stream-fs.c
+++ b/camel/camel-stream-fs.c
@@ -481,6 +481,11 @@ _seek (CamelSeekableStream *stream, gint offset, CamelStreamSeekPolicy policy)
gint real_offset;
CamelStreamFs *stream_fs = CAMEL_STREAM_FS (stream);
+ /* because we don't know what is going to happen, we
+ set the eof stream to false so that a reread can
+ occur */
+ stream_fs->eof = FALSE;
+
switch (policy) {
case CAMEL_STREAM_SET:
real_offset = MAX (stream_fs->inf_bound + offset, stream_fs->inf_bound);
@@ -522,7 +527,8 @@ _seek (CamelSeekableStream *stream, gint offset, CamelStreamSeekPolicy policy)
return_position = lseek (stream_fs->fd, real_offset, whence) - stream_fs->inf_bound;
CAMEL_SEEKABLE_STREAM (stream)->cur_pos = return_position;
-
+
+
return return_position;
}