diff options
author | Bram Moolenaar <Bram@vim.org> | 2010-07-25 16:05:19 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2010-07-25 16:05:19 +0200 |
commit | fa0ff9aedf9515638e15726141c4a08ca4e05255 (patch) | |
tree | 5905078139923e4721338380895942e33f09844f /src/undo.c | |
parent | 8d9b40e71ab62f43c65a52225cb833ecc0d1bf6b (diff) | |
download | vim-git-fa0ff9aedf9515638e15726141c4a08ca4e05255.tar.gz |
Fix: editing a not encrypted file after a crypted file messed up reading the
text from an undo file.
Diffstat (limited to 'src/undo.c')
-rw-r--r-- | src/undo.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/undo.c b/src/undo.c index 6d50cc839..eb887d8b7 100644 --- a/src/undo.c +++ b/src/undo.c @@ -888,7 +888,7 @@ read_string_decrypt(buf, fd, len) ptr = read_string(fd, len); #ifdef FEAT_CRYPT - if (ptr != NULL || *buf->b_p_key != NUL) + if (ptr != NULL && *buf->b_p_key != NUL) crypt_decode(ptr, len); #endif return ptr; @@ -909,7 +909,7 @@ serialize_header(fp, buf, hash) /* If the buffer is encrypted then all text bytes following will be * encrypted. Numbers and other info is not crypted. */ #ifdef FEAT_CRYPT - if (*buf->b_p_key) + if (*buf->b_p_key != NUL) { char_u *header; int header_len; @@ -1475,7 +1475,7 @@ u_write_undo(name, forceit, buf, hash) if (serialize_header(fp, buf, hash) == FAIL) goto write_error; #ifdef FEAT_CRYPT - if (*buf->b_p_key) + if (*buf->b_p_key != NUL) do_crypt = TRUE; #endif |