From 8bd38863e61800ece97d88e4d1543d007a5055a6 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Sun, 4 Oct 2020 18:33:21 -0400 Subject: vim-patch:8.1.1812: reading a truncted undo file hangs Vim Problem: Reading a truncted undo file hangs Vim. Solution: Check for reading EOF. (closes vim/vim#4769) https://github.com/vim/vim/commit/fb06d767a8d76eead5391302fc88115d6e3879d8 --- src/nvim/undo.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/nvim/undo.c') diff --git a/src/nvim/undo.c b/src/nvim/undo.c index 903e57732f..6c5a6cdb46 100644 --- a/src/nvim/undo.c +++ b/src/nvim/undo.c @@ -878,7 +878,12 @@ static u_header_T *unserialize_uhp(bufinfo_T *bi, for (;; ) { int len = undo_read_byte(bi); - if (len == 0 || len == EOF) { + if (len == EOF) { + corruption_error("truncated", file_name); + u_free_uhp(uhp); + return NULL; + } + if (len == 0) { break; } int what = undo_read_byte(bi); -- cgit