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

Unified Diff: runtime/bin/loader.cc

Issue 2906603003: - Process the Dart_kCanonicalizeUrl tag in both VMparser and Kernel modes. (Closed)
Patch Set: Created 3 years, 7 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/bin/loader.cc
diff --git a/runtime/bin/loader.cc b/runtime/bin/loader.cc
index fb5fad38763dfa96c4e3f16ea47be065b328f18d..62a655dc35aa72ade12e4d28c79d916eda4a74b8 100644
--- a/runtime/bin/loader.cc
+++ b/runtime/bin/loader.cc
@@ -643,19 +643,6 @@ Dart_Handle Loader::DartColonLibraryTagHandler(Dart_LibraryTag tag,
Dart_Handle Loader::LibraryTagHandler(Dart_LibraryTag tag,
Dart_Handle library,
Dart_Handle url) {
- if (dfe.UseDartFrontend()) {
- Dart_Isolate current = Dart_CurrentIsolate();
- if (!Dart_IsServiceIsolate(current) && !Dart_IsKernelIsolate(current)) {
- // When using DFE the library tag handler should be called only when we
- // are reloading scripts.
- // TODO(asiva) We need to ensure that the kernel and service isolates
- // and the spawnURI paths are always loaded from a kernel IR and do
- // not use this path.
- if (tag == Dart_kScriptTag) {
- return dfe.ReloadScript(current, url);
- }
- }
- }
if (tag == Dart_kCanonicalizeUrl) {
Dart_Handle library_url = Dart_LibraryUrl(library);
if (Dart_IsError(library_url)) {
@@ -663,6 +650,17 @@ Dart_Handle Loader::LibraryTagHandler(Dart_LibraryTag tag,
}
return Dart_DefaultCanonicalizeUrl(library_url, url);
}
+ if (dfe.UseDartFrontend()) {
+ Dart_Isolate current = Dart_CurrentIsolate();
+ if (!Dart_IsServiceIsolate(current) && !Dart_IsKernelIsolate(current)) {
+ // When using DFE the library tag handler should be called only when we
+ // are reloading scripts.
+ ASSERT(tag == Dart_kScriptTag);
+ return dfe.ReloadScript(current, url);
+ }
+ // TODO(asiva) We need to ensure that the kernel and service isolates
+ // are always loaded from a kernel IR and do not use this path.
+ }
const char* url_string = NULL;
Dart_Handle result = Dart_StringToCString(url, &url_string);
if (Dart_IsError(result)) {
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698