From b289b1882031a0fbcb6a1d0c702fba88ec85acf4 Mon Sep 17 00:00:00 2001 From: Jean-Marc Lasgouttes Date: Sat, 13 Jul 2019 00:10:32 +0200 Subject: [PATCH] Check regex_match result when parsing cvslog Spotted by coverity. --- src/VCBackend.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/VCBackend.cpp b/src/VCBackend.cpp index 957c69f585..3a4ecb4f05 100644 --- a/src/VCBackend.cpp +++ b/src/VCBackend.cpp @@ -734,12 +734,14 @@ void CVS::getRevisionInfo() LYXERR(Debug::LYXVC, line << '\n'); if (prefixIs(line, "date:")) { smatch sm; - regex_match(line, sm, reg); - //sm[0]; // whole matched string - rev_date_cache_ = sm[1]; - rev_time_cache_ = sm[2]; - //sm[3]; // GMT offset - rev_author_cache_ = sm[4]; + if (regex_match(line, sm, reg)) { + //sm[0]; // whole matched string + rev_date_cache_ = sm[1]; + rev_time_cache_ = sm[2]; + //sm[3]; // GMT offset + rev_author_cache_ = sm[4]; + } else + LYXERR(Debug::LYXVC, "\tCannot parse line. Skipping."); break; } } -- 2.39.5