| Index: runtime/bin/main.cc
|
| diff --git a/runtime/bin/main.cc b/runtime/bin/main.cc
|
| index be408da173628d16664f23c45b14a8ebb812e258..4827ab10ce7d7094c62a34b71195718e60f4ac5c 100644
|
| --- a/runtime/bin/main.cc
|
| +++ b/runtime/bin/main.cc
|
| @@ -151,8 +151,13 @@ static int ParseArguments(int argc,
|
| }
|
|
|
|
|
| -static Dart_Handle SetupRuntimeOptions(CommandLineOptions* options) {
|
| +static Dart_Handle SetupRuntimeOptions(CommandLineOptions* options,
|
| + char* script_name) {
|
| int options_count = options->count();
|
| + Dart_Handle dart_script = Dart_NewString(script_name);
|
| + if (Dart_IsError(dart_script)) {
|
| + return dart_script;
|
| + }
|
| Dart_Handle dart_arguments = Dart_NewList(options_count);
|
| if (Dart_IsError(dart_arguments)) {
|
| return dart_arguments;
|
| @@ -184,6 +189,15 @@ static Dart_Handle SetupRuntimeOptions(CommandLineOptions* options) {
|
| if (Dart_IsError(runtime_options_class)) {
|
| return runtime_options_class;
|
| }
|
| + Dart_Handle script_name_name = Dart_NewString("_nativeScript");
|
| + if (Dart_IsError(script_name_name)) {
|
| + return script_name_name;
|
| + }
|
| + Dart_Handle set_script_name =
|
| + Dart_SetStaticField(runtime_options_class, script_name_name, dart_script);
|
| + if (Dart_IsError(set_script_name)) {
|
| + return set_script_name;
|
| + }
|
| Dart_Handle native_name = Dart_NewString("_nativeArguments");
|
| if (Dart_IsError(native_name)) {
|
| return native_name;
|
| @@ -489,7 +503,8 @@ int main(int argc, char** argv) {
|
| }
|
|
|
| // Create a dart options object that can be accessed from dart code.
|
| - Dart_Handle options_result = SetupRuntimeOptions(&dart_options);
|
| + Dart_Handle options_result =
|
| + SetupRuntimeOptions(&dart_options, canonical_script_name);
|
| if (Dart_IsError(options_result)) {
|
| fprintf(stderr, "%s\n", Dart_GetError(options_result));
|
| Dart_ExitScope();
|
|
|