diff --git a/DEPS b/DEPS
index 806bfee..7d5b16c 100644
--- a/DEPS
+++ b/DEPS
@@ -33,7 +33,7 @@
   'skia_revision': '588f879677d4f36e16a42dd96876534f104c2e2f',
   'tools_memory_revision': 'f7b00daf4df7f6c469f5fbc68d7f40f6bd15d6e6',
   'trace_event_revision': '211b3ed9d0481b4caddbee1322321b86a483ca1f',
-  'v8_revision': '604c50c84e672c099cbcbd6dd19928a0381d9688',
+  'v8_revision': '626844157660a5c78c5f7e958db5c6af498ef35b',
   'yasm_source_revision': '720b70524a4424b15fc57e82263568c8ba0496ad',
   'zlib_revision': 'dcf1d0f8c952f76cfceefb4ba61e004f93ad7287',
 }
diff --git a/fxjs/cfx_v8.cpp b/fxjs/cfx_v8.cpp
index 73d95ae..bd0e5eb 100644
--- a/fxjs/cfx_v8.cpp
+++ b/fxjs/cfx_v8.cpp
@@ -150,11 +150,7 @@
 bool CFX_V8::ToBoolean(v8::Local<v8::Value> pValue) {
   if (pValue.IsEmpty())
     return false;
-  v8::Local<v8::Context> context = m_pIsolate->GetCurrentContext();
-  v8::MaybeLocal<v8::Boolean> maybe_boolean = pValue->ToBoolean(context);
-  if (maybe_boolean.IsEmpty())
-    return false;
-  return maybe_boolean.ToLocalChecked()->Value();
+  return pValue->BooleanValue(m_pIsolate.Get());
 }
 
 double CFX_V8::ToDouble(v8::Local<v8::Value> pValue) {
diff --git a/fxjs/cfxjse_arguments.cpp b/fxjs/cfxjse_arguments.cpp
index 174fd3c..e18e3e3 100644
--- a/fxjs/cfxjse_arguments.cpp
+++ b/fxjs/cfxjse_arguments.cpp
@@ -28,9 +28,7 @@
 }
 
 bool CFXJSE_Arguments::GetBoolean(int32_t index) const {
-  return (*m_pInfo)[index]
-      ->BooleanValue(m_pInfo->GetIsolate()->GetCurrentContext())
-      .FromMaybe(false);
+  return (*m_pInfo)[index]->BooleanValue(m_pInfo->GetIsolate());
 }
 
 int32_t CFXJSE_Arguments::GetInt32(int32_t index) const {
diff --git a/fxjs/cfxjse_value.cpp b/fxjs/cfxjse_value.cpp
index 8bc243e..a84b571 100644
--- a/fxjs/cfxjse_value.cpp
+++ b/fxjs/cfxjse_value.cpp
@@ -406,8 +406,7 @@
   CFXJSE_ScopeUtil_IsolateHandleRootContext scope(GetIsolate());
   v8::Local<v8::Value> hValue =
       v8::Local<v8::Value>::New(GetIsolate(), m_hValue);
-  return hValue->BooleanValue(GetIsolate()->GetCurrentContext())
-      .FromMaybe(false);
+  return hValue->BooleanValue(GetIsolate());
 }
 
 float CFXJSE_Value::ToFloat() const {
