aboutsummaryrefslogtreecommitdiffstats
path: root/src/declarative/v8/0012-Add-IsCallable-method-for-Object-in-the-API.patch
diff options
context:
space:
mode:
authorKent Hansen <kent.hansen@nokia.com>2011-08-16 14:00:13 +0200
committerQt by Nokia <qt-info@nokia.com>2011-08-29 14:20:43 +0200
commite71904e231e27e6f6f88b35c4a7e2d7cf8ba2640 (patch)
tree3a5f88fbd03efa5b130d591a4ebd1df4957c420b /src/declarative/v8/0012-Add-IsCallable-method-for-Object-in-the-API.patch
parente233d8aa0710f8253e6ca2635cf6c9afa95757d2 (diff)
Remove V8 submodule from QtDeclarative
QtDeclarative should now link against the QtV8 library from qtbase. The patch files have been moved to qtbase as well. Applications that use the QtDeclarative private headers may need to add the following to their .pro file: QT += v8-private This ensures that <private/v8.h> is found, which is (indirectly) included by many QtDeclarative private headers. Task-number: QTBUG-20963 Change-Id: I31e973a6fcc0c416d3b258a61c26564cee3dcd4b Reviewed-on: http://codereview.qt.nokia.com/3093 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Diffstat (limited to 'src/declarative/v8/0012-Add-IsCallable-method-for-Object-in-the-API.patch')
-rw-r--r--src/declarative/v8/0012-Add-IsCallable-method-for-Object-in-the-API.patch116
1 files changed, 0 insertions, 116 deletions
diff --git a/src/declarative/v8/0012-Add-IsCallable-method-for-Object-in-the-API.patch b/src/declarative/v8/0012-Add-IsCallable-method-for-Object-in-the-API.patch
deleted file mode 100644
index e4c46b0cbf..0000000000
--- a/src/declarative/v8/0012-Add-IsCallable-method-for-Object-in-the-API.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From 472c04c9e7a64e8734c76d2cf97a7cc5b773b788 Mon Sep 17 00:00:00 2001
-From: ager@chromium.org <ager@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
-Date: Mon, 9 May 2011 15:24:48 +0000
-Subject: [PATCH 12/13] Add IsCallable method for Object in the API
-
-Patch by Peter Varga.
-
-BUG=none
-TEST=cctest/test-api/CallableObject
-
-Review URL: http://codereview.chromium.org/6964005
-
-git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@7828 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
----
- include/v8.h | 7 +++++++
- src/api.cc | 11 +++++++++++
- test/cctest/test-api.cc | 43 +++++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 61 insertions(+), 0 deletions(-)
-
-diff --git a/include/v8.h b/include/v8.h
-index 08b0ec2..4194d4a 100644
---- a/include/v8.h
-+++ b/include/v8.h
-@@ -1763,6 +1763,13 @@ class Object : public Value {
- V8EXPORT int GetIndexedPropertiesExternalArrayDataLength();
-
- /**
-+ * Checks whether a callback is set by the
-+ * ObjectTemplate::SetCallAsFunctionHandler method.
-+ * When an Object is callable this method returns true.
-+ */
-+ V8EXPORT bool IsCallable();
-+
-+ /**
- * Call an Object as a function if a callback is set by the
- * ObjectTemplate::SetCallAsFunctionHandler method.
- */
-diff --git a/src/api.cc b/src/api.cc
-index bd435eb..a5a637f 100644
---- a/src/api.cc
-+++ b/src/api.cc
-@@ -3265,6 +3265,17 @@ int v8::Object::GetIndexedPropertiesExternalArrayDataLength() {
- }
-
-
-+bool v8::Object::IsCallable() {
-+ i::Isolate* isolate = Utils::OpenHandle(this)->GetIsolate();
-+ ON_BAILOUT(isolate, "v8::Object::IsCallable()", return false);
-+ ENTER_V8(isolate);
-+ i::HandleScope scope(isolate);
-+ i::Handle<i::JSObject> obj = Utils::OpenHandle(this);
-+ if (obj->IsJSFunction()) return true;
-+ return i::Execution::GetFunctionDelegate(obj)->IsJSFunction();
-+}
-+
-+
- Local<v8::Value> Object::CallAsFunction(v8::Handle<v8::Object> recv, int argc,
- v8::Handle<v8::Value> argv[]) {
- i::Isolate* isolate = Utils::OpenHandle(this)->GetIsolate();
-diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
-index 1334f63..45db5a1 100644
---- a/test/cctest/test-api.cc
-+++ b/test/cctest/test-api.cc
-@@ -7263,6 +7263,49 @@ THREADED_TEST(CallAsFunction) {
- }
-
-
-+// Check whether a non-function object is callable.
-+THREADED_TEST(CallableObject) {
-+ v8::HandleScope scope;
-+ LocalContext context;
-+
-+ { Local<ObjectTemplate> instance_template = ObjectTemplate::New();
-+ instance_template->SetCallAsFunctionHandler(call_as_function);
-+ Local<Object> instance = instance_template->NewInstance();
-+ v8::TryCatch try_catch;
-+
-+ CHECK(instance->IsCallable());
-+ CHECK(!try_catch.HasCaught());
-+ }
-+
-+ { Local<ObjectTemplate> instance_template = ObjectTemplate::New();
-+ Local<Object> instance = instance_template->NewInstance();
-+ v8::TryCatch try_catch;
-+
-+ CHECK(!instance->IsCallable());
-+ CHECK(!try_catch.HasCaught());
-+ }
-+
-+ { Local<FunctionTemplate> function_template =
-+ FunctionTemplate::New(call_as_function);
-+ Local<Function> function = function_template->GetFunction();
-+ Local<Object> instance = function;
-+ v8::TryCatch try_catch;
-+
-+ CHECK(instance->IsCallable());
-+ CHECK(!try_catch.HasCaught());
-+ }
-+
-+ { Local<FunctionTemplate> function_template = FunctionTemplate::New();
-+ Local<Function> function = function_template->GetFunction();
-+ Local<Object> instance = function;
-+ v8::TryCatch try_catch;
-+
-+ CHECK(instance->IsCallable());
-+ CHECK(!try_catch.HasCaught());
-+ }
-+}
-+
-+
- static int CountHandles() {
- return v8::HandleScope::NumberOfHandles();
- }
---
-1.7.2.3
-