You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-30 19:23:07 +03:00
extra string copy eliminanated
This commit is contained in:
@ -323,16 +323,16 @@ std::string Func_regexp_replace::getStrVal(rowgroup::Row& row, FunctionParm& fp,
|
|||||||
return param.expression;
|
return param.expression;
|
||||||
|
|
||||||
PCREOptions options(ct);
|
PCREOptions options(ct);
|
||||||
|
param.CharsetFix(options);
|
||||||
|
jp::Regex re(param.pattern, options.flags);
|
||||||
|
|
||||||
auto replaceWithStr = replaceWith.unsafeStringRef();
|
const auto& replaceWithStr = replaceWith.unsafeStringRef();
|
||||||
if (options.conversionIsNeeded)
|
if (options.conversionIsNeeded)
|
||||||
{
|
{
|
||||||
replaceWithStr = csConvert(replaceWithStr, options.libraryCharset, options.dataCharset);
|
const auto& convertedReplaceToken = csConvert(replaceWithStr, options.libraryCharset, options.dataCharset);
|
||||||
|
return re.replace(param.expression, convertedReplaceToken, "g");
|
||||||
}
|
}
|
||||||
|
|
||||||
param.CharsetFix(options);
|
|
||||||
|
|
||||||
jp::Regex re(param.pattern, options.flags);
|
|
||||||
|
|
||||||
return re.replace(param.expression, replaceWithStr, "g");
|
return re.replace(param.expression, replaceWithStr, "g");
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user