commit
c9460110e072df84b7dee3eb651f2ec5df75fb18
Author: Jesse Beder <jbeder@gmail.com>
Date: Mon Jan 20 18:05:15 2020 -0600
Fix reading empty token stack with a node with properties but no scalar.
E.g. `!2`.
Gbp-Pq: Name fix-CVE-2017-11692.patch
if (!anchor_name.empty())
eventHandler.OnAnchor(mark, anchor_name);
+ // after parsing properties, an empty node is again a possibility
+ if (m_scanner.empty()) {
+ eventHandler.OnNull(mark, anchor);
+ return;
+ }
+
const Token& token = m_scanner.peek();
if (token.type == Token::PLAIN_SCALAR && IsNullString(token.value)) {
EXPECT_EQ(node.as<std::string>(), "foo");
}
+TEST(NodeTest, LoadTagWithNullScalar) {
+ Node node = Load("!2");
+ EXPECT_TRUE(node.IsNull());
+}
+
} // namespace
} // namespace YAML