Skip to content

Commit 33036db

Browse files
Version 5.5.4: Overhauled ScriptEngine.AccessContext support to fix GitHub Issue #68; added ScriptEngine.EnforceAnonymousTypeAccess; fixed Microsoft.ClearScript.targets for VS 2015 compatibility (GitHub Issue #74); added support for building delay-signed assemblies; updated deployment and API documentation. Tested with V8 7.0.276.42.
1 parent 222e738 commit 33036db

File tree

456 files changed

+1812
-740
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

456 files changed

+1812
-740
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,4 @@ ClearScript/V8/V8/build/
3535
ClearScript/V8/V8/lib/
3636
ClearScript/V8/V8/include/
3737
.vs/
38-
packages/
38+
packages/

ClearScript.NoV8.sln.DotSettings

Lines changed: 50 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
2-
<s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">CSharp50</s:String>
2+
<s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">CSharp50</s:String>
33
<s:Boolean x:Key="/Default/CodeInspection/ExcludedFiles/FileMasksToSkip/=_002A_002Ecpp/@EntryIndexedValue">True</s:Boolean>
44
<s:Boolean x:Key="/Default/CodeInspection/ExcludedFiles/FileMasksToSkip/=_002A_002Eh/@EntryIndexedValue">True</s:Boolean>
55
<s:Boolean x:Key="/Default/CodeInspection/Highlighting/CalculateUnusedTypeMembers/@EntryValue">False</s:Boolean>
@@ -26,6 +26,7 @@
2626
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_BEFORE_TYPEOF_PARENTHESES/@EntryValue">False</s:Boolean>
2727
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_WITHING_EMPTY_BRACES/@EntryValue">False</s:Boolean>
2828
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_WITHIN_SINGLE_LINE_ARRAY_INITIALIZER_BRACES/@EntryValue">True</s:Boolean>
29+
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/USE_INDENT_FROM_VS/@EntryValue">False</s:Boolean>
2930
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_LINES/@EntryValue">False</s:Boolean>
3031
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=CLSID/@EntryIndexedValue">CLSID</s:String>
3132
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=COM/@EntryIndexedValue">COM</s:String>
@@ -49,4 +50,51 @@
4950
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EAddAccessorOwnerDeclarationBracesMigration/@EntryIndexedValue">True</s:Boolean>
5051
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002ECSharpPlaceAttributeOnSameLineMigration/@EntryIndexedValue">True</s:Boolean>
5152
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateBlankLinesAroundFieldToBlankLinesAroundProperty/@EntryIndexedValue">True</s:Boolean>
52-
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
53+
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean>
54+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Addr/@EntryIndexedValue">True</s:Boolean>
55+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Bytecode/@EntryIndexedValue">True</s:Boolean>
56+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Cacheable/@EntryIndexedValue">True</s:Boolean>
57+
<s:Boolean x:Key="/Default/UserDictionary/Words/=CLEARSCRIPT/@EntryIndexedValue">True</s:Boolean>
58+
<s:Boolean x:Key="/Default/UserDictionary/Words/=CLR_0027s/@EntryIndexedValue">True</s:Boolean>
59+
<s:Boolean x:Key="/Default/UserDictionary/Words/=contravariance/@EntryIndexedValue">True</s:Boolean>
60+
<s:Boolean x:Key="/Default/UserDictionary/Words/=devtools/@EntryIndexedValue">True</s:Boolean>
61+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Disp/@EntryIndexedValue">True</s:Boolean>
62+
<s:Boolean x:Key="/Default/UserDictionary/Words/=dispid/@EntryIndexedValue">True</s:Boolean>
63+
<s:Boolean x:Key="/Default/UserDictionary/Words/=dispids/@EntryIndexedValue">True</s:Boolean>
64+
<s:Boolean x:Key="/Default/UserDictionary/Words/=DISPPARAMS/@EntryIndexedValue">True</s:Boolean>
65+
<s:Boolean x:Key="/Default/UserDictionary/Words/=excep/@EntryIndexedValue">True</s:Boolean>
66+
<s:Boolean x:Key="/Default/UserDictionary/Words/=EXCEPINFO/@EntryIndexedValue">True</s:Boolean>
67+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Exprs/@EntryIndexedValue">True</s:Boolean>
68+
<s:Boolean x:Key="/Default/UserDictionary/Words/=guids/@EntryIndexedValue">True</s:Boolean>
69+
<s:Boolean x:Key="/Default/UserDictionary/Words/=HOSTEXCEPTION/@EntryIndexedValue">True</s:Boolean>
70+
<s:Boolean x:Key="/Default/UserDictionary/Words/=HRESULT/@EntryIndexedValue">True</s:Boolean>
71+
<s:Boolean x:Key="/Default/UserDictionary/Words/=hwnd/@EntryIndexedValue">True</s:Boolean>
72+
<s:Boolean x:Key="/Default/UserDictionary/Words/=INVALIDARG/@EntryIndexedValue">True</s:Boolean>
73+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Invocability/@EntryIndexedValue">True</s:Boolean>
74+
<s:Boolean x:Key="/Default/UserDictionary/Words/=invocable/@EntryIndexedValue">True</s:Boolean>
75+
<s:Boolean x:Key="/Default/UserDictionary/Words/=libid/@EntryIndexedValue">True</s:Boolean>
76+
<s:Boolean x:Key="/Default/UserDictionary/Words/=MEMBERNOTFOUND/@EntryIndexedValue">True</s:Boolean>
77+
<s:Boolean x:Key="/Default/UserDictionary/Words/=NOINTERFACE/@EntryIndexedValue">True</s:Boolean>
78+
<s:Boolean x:Key="/Default/UserDictionary/Words/=nupkg/@EntryIndexedValue">True</s:Boolean>
79+
<s:Boolean x:Key="/Default/UserDictionary/Words/=oleaut/@EntryIndexedValue">True</s:Boolean>
80+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Plex/@EntryIndexedValue">True</s:Boolean>
81+
<s:Boolean x:Key="/Default/UserDictionary/Words/=prog/@EntryIndexedValue">True</s:Boolean>
82+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Reexecute/@EntryIndexedValue">True</s:Boolean>
83+
<s:Boolean x:Key="/Default/UserDictionary/Words/=runtimes/@EntryIndexedValue">True</s:Boolean>
84+
<s:Boolean x:Key="/Default/UserDictionary/Words/=runtime_0027s/@EntryIndexedValue">True</s:Boolean>
85+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Scriptable/@EntryIndexedValue">True</s:Boolean>
86+
<s:Boolean x:Key="/Default/UserDictionary/Words/=SCRIPTITEMEXCEPTION/@EntryIndexedValue">True</s:Boolean>
87+
<s:Boolean x:Key="/Default/UserDictionary/Words/=SHFB/@EntryIndexedValue">True</s:Boolean>
88+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Signtool/@EntryIndexedValue">True</s:Boolean>
89+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Steptype/@EntryIndexedValue">True</s:Boolean>
90+
<s:Boolean x:Key="/Default/UserDictionary/Words/=sunspider/@EntryIndexedValue">True</s:Boolean>
91+
<s:Boolean x:Key="/Default/UserDictionary/Words/=TYPEATTR/@EntryIndexedValue">True</s:Boolean>
92+
<s:Boolean x:Key="/Default/UserDictionary/Words/=TYPEFLAGS/@EntryIndexedValue">True</s:Boolean>
93+
<s:Boolean x:Key="/Default/UserDictionary/Words/=TYPEKIND/@EntryIndexedValue">True</s:Boolean>
94+
<s:Boolean x:Key="/Default/UserDictionary/Words/=TYPELIBATTR/@EntryIndexedValue">True</s:Boolean>
95+
<s:Boolean x:Key="/Default/UserDictionary/Words/=ubound/@EntryIndexedValue">True</s:Boolean>
96+
<s:Boolean x:Key="/Default/UserDictionary/Words/=UNKNOWNNAME/@EntryIndexedValue">True</s:Boolean>
97+
<s:Boolean x:Key="/Default/UserDictionary/Words/=VB_0027s/@EntryIndexedValue">True</s:Boolean>
98+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Versioning/@EntryIndexedValue">True</s:Boolean>
99+
<s:Boolean x:Key="/Default/UserDictionary/Words/=XMLHTTP/@EntryIndexedValue">True</s:Boolean>
100+
</wpf:ResourceDictionary>

