patch 9.0.0272: BufReadCmd not triggered when loading a "nofile" buffer

Problem:    BufReadCmd not triggered when loading a "nofile" buffer. (Maxim
            Kim)
Solution:   Call readfile() but bail out before reading a file.
            (closes #10983)
diff --git a/src/buffer.c b/src/buffer.c
index 7286852..2c81694 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -167,8 +167,9 @@
 open_buffer(
     int		read_stdin,	    // read file from stdin
     exarg_T	*eap,		    // for forced 'ff' and 'fenc' or NULL
-    int		flags)		    // extra flags for readfile()
+    int		flags_arg)	    // extra flags for readfile()
 {
+    int		flags = flags_arg;
     int		retval = OK;
     bufref_T	old_curbuf;
 #ifdef FEAT_SYN_HL
@@ -220,10 +221,13 @@
     // mark cursor position as being invalid
     curwin->w_valid = 0;
 
+    // A buffer without an actual file should not use the buffer name to read a
+    // file.
+    if (bt_quickfix(curbuf) || bt_nofilename(curbuf))
+	flags |= READ_NOFILE;
+
     // Read the file if there is one.
     if (curbuf->b_ffname != NULL
-	    && !bt_quickfix(curbuf)
-	    && !bt_nofilename(curbuf)
 #ifdef FEAT_NETBEANS_INTG
 	    && netbeansReadFile
 #endif