mirror of
https://github.com/checkpoint-restore/criu
synced 2025-09-05 00:35:23 +00:00
files: Don't restore pos when file doesn't support one
It's not quite clean, but on dump non-seekable files dump 0xff...ff into 64-bit pos field of the image. Thus on restore we'd face an error in the do_open_reg. In order not to have separate helper for non-seekable files just skip the position restore for such. Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
This commit is contained in:
@@ -529,7 +529,8 @@ static int do_open_reg(struct reg_file_info *rfi, void *arg)
|
||||
return fd;
|
||||
}
|
||||
|
||||
if (lseek(fd, rfi->rfe->pos, SEEK_SET) < 0) {
|
||||
if ((rfi->rfe->pos != -1ULL) &&
|
||||
lseek(fd, rfi->rfe->pos, SEEK_SET) < 0) {
|
||||
pr_perror("Can't restore file pos");
|
||||
close(fd);
|
||||
return -1;
|
||||
|
Reference in New Issue
Block a user