From f4a670a9110426e9153e7d5f6e7b7d1f1eac6195 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Thu, 23 Mar 2017 17:58:32 +0100 Subject: [PATCH] paste: delimiter list use should restart for each new output line Signed-off-by: Denys Vlasenko --- coreutils/paste.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/coreutils/paste.c b/coreutils/paste.c index 54e15c9a0..d929d6aa0 100644 --- a/coreutils/paste.c +++ b/coreutils/paste.c @@ -36,11 +36,12 @@ static void paste_files(FILE** files, int file_cnt, char* delims, int del_cnt) { char *line; char delim; - int del_idx = 0; int active_files = file_cnt; int i; while (active_files > 0) { + int del_idx = 0; + for (i = 0; i < file_cnt; ++i) { if (files[i] == NULL) continue; @@ -70,10 +71,11 @@ static void paste_files_separate(FILE** files, char* delims, int del_cnt) { char *line, *next_line; char delim; - int del_idx = 0; int i; for (i = 0; files[i]; ++i) { + int del_idx = 0; + line = NULL; while ((next_line = xmalloc_fgetline(files[i])) != NULL) { if (line) { -- 2.25.1