Skip to content

cmStringCommand: clear intermediate matches

When string(REGEX REPLACE) or string(REGEX MATCHALL) loop internally, they store their matches, but they do not clear the previous match from an earlier iteration. This can leave the contents of CMAKE_MATCH_<N> with bogus values for later matches in the string if they have groups which earlier matched a non-empty string, but now match an empty string.

Fixes #17079 (closed).

Edited by Ben Boeckel

Merge request reports