Added sanity checking in send_file_data()

This commit is contained in:
Sergey Lyubka 2013-05-12 23:17:44 +01:00
parent ab16220861
commit 94e1c5a41b

View File

@ -2727,6 +2727,9 @@ static void send_file_data(struct mg_connection *conn, struct file *filep,
char buf[MG_BUF_LEN];
int to_read, num_read, num_written;
// Sanity check the offset
offset = offset < 0 ? 0 : offset > filep->size ? filep->size : offset;
if (len > 0 && filep->membuf != NULL && filep->size > 0) {
if (len > filep->size - offset) {
len = filep->size - offset;