Eric Pouech : ntdll: Added parsing of public key token in manifests.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Jul 20 06:02:08 CDT 2007


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

Author: Eric Pouech <eric.pouech at wanadoo.fr>
Date:   Thu Jul 19 17:54:53 2007 +0200

ntdll: Added parsing of public key token in manifests.

---

 dlls/ntdll/actctx.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/dlls/ntdll/actctx.c b/dlls/ntdll/actctx.c
index e73cdaa..18a4001 100644
--- a/dlls/ntdll/actctx.c
+++ b/dlls/ntdll/actctx.c
@@ -90,6 +90,7 @@ struct assembly_identity
 {
     WCHAR                *name;
     WCHAR                *arch;
+    WCHAR                *public_key;
     struct version        version;
     enum assembly_id_type type;
 };
@@ -181,6 +182,7 @@ struct actctx_loader
 #define MANIFESTVERSION_ATTR            "manifestVersion"
 #define NAME_ATTR                       "name"
 #define PROCESSORARCHITECTURE_ATTR      "processorArchitecture"
+#define PUBLICKEYTOKEN_ATTR             "publicKeyToken"
 #define TLBID_ATTR                      "tlbid"
 #define TYPE_ATTR                       "type"
 #define VERSION_ATTR                    "version"
@@ -287,6 +289,7 @@ static void free_assembly_identity(struct assembly_identity *ai)
 {
     RtlFreeHeap( GetProcessHeap(), 0, ai->name );
     RtlFreeHeap( GetProcessHeap(), 0, ai->arch );
+    RtlFreeHeap( GetProcessHeap(), 0, ai->public_key );
 }
 
 static struct entity* add_entity(struct dll_redirect* dll, DWORD kind)
@@ -627,6 +630,10 @@ static BOOL parse_assembly_identity_elem(xmlbuf_t* xmlbuf, ACTIVATION_CONTEXT* a
         {
             if (!(ai->arch = xmlstrdupW(&attr_value))) return FALSE;
         }
+        else if (xmlstr_cmp(&attr_name, PUBLICKEYTOKEN_ATTR))
+        {
+            if (!(ai->public_key = xmlstrdupW(&attr_value))) return FALSE;
+        }
         else
         {
             WARN("unknown attr %s=%s\n", debugstr_xmlstr(&attr_name),




More information about the wine-cvs mailing list