Roman Mindalev : ntdll: Move search for assemblyIdentity element.

Alexandre Julliard julliard at winehq.org
Wed Mar 25 10:31:32 CDT 2009


Module: wine
Branch: master
Commit: 9925785eef43a04fd8b745c6ac4f05d0dcafbf0e
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=9925785eef43a04fd8b745c6ac4f05d0dcafbf0e

Author: Roman Mindalev <lists at r000n.net>
Date:   Fri Mar 13 20:16:35 2009 +0300

ntdll: Move search for assemblyIdentity element.

---

 dlls/ntdll/actctx.c |   60 ++++++++++++++++++++++++--------------------------
 1 files changed, 29 insertions(+), 31 deletions(-)

diff --git a/dlls/ntdll/actctx.c b/dlls/ntdll/actctx.c
index f864033..3744904 100644
--- a/dlls/ntdll/actctx.c
+++ b/dlls/ntdll/actctx.c
@@ -1390,37 +1390,6 @@ static BOOL parse_assembly_elem(xmlbuf_t* xmlbuf, struct actctx_loader* acl,
              assembly->no_inherit)
         return FALSE;
 
-    if (xmlstr_cmp(&elem, assemblyIdentityW))
-    {
-        if (!parse_assembly_identity_elem(xmlbuf, acl->actctx, &assembly->id)) return FALSE;
-        ret = next_xml_elem(xmlbuf, &elem);
-
-        if (expected_ai)
-        {
-            /* FIXME: more tests */
-            if (assembly->type == ASSEMBLY_MANIFEST &&
-                memcmp(&assembly->id.version, &expected_ai->version, sizeof(assembly->id.version)))
-            {
-                FIXME("wrong version for assembly manifest: %u.%u.%u.%u / %u.%u.%u.%u\n",
-                      expected_ai->version.major, expected_ai->version.minor,
-                      expected_ai->version.build, expected_ai->version.revision,
-                      assembly->id.version.major, assembly->id.version.minor,
-                      assembly->id.version.build, assembly->id.version.revision);
-                return FALSE;
-            }
-            else if (assembly->type == ASSEMBLY_SHARED_MANIFEST &&
-                (assembly->id.version.major != expected_ai->version.major ||
-                 assembly->id.version.minor != expected_ai->version.minor ||
-                 assembly->id.version.build < expected_ai->version.build ||
-                 (assembly->id.version.build == expected_ai->version.build &&
-                  assembly->id.version.revision < expected_ai->version.revision)))
-            {
-                FIXME("wrong version for shared assembly manifest\n");
-                return FALSE;
-            }
-        }
-    }
-
     while (ret)
     {
         if (xmlstr_cmp_end(&elem, assemblyW))
@@ -1452,6 +1421,35 @@ static BOOL parse_assembly_elem(xmlbuf_t* xmlbuf, struct actctx_loader* acl,
         {
             ret = parse_clr_surrogate_elem(xmlbuf, assembly);
         }
+        else if (xmlstr_cmp(&elem, assemblyIdentityW))
+        {
+            if (!parse_assembly_identity_elem(xmlbuf, acl->actctx, &assembly->id)) return FALSE;
+
+            if (expected_ai)
+            {
+                /* FIXME: more tests */
+                if (assembly->type == ASSEMBLY_MANIFEST &&
+                    memcmp(&assembly->id.version, &expected_ai->version, sizeof(assembly->id.version)))
+                {
+                    FIXME("wrong version for assembly manifest: %u.%u.%u.%u / %u.%u.%u.%u\n",
+                          expected_ai->version.major, expected_ai->version.minor,
+                          expected_ai->version.build, expected_ai->version.revision,
+                          assembly->id.version.major, assembly->id.version.minor,
+                          assembly->id.version.build, assembly->id.version.revision);
+                    ret = FALSE;
+                }
+                else if (assembly->type == ASSEMBLY_SHARED_MANIFEST &&
+                         (assembly->id.version.major != expected_ai->version.major ||
+                          assembly->id.version.minor != expected_ai->version.minor ||
+                          assembly->id.version.build < expected_ai->version.build ||
+                          (assembly->id.version.build == expected_ai->version.build &&
+                           assembly->id.version.revision < expected_ai->version.revision)))
+                {
+                    FIXME("wrong version for shared assembly manifest\n");
+                    ret = FALSE;
+                }
+            }
+        }
         else
         {
             WARN("unknown element %s\n", debugstr_xmlstr(&elem));




More information about the wine-cvs mailing list