Commit d071989a authored by Dominik Charousset's avatar Dominik Charousset

Swap vectors in behavior stack if possible

parent 29fa5512
......@@ -36,9 +36,13 @@ void behavior_stack::pop_back() {
void behavior_stack::clear() {
if (! elements_.empty()) {
std::move(elements_.begin(), elements_.end(),
std::back_inserter(erased_elements_));
elements_.clear();
if (erased_elements_.empty()) {
elements_.swap(erased_elements_);
} else {
std::move(elements_.begin(), elements_.end(),
std::back_inserter(erased_elements_));
elements_.clear();
}
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment