ntdll: also parse asmv1 assemblies

André Hentschel nerv at dawncrow.de
Fri Jul 16 10:50:02 CDT 2010


needed for the installer of Flir QuickPlot Demo
---
 dlls/ntdll/actctx.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/ntdll/actctx.c b/dlls/ntdll/actctx.c
index a1b1e3b..7470487 100644
--- a/dlls/ntdll/actctx.c
+++ b/dlls/ntdll/actctx.c
@@ -182,6 +182,7 @@ struct actctx_loader
 };
 
 static const WCHAR assemblyW[] = {'a','s','s','e','m','b','l','y',0};
+static const WCHAR asmv1assemblyW[] = {'a', 's', 'm', 'v', '1', ':', 'a', 's', 's', 'e', 'm', 'b', 'l', 'y', 0};
 static const WCHAR assemblyIdentityW[] = {'a','s','s','e','m','b','l','y','I','d','e','n','t','i','t','y',0};
 static const WCHAR bindingRedirectW[] = {'b','i','n','d','i','n','g','R','e','d','i','r','e','c','t',0};
 static const WCHAR clrClassW[] = {'c','l','r','C','l','a','s','s',0};
@@ -1392,7 +1393,7 @@ static BOOL parse_assembly_elem(xmlbuf_t* xmlbuf, struct actctx_loader* acl,
 
     while (ret)
     {
-        if (xmlstr_cmp_end(&elem, assemblyW))
+        if (xmlstr_cmp_end(&elem, assemblyW) || xmlstr_cmp_end(&elem, asmv1assemblyW))
         {
             ret = parse_end_element(xmlbuf);
             break;
@@ -1472,7 +1473,7 @@ static NTSTATUS parse_manifest_buffer( struct actctx_loader* acl, struct assembl
         (!parse_xml_header(xmlbuf) || !next_xml_elem(xmlbuf, &elem)))
         return STATUS_SXS_CANT_GEN_ACTCTX;
 
-    if (!xmlstr_cmp(&elem, assemblyW))
+    if (!xmlstr_cmp(&elem, assemblyW) && !xmlstr_cmp(&elem, asmv1assemblyW))
     {
         FIXME("root element is %s, not <assembly>\n", debugstr_xmlstr(&elem));
         return STATUS_SXS_CANT_GEN_ACTCTX;
-- 

Best Regards, André Hentschel



More information about the wine-patches mailing list