From: Nikolay Sivov <nsivov@codeweavers.com> --- dlls/msxml3/Makefile.in | 1 + dlls/msxml3/msxml.mc | 317 ++++++++++++++++++++++++++++++++++++++++ dlls/msxml3/saxreader.c | 6 +- 3 files changed, 321 insertions(+), 3 deletions(-) create mode 100644 dlls/msxml3/msxml.mc diff --git a/dlls/msxml3/Makefile.in b/dlls/msxml3/Makefile.in index 0da2a467a56..a373417df89 100644 --- a/dlls/msxml3/Makefile.in +++ b/dlls/msxml3/Makefile.in @@ -21,6 +21,7 @@ SOURCES = \ factory.c \ httprequest.c \ main.c \ + msxml.mc \ msxml3_v1.idl \ mxnamespace.c \ mxwriter.c \ diff --git a/dlls/msxml3/msxml.mc b/dlls/msxml3/msxml.mc new file mode 100644 index 00000000000..fe6b2901c23 --- /dev/null +++ b/dlls/msxml3/msxml.mc @@ -0,0 +1,317 @@ +; +; Copyright 2026 Nikolay Sivov for CodeWeavers +; +; This library is free software; you can redistribute it and/or +; modify it under the terms of the GNU Lesser General Public +; License as published by the Free Software Foundation; either +; version 2.1 of the License, or (at your option) any later version. +; +; This library is distributed in the hope that it will be useful, +; but WITHOUT ANY WARRANTY; without even the implied warranty of +; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +; Lesser General Public License for more details. +; +; You should have received a copy of the GNU Lesser General Public +; License along with this library; if not, write to the Free Software +; Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA +; + +LanguageNames=(ENU=0x409:msxml) + +SeverityNames=(Error=0x3:STATUS_SEVERITY_ERROR) +FacilityNames=(XML=0xc:FACILITY_INTERNET) + +MessageId=0xe002 +Severity=Error +Facility=XML +SymbolicName=E_SAX_UNDEFINEDREF +Language=ENU +Undefined reference +. +MessageId=0xe003 +Severity=Error +Facility=XML +SymbolicName=E_SAX_INFINITEREFLOOP +Language=ENU +Found self-referential entity +. +MessageId=0xe006 +Severity=Error +Facility=XML +SymbolicName=E_SAX_UNPARSEDENTITYREF +Language=ENU +Unparsed entity reference +. +MessageId=0xe00c +Severity=Error +Facility=XML +SymbolicName=E_SAX_CONTAINSCOLON +Language=ENU +Name text contains colon ':' +. +MessageId=0xe01d +Severity=Error +Facility=XML +SymbolicName=E_SAX_UNDECLAREDPREFIX +Language=ENU +Namespace prefix hasn't been declared +. +MessageId=0xe501 +Severity=Error +Facility=XML +SymbolicName=E_SAX_MISSINGEQUALS +Language=ENU +Expected '=' character +. +MessageId=0xe502 +Severity=Error +Facility=XML +SymbolicName=E_SAX_MISSINGQUOTE +Language=ENU +Expected a quote character +. +MessageId=0xe503 +Severity=Error +Facility=XML +SymbolicName=E_SAX_COMMENTSYNTAX +Language=ENU +Malformed comment +. +MessageId=0xe504 +Severity=Error +Facility=XML +SymbolicName=E_SAX_BADSTARTNAMECHAR +Language=ENU +Invalid name start character +. +MessageId=0xe505 +Severity=Error +Facility=XML +SymbolicName=E_SAX_BADNAMECHAR +Language=ENU +Invalid name character +. +MessageId=0xe506 +Severity=Error +Facility=XML +SymbolicName=E_SAX_BADCHARINSTRING +Language=ENU +The '<' character found in attribute value +. +MessageId=0xe509 +Severity=Error +Facility=XML +SymbolicName=E_SAX_MISSINGWHITESPACE +Language=ENU +Expected whitespace character +. +MessageId=0xe50a +Severity=Error +Facility=XML +SymbolicName=E_SAX_EXPECTINGTAGEND +Language=ENU +Expected end tag character '>' +. +MessageId=0xe50b +Severity=Error +Facility=XML +SymbolicName=E_SAX_BADCHARINDTD +Language=ENU +Invalid character in DTD content +. +MessageId=0xe50d +Severity=Error +Facility=XML +SymbolicName=E_SAX_MISSINGSEMICOLON +Language=ENU +Expected ';' character +. +MessageId=0xe50e +Severity=Error +Facility=XML +SymbolicName=E_SAX_BADCHARINENTREF +Language=ENU +Invalid character in entity reference +. +MessageId=0xe515 +Severity=Error +Facility=XML +SymbolicName=E_SAX_BADCHARINMIXEDMODEL +Language=ENU +Invalid character in mixed DTD content +. +MessageId=0xe516 +Severity=Error +Facility=XML +SymbolicName=E_SAX_MISSING_STAR +Language=ENU +Expected '*' character +. +MessageId=0xe518 +Severity=Error +Facility=XML +SymbolicName=E_SAX_MISSING_PAREN +Language=ENU +Expected parenthesis character +. +MessageId=0xe519 +Severity=Error +Facility=XML +SymbolicName=E_SAX_BADCHARINENUMERATION +Language=ENU +Invalid character in DTD enumeration +. +MessageId=0xe51a +Severity=Error +Facility=XML +SymbolicName=E_SAX_PIDECLSYNTAX +Language=ENU +Invalid PI syntax +. +MessageId=0xe51b +Severity=Error +Facility=XML +SymbolicName=E_SAX_EXPECTINGCLOSEQUOTE +Language=ENU +Expected closing quote character +. +MessageId=0xe51c +Severity=Error +Facility=XML +SymbolicName=E_SAX_MULTIPLE_COLONS +Language=ENU +Multiple colon character found +. +MessageId=0xe51f +Severity=Error +Facility=XML +SymbolicName=E_SAX_INVALID_UNICODE +Language=ENU +Invalid Unicode character +. +MessageId=0xe520 +Severity=Error +Facility=XML +SymbolicName=E_SAX_WHITESPACEORQUESTIONMARK +Language=ENU +Expected whitespace or '?' character +. +MessageId=0xe552 +Severity=Error +Facility=XML +SymbolicName=E_SAX_UNEXPECTEDENDTAG +Language=ENU +Unexpected end tag '>' character +. +MessageId=0xe554 +Severity=Error +Facility=XML +SymbolicName=E_SAX_DUPLICATEATTRIBUTE +Language=ENU +Found duplicate attribute +. +MessageId=0xe556 +Severity=Error +Facility=XML +SymbolicName=E_SAX_INVALIDATROOTLEVEL +Language=ENU +Document root is invalid +. +MessageId=0xe557 +Severity=Error +Facility=XML +SymbolicName=E_SAX_BAD_XMLDECL +Language=ENU +Invalid xml declaration +. +MessageId=0xe558 +Severity=Error +Facility=XML +SymbolicName=E_SAX_MISSINGROOT +Language=ENU +Document root is missing +. +MessageId=0xe559 +Severity=Error +Facility=XML +SymbolicName=E_SAX_UNEXPECTED_EOF +Language=ENU +Unexpected end of input data stream +. +MessageId=0xe55c +Severity=Error +Facility=XML +SymbolicName=E_SAX_INVALID_CDATACLOSINGTAG +Language=ENU +Found unexpected CDATA closing markup ']]>' +. +MessageId=0xe55d +Severity=Error +Facility=XML +SymbolicName=E_SAX_UNCLOSEDPI +Language=ENU +Found unterminated PI declaration +. +MessageId=0xe55f +Severity=Error +Facility=XML +SymbolicName=E_SAX_UNCLOSEDENDTAG +Language=ENU +Found unterminated end tag +. +MessageId=0xe564 +Severity=Error +Facility=XML +SymbolicName=E_SAX_UNCLOSEDCDATA +Language=ENU +Found unterminated CDATA block +. +MessageId=0xe568 +Severity=Error +Facility=XML +SymbolicName=E_SAX_RESERVEDNAMESPACE +Language=ENU +Use namespace prefix is reserved +. +MessageId=0xe56d +Severity=Error +Facility=XML +SymbolicName=E_SAX_ENDTAGMISMATCH +Language=ENU +End tag does not match +. +MessageId=0xe56e +Severity=Error +Facility=XML +SymbolicName=E_SAX_INVALIDENCODING +Language=ENU +Invalid encoding name +. +MessageId=0xe571 +Severity=Error +Facility=XML +SymbolicName=E_SAX_INVALID_MODEL +Language=ENU +Invalid model in DTD contentspec +. +MessageId=0xe572 +Severity=Error +Facility=XML +SymbolicName=E_SAX_INVALID_TYPE +Language=ENU +Invalid DTD attribute type +. +MessageId=0xe579 +Severity=Error +Facility=XML +SymbolicName=E_SAX_INVALID_STANDALONE +Language=ENU +Invalid standalone declaration +. +MessageId=0xe57f +Severity=Error +Facility=XML +SymbolicName=E_SAX_INVALID_VERSION +Language=ENU +Invalid xml version +. diff --git a/dlls/msxml3/saxreader.c b/dlls/msxml3/saxreader.c index 21610450fca..4988ce16748 100644 --- a/dlls/msxml3/saxreader.c +++ b/dlls/msxml3/saxreader.c @@ -2149,10 +2149,10 @@ static void saxreader_fatal_error(struct saxlocator *locator) { WCHAR msg[1024]; - if (!FormatMessageW(FORMAT_MESSAGE_FROM_SYSTEM, NULL, locator->status, 0, msg, ARRAY_SIZE(msg), NULL)) + if (!FormatMessageW(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_FROM_HMODULE, MSXML_hInstance, locator->status, 0, + msg, ARRAY_SIZE(msg), NULL)) { - FIXME("MSXML errors not yet supported.\n"); - msg[0] = '\0'; + *msg = 0; } if (locator->vbInterface) -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10183