diff --git a/src/clipboard.c b/src/clipboard.c
index 3084ce1..c263492 100644
--- a/src/clipboard.c
+++ b/src/clipboard.c
@@ -2047,6 +2047,8 @@
 	ca.count1 = 1;
 	ca.retval = CA_NO_ADJ_OP_END;
 	do_pending_operator(&ca, 0, TRUE);
+
+	// restore things
 	set_y_previous(old_y_previous);
 	set_y_current(old_y_current);
 	curwin->w_cursor = old_cursor;
diff --git a/src/fileio.c b/src/fileio.c
index 6606168..b3b7100 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -2280,6 +2280,7 @@
     else
     {
 	int fdflags = fcntl(fd, F_GETFD);
+
 	if (fdflags >= 0 && (fdflags & FD_CLOEXEC) == 0)
 	    (void)fcntl(fd, F_SETFD, fdflags | FD_CLOEXEC);
     }
diff --git a/src/option.c b/src/option.c
index ca6fadb..094a723 100644
--- a/src/option.c
+++ b/src/option.c
@@ -3835,7 +3835,7 @@
  *
  * Returns:
  * Number option: gov_number, *numval gets value.
- * Tottle option: gov_bool,   *numval gets value.
+ * Toggle option: gov_bool,   *numval gets value.
  * String option: gov_string, *stringval gets allocated string.
  * Hidden Number option: gov_hidden_number.
  * Hidden Toggle option: gov_hidden_bool.
diff --git a/src/screen.c b/src/screen.c
index 7c6fe63..60544b6 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -3087,7 +3087,6 @@
     // Can't use ScreenLines unless initialized
     if (ScreenLines == NULL)
 	return;
-
     if (col != screen_cur_col || row != screen_cur_row)
     {
 	// Check for valid position.
diff --git a/src/testdir/Make_vms.mms b/src/testdir/Make_vms.mms
index 1e4f0d5..b6c6fab 100644
--- a/src/testdir/Make_vms.mms
+++ b/src/testdir/Make_vms.mms
@@ -4,7 +4,7 @@
 # Authors:	Zoltan Arpadffy, <arpadffy@polarhome.com>
 #		Sandor Kopanyi,  <sandor.kopanyi@mailbox.hu>
 #
-# Last change:  2020 Aug 13
+# Last change:  2020 Aug 14
 #
 # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
 # Edit the lines in the Configuration section below to select.
diff --git a/src/testdir/test_signals.vim b/src/testdir/test_signals.vim
index 1723f33..72fd024 100644
--- a/src/testdir/test_signals.vim
+++ b/src/testdir/test_signals.vim
@@ -85,8 +85,8 @@
     throw 'Skipped: INT signal not supported'
   endif
 
-  " Skip the rest of the test when running with valgrind as signal INT is not
-  " received somehow by Vim when running with valgrind.
+  " Skip the test when running with valgrind as signal INT is not received
+  " somehow by Vim when running with valgrind.
   let cmd = GetVimCommand()
   if cmd =~ 'valgrind'
     throw 'Skipped: cannot test signal INT with valgrind'
@@ -119,10 +119,6 @@
     throw 'Skipped: TERM signal not supported'
   endif
   CheckRunVimInTerminal
-  let cmd = GetVimCommand()
-  if cmd =~ 'valgrind'
-    throw 'Skipped: cannot test signal TERM with valgrind'
-  endif
 
   " If test fails once, it can leave temporary files and trying to rerun
   " the test would then fail again if they are not deleted first.
diff --git a/src/version.c b/src/version.c
index e6df876..b344129 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2276,
+/**/
     2275,
 /**/
     2274,
