diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 8c8006c8d0f324c45b22b041d50814f2122eec5e..498df7febe75df52b10d286a4ff7cef563424c3d 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1450,6 +1450,8 @@ A jump table for the options with a short description can be found at |Q_op|.
 			as HTML.  This works to copy rendered HTML from
 			Firefox, paste it as raw HTML in Vim, select the HTML
 			in Vim and paste it in a rich edit box in Firefox.
+			You probably want to add this only temporarily,
+			possibly use BufEnter autocommands.
 			Only supported for GTK version 2 and later.
 			Only available with the |+multi_byte| feature.
 
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 0bd8d6700fc25cd48dd06c4259ec2617c650cb9a..4d7674b650c6d752370b12c0fe9cab03be656909 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1087,12 +1087,16 @@ Vim 7.3:
    Ron's version: http://dev.ronware.org/p/vim/finfo?name=gvim.nsi
 - Also crypt the swap file, each block separately.  Change mf_write() and
     mf_read().  How to get b_p_key to these functions?
+    Generate seed for each block, store in pointer block.  Block 1 is not
+    encrypted.
+    When changing the password need to read back with the old password and
+    write again with the new one.
+    Verify recovery works.
+- Update for crypt code to use salt. (Mohsin May 30)
+    Make the strengthen_key value configurable and store it in the header.
 - Do profiling on sha256 code to find obvious bottlenecks.
 - Do profiling on crypt code to find obvious bottlenecks.
-- Make 'clipboard' global-local, for "html"?  Christian J. Robinson.
 Patches to include:
-- Extend test62 for gettabvar() and settabvar(). (Yegappan Lakshmanan, 2010
-  May 23)
 - Use off_t instead of long for bytes in a buffer. (James Vega, 2010 May 22,
   update next day)
 - Include conceal patch?
diff --git a/src/memline.c b/src/memline.c
index b38a46de7c626b6b057df24b603eab1d461424e5..6f0143cc3e393221b7daf31a96637693514bd3ff 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -87,7 +87,7 @@ struct pointer_entry
 struct pointer_block
 {
     short_u	pb_id;		/* ID for pointer block: PTR_ID */
-    short_u	pb_count;	/* number of pointer in this block */
+    short_u	pb_count;	/* number of pointers in this block */
     short_u	pb_count_max;	/* maximum value for pb_count */
     PTR_EN	pb_pointer[1];	/* list of pointers to blocks (actually longer)
 				 * followed by empty space until end of page */
@@ -3270,7 +3270,8 @@ ml_new_ptr(mfp)
     pp = (PTR_BL *)(hp->bh_data);
     pp->pb_id = PTR_ID;
     pp->pb_count = 0;
-    pp->pb_count_max = (short_u)((mfp->mf_page_size - sizeof(PTR_BL)) / sizeof(PTR_EN) + 1);
+    pp->pb_count_max = (short_u)((mfp->mf_page_size - sizeof(PTR_BL))
+							/ sizeof(PTR_EN) + 1);
 
     return hp;
 }
diff --git a/src/misc2.c b/src/misc2.c
index f35019df6721ef0cd80c5e3b4cc279928359a534..88b12aa0d3facba93c3d07cb9d94e80914066262 100644
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -3749,7 +3749,7 @@ update_keys(c)
     int c;			/* byte of plain text */
 {
     if (use_crypt_method > 0)
-	bf_ofb_update( (unsigned char) c);
+	bf_ofb_update(c);
     else
     {
 	keys[0] = CRC32(keys[0], c);
diff --git a/src/testdir/test62.in b/src/testdir/test62.in
index 83def27c362fe069640d6a43fd40c114838b75c3..b813830980fcc2e18a465921dc8c3fca1b8d795e 100644
--- a/src/testdir/test62.in
+++ b/src/testdir/test62.in
@@ -26,6 +26,29 @@ STARTTEST
 :call append(line('$'), line2)
 :unlet line1 line2
 :"
+:" Test for settabvar() and gettabvar() functions. Open a new tab page and 
+:" set 3 variables to a number, string and a list. Verify that the variables
+:" are correctly set.
+:tabnew
+:tabfirst
+:call settabvar(2, 'val_num', 100)
+:call settabvar(2, 'val_str', 'SetTabVar test')
+:call settabvar(2, 'val_list', ['red', 'blue', 'green'])
+:"
+:let test_status = 'gettabvar: fail'
+:if gettabvar(2, 'val_num') == 100 && gettabvar(2, 'val_str') == 'SetTabVar test') && gettabvar(2, 'val_list') == ['red', 'blue', 'green'])
+:    let test_status = 'gettabvar: pass'
+:endif
+:call append(line('$'), test_status)
+:"
+:tabnext 2
+:let test_status = 'settabvar: fail'
+:if t:val_num == 100 && t:val_str == 'SetTabVar test'  && t:val_list == ['red', 'blue', 'green']
+:   let test_status = 'settabvar: pass'
+:endif
+:tabclose
+:call append(line('$'), test_status)
+:"
 :"
 :/^Results/,$w! test.out
 :qa!
diff --git a/src/testdir/test62.ok b/src/testdir/test62.ok
index 57438ed6937db6d31858286a467a62b9dab87bb5..9a51e44248b38a9e9f78317c13aaeb66b4be2c30 100644
--- a/src/testdir/test62.ok
+++ b/src/testdir/test62.ok
@@ -3,3 +3,5 @@ tab page 2
 this is tab page 3
 this is tab page 1
 this is tab page 4
+gettabvar: pass
+settabvar: pass