diff --git a/ChangeLog b/ChangeLog
index 362c7c52349a48e247499f0e3d6145e06ceb0910..e26c64ecd2ee438f56b7c0c636dd026232fcc0bc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-06-22  Mark Majeres  <mark@engine12.com>
+	* src/text.c (do_redo): When redoing a line join at the tail
+        of the file, make sure openfile->filebot is updated.
+
 2014-06-21  Mark Majeres  <mark@engine12.com>
 	* src/text.c (undo_cut, add_undo): When undoing a cut-till-eof,
 	put the cursor back where the cut started, and not at the end.
diff --git a/src/text.c b/src/text.c
index da4da3e1b28e1ecdb2321e5b3a47b53cc8444ea1..f3b9c86156bddc596efc7922563eb7c037ed7f39 100644
--- a/src/text.c
+++ b/src/text.c
@@ -640,6 +640,8 @@ void do_redo(void)
 	strcat(f->data, u->strdata);
 	if (f->next != NULL) {
 	    filestruct *tmp = f->next;
+	    if (tmp == openfile->filebot)
+		openfile->filebot = f;
 	    unlink_node(tmp);
 	    delete_node(tmp);
 	}