Index: third_party/WebKit/Source/core/loader/ThreadableLoader.h |
diff --git a/third_party/WebKit/Source/core/loader/ThreadableLoader.h b/third_party/WebKit/Source/core/loader/ThreadableLoader.h |
index 9e8c56c6bc826de43fc680b5f4828c4eb83a1c60..36ec341f19c2aa776c5316bce9f7778944519975 100644 |
--- a/third_party/WebKit/Source/core/loader/ThreadableLoader.h |
+++ b/third_party/WebKit/Source/core/loader/ThreadableLoader.h |
@@ -58,13 +58,19 @@ enum ContentSecurityPolicyEnforcement { |
DoNotEnforceContentSecurityPolicy, |
}; |
+enum SchedulerWaitingPolicy { |
+ PreventSchedulerFromWaiting, |
+ DoNotPreventSchedulerFromWaiting, |
+}; |
+ |
struct ThreadableLoaderOptions { |
DISALLOW_NEW(); |
ThreadableLoaderOptions() |
: preflightPolicy(ConsiderPreflight), |
crossOriginRequestPolicy(DenyCrossOriginRequests), |
contentSecurityPolicyEnforcement(EnforceContentSecurityPolicy), |
- timeoutMilliseconds(0) {} |
+ timeoutMilliseconds(0), |
+ schedulerWaitingPolicy(DoNotPreventSchedulerFromWaiting) {} |
// When adding members, CrossThreadThreadableLoaderOptionsData should |
// be updated. |
@@ -76,6 +82,7 @@ struct ThreadableLoaderOptions { |
AtomicString initiator; |
ContentSecurityPolicyEnforcement contentSecurityPolicyEnforcement; |
unsigned long timeoutMilliseconds; |
+ SchedulerWaitingPolicy schedulerWaitingPolicy; |
}; |
// Encode AtomicString as String to cross threads. |
@@ -88,7 +95,8 @@ struct CrossThreadThreadableLoaderOptionsData { |
initiator(options.initiator.getString().isolatedCopy()), |
contentSecurityPolicyEnforcement( |
options.contentSecurityPolicyEnforcement), |
- timeoutMilliseconds(options.timeoutMilliseconds) {} |
+ timeoutMilliseconds(options.timeoutMilliseconds), |
+ schedulerWaitingPolicy(options.schedulerWaitingPolicy) {} |
operator ThreadableLoaderOptions() const { |
ThreadableLoaderOptions options; |
@@ -97,6 +105,7 @@ struct CrossThreadThreadableLoaderOptionsData { |
options.initiator = AtomicString(initiator); |
options.contentSecurityPolicyEnforcement = contentSecurityPolicyEnforcement; |
options.timeoutMilliseconds = timeoutMilliseconds; |
+ options.schedulerWaitingPolicy = schedulerWaitingPolicy; |
return options; |
} |
@@ -105,6 +114,7 @@ struct CrossThreadThreadableLoaderOptionsData { |
String initiator; |
ContentSecurityPolicyEnforcement contentSecurityPolicyEnforcement; |
unsigned long timeoutMilliseconds; |
+ SchedulerWaitingPolicy schedulerWaitingPolicy; |
}; |
template <> |