diff --git a/src/buffer.c b/src/buffer.c
index 697efa3..b4481b2 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -526,12 +526,6 @@
     return can_unload;
 }
 
-    int
-buf_locked(buf_T *buf)
-{
-    return buf->b_locked || buf->b_locked_split;
-}
-
 /*
  * Close the link to a buffer.
  * "action" is used when there is no longer a window for the buffer.
@@ -1432,12 +1426,19 @@
     if ((flags & DOBUF_NOPOPUP) && bt_popup(buf) && !bt_terminal(buf))
 	return OK;
 #endif
-    if (
-	action == DOBUF_GOTO
-	&& buf != curbuf
-	&& !check_can_set_curbuf_forceit((flags & DOBUF_FORCEIT) ? TRUE : FALSE))
-      // disallow navigating to another buffer when 'winfixbuf' is applied
-      return FAIL;
+    if (action == DOBUF_GOTO && buf != curbuf)
+    {
+	if (!check_can_set_curbuf_forceit((flags & DOBUF_FORCEIT) != 0))
+	    // disallow navigating to another buffer when 'winfixbuf' is applied
+	    return FAIL;
+	if (buf->b_locked_split)
+	{
+	    // disallow navigating to a closing buffer, which like splitting,
+	    // can result in more windows displaying it
+	    emsg(_(e_cannot_switch_to_a_closing_buffer));
+	    return FAIL;
+	}
+    }
 
     if ((action == DOBUF_GOTO || action == DOBUF_SPLIT)
 						  && (buf->b_flags & BF_DUMMY))
