Mercurial > vim
changeset 7347:8977b399cf55 v7.4.979
commit https://github.com/vim/vim/commit/4a8c2cfc56b9affc36934aa0f20d8cfd2b1511c8
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Dec 19 15:28:18 2015 +0100
patch 7.4.979
Problem: When changing the crypt key the blocks read from disk are not
decrypted.
Solution: Also call ml_decrypt_data() when mf_old_key is set. (Ken Takata)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 19 Dec 2015 15:30:04 +0100 |
parents | e562b66b7eab |
children | f2a7b3338d30 |
files | src/memfile.c src/version.c |
diffstat | 2 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/memfile.c +++ b/src/memfile.c @@ -1032,8 +1032,9 @@ mf_read(mfp, hp) } #ifdef FEAT_CRYPT - /* Decrypt if 'key' is set and this is a data block. */ - if (*mfp->mf_buffer->b_p_key != NUL) + /* Decrypt if 'key' is set and this is a data block. And when changing the + * key. */ + if (*mfp->mf_buffer->b_p_key != NUL || mfp->mf_old_key != NULL) ml_decrypt_data(mfp, hp->bh_data, offset, size); #endif