| Index: runtime/bin/dartutils.cc
 | 
| diff --git a/runtime/bin/dartutils.cc b/runtime/bin/dartutils.cc
 | 
| index b55ae0b6fb3f75af889202e55d49ebebf16dbee2..fc9046942654246cd33e0bd4816867ac5d229c4c 100644
 | 
| --- a/runtime/bin/dartutils.cc
 | 
| +++ b/runtime/bin/dartutils.cc
 | 
| @@ -563,14 +563,18 @@ Dart_Handle DartUtils::LoadScriptHttp(Dart_Handle uri,
 | 
|  
 | 
|  Dart_Handle DartUtils::LoadScript(const char* script_uri,
 | 
|                                    Dart_Handle builtin_lib) {
 | 
| -  if (DartUtils::IsHttpSchemeURL(script_uri)) {
 | 
| -    return LoadScriptHttp(NewString(script_uri), builtin_lib);
 | 
| -  }
 | 
| -  Dart_Handle resolved_script_uri;
 | 
| -  resolved_script_uri = ResolveScriptUri(NewString(script_uri), builtin_lib);
 | 
| +  // Always call ResolveScriptUri because as a side effect it sets
 | 
| +  // the script entry path which is used when automatically resolving
 | 
| +  // package root.
 | 
| +  Dart_Handle resolved_script_uri =
 | 
| +      ResolveScriptUri(NewString(script_uri), builtin_lib);
 | 
|    if (Dart_IsError(resolved_script_uri)) {
 | 
|      return resolved_script_uri;
 | 
|    }
 | 
| +  // Handle http: requests separately.
 | 
| +  if (DartUtils::IsHttpSchemeURL(script_uri)) {
 | 
| +    return LoadScriptHttp(resolved_script_uri, builtin_lib);
 | 
| +  }
 | 
|    Dart_Handle script_path = DartUtils::FilePathFromUri(resolved_script_uri,
 | 
|                                                         builtin_lib);
 | 
|    if (Dart_IsError(script_path)) {
 | 
| 
 |