Mercurial > vim
changeset 2407:6bc102a4bff8 vim73
Fix memory access to 'cryptmethod' during recovery. (Dominique Pelle)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Sun, 25 Jul 2010 14:00:46 +0200 |
parents | bbff28ebfc7a |
children | 9e2e63af1641 |
files | src/memline.c |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/memline.c +++ b/src/memline.c @@ -1155,7 +1155,7 @@ ml_recover() /* * Allocate a buffer structure for the swap file that is used for recovery. - * Only the memline in it is really used. + * Only the memline and crypt information in it are really used. */ buf = (buf_T *)alloc((unsigned)sizeof(buf_T)); if (buf == NULL) @@ -1188,6 +1188,7 @@ ml_recover() #ifdef FEAT_CRYPT mfp->mf_buffer = buf; buf->b_p_key = empty_option; + buf->b_p_cm = empty_option; #endif /* @@ -1685,6 +1686,7 @@ theend: #ifdef FEAT_CRYPT if (buf->b_p_key != curbuf->b_p_key) free_string_option(buf->b_p_key); + free_string_option(buf->b_p_cm); #endif vim_free(buf->b_ml.ml_stack); vim_free(buf); @@ -4939,7 +4941,7 @@ ml_crypt_prepare(mfp, offset, reading) #define MLCS_MINL 400 /* should be half of MLCS_MAXL */ /* - * Keep information for finding byte offset of a line, updtytpe may be one of: + * Keep information for finding byte offset of a line, updtype may be one of: * ML_CHNK_ADDLINE: Add len to parent chunk, possibly splitting it * Careful: ML_CHNK_ADDLINE may cause ml_find_line() to be called. * ML_CHNK_DELLINE: Subtract len from parent chunk, possibly deleting it