summaryrefslogtreecommitdiff
path: root/mailbox/message.c
diff options
context:
space:
mode:
Diffstat (limited to 'mailbox/message.c')
-rw-r--r--mailbox/message.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/mailbox/message.c b/mailbox/message.c
index 1d95c7185..8ac125871 100644
--- a/mailbox/message.c
+++ b/mailbox/message.c
@@ -182,7 +182,17 @@ _message_stream_seek (struct _mu_stream *str, mu_off_t off, mu_off_t *ppos)
return rc;
/* fall through */
case _mss_body:
- off -= hsize;
+ if (off > hsize)
+ off -= hsize;
+ else
+ {
+ mu_stream_destroy (&sp->transport);
+ sp->state = _mss_init;
+ rc = _check_stream_state (sp);
+ if (rc)
+ return rc;
+ }
+
break;
default:

Return to:

Send suggestions and report system problems to the System administrator.