diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/core/css/parser/css_parser_selector.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/core/css/parser/css_parser_selector.cc | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/chromium/third_party/blink/renderer/core/css/parser/css_parser_selector.cc b/chromium/third_party/blink/renderer/core/css/parser/css_parser_selector.cc index 5895646878a..de16b87d282 100644 --- a/chromium/third_party/blink/renderer/core/css/parser/css_parser_selector.cc +++ b/chromium/third_party/blink/renderer/core/css/parser/css_parser_selector.cc @@ -39,16 +39,10 @@ CSSParserSelector::CSSParserSelector(const QualifiedName& tag_q_name, : selector_(std::make_unique<CSSSelector>(tag_q_name, is_implicit)) {} CSSParserSelector::~CSSParserSelector() { - if (!tag_history_) - return; - Vector<std::unique_ptr<CSSParserSelector>, 16> to_delete; - std::unique_ptr<CSSParserSelector> selector = std::move(tag_history_); - while (true) { - std::unique_ptr<CSSParserSelector> next = std::move(selector->tag_history_); - to_delete.push_back(std::move(selector)); - if (!next) - break; - selector = std::move(next); + while (tag_history_) { + std::unique_ptr<CSSParserSelector> next = + std::move(tag_history_->tag_history_); + tag_history_ = std::move(next); } } |