diff options
Diffstat (limited to 'src/ruleparser.cpp')
-rw-r--r-- | src/ruleparser.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/ruleparser.cpp b/src/ruleparser.cpp index 9a83203..d6e634e 100644 --- a/src/ruleparser.cpp +++ b/src/ruleparser.cpp @@ -81,8 +81,19 @@ void Rules::load() repo.branches += branch; continue; - } else if (line == "end repository") { + } else if (matchRepoLine.exactMatch(line)) { + repo.forwardTo = matchRepoLine.cap(1); + continue; + } else if (matchPrefixLine.exactMatch(line)) { + repo.prefix = matchPrefixLine.cap(1); + continue; + } else if (line == "end repository") { m_repositories += repo; + { + // clear out 'repo' + Repository temp; + std::swap(repo, temp); + } state = ReadingNone; continue; } |