Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(163)

Unified Diff: Source/bindings/core/dart/DartController.cpp

Issue 2543703003: Added setting up VMLibraryHooks for Dartium to support resolvePageUri (Closed)
Patch Set: Added setting up VMLibraryHooks for Dartium to support resolvePageUri Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/bindings/core/dart/DartController.cpp
diff --git a/Source/bindings/core/dart/DartController.cpp b/Source/bindings/core/dart/DartController.cpp
index 4ffedaa560a40144de4128e980cdaa325d60e167..e7e1820561f580d19824ee4e45e73318c826be20 100644
--- a/Source/bindings/core/dart/DartController.cpp
+++ b/Source/bindings/core/dart/DartController.cpp
@@ -170,6 +170,12 @@ Dart_Isolate DartController::createIsolate(const char* scriptURL, const char* en
Dart_SetNativeResolver(html, isDOMEnabled ? domIsolateHtmlResolver : pureIsolateResolver, isDOMEnabled ? domIsolateHtmlSymbolizer : pureIsolateSymbolizer);
domData->setHtmlLibrary(Dart_NewPersistentHandle(html));
+ // Lookup native calls referenced in dart:_builtin for _setupHooks() to setup VMLibraryHooks.
+ Dart_Handle builtin = Dart_LookupLibrary(Dart_NewStringFromCString("dart:_builtin"));
+ ASSERT(!Dart_IsError(builtin));
+ Dart_SetNativeResolver(builtin, isDOMEnabled ? domIsolateHtmlResolver : pureIsolateResolver, isDOMEnabled ? domIsolateHtmlSymbolizer : pureIsolateSymbolizer);
+ domData->setBuiltinLibrary(Dart_NewPersistentHandle(builtin));
siva 2017/01/06 21:39:33 Ditto comment about not needing this if the setup
terry 2017/01/09 21:06:02 Right native resolver is removed (code exist in da
+
Dart_Handle js = Dart_LookupLibrary(Dart_NewStringFromCString("dart:js"));
ASSERT(!Dart_IsError(js));
Dart_SetNativeResolver(js, isDOMEnabled ? JsInterop::resolver : pureIsolateResolver, 0);
@@ -744,7 +750,7 @@ void DartController::initVMIfNeeded(bool checked, Document* document)
init_params.entropy_source = generateEntropy;
init_params.get_service_assets = GetVMServiceAssetsArchiveCallback;
char* error = Dart_Initialize(&init_params);
- RELEASE_ASSERT_WITH_MESSAGE(!error, error);
+ RELEASE_ASSERT_WITH_MESSAGE(!error, "Dart_Initialize failed");
}
static bool checkForExpiration()

Powered by Google App Engine
This is Rietveld 408576698