/[packages]/updates/8/expat/current/SOURCES/fix_test_dup.patch
ViewVC logotype

Contents of /updates/8/expat/current/SOURCES/fix_test_dup.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1790357 - (show annotations) (download)
Fri Mar 11 09:19:06 2022 UTC (18 months, 1 week ago) by ns80
File size: 3823 byte(s)
- add patches from Ubuntu to fix regressions introduced by security fixes (mga#30145)

1 Description: Removing tests were added duplicated
2 Author: Leonidas S. Barbosa <leo.barbosa@canonical.com>
3
4 diff --git a/tests/runtests.c b/tests/runtests.c
5 index b88148e..8f56266 100644
6 --- a/tests/runtests.c
7 +++ b/tests/runtests.c
8 @@ -2739,81 +2739,6 @@ START_TEST(test_dtd_elements) {
9 }
10 END_TEST
11
12 -static void XMLCALL
13 -element_decl_check_model(void *userData, const XML_Char *name,
14 - XML_Content *model) {
15 - UNUSED_P(userData);
16 - uint32_t errorFlags = 0;
17 -
18 - /* Expected model array structure is this:
19 - * [0] (type 6, quant 0)
20 - * [1] (type 5, quant 0)
21 - * [3] (type 4, quant 0, name "bar")
22 - * [4] (type 4, quant 0, name "foo")
23 - * [5] (type 4, quant 3, name "xyz")
24 - * [2] (type 4, quant 2, name "zebra")
25 - */
26 - errorFlags |= ((xcstrcmp(name, XCS("junk")) == 0) ? 0 : (1u << 0));
27 - errorFlags |= ((model != NULL) ? 0 : (1u << 1));
28 -
29 - errorFlags |= ((model[0].type == XML_CTYPE_SEQ) ? 0 : (1u << 2));
30 - errorFlags |= ((model[0].quant == XML_CQUANT_NONE) ? 0 : (1u << 3));
31 - errorFlags |= ((model[0].numchildren == 2) ? 0 : (1u << 4));
32 - errorFlags |= ((model[0].children == &model[1]) ? 0 : (1u << 5));
33 - errorFlags |= ((model[0].name == NULL) ? 0 : (1u << 6));
34 -
35 - errorFlags |= ((model[1].type == XML_CTYPE_CHOICE) ? 0 : (1u << 7));
36 - errorFlags |= ((model[1].quant == XML_CQUANT_NONE) ? 0 : (1u << 8));
37 - errorFlags |= ((model[1].numchildren == 3) ? 0 : (1u << 9));
38 - errorFlags |= ((model[1].children == &model[3]) ? 0 : (1u << 10));
39 - errorFlags |= ((model[1].name == NULL) ? 0 : (1u << 11));
40 -
41 - errorFlags |= ((model[2].type == XML_CTYPE_NAME) ? 0 : (1u << 12));
42 - errorFlags |= ((model[2].quant == XML_CQUANT_REP) ? 0 : (1u << 13));
43 - errorFlags |= ((model[2].numchildren == 0) ? 0 : (1u << 14));
44 - errorFlags |= ((model[2].children == NULL) ? 0 : (1u << 15));
45 - errorFlags |= ((xcstrcmp(model[2].name, XCS("zebra")) == 0) ? 0 : (1u << 16));
46 -
47 - errorFlags |= ((model[3].type == XML_CTYPE_NAME) ? 0 : (1u << 17));
48 - errorFlags |= ((model[3].quant == XML_CQUANT_NONE) ? 0 : (1u << 18));
49 - errorFlags |= ((model[3].numchildren == 0) ? 0 : (1u << 19));
50 - errorFlags |= ((model[3].children == NULL) ? 0 : (1u << 20));
51 - errorFlags |= ((xcstrcmp(model[3].name, XCS("bar")) == 0) ? 0 : (1u << 21));
52 -
53 - errorFlags |= ((model[4].type == XML_CTYPE_NAME) ? 0 : (1u << 22));
54 - errorFlags |= ((model[4].quant == XML_CQUANT_NONE) ? 0 : (1u << 23));
55 - errorFlags |= ((model[4].numchildren == 0) ? 0 : (1u << 24));
56 - errorFlags |= ((model[4].children == NULL) ? 0 : (1u << 25));
57 - errorFlags |= ((xcstrcmp(model[4].name, XCS("foo")) == 0) ? 0 : (1u << 26));
58 -
59 - errorFlags |= ((model[5].type == XML_CTYPE_NAME) ? 0 : (1u << 27));
60 - errorFlags |= ((model[5].quant == XML_CQUANT_PLUS) ? 0 : (1u << 28));
61 - errorFlags |= ((model[5].numchildren == 0) ? 0 : (1u << 29));
62 - errorFlags |= ((model[5].children == NULL) ? 0 : (1u << 30));
63 - errorFlags |= ((xcstrcmp(model[5].name, XCS("xyz")) == 0) ? 0 : (1u << 31));
64 -
65 - XML_SetUserData(g_parser, (void *)(uintptr_t)errorFlags);
66 - XML_FreeContentModel(g_parser, model);
67 -}
68 -
69 -START_TEST(test_dtd_elements_nesting) {
70 - // Payload inspired by a test in Perl's XML::Parser
71 - const char *text = "<!DOCTYPE foo [\n"
72 - "<!ELEMENT junk ((bar|foo|xyz+), zebra*)>\n"
73 - "]>\n"
74 - "<foo/>";
75 -
76 - XML_SetUserData(g_parser, (void *)(uintptr_t)-1);
77 -
78 - XML_SetElementDeclHandler(g_parser, element_decl_check_model);
79 - if (XML_Parse(g_parser, text, (int)strlen(text), XML_TRUE)
80 - == XML_STATUS_ERROR)
81 - xml_failure(g_parser);
82 -
83 - if ((uint32_t)(uintptr_t)XML_GetUserData(g_parser) != 0)
84 - fail("Element declaration model regression detected");
85 -}
86 -END_TEST
87
88 /* Test foreign DTD handling */
89 START_TEST(test_set_foreign_dtd) {

  ViewVC Help
Powered by ViewVC 1.1.28