aboutsummaryrefslogtreecommitdiff
path: root/libsylph/session.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2006-09-13 05:41:52 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2006-09-13 05:41:52 +0000
commitd7ea96a449049db7de8e92d135b1d961c523a351 (patch)
treeac14ce6a352fc29baeb03af5c9b8f75d76f349ab /libsylph/session.c
parentd7a5fbadd02bc9e47459c6280cdfd20d18620803 (diff)
session.c: added extra error checking when writing to buffer.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1155 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'libsylph/session.c')
-rw-r--r--libsylph/session.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libsylph/session.c b/libsylph/session.c
index 8e7cd835..b8b77aff 100644
--- a/libsylph/session.c
+++ b/libsylph/session.c
@@ -839,6 +839,13 @@ static gboolean session_read_data_as_file_cb(SockInfo *source,
}
session->read_data_pos += write_len;
+ if (fflush(session->read_data_fp) == EOF) {
+ perror("fflush");
+ g_warning("session_read_data_as_file_cb: "
+ "writing data to file failed\n");
+ session->state = SESSION_ERROR;
+ return FALSE;
+ }
rewind(session->read_data_fp);
/* callback */