diff options
author | jochen <jochen@chromium.org> | 2015-11-06 13:36:43 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-11-06 21:37:54 +0000 |
commit | 4a5e3814844abbf8a26d195fab24081101eafd0e (patch) | |
tree | 84ff11c92479d032084b7e8d7f33a90dd4647fdc /gin | |
parent | 1f586913e41b23b7b339a4b9d2397b56f3b62145 (diff) | |
download | chromium_src-4a5e3814844abbf8a26d195fab24081101eafd0e.zip chromium_src-4a5e3814844abbf8a26d195fab24081101eafd0e.tar.gz chromium_src-4a5e3814844abbf8a26d195fab24081101eafd0e.tar.bz2 |
Replace hidden values with private symbols in mojo and gin
Private symbols are ES6 symbols that can't be observed from JavaScript.
We will soon remove support for hidden values.
BUG=none
R=sky@chromium.org
Review URL: https://codereview.chromium.org/1418513021
Cr-Commit-Position: refs/heads/master@{#358408}
Diffstat (limited to 'gin')
-rw-r--r-- | gin/modules/timer.cc | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/gin/modules/timer.cc b/gin/modules/timer.cc index 8aac8a6..26b5c75 100644 --- a/gin/modules/timer.cc +++ b/gin/modules/timer.cc @@ -12,8 +12,8 @@ namespace gin { namespace { -v8::Local<v8::String> GetHiddenPropertyName(v8::Isolate* isolate) { - return gin::StringToSymbol(isolate, "::gin::Timer"); +v8::Local<v8::Private> GetHiddenPropertyName(v8::Isolate* isolate) { + return v8::Private::ForApi(isolate, gin::StringToV8(isolate, "::gin::Timer")); } } // namespace @@ -45,8 +45,10 @@ Timer::Timer(v8::Isolate* isolate, bool repeating, int delay_ms, runner_(PerContextData::From( isolate->GetCurrentContext())->runner()->GetWeakPtr()), weak_factory_(this) { - GetWrapper(runner_->GetContextHolder()->isolate())->SetHiddenValue( - GetHiddenPropertyName(isolate), function); + GetWrapper(runner_->GetContextHolder()->isolate()) + ->SetPrivate(isolate->GetCurrentContext(), GetHiddenPropertyName(isolate), + function) + .FromJust(); timer_.Start(FROM_HERE, base::TimeDelta::FromMilliseconds(delay_ms), base::Bind(&Timer::OnTimerFired, weak_factory_.GetWeakPtr())); } @@ -65,7 +67,10 @@ void Timer::OnTimerFired() { Runner::Scope scope(runner_.get()); v8::Isolate* isolate = runner_->GetContextHolder()->isolate(); v8::Local<v8::Function> function = v8::Local<v8::Function>::Cast( - GetWrapper(isolate)->GetHiddenValue(GetHiddenPropertyName(isolate))); + GetWrapper(isolate) + ->GetPrivate(runner_->GetContextHolder()->context(), + GetHiddenPropertyName(isolate)) + .ToLocalChecked()); runner_->Call(function, v8::Undefined(isolate), 0, NULL); } |