From 5024bde8f407582c9cb5a916f3b5603184f76eb7 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 25 Nov 2008 01:06:15 +0000 Subject: * Handle prematurely ended logfiles, i.e. make sure we emit enough close tags. --- src/nix-log2xml/log2xml.cc | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'src/nix-log2xml') diff --git a/src/nix-log2xml/log2xml.cc b/src/nix-log2xml/log2xml.cc index 9be3978a9274..8a3cbc8c42cd 100644 --- a/src/nix-log2xml/log2xml.cc +++ b/src/nix-log2xml/log2xml.cc @@ -34,6 +34,8 @@ struct Decoder void pushChar(char c); void finishLine(); + + void decodeFile(istream & st); }; @@ -158,16 +160,26 @@ void Decoder::finishLine() } -int main(int argc, char * * argv) +void Decoder::decodeFile(istream & st) { - Decoder dec; int c; - + cout << "" << endl; - while ((c = getchar()) != EOF) { - dec.pushChar(c); + while ((c = st.get()) != EOF) { + pushChar(c); } + if (line.size()) finishLine(); + + while (level--) cout << "" << endl; + cout << "" << endl; } + + +int main(int argc, char * * argv) +{ + Decoder dec; + dec.decodeFile(cin); +} -- cgit 1.4.1