From 13ba23bb79ce689f29d67e8656a599f019e9bb03 Mon Sep 17 00:00:00 2001 From: Justin Bogner Date: Fri, 19 Sep 2014 08:13:16 +0000 Subject: llvm-cov: Fix dropped lines when filters were applied Uncovered lines in the middle of a covered region weren't being shown when filtering to a particular function. llvm-svn: 218109 --- llvm/tools/llvm-cov/SourceCoverageView.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'llvm/tools/llvm-cov') diff --git a/llvm/tools/llvm-cov/SourceCoverageView.cpp b/llvm/tools/llvm-cov/SourceCoverageView.cpp index 2ad3e145198..3be54f828da 100644 --- a/llvm/tools/llvm-cov/SourceCoverageView.cpp +++ b/llvm/tools/llvm-cov/SourceCoverageView.cpp @@ -163,6 +163,7 @@ void SourceCoverageView::render(raw_ostream &OS, bool WholeFile, auto NextSegment = CoverageSegments.begin(); auto EndSegment = CoverageSegments.end(); + unsigned FirstLine = NextSegment != EndSegment ? NextSegment->Line : 0; const CoverageSegment *WrappedSegment = nullptr; SmallVector LineSegments; for (line_iterator LI(File, /*SkipBlanks=*/false); !LI.is_at_eof(); ++LI) { @@ -171,7 +172,7 @@ void SourceCoverageView::render(raw_ostream &OS, bool WholeFile, if (!WholeFile) { if (NextSegment == EndSegment) break; - else if (LI.line_number() < NextSegment->Line) + else if (LI.line_number() < FirstLine) continue; } -- cgit v1.2.3