if (cur_tag->flags & FL_CLOSED) {
cur_tag->closing.end = cur_tag->content_offset;
cur_tag->closing.start = cur_tag->tag_start;
+
+ cur_tag = parent_tag;
}
};
{
const std::vector<std::pair<std::string, std::string>> cases{
- /* Tables */
- {"<table>\n"
- " <tr>\n"
- " <th>heada</th>\n"
- " <th>headb</th>\n"
- " </tr>\n"
- " <tr>\n"
- " <td>data1</td>\n"
- " <td>data2</td>\n"
- " </tr>\n"
- " </table>", "heada headb\ndata1 data2\n"},
+ {" <body>\n"
+ " <!-- escape content -->\n"
+ " a b a > b a < b a & b 'a "a"\n"
+ " </body>", R"|(a b a > b a < b a & b 'a "a")|"},
/* XML tags */
{"<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n"
" <!DOCTYPE html\n"
" </body>\n"
"</html>", "Hello, world! test\ndata<>\nstuff?"},
{"<p><!--comment-->test</br></hr><br>", "test\n"},
-
+ /* Tables */
+ {"<table>\n"
+ " <tr>\n"
+ " <th>heada</th>\n"
+ " <th>headb</th>\n"
+ " </tr>\n"
+ " <tr>\n"
+ " <td>data1</td>\n"
+ " <td>data2</td>\n"
+ " </tr>\n"
+ " </table>", "heada headb\ndata1 data2\n"},
};
rspamd_url_init(NULL);