diff --git a/ChangeLog b/ChangeLog
index c657033c5c41dcb5354d26eade4ee12e1464fad7..e462564c9de925ad6346027c0dafb6de3627122d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,8 @@
 2015-07-13  Benno Schulenberg  <bensberg@justemail.net>
 	* src/text.c (do_int_spell_fix, do_alt_speller): Remove an unneeded
 	condition; 'added_magicline' can only be true when NO_NEWLINES isn't.
+	* src/files.c (replace_buffer): Prevent a segfault when spellchecking
+	a marked region and nonewlines isn't set.
 
 2015-07-12  Benno Schulenberg  <bensberg@justemail.net>
 	* src/text.c (do_alt_speller): Rename the variable 'totsize_save'
diff --git a/src/files.c b/src/files.c
index 42e1b95e1f11d61afeba389980f1929bf2ef9f2f..2198fac203047822f9eabfcaed6a3f6d4ffa3e0c 100644
--- a/src/files.c
+++ b/src/files.c
@@ -420,6 +420,9 @@ void replace_buffer(const char *filename)
     /* If opening the file succeeded, read it in. */
     if (descriptor > 0)
 	read_file(f, descriptor, filename, FALSE, TRUE);
+
+    /* Put current at a place that is certain to exist. */
+    openfile->current = openfile->fileage;
 }
 #endif /* !DISABLE_SPELLER */