https://bugs.kde.org/show_bug.cgi?id=462220

--- Comment #1 from Olivier Delande <olivier.dela...@gmail.com> ---
I am not familiar with Kate's codebase, but my impression is that the bug is in
MatchModel::generateReplaceString, in addons/search/MatchModel.cpp.

The method computes the replacement text from the replacement pattern by
applying various substitutions (for \0, \{0}, \L\0, \t, \n, etc.) sequentially
rather than in parallel, with the unfortunate consequence that substituted text
is subjected to the subsequent substitutions. The author seems to have
anticipated a related issue, by temporarily replacing all occurrences of "\\"
with "¤Search&Replace¤", probably to handle cases like "\\0".

It seems to me that a correct implementation would be to build the replacement
text incrementally, by iterating through the replacement pattern in one pass,
interpreting each special sequence as we go.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to