diff --git a/src/buffer.c b/src/buffer.c
index 1f1833f..f76d849 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -5627,6 +5627,15 @@
 #endif
 
 /*
+ * Return TRUE if "buf" is a normal buffer, 'buftype' is empty.
+ */
+    int
+bt_normal(buf_T *buf)
+{
+    return buf != NULL && buf->b_p_bt[0] == NUL;
+}
+
+/*
  * Return TRUE if "buf" is the quickfix buffer.
  */
     int
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 6682286..0539a51 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -11768,7 +11768,7 @@
      */
     if ((*flagp & SSOP_FOLDS)
 	    && wp->w_buffer->b_ffname != NULL
-	    && (*wp->w_buffer->b_p_bt == NUL || bt_help(wp->w_buffer)))
+	    && (bt_normal(wp->w_buffer) || bt_help(wp->w_buffer)))
     {
 	if (put_folds(fd, wp) == FAIL)
 	    return FAIL;
diff --git a/src/fileio.c b/src/fileio.c
index 07b241e..281191c 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -6897,7 +6897,7 @@
      * this buffer. */
     if (buf->b_ffname == NULL
 	    || buf->b_ml.ml_mfp == NULL
-	    || *buf->b_p_bt != NUL
+	    || !bt_normal(buf)
 	    || buf->b_saving
 	    || busy
 #ifdef FEAT_NETBEANS_INTG
diff --git a/src/proto/buffer.pro b/src/proto/buffer.pro
index 9e63fb6..6820d97 100644
--- a/src/proto/buffer.pro
+++ b/src/proto/buffer.pro
@@ -56,6 +56,7 @@
 void do_modelines(int flags);
 int read_viminfo_bufferlist(vir_T *virp, int writing);
 void write_viminfo_bufferlist(FILE *fp);
+int bt_normal(buf_T *buf);
 int bt_quickfix(buf_T *buf);
 int bt_terminal(buf_T *buf);
 int bt_help(buf_T *buf);
diff --git a/src/quickfix.c b/src/quickfix.c
index aac1e34..97bfb37 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -2487,7 +2487,7 @@
     win_T	*wp;
 
     FOR_ALL_WINDOWS(wp)
-	if (wp->w_buffer->b_p_bt[0] == NUL)
+	if (bt_normal(wp->w_buffer))
 	    return wp;
 
     return NULL;
@@ -2563,7 +2563,7 @@
 	    win = curwin;
 	    do
 	    {
-		if (win->w_buffer->b_p_bt[0] == NUL)
+		if (bt_normal(win->w_buffer))
 		    break;
 		if (win->w_prev == NULL)
 		    win = lastwin;	/* wrap around the top */
@@ -2620,8 +2620,7 @@
 	}
 
 	/* Remember a usable window. */
-	if (altwin == NULL && !win->w_p_pvw
-		&& win->w_buffer->b_p_bt[0] == NUL)
+	if (altwin == NULL && !win->w_p_pvw && bt_normal(win->w_buffer))
 	    altwin = win;
     }
 
diff --git a/src/version.c b/src/version.c
index 5f7d908..e0af020 100644
--- a/src/version.c
+++ b/src/version.c
@@ -795,6 +795,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    230,
+/**/
     229,
 /**/
     228,
