Skip to content

Commit d9b4cee

Browse files
committed
csfilter.cc: store MsgReplace directly in TMsgReplaceList
... as the contents of std::vector are already allocated on the heap.
1 parent afa2e0f commit d9b4cee

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

src/csfilter.cc

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ struct MsgReplace {
5757
}
5858
};
5959

60-
typedef std::vector<MsgReplace *> TMsgReplaceList;
60+
typedef std::vector<MsgReplace> TMsgReplaceList;
6161

6262
struct MsgFilter::Private {
6363
bool ignorePath = false;
@@ -78,7 +78,7 @@ struct MsgFilter::Private {
7878
const std::string &regexp,
7979
const std::string &replacement = "")
8080
{
81-
this->repList.push_back(new MsgReplace(checker, regexp, replacement));
81+
repList.emplace_back(checker, regexp, replacement);
8282
}
8383
};
8484

@@ -142,9 +142,6 @@ MsgFilter::MsgFilter():
142142

143143
MsgFilter::~MsgFilter()
144144
{
145-
for (struct MsgReplace *rpl : d->repList)
146-
delete rpl;
147-
148145
delete d;
149146
}
150147

@@ -165,9 +162,9 @@ std::string MsgFilter::filterMsg(
165162
const std::string &checker)
166163
{
167164
std::string filtered = msg;
168-
for (const struct MsgReplace *rpl : d->repList)
169-
if (boost::regex_search(checker, rpl->reChecker))
170-
filtered = regexReplaceWrap(filtered, rpl->reMsg, rpl->replaceWith);
165+
for (const MsgReplace &rpl : d->repList)
166+
if (boost::regex_search(checker, rpl.reChecker))
167+
filtered = regexReplaceWrap(filtered, rpl.reMsg, rpl.replaceWith);
171168

172169
#if DEBUG_SUBST > 1
173170
std::cerr << "filterMsg: " << filtered << "\n";

0 commit comments

Comments
 (0)