updated for version 7.0220
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 9deeae4..23dbcd5 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -949,9 +949,14 @@
 	do_shell(newcmd, 0);
     }
     else				/* :range! */
+    {
 	/* Careful: This may recursively call do_bang() again! (because of
 	 * autocommands) */
 	do_filter(line1, line2, eap, newcmd, do_in, do_out);
+#ifdef FEAT_AUTOCMD
+	apply_autocmds(EVENT_SHELLFILTERPOST, NULL, NULL, FALSE, curbuf);
+#endif
+    }
     if (free_newcmd)
 	vim_free(newcmd);
 }
@@ -1419,6 +1424,10 @@
 
     /* display any error messages now */
     display_errors();
+
+#ifdef FEAT_AUTOCMD
+    apply_autocmds(EVENT_SHELLCMDPOST, NULL, NULL, FALSE, curbuf);
+#endif
 }
 
 /*