From 06b7f5d2cac5e697b503337e870e34b11a592bd1 Mon Sep 17 00:00:00 2001
From: Zack Galbreath <zack.galbreath@kitware.com>
Date: Wed, 23 Mar 2016 12:09:41 -0400
Subject: CTest: Only apply the secondary test timeout once

This commit fixes a bug in the implementation of the test property
TIMEOUT_AFTER_MATCH.  The new timeout value was being applied
every time a line was output by the test after the match had been
encountered.  Now the new timeout value is only set once.

This commit also improves some output formatting related to this
property.
---
 Source/CTest/cmCTestRunTest.cxx | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Source/CTest/cmCTestRunTest.cxx b/Source/CTest/cmCTestRunTest.cxx
index 7f3a077..f329e77 100644
--- a/Source/CTest/cmCTestRunTest.cxx
+++ b/Source/CTest/cmCTestRunTest.cxx
@@ -77,11 +77,13 @@ bool cmCTestRunTest::CheckOutput()
           if ( regIt->first.find(this->ProcessOutput.c_str()) )
             {
             cmCTestLog(this->CTest, HANDLER_VERBOSE_OUTPUT,
+                       this->GetIndex() << ": " <<
                        "Test timeout changed to " <<
                        this->TestProperties->AlternateTimeout << std::endl);
             this->TestProcess->ResetStartTime();
             this->TestProcess->ChangeTimeout(
               this->TestProperties->AlternateTimeout);
+            this->TestProperties->TimeoutRegularExpressions.clear();
             break;
             }
           }
-- 
cgit v0.12