Commit f3515ac6 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont Committed by Jean-Baptiste Kempf

mmap: handle I/O errors as fatal

(cherry picked from commit 270d4c8d)
Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
parent e6977ce0
......@@ -220,8 +220,7 @@ static block_t *Block (access_t *p_access)
msg_Err (p_access, "memory mapping failed (%m)");
intf_UserFatal (p_access, false, _("File reading failed"),
_("VLC could not read the file."));
msleep (INPUT_ERROR_SLEEP);
return NULL;
goto fatal;
}
#ifdef HAVE_POSIX_MADVISE
posix_madvise (addr, length, POSIX_MADV_SEQUENTIAL);
......@@ -229,7 +228,7 @@ static block_t *Block (access_t *p_access)
block_t *block = block_mmap_Alloc (addr, length);
if (block == NULL)
return NULL;
goto fatal;
block->p_buffer += inner_offset;
block->i_buffer -= inner_offset;
......@@ -252,6 +251,10 @@ static block_t *Block (access_t *p_access)
p_access->info.i_pos = outer_offset + length;
return block;
fatal:
p_access->info.b_eof = true;
return NULL;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment