From b6311d2ece6d373ed90b230c6efe256f69ef5f15 Mon Sep 17 00:00:00 2001 From: ilor <kailoran@gmail.com> Date: Mon, 30 May 2011 10:47:02 +0200 Subject: [PATCH] fix wccl-run --aggregate=1 again --- wccl-apps/wccl-run.cpp | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/wccl-apps/wccl-run.cpp b/wccl-apps/wccl-run.cpp index 8d79c1c..b1bd146 100644 --- a/wccl-apps/wccl-run.cpp +++ b/wccl-apps/wccl-run.cpp @@ -275,22 +275,23 @@ void Runner::output_tabular(const std::vector<std::vector<UnicodeString> >& outp { std::vector<int> lengths(outputs[0].size()); foreach (const std::vector< UnicodeString >& line, outputs) { + if (line.empty()) continue; for (size_t i = 0; i < line.size(); ++i) { lengths[i] = std::max(lengths[i], line[i].length()); } } foreach (const std::vector< UnicodeString >& line, outputs) { - for (size_t i = 0; i < line.size() - 1; ++i) { - UnicodeString u = line[i]; - if (tabs) { - std::cout << PwrNlp::to_utf8(line[i]) << "\t"; - } else { - u.padTrailing(lengths[i] + 1); - std::cout << PwrNlp::to_utf8(u); - } - } if (!line.empty()) { + for (size_t i = 0; i < line.size() - 1; ++i) { + UnicodeString u = line[i]; + if (tabs) { + std::cout << PwrNlp::to_utf8(line[i]) << "\t"; + } else { + u.padTrailing(lengths[i] + 1); + std::cout << PwrNlp::to_utf8(u); + } + } std::cout << PwrNlp::to_utf8(line.back()); } std::cout << "\n"; @@ -317,7 +318,11 @@ void Runner::run(boost::shared_ptr<Corpus2::TokenReader> reader, bool first) timer.check_slice(); } if (!filter_op_) { - std::cout << "\n"; + if (!aggregate_output_) { + std::cout << "\n"; + } else { + outputs.resize(outputs.size() + 1); + } } if (first) break; } -- GitLab