ClearScript.sln.DotSettings

Lines changed: 50 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
2-
<s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">CSharp50</s:String>
2+
<s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">CSharp50</s:String>
33
<s:Boolean x:Key="/Default/CodeInspection/ExcludedFiles/FileMasksToSkip/=_002A_002Ecpp/@EntryIndexedValue">True</s:Boolean>
44
<s:Boolean x:Key="/Default/CodeInspection/ExcludedFiles/FileMasksToSkip/=_002A_002Eh/@EntryIndexedValue">True</s:Boolean>
55
<s:Boolean x:Key="/Default/CodeInspection/Highlighting/CalculateUnusedTypeMembers/@EntryValue">False</s:Boolean>
@@ -26,6 +26,7 @@
2626
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_BEFORE_TYPEOF_PARENTHESES/@EntryValue">False</s:Boolean>
2727
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_WITHING_EMPTY_BRACES/@EntryValue">False</s:Boolean>
2828
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_WITHIN_SINGLE_LINE_ARRAY_INITIALIZER_BRACES/@EntryValue">True</s:Boolean>
29+
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/USE_INDENT_FROM_VS/@EntryValue">False</s:Boolean>
2930
<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_LINES/@EntryValue">False</s:Boolean>
3031
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=CLSID/@EntryIndexedValue">CLSID</s:String>
3132
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=COM/@EntryIndexedValue">COM</s:String>
@@ -49,4 +50,51 @@
4950
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EAddAccessorOwnerDeclarationBracesMigration/@EntryIndexedValue">True</s:Boolean>
5051
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002ECSharpPlaceAttributeOnSameLineMigration/@EntryIndexedValue">True</s:Boolean>
5152
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateBlankLinesAroundFieldToBlankLinesAroundProperty/@EntryIndexedValue">True</s:Boolean>
52-
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
53+
<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean>
54+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Addr/@EntryIndexedValue">True</s:Boolean>
55+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Bytecode/@EntryIndexedValue">True</s:Boolean>
56+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Cacheable/@EntryIndexedValue">True</s:Boolean>
57+
<s:Boolean x:Key="/Default/UserDictionary/Words/=CLEARSCRIPT/@EntryIndexedValue">True</s:Boolean>
58+
<s:Boolean x:Key="/Default/UserDictionary/Words/=CLR_0027s/@EntryIndexedValue">True</s:Boolean>
59+
<s:Boolean x:Key="/Default/UserDictionary/Words/=contravariance/@EntryIndexedValue">True</s:Boolean>
60+
<s:Boolean x:Key="/Default/UserDictionary/Words/=devtools/@EntryIndexedValue">True</s:Boolean>
61+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Disp/@EntryIndexedValue">True</s:Boolean>
62+
<s:Boolean x:Key="/Default/UserDictionary/Words/=dispid/@EntryIndexedValue">True</s:Boolean>
63+
<s:Boolean x:Key="/Default/UserDictionary/Words/=dispids/@EntryIndexedValue">True</s:Boolean>
64+
<s:Boolean x:Key="/Default/UserDictionary/Words/=DISPPARAMS/@EntryIndexedValue">True</s:Boolean>
65+
<s:Boolean x:Key="/Default/UserDictionary/Words/=excep/@EntryIndexedValue">True</s:Boolean>
66+
<s:Boolean x:Key="/Default/UserDictionary/Words/=EXCEPINFO/@EntryIndexedValue">True</s:Boolean>
67+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Exprs/@EntryIndexedValue">True</s:Boolean>
68+
<s:Boolean x:Key="/Default/UserDictionary/Words/=guids/@EntryIndexedValue">True</s:Boolean>
69+
<s:Boolean x:Key="/Default/UserDictionary/Words/=HOSTEXCEPTION/@EntryIndexedValue">True</s:Boolean>
70+
<s:Boolean x:Key="/Default/UserDictionary/Words/=HRESULT/@EntryIndexedValue">True</s:Boolean>
71+
<s:Boolean x:Key="/Default/UserDictionary/Words/=hwnd/@EntryIndexedValue">True</s:Boolean>
72+
<s:Boolean x:Key="/Default/UserDictionary/Words/=INVALIDARG/@EntryIndexedValue">True</s:Boolean>
73+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Invocability/@EntryIndexedValue">True</s:Boolean>
74+
<s:Boolean x:Key="/Default/UserDictionary/Words/=invocable/@EntryIndexedValue">True</s:Boolean>
75+
<s:Boolean x:Key="/Default/UserDictionary/Words/=libid/@EntryIndexedValue">True</s:Boolean>
76+
<s:Boolean x:Key="/Default/UserDictionary/Words/=MEMBERNOTFOUND/@EntryIndexedValue">True</s:Boolean>
77+
<s:Boolean x:Key="/Default/UserDictionary/Words/=NOINTERFACE/@EntryIndexedValue">True</s:Boolean>
78+
<s:Boolean x:Key="/Default/UserDictionary/Words/=nupkg/@EntryIndexedValue">True</s:Boolean>
79+
<s:Boolean x:Key="/Default/UserDictionary/Words/=oleaut/@EntryIndexedValue">True</s:Boolean>
80+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Plex/@EntryIndexedValue">True</s:Boolean>
81+
<s:Boolean x:Key="/Default/UserDictionary/Words/=prog/@EntryIndexedValue">True</s:Boolean>
82+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Reexecute/@EntryIndexedValue">True</s:Boolean>
83+
<s:Boolean x:Key="/Default/UserDictionary/Words/=runtimes/@EntryIndexedValue">True</s:Boolean>
84+
<s:Boolean x:Key="/Default/UserDictionary/Words/=runtime_0027s/@EntryIndexedValue">True</s:Boolean>
85+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Scriptable/@EntryIndexedValue">True</s:Boolean>
86+
<s:Boolean x:Key="/Default/UserDictionary/Words/=SCRIPTITEMEXCEPTION/@EntryIndexedValue">True</s:Boolean>
87+
<s:Boolean x:Key="/Default/UserDictionary/Words/=SHFB/@EntryIndexedValue">True</s:Boolean>
88+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Signtool/@EntryIndexedValue">True</s:Boolean>
89+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Steptype/@EntryIndexedValue">True</s:Boolean>
90+
<s:Boolean x:Key="/Default/UserDictionary/Words/=sunspider/@EntryIndexedValue">True</s:Boolean>
91+
<s:Boolean x:Key="/Default/UserDictionary/Words/=TYPEATTR/@EntryIndexedValue">True</s:Boolean>
92+
<s:Boolean x:Key="/Default/UserDictionary/Words/=TYPEFLAGS/@EntryIndexedValue">True</s:Boolean>
93+
<s:Boolean x:Key="/Default/UserDictionary/Words/=TYPEKIND/@EntryIndexedValue">True</s:Boolean>
94+
<s:Boolean x:Key="/Default/UserDictionary/Words/=TYPELIBATTR/@EntryIndexedValue">True</s:Boolean>
95+
<s:Boolean x:Key="/Default/UserDictionary/Words/=ubound/@EntryIndexedValue">True</s:Boolean>
96+
<s:Boolean x:Key="/Default/UserDictionary/Words/=UNKNOWNNAME/@EntryIndexedValue">True</s:Boolean>
97+
<s:Boolean x:Key="/Default/UserDictionary/Words/=VB_0027s/@EntryIndexedValue">True</s:Boolean>
98+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Versioning/@EntryIndexedValue">True</s:Boolean>
99+
<s:Boolean x:Key="/Default/UserDictionary/Words/=XMLHTTP/@EntryIndexedValue">True</s:Boolean>
100+
</wpf:ResourceDictionary>

