Skip to content

Commit 218de9c

Browse files
committed
Fix bug and add more tests
1 parent 19dcc80 commit 218de9c

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

CefSharp.BrowserSubprocess.Core/CefAppUnmanagedWrapper.cpp

+4-1
Original file line numberDiff line numberDiff line change
@@ -173,14 +173,17 @@ namespace CefSharp
173173
if (CefParseURL(frameUrl, frameUrlParts))
174174
{
175175
auto frameUrlOrigin = CefString(frameUrlParts.origin.str, frameUrlParts.origin.length);
176+
auto clrframeUrlOrigin = StringUtils::ToClr(frameUrlOrigin);
176177

177178
auto size = static_cast<int>(_jsBindingApiAllowOrigins->GetSize());
178179

179180
for (int i = 0; i < size; i++)
180181
{
181182
auto origin = _jsBindingApiAllowOrigins->GetString(i);
182183

183-
if (origin.compare(frameUrlOrigin))
184+
auto clrOrigin = StringUtils::ToClr(origin);
185+
186+
if (clrframeUrlOrigin->Equals(clrOrigin, StringComparer::CurrentCultureIgnoreCase))
184187
{
185188
createObjects = true;
186189

CefSharp.Test/JavascriptBinding/JavascriptBindingTests.cs

+5-3
Original file line numberDiff line numberDiff line change
@@ -157,14 +157,16 @@ public async Task ShouldDisableJsBindingApiForOrigin()
157157
}
158158
}
159159

160-
[Fact]
161-
public async Task ShouldEnableJsBindingApiForOrigin()
160+
[Theory]
161+
[InlineData(CefExample.BaseUrl + "/")]
162+
[InlineData("someorigin", CefExample.BaseUrl + "/")]
163+
public async Task ShouldEnableJsBindingApiForOrigin(params string[] origins)
162164
{
163165
using (var browser = new ChromiumWebBrowser(CefExample.BindingApiCustomObjectNameTestUrl, automaticallyCreateBrowser: false))
164166
{
165167
var settings = browser.JavascriptObjectRepository.Settings;
166168
settings.JavascriptBindingApiEnabled = true;
167-
settings.JavascriptBindingApiAllowOrigins = new string[] { CefExample.ExampleDomain };
169+
settings.JavascriptBindingApiAllowOrigins = origins;
168170

169171
//To modify the settings we need to defer browser creation slightly
170172
browser.CreateBrowser();

0 commit comments

Comments
 (0)