Fix crash, stale allowAllScripts and allowedOrigins
This commit is contained in:
@@ -54,7 +54,7 @@
|
||||
{
|
||||
_allowedResourceOrigins = [[plugInController parameters] valueForKey:SBRGetAllowedOriginsKey()];
|
||||
_allScriptsAllowed = [[[plugInController parameters] valueForKey:SBRGetAllScriptsAllowedKey()] boolValue];
|
||||
NSLog(@"Got %lu allowed script origins at initialization", (unsigned long)_allowedResourceOrigins.count);
|
||||
NSLog(@"SBRProcessPlugin: %lu origins allowed, all scripts allowed: %@ ", (unsigned long)_allowedResourceOrigins.count, _allScriptsAllowed ? @"YES" : @"NO");
|
||||
}
|
||||
|
||||
- (void)webProcessPlugIn:(WKWebProcessPlugInController *)plugInController didCreateBrowserContextController:(WKWebProcessPlugInBrowserContextController *)browserContextController
|
||||
@@ -83,12 +83,13 @@
|
||||
NSString *originString = [requestURL host];
|
||||
NSString *requestExtension = [requestURL pathExtension];
|
||||
if (requestExtension.length > 0 && [requestExtension isEqualToString:@"js"]) {
|
||||
[[self processDelegate] webProcessDidLoadScriptWithOrigin:originString];
|
||||
|
||||
if ([self allScriptsAllowed] || [_allowedResourceOrigins containsObject:originString]) {
|
||||
NSLog(@"SBRProcessPlugin: Allowing whitelisted requestURL: %@", requestURL);
|
||||
[[self processDelegate] webProcessDidAllowScriptWithOrigin:originString];
|
||||
} else {
|
||||
NSLog(@"SBRProcessPlugin: Blocking requestURL: %@", requestURL);
|
||||
[[self processDelegate] webProcessDidBlockScriptWithOrigin:originString];
|
||||
|
||||
request = nil;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
@protocol SBRWebProcessDelegate <NSObject>
|
||||
|
||||
- (void)webProcessDidConnect;
|
||||
- (void)webProcessDidLoadScriptWithOrigin:(NSString *)origin;
|
||||
- (void)webProcessDidBlockScriptWithOrigin:(NSString *)origin;
|
||||
- (void)webProcessDidAllowScriptWithOrigin:(NSString *)origin;
|
||||
|
||||
@end
|
||||
|
||||
Reference in New Issue
Block a user