From 1afa04b2d1a890e3b6a7722e7bb26607fc379c74 Mon Sep 17 00:00:00 2001 From: rlar Date: Sat, 22 Apr 2017 20:43:02 +0200 Subject: [PATCH] inpcom.c, insert_new_line(), inline xx_new_line() --- src/frontend/inpcom.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/frontend/inpcom.c b/src/frontend/inpcom.c index d12876ff5..f5bfd8d1b 100644 --- a/src/frontend/inpcom.c +++ b/src/frontend/inpcom.c @@ -178,11 +178,19 @@ xx_new_line(struct line *next, char *line, int linenum, int linenum_orig) static struct line * insert_new_line(struct line *card, char *line, int linenum, int linenum_orig) { - if (!card) - return xx_new_line(NULL, line, linenum, linenum_orig); + struct line *x = TMALLOC(struct line, 1); - card = card->li_next = xx_new_line(card->li_next, line, linenum, linenum_orig); - return card; + x->li_next = card ? card->li_next : NULL; + x->li_error = NULL; + x->li_actual = NULL; + x->li_line = line; + x->li_linenum = linenum; + x->li_linenum_orig = linenum_orig; + + if (card) + card->li_next = x; + + return x; }