summaryrefslogtreecommitdiff
path: root/src/fe-text/gui-printtext.c
diff options
context:
space:
mode:
authorailin-nemui <ailin-nemui@users.noreply.github.com>2018-03-17 13:36:38 +0100
committerailin-nemui <ailin-nemui@users.noreply.github.com>2018-03-17 13:36:38 +0100
commitc7ca8102c002287f492ca71f2193ee9b269f5bf5 (patch)
tree15fcc96c0697bf9754fba51b77fe1a4309c763a1 /src/fe-text/gui-printtext.c
parent65a139aa9e8a7cb7a7a123ab57ee05836c9e89ea (diff)
downloadirssi-c7ca8102c002287f492ca71f2193ee9b269f5bf5.zip
fix a crash when trying to append to a NULL line
reported by @vague666
Diffstat (limited to 'src/fe-text/gui-printtext.c')
-rw-r--r--src/fe-text/gui-printtext.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/fe-text/gui-printtext.c b/src/fe-text/gui-printtext.c
index 13d8c233..83a36f14 100644
--- a/src/fe-text/gui-printtext.c
+++ b/src/fe-text/gui-printtext.c
@@ -120,12 +120,19 @@ void gui_printtext_internal(int xpos, int ypos, const char *str)
next_xpos = next_ypos = -1;
}
+static void view_add_eol(TEXT_BUFFER_VIEW_REC *view, LINE_REC **line);
+
void gui_printtext_after_time(TEXT_DEST_REC *dest, LINE_REC *prev, const char *str, time_t time)
{
GUI_WINDOW_REC *gui;
gui = WINDOW_GUI(dest->window);
+ if (prev == NULL && !gui->view->buffer->last_eol) {
+ /* we have an unfinished line in the buffer still */
+ view_add_eol(gui->view, &gui->insert_after);
+ }
+
gui->use_insert_after = TRUE;
gui->insert_after = prev;
gui->insert_after_time = time;