summaryrefslogtreecommitdiffstats
path: root/src/fileio.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2023-06-17 15:00:27 +0100
committerBram Moolenaar <Bram@vim.org>2023-06-17 15:00:27 +0100
commit438d0c5e58aa475179ade9a1b99013733c5b8f06 (patch)
treefcdf07330a4ffef43ab45b25c66731d1997d3281 /src/fileio.c
parent54f50cbf6a470316a262e4389d62424e6f06b81c (diff)
patch 9.0.1638: crypt tests hang and cause memory errorsv9.0.1638
Problem: crypt tests hang and cause memory errors Solution: Move variable to start of function.
Diffstat (limited to 'src/fileio.c')
-rw-r--r--src/fileio.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/fileio.c b/src/fileio.c
index 4f3b895f2b..8b65baf62a 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -218,6 +218,7 @@ readfile(
int using_b_ffname;
int using_b_fname;
static char *msg_is_a_directory = N_("is a directory");
+ int eof = FALSE;
#ifdef FEAT_SODIUM
int may_need_lseek = FALSE;
#endif
@@ -1222,7 +1223,6 @@ retry:
size -= conv_restlen;
}
- int eof = FALSE;
if (read_buffer)
{
/*
@@ -1306,8 +1306,8 @@ retry:
{
// set size to 8K + Sodium Crypt Metadata
size = WRITEBUFSIZE + crypt_get_max_header_len()
- + crypto_secretstream_xchacha20poly1305_HEADERBYTES
- + crypto_secretstream_xchacha20poly1305_ABYTES;
+ + crypto_secretstream_xchacha20poly1305_HEADERBYTES
+ + crypto_secretstream_xchacha20poly1305_ABYTES;
may_need_lseek = TRUE;
}
@@ -1328,11 +1328,11 @@ retry:
}
}
# endif
- eof = size;
- size = read_eintr(fd, ptr, size);
+ long read_size = size;
+ size = read_eintr(fd, ptr, read_size);
filesize_count += size;
// hit end of file
- eof = (size < eof || filesize_count == filesize_disk);
+ eof = (size < read_size || filesize_count == filesize_disk);
}
#ifdef FEAT_CRYPT