ClearScript/ByRefArg.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,9 @@ public override bool TryInvoke(IHostInvokeContext context, BindingFlags invokeFl
8383
return target.TryInvoke(context, invokeFlags, args, bindArgs, out result);
8484
}
8585

86-
public override Invocability GetInvocability(BindingFlags bindFlags, ScriptAccess defaultAccess, bool ignoreDynamic)
86+
public override Invocability GetInvocability(BindingFlags bindFlags, Type accessContext, ScriptAccess defaultAccess, bool ignoreDynamic)
8787
{
88-
return target.GetInvocability(bindFlags, defaultAccess, ignoreDynamic);
88+
return target.GetInvocability(bindFlags, accessContext, defaultAccess, ignoreDynamic);
8989
}
9090

9191
#endregion

ClearScript/ClearScript.csproj

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,11 @@
5353
<SignAssembly>true</SignAssembly>
5454
<AssemblyOriginatorKeyFile>$(SolutionDir)ClearScript.snk</AssemblyOriginatorKeyFile>
5555
</PropertyGroup>
56+
<PropertyGroup Condition="!Exists('$(SolutionDir)ClearScript.snk') And Exists('$(SolutionDir)ClearScript.DelaySign.snk')">
57+
<SignAssembly>true</SignAssembly>
58+
<AssemblyOriginatorKeyFile>$(SolutionDir)ClearScript.DelaySign.snk</AssemblyOriginatorKeyFile>
59+
<DelaySign>true</DelaySign>
60+
</PropertyGroup>
5661
<ItemGroup>
5762
<Reference Include="CustomMarshalers" />
5863
<Reference Include="System" />
@@ -114,6 +119,7 @@
114119
<Compile Include="Util\Scope.cs" />
115120
<Compile Include="Util\SocketHelpers.cs" />
116121
<Compile Include="Util\SpecialDispIDs.cs" />
122+
<Compile Include="Util\Test\AccessContextTestObject.cs" />
117123
<Compile Include="Util\Web\WebContext.cs" />
118124
<Compile Include="Util\Web\WebRequest.cs" />
119125
<Compile Include="Util\Web\WebResponse.cs" />
@@ -213,16 +219,16 @@
213219
<Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
214220
</ItemGroup>
215221
<ItemGroup>
216-
<Content Include="Exports\CallbackManager.h">
222+
<None Include="Exports\CallbackManager.h">
217223
<AutoGen>True</AutoGen>
218224
<DesignTime>True</DesignTime>
219225
<DependentUpon>CallbackManager.tt</DependentUpon>
220-
</Content>
221-
<Content Include="Exports\VersionSymbols.h">
226+
</None>
227+
<None Include="Exports\VersionSymbols.h">
222228
<AutoGen>True</AutoGen>
223229
<DesignTime>True</DesignTime>
224230
<DependentUpon>VersionSymbols.tt</DependentUpon>
225-
</Content>
231+
</None>
226232
</ItemGroup>
227233
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
228234
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.

