= groups_bynum.find(i);
if (it != groups_bynum.end())
{ //it is
- std::string name = it->second;
if (!what[i].str().empty())
- vars[name] = what[i];
+ vars[it->second] = what[i];
}
}
std::string rvalue = sub_vars(uri_pat, vars);
yaz_log(YLOG_LOG, "! Rewritten '%s' to '%s'",
what.str(0).c_str(), rvalue.c_str());
- out += std::string(start, what[0].first) + rvalue;
+ out.append(start, what[0].first);
+ out.append(rvalue);
start = what[0].second; //move search forward
}
//if we had a match cat the last part
if (start != txt.begin())
- out += std::string(start, end);
+ out.append(start, end);
return out;
}