From b163984ae775ae229b8f7fc5573f9d28eaf33c19 Mon Sep 17 00:00:00 2001 From: "commit-bot@chromium.org" Date: Wed, 8 Jan 2014 15:14:09 +0000 Subject: Move v8 into third_party. BUG= R=robertphillips@google.com Author: jcgregorio@google.com Review URL: https://codereview.chromium.org/116693004 git-svn-id: http://skia.googlecode.com/svn/trunk@12954 2bbb7eff-a529-9590-31e7-b0007b416f81 --- experimental/SkV8Example/Global.cpp | 8 ++++---- experimental/SkV8Example/JsContext.cpp | 8 +++++--- experimental/SkV8Example/Path.cpp | 10 ++++++---- experimental/SkV8Example/README | 16 ++++++++++++++++ 4 files changed, 31 insertions(+), 11 deletions(-) create mode 100644 experimental/SkV8Example/README (limited to 'experimental/SkV8Example') diff --git a/experimental/SkV8Example/Global.cpp b/experimental/SkV8Example/Global.cpp index 998f92bb73..e8ad318d40 100644 --- a/experimental/SkV8Example/Global.cpp +++ b/experimental/SkV8Example/Global.cpp @@ -127,7 +127,7 @@ void Global::SetTimeout(const v8::FunctionCallbackInfo& args) { evt->setFast32(id); evt->postDelay(delay); - args.GetReturnValue().Set(Integer::New(id)); + args.GetReturnValue().Set(Integer::New(gGlobal->fIsolate, id)); } // Callback function for SkEvents used to implement timeouts. @@ -180,11 +180,11 @@ Handle Global::createRootContext() { Handle global = ObjectTemplate::New(); global->Set(v8::String::NewFromUtf8(fIsolate, "print"), - v8::FunctionTemplate::New(Global::Print)); + v8::FunctionTemplate::New(fIsolate, Global::Print)); global->Set(v8::String::NewFromUtf8(fIsolate, "setTimeout"), - v8::FunctionTemplate::New(Global::SetTimeout)); + v8::FunctionTemplate::New(fIsolate, Global::SetTimeout)); global->Set(v8::String::NewFromUtf8(fIsolate, "inval"), - v8::FunctionTemplate::New(Global::Inval)); + v8::FunctionTemplate::New(fIsolate, Global::Inval)); return Context::New(fIsolate, NULL, global); diff --git a/experimental/SkV8Example/JsContext.cpp b/experimental/SkV8Example/JsContext.cpp index cb25daefe0..5778172f27 100644 --- a/experimental/SkV8Example/JsContext.cpp +++ b/experimental/SkV8Example/JsContext.cpp @@ -208,7 +208,8 @@ void JsContext::GetWidth(Local name, JsContext* jsContext = Unwrap(info.This()); SkISize size = jsContext->fCanvas->getDeviceSize(); - info.GetReturnValue().Set(Int32::New(size.fWidth)); + info.GetReturnValue().Set( + Int32::New(jsContext->fGlobal->getIsolate(), size.fWidth)); } void JsContext::GetHeight(Local name, @@ -216,7 +217,8 @@ void JsContext::GetHeight(Local name, JsContext* jsContext = Unwrap(info.This()); SkISize size = jsContext->fCanvas->getDeviceSize(); - info.GetReturnValue().Set(Int32::New(size.fHeight)); + info.GetReturnValue().Set( + Int32::New(jsContext->fGlobal->getIsolate(), size.fHeight)); } @@ -226,7 +228,7 @@ Persistent JsContext::gContextTemplate; result->Set(String::NewFromUtf8( \ fGlobal->getIsolate(), name, \ String::kInternalizedString), \ - FunctionTemplate::New(fn)) + FunctionTemplate::New(fGlobal->getIsolate(), fn)) Handle JsContext::makeContextTemplate() { EscapableHandleScope handleScope(fGlobal->getIsolate()); diff --git a/experimental/SkV8Example/Path.cpp b/experimental/SkV8Example/Path.cpp index bce9667690..2b53a0f8e1 100644 --- a/experimental/SkV8Example/Path.cpp +++ b/experimental/SkV8Example/Path.cpp @@ -15,7 +15,8 @@ Global* Path::gGlobal = NULL; void Path::ConstructPath(const v8::FunctionCallbackInfo& args) { HandleScope handleScope(gGlobal->getIsolate()); Path* path = new Path(); - args.This()->SetInternalField(0, External::New(path)); + args.This()->SetInternalField( + 0, External::New(gGlobal->getIsolate(), path)); } #define ADD_METHOD(name, fn) \ @@ -23,7 +24,7 @@ void Path::ConstructPath(const v8::FunctionCallbackInfo& args) { String::NewFromUtf8( \ global->getIsolate(), name, \ String::kInternalizedString), \ - FunctionTemplate::New(fn)) + FunctionTemplate::New(global->getIsolate(), fn)) // Install the constructor in the global scope so Paths can be constructed // in JS. @@ -39,7 +40,7 @@ void Path::AddToGlobal(Global* global) { Context::Scope contextScope(context); Local constructor = FunctionTemplate::New( - Path::ConstructPath); + gGlobal->getIsolate(), Path::ConstructPath); constructor->InstanceTemplate()->SetInternalFieldCount(1); ADD_METHOD("close", ClosePath); @@ -50,7 +51,8 @@ void Path::AddToGlobal(Global* global) { ADD_METHOD("arc", Arc); ADD_METHOD("rect", Rect); - context->Global()->Set(String::New("Path"), constructor->GetFunction()); + context->Global()->Set(String::NewFromUtf8( + gGlobal->getIsolate(), "Path"), constructor->GetFunction()); } Path* Path::Unwrap(const v8::FunctionCallbackInfo& args) { diff --git a/experimental/SkV8Example/README b/experimental/SkV8Example/README new file mode 100644 index 0000000000..f69509d156 --- /dev/null +++ b/experimental/SkV8Example/README @@ -0,0 +1,16 @@ +Build Instructions +================== + +V8 gyp is not quite standard and Chromium uses a Python script +to work around that, for now we have some manual steps to do +before you can compile and run this sample: + +1. Uncomment out the v8 dep in DEPS and re-run gclient sync. +2. Run 'make dependencies' in third_pary/externals/v8. +3. Run 'make native' in third_pary/externals/v8. +4. Uncomment SkV8Example in gyp/everything.gyp. +5. Run 'make -C out/ SkV8Example BUILDTYPE=Debugmake' +6. Run the sample as: + ./out/Debug/SkV8Example --infile experimental/SkV8Example/speed.js + + -- cgit v1.2.3