Skip to content

Commit effcf91

Browse files
author
Luca Sonntag
committed
Fix possible null deref for JavascriptBindingApiAllowOrigins
In IsJavascriptBindingApiAllowed, added a null check for JavascriptBindingApiAllowOrigins to prevent a potential null dereference if JavascriptBindingApiHasAllowOrigins is true but the allowOrigins list itself was null.
1 parent 2eac865 commit effcf91

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

CefSharp.BrowserSubprocess.Core/CefAppUnmanagedWrapper.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -356,6 +356,12 @@ namespace CefSharp
356356
return true;
357357
}
358358

359+
auto allowOrigins = browserWrapper->JavascriptBindingApiAllowOrigins;
360+
if (!allowOrigins.get())
361+
{
362+
return false;
363+
}
364+
359365
auto frameUrl = frame->GetURL();
360366

361367
CefURLParts frameUrlParts;
@@ -372,11 +378,11 @@ namespace CefSharp
372378

373379
auto frameUrlOrigin = CefString(originStr, originLen);
374380

375-
auto size = static_cast<int>(browserWrapper->JavascriptBindingApiAllowOrigins->GetSize());
381+
auto size = static_cast<int>(allowOrigins->GetSize());
376382

377383
for (int i = 0; i < size; i++)
378384
{
379-
auto origin = browserWrapper->JavascriptBindingApiAllowOrigins->GetString(i);
385+
auto origin = allowOrigins->GetString(i);
380386
auto frameOriginPtr = reinterpret_cast<const wchar_t*>(frameUrlOrigin.c_str());
381387
auto allowedOriginPtr = reinterpret_cast<const wchar_t*>(origin.c_str());
382388

0 commit comments

Comments
 (0)