An integer overflow at a u_read_undo memory allocation site would occur for vim before patch 8.0.0377, if it does not properly validate values for tree length when reading a corrupted undo file, which may lead to resultant buffer overflows.
https://usn.ubuntu.com/4309-1/
https://security.gentoo.org/glsa/201706-26
https://groups.google.com/forum/#%21topic/vim_dev/QPZc0CY9j3Y
https://groups.google.com/forum/#%21topic/vim_dev/LAgsTcdSfNA
https://github.com/vim/vim/commit/3eb1637b1bba19519885dd6d377bd5596e91d22c