diff --git a/Filelist b/Filelist
index a8ee341..5151869 100644
--- a/Filelist
+++ b/Filelist
@@ -3,20 +3,23 @@
 
 # source files for all source archives
 SRC_ALL =	\
-		.gitignore \
+		.cirrus.yml \
+		.coveralls.yml
 		.gitattributes \
+		.github/CODEOWNERS \
+		.github/workflows/ci.yml \
+		.github/workflows/codeql-analysis.yml \
+		.gitignore \
 		.hgignore \
 		.lgtm.yml \
 		.travis.yml \
-		.cirrus.yml \
-		.github/workflows/ci.yml \
-		.github/workflows/codeql-analysis.yml \
-		.github/CODEOWNERS \
 		appveyor.yml \
 		ci/appveyor.bat \
+		ci/build-snd-dummy.sh \
+		ci/config.mk*.sed \
 		ci/if_ver*.vim \
 		ci/load-snd-dummy.sh \
-		ci/config.mk*.sed \
+		ci/setup-xvfb.sh \
 		src/Make_all.mak \
 		src/README.md \
 		src/alloc.h \
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,
