Roll src/third_party/WebKit d2d3237:dde36c9 (svn 202225:202226)
[chromium-blink-merge.git] / gin / context_holder.cc
bloba72250c865b4ba5b80bd015c270917f2ccdfe4ac
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "gin/public/context_holder.h"
7 #include "base/logging.h"
8 #include "gin/per_context_data.h"
10 namespace gin {
12 ContextHolder::ContextHolder(v8::Isolate* isolate)
13 : isolate_(isolate) {
16 ContextHolder::~ContextHolder() {
17 // PerContextData needs to be destroyed before the context.
18 data_.reset();
21 void ContextHolder::SetContext(v8::Local<v8::Context> context) {
22 DCHECK(context_.IsEmpty());
23 context_.Reset(isolate_, context);
24 data_.reset(new PerContextData(this, context));
27 } // namespace gin