diff --git a/src/cmdexpand.c b/src/cmdexpand.c
index ff6aa0d..fb329a5 100644
--- a/src/cmdexpand.c
+++ b/src/cmdexpand.c
@@ -722,8 +722,9 @@
 	findex = -1;			    // next p_wc gets first one
     }
 
-    // Concatenate all matching names
-    if (mode == WILD_ALL && xp->xp_numfiles > 0)
+    // Concatenate all matching names.  Unless interrupted, this can be slow
+    // and the result probably won't be used.
+    if (mode == WILD_ALL && xp->xp_numfiles > 0 && !got_int)
     {
 	len = 0;
 	for (i = 0; i < xp->xp_numfiles; ++i)
diff --git a/src/filepath.c b/src/filepath.c
index 0867a51..ecee8db 100644
--- a/src/filepath.c
+++ b/src/filepath.c
@@ -3180,8 +3180,9 @@
 
     /*
      * Move the names where 'suffixes' match to the end.
+     * Skip when interrupted, the result probably won't be used.
      */
-    if (*num_files > 1)
+    if (*num_files > 1 && !got_int)
     {
 	non_suf_match = 0;
 	for (i = 0; i < *num_files; ++i)
@@ -3719,7 +3720,7 @@
     // Find all matching entries
     if (dirp != NULL)
     {
-	for (;;)
+	while (!got_int)
 	{
 	    dp = readdir(dirp);
 	    if (dp == NULL)
@@ -3789,8 +3790,10 @@
     vim_free(buf);
     vim_regfree(regmatch.regprog);
 
+    // When interrupted the matches probably won't be used and sorting can be
+    // slow, thus skip it.
     matches = gap->ga_len - start_len;
-    if (matches > 0)
+    if (matches > 0 && !got_int)
 	qsort(((char_u **)gap->ga_data) + start_len, matches,
 						   sizeof(char_u *), pstrcmp);
     return matches;
@@ -3918,7 +3921,7 @@
      */
     ga_init2(&ga, sizeof(char_u *), 30);
 
-    for (i = 0; i < num_pat; ++i)
+    for (i = 0; i < num_pat && !got_int; ++i)
     {
 	add_pat = -1;
 	p = pat[i];
diff --git a/src/version.c b/src/version.c
index 9ce33cd..9b98edc 100644
--- a/src/version.c
+++ b/src/version.c
@@ -732,6 +732,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    231,
+/**/
     230,
 /**/
     229,
