Fix potential crash if a context with no bindings is released (issue #736).

git-svn-id: https://chromiumembedded.googlecode.com/svn/branches/1271@903 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
Marshall Greenblatt 2012-11-08 15:28:08 +00:00
parent 358faf993a
commit 205b7c7a95
1 changed files with 3 additions and 3 deletions

View File

@ -88,9 +88,6 @@ class CefV8TrackManager {
v8::Handle<v8::Object> object = context->Global();
v8::Handle<v8::Value> value = object->GetHiddenValue(context_state_key_);
if (value.IsEmpty())
return;
if (!value.IsEmpty())
return static_cast<CefV8ContextState*>(v8::External::Unwrap(value));
@ -122,6 +119,9 @@ class CefV8TrackManager {
v8::Handle<v8::Object> object = context->Global();
v8::Handle<v8::Value> value = object->GetHiddenValue(context_state_key_);
if (value.IsEmpty())
return;
scoped_refptr<CefV8ContextState> state =
static_cast<CefV8ContextState*>(v8::External::Unwrap(value));
state->Detach();