diff --git a/ChangeLog b/ChangeLog
index 7a8c4ed9f49d4be8f11973afac17c648372ca3e7..21749e5fcced9fe2d348954932d3593bcc94be94 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,8 @@
 	offer ^Q to close and discard the buffer without saving it.  By
 	default, the key is bound only when --tempfile is in effect.
 	* doc/man/nanorc.5: Improve ordering of bindable functions.
+	* src/files.c (read_file): Don't open an extra blank buffer when
+	an empty file is read.  Bug was exposed by r5498, December 18.
 
 2015-12-23  Mike Frysinger  <vapier@gentoo.org>
 	* doc/syntax/autoconf.nanorc: Handle .m4 files too, add the "elif"
diff --git a/src/files.c b/src/files.c
index 490efa252066ff9bef6e09690ac8ce7c7043766d..61f4d15ca5eaa91c800adcf772b6cbc1f1e0b9b2 100644
--- a/src/files.c
+++ b/src/files.c
@@ -784,11 +784,6 @@ void read_file(FILE *f, int fd, const char *filename, bool undoable, bool checkw
 
     free(buf);
 
-    /* If we didn't get a file and we don't already have one, open a
-     * blank buffer. */
-    if (fileptr == NULL)
-	open_buffer("", FALSE);
-
     /* Attach the file we got to the filestruct.  If we got a file of
      * zero bytes, don't do anything. */
     if (num_lines > 0) {