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

Unified Diff: runtime/bin/builtin.cc

Issue 267353005: - Change when the library being loaded is registered. Now (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 6 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
Index: runtime/bin/builtin.cc
===================================================================
--- runtime/bin/builtin.cc (revision 35776)
+++ runtime/bin/builtin.cc (working copy)
@@ -86,6 +86,23 @@
}
+Dart_Handle Builtin::LoadLibrary(Dart_Handle url, BuiltinLibraryId id) {
+ Dart_Handle library = Dart_LoadLibrary(url, Source(id));
+ if (!Dart_IsError(library) && (builtin_libraries_[id].has_natives_)) {
+ // Setup the native resolver for built in library functions.
+ DART_CHECK_VALID(
+ Dart_SetNativeResolver(library, NativeLookup, NativeSymbol));
+ }
+ if (builtin_libraries_[id].patch_url_ != NULL) {
+ ASSERT(builtin_libraries_[id].patch_paths_ != NULL);
+ LoadPatchFiles(library,
+ builtin_libraries_[id].patch_url_,
+ builtin_libraries_[id].patch_paths_);
+ }
+ return library;
+}
+
+
Dart_Handle Builtin::LoadAndCheckLibrary(BuiltinLibraryId id) {
ASSERT((sizeof(builtin_libraries_) / sizeof(builtin_lib_props)) ==
kInvalidLibrary);
@@ -93,18 +110,7 @@
Dart_Handle url = DartUtils::NewString(builtin_libraries_[id].url_);
Dart_Handle library = Dart_LookupLibrary(url);
if (Dart_IsError(library)) {
- library = Dart_LoadLibrary(url, Source(id));
- if (!Dart_IsError(library) && (builtin_libraries_[id].has_natives_)) {
- // Setup the native resolver for built in library functions.
- DART_CHECK_VALID(
- Dart_SetNativeResolver(library, NativeLookup, NativeSymbol));
- }
- if (builtin_libraries_[id].patch_url_ != NULL) {
- ASSERT(builtin_libraries_[id].patch_paths_ != NULL);
- LoadPatchFiles(library,
- builtin_libraries_[id].patch_url_,
- builtin_libraries_[id].patch_paths_);
- }
+ library = LoadLibrary(url, id);
}
DART_CHECK_VALID(library);
return library;

Powered by Google App Engine
This is Rietveld 408576698