Author: [email protected]
Date: Fri Apr 3 01:18:24 2009
New Revision: 1673
Modified:
branches/bleeding_edge/src/api.cc
Log:
Move some more ENTER_V8 invocations. The biggest one is to move the
one in v8::V8::Initialize to after the early bailout.
Review URL: http://codereview.chromium.org/60083
Modified: branches/bleeding_edge/src/api.cc
==============================================================================
--- branches/bleeding_edge/src/api.cc (original)
+++ branches/bleeding_edge/src/api.cc Fri Apr 3 01:18:24 2009
@@ -1455,11 +1455,14 @@
Local<Boolean> Value::ToBoolean() const {
if (IsDeadCheck("v8::Value::ToBoolean()")) return Local<Boolean>();
LOG_API("ToBoolean");
- ENTER_V8;
i::Handle<i::Object> obj = Utils::OpenHandle(this);
- i::Handle<i::Object> val =
- obj->IsBoolean() ? obj : i::Execution::ToBoolean(obj);
- return Local<Boolean>(ToApi<Boolean>(val));
+ if (obj->IsBoolean()) {
+ return Local<Boolean>(ToApi<Boolean>(obj));
+ } else {
+ ENTER_V8;
+ i::Handle<i::Object> val = i::Execution::ToBoolean(obj);
+ return Local<Boolean>(ToApi<Boolean>(val));
+ }
}
@@ -1580,11 +1583,14 @@
bool Value::BooleanValue() const {
if (IsDeadCheck("v8::Value::BooleanValue()")) return false;
LOG_API("BooleanValue");
- ENTER_V8;
i::Handle<i::Object> obj = Utils::OpenHandle(this);
- i::Handle<i::Object> value =
- obj->IsBoolean() ? obj : i::Execution::ToBoolean(obj);
- return value->IsTrue();
+ if (obj->IsBoolean()) {
+ return obj->IsTrue();
+ } else {
+ ENTER_V8;
+ i::Handle<i::Object> value = i::Execution::ToBoolean(obj);
+ return value->IsTrue();
+ }
}
@@ -2347,8 +2353,8 @@
// --- E n v i r o n m e n t ---
bool v8::V8::Initialize() {
- ENTER_V8;
if (i::V8::HasBeenSetup()) return true;
+ ENTER_V8;
HandleScope scope;
if (i::Snapshot::Initialize()) {
return true;
--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---