From 32614c9f026be20f0336df3053b91090dc53297f Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Mon, 4 Aug 2014 21:16:46 -0500 Subject: [PATCH] read_wim_header(): Check return value of lseek() --- src/header.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/header.c b/src/header.c index 57cea04f..e223ce9f 100644 --- a/src/header.c +++ b/src/header.c @@ -96,7 +96,9 @@ read_wim_header(WIMStruct *wim, struct wim_header *hdr) /* Pipable WIM: Use header at end instead, unless * actually reading from a pipe. */ if (!in_fd->is_pipe) { - lseek(in_fd->fd, -WIM_HEADER_DISK_SIZE, SEEK_END); + ret = WIMLIB_ERR_READ; + if (-1 == lseek(in_fd->fd, -WIM_HEADER_DISK_SIZE, SEEK_END)) + goto read_error; ret = full_read(in_fd, &disk_hdr, sizeof(disk_hdr)); if (ret) goto read_error; -- 2.43.0