ClearScript/Exports/VersionSymbols.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@
55

66
#pragma once
77

8-
#define CLEARSCRIPT_VERSION_STRING "5.5.3.0"
9-
#define CLEARSCRIPT_VERSION_COMMA_SEPARATED 5,5,3,0
8+
#define CLEARSCRIPT_VERSION_STRING "5.5.4.0"
9+
#define CLEARSCRIPT_VERSION_COMMA_SEPARATED 5,5,4,0

ClearScript/ExtensionMethods.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,13 @@ public ExtensionMethodSummary Summary
2121
get { return summary; }
2222
}
2323

24-
public bool ProcessType(Type type, ScriptAccess defaultAccess)
24+
public bool ProcessType(Type type, Type accessContext, ScriptAccess defaultAccess)
2525
{
2626
Debug.Assert(type.IsSpecific());
2727
if (!table.ContainsKey(type) && type.HasExtensionMethods())
2828
{
2929
const BindingFlags bindFlags = BindingFlags.Public | BindingFlags.Static;
30-
table[type] = type.GetMethods(bindFlags).Where(method => IsScriptableExtensionMethod(method, defaultAccess)).ToArray();
30+
table[type] = type.GetMethods(bindFlags).Where(method => IsScriptableExtensionMethod(method, accessContext, defaultAccess)).ToArray();
3131
RebuildSummary();
3232
return true;
3333
}
@@ -40,9 +40,9 @@ public void RebuildSummary()
4040
summary = new ExtensionMethodSummary(table);
4141
}
4242

43-
private static bool IsScriptableExtensionMethod(MethodInfo method, ScriptAccess defaultAccess)
43+
private static bool IsScriptableExtensionMethod(MethodInfo method, Type accessContext, ScriptAccess defaultAccess)
4444
{
45-
return method.IsScriptable(defaultAccess) && method.IsDefined(typeof(ExtensionAttribute), false);
45+
return method.IsScriptable(accessContext, defaultAccess) && method.IsDefined(typeof(ExtensionAttribute), false);
4646
}
4747
}
4848

ClearScript/HostIndexedProperty.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ public override bool TryInvoke(IHostInvokeContext context, BindingFlags invokeFl
8888
return true;
8989
}
9090

91-
public override Invocability GetInvocability(BindingFlags bindFlags, ScriptAccess defaultAccess, bool ignoreDynamic)
91+
public override Invocability GetInvocability(BindingFlags bindFlags, Type accessContext, ScriptAccess defaultAccess, bool ignoreDynamic)
9292
{
9393
return Invocability.Delegate;
9494
}

0 commit comments

Comments
 (0)