Merge to XFA:More tidy of CJS_Object, kill implicit cast operator

(cherry picked from commit 270fc65d5824eeedbb2ed17516a72721bde9c9ef)
Original Review URL: https://codereview.chromium.org/1349423006 .

TBR=thestig@chromium.org

Review URL: https://codereview.chromium.org/1357243002 .
diff --git a/fpdfsdk/include/javascript/JS_Object.h b/fpdfsdk/include/javascript/JS_Object.h
index a7772f1..c7f92ac 100644
--- a/fpdfsdk/include/javascript/JS_Object.h
+++ b/fpdfsdk/include/javascript/JS_Object.h
@@ -60,9 +60,7 @@
   virtual FX_BOOL InitInstance(IFXJS_Context* cc) { return TRUE; }
   virtual FX_BOOL ExitInstance() { return TRUE; }
 
-  operator v8::Local<v8::Object>() {
-    return v8::Local<v8::Object>::New(m_pIsolate, m_pObject);
-  }
+  v8::Local<v8::Object> ToV8Object() { return m_pV8Object.Get(m_pIsolate); }
 
   // Takes ownership of |pObj|.
   void SetEmbedObject(CJS_EmbedObj* pObj) { m_pEmbedObj.reset(pObj); }
@@ -81,7 +79,7 @@
 
  protected:
   nonstd::unique_ptr<CJS_EmbedObj> m_pEmbedObj;
-  v8::Global<v8::Object> m_pObject;
+  v8::Global<v8::Object> m_pV8Object;
   v8::Isolate* m_pIsolate;
 };