| Index: third_party/WebKit/Source/core/origin_trials/OriginTrialContext.cpp
|
| diff --git a/third_party/WebKit/Source/core/origin_trials/OriginTrialContext.cpp b/third_party/WebKit/Source/core/origin_trials/OriginTrialContext.cpp
|
| index 0cd5c760d4981e9ca767440915446240f9eac384..d201fe3dc0a861fe143ac6984921954952326f89 100644
|
| --- a/third_party/WebKit/Source/core/origin_trials/OriginTrialContext.cpp
|
| +++ b/third_party/WebKit/Source/core/origin_trials/OriginTrialContext.cpp
|
| @@ -158,6 +158,7 @@ void OriginTrialContext::addToken(const String& token) {
|
| m_tokens.append(token);
|
| validateToken(token);
|
| }
|
| + initializePendingFeatures();
|
| }
|
|
|
| void OriginTrialContext::addTokens(const Vector<String>& tokens) {
|
| @@ -167,6 +168,22 @@ void OriginTrialContext::addTokens(const Vector<String>& tokens) {
|
| validateToken(token);
|
| }
|
| }
|
| + initializePendingFeatures();
|
| +}
|
| +
|
| +void OriginTrialContext::initializePendingFeatures() {
|
| + if (!m_host->isDocument())
|
| + return;
|
| + LocalFrame* frame = toDocument(m_host.get())->frame();
|
| + if (!frame)
|
| + return;
|
| + ScriptState* scriptState = ScriptState::forMainWorld(frame);
|
| + if (!scriptState)
|
| + return;
|
| + if (!scriptState->contextIsValid())
|
| + return;
|
| + ScriptState::Scope scope(scriptState);
|
| + installPendingConditionalFeaturesOnWindow(scriptState);
|
| }
|
|
|
| void OriginTrialContext::setFeatureBindingsInstalled(
|
|
|