patch 8.2.1811: mapping Ctrl-key does not work for '{', '}' and '|'

Problem:    Mapping Ctrl-key does not work for '{', '}' and '|'.
Solution:   Remove the shift modifier. (closes #6457)
diff --git a/src/misc2.c b/src/misc2.c
index b69714a..6316b53 100644
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -2974,7 +2974,8 @@
 
 /*
  * Some keys already have Shift included, pass them as normal keys.
- * Not when Ctrl is also used, because <C-H> and <C-S-H> are different.
+ * When Ctrl is also used <C-H> and <C-S-H> are different, but <C-S-{> should
+ * be <C-{>.  Same for <C-S-}> and <C-S-|>.
  * Also for <A-S-a> and <M-S-a>.
  * This includes all printable ASCII characters except numbers and a-z.
  */
@@ -2989,6 +2990,11 @@
 		|| (key >= '[' && key <= '`')
 		|| (key >= '{' && key <= '~')))
 	return modifiers & ~MOD_MASK_SHIFT;
+
+    if (modifiers == (MOD_MASK_SHIFT | MOD_MASK_CTRL)
+		&& (key == '{' || key == '}' || key == '|'))
+	return modifiers & ~MOD_MASK_SHIFT;
+
     return modifiers;
 }