On Mon, Aug 9, 2021 at 8:34 AM Nikolay Sivov <nsivov@codeweavers.com> wrote:
Hi, Damjan.

I'm not very familiar with schema parts. Is it possible to add a test
for this change?


Hi Nikolay

We already have the necessary tests for this.

Using an affected libxml2 version (2.9.12, possibly 2.9.11 too):

WINEDEBUG='+msxml' wine msxml3_test.exe schema

With my patch:
0020:schema: 979 tests executed (39 marked as todo, 0 failures), 0 skipped.

Without my patch:
...
regexp error : failed to compile: Improper quantifier
regexp error : failed to compile: xmlFAParseRegExp: extra characters
0024:err:msxml:Schema_parse error code 1756: Element '{http://www.w3.org/2001/XMLSchema}pattern': The value '([0-9]{,14})([.][0-9]{,4})?' of the facet 'pattern' is not a valid regular expression.
regexp error : failed to compile: Improper quantifier
regexp error : failed to compile: xmlFAParseAtom: expecting ')'
regexp error : failed to compile: xmlFAParseRegExp: extra characters
0024:err:msxml:Schema_parse error code 1756: Element '{http://www.w3.org/2001/XMLSchema}pattern': The value '([0-9A-Fa-f]{4})([-]{,1}[0-9A-Fa-f]{4})*' of the facet 'pattern' is not a valid regular expression.
0024:fixme:msxml:cache_entry_from_xdr_doc failed to parse doc
0024:trace:msxml:domdoc_Release (0x260cb8)->(1)
schema.c:526: Test failed: IXMLDOMSchemaCollection_add(cache, NULL, _variantdoc_(doc)) returned 80004005
0024:trace:msxml:schema_cache_get_length (0x260e08)->(0x21fba4)
schema.c:529: Test failed: got 0
0024:trace:msxml:schema_cache_get_namespaceURI (0x260e08)->(0 0x21fba8)
schema.c:532: Test failed: IXMLDOMSchemaCollection_get_namespaceURI(cache, 0, &str) returned 80004005
schema.c:533: Test failed: got 00000000
0024:trace:msxml:schema_cache_get (0x260e08)->((null) 0x21fbc4)
schema.c:538: Test failed: 00000000
wine: Unhandled page fault on read access to 00000000 at address 6286F028 (thread 0024), starting debugger...
couldn't load main module (2)
Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x6286f028).