Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corert.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuqun Lou <luqunl@microsoft.com>2017-10-17 07:03:54 +0300
committerLuqun Lou <luqunl@microsoft.com>2017-10-17 07:03:54 +0300
commit990f55966aa7daef1e312c12e73c624ed02c789e (patch)
tree87d2b591085747ddb7dc7b4f1da8bb97ceef47d4 /src/System.Private.Reflection.Execution
parentce1d3e31090e2ace1bd2ac7e9fddaca0b1f70738 (diff)
Fix For Bug#507240 Marshal.IsComObject fails for __ComObject in x-plat MCG
Yi/Alan/Tyler found out this bug and the root cause--- IsComObject(Type t) only check whether t is subclass of __ComObject or not --- IsSubclassOf fails if type is exactly __ComObject: https://msdn.microsoft.com/en-us/library/system.type.issubclassof%28v=vs.110%29.aspx the fix is to add a check to see whether type itself is __ComObject or not. Changes: 1. Unify IsCOMObject and IsComObject into IsComObject. don't confuse ourselves 2. Move McgComHelpers.IsComObject into McgMarshal.IsComObject TODO: 1. Consider to split McgMarshal.cs into McgMarshal.Pinvoke.cs/McgMarshal.Com.cs/McgMarshal.WinRT.cs/McgMarshal.Common.cs [tfs-changeset: 1678276]
Diffstat (limited to 'src/System.Private.Reflection.Execution')
-rw-r--r--src/System.Private.Reflection.Execution/src/Internal/Reflection/Execution/ExecutionEnvironmentImplementation.Interop.cs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/System.Private.Reflection.Execution/src/Internal/Reflection/Execution/ExecutionEnvironmentImplementation.Interop.cs b/src/System.Private.Reflection.Execution/src/Internal/Reflection/Execution/ExecutionEnvironmentImplementation.Interop.cs
index 0fb7029d9..a8f668627 100644
--- a/src/System.Private.Reflection.Execution/src/Internal/Reflection/Execution/ExecutionEnvironmentImplementation.Interop.cs
+++ b/src/System.Private.Reflection.Execution/src/Internal/Reflection/Execution/ExecutionEnvironmentImplementation.Interop.cs
@@ -16,7 +16,7 @@ namespace Internal.Reflection.Execution
{
public sealed override bool IsCOMObject(Type type)
{
- return McgMarshal.IsCOMObject(type);
+ return McgMarshal.IsComObject(type);
}
}
}