| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stdio.h> | 5 #include <stdio.h> |
| 6 | 6 |
| 7 #include "include/dart_api.h" | 7 #include "include/dart_api.h" |
| 8 | 8 |
| 9 #include "bin/builtin.h" | 9 #include "bin/builtin.h" |
| 10 | 10 |
| 11 // Implementation of native functions which are used for some | 11 // Implementation of native functions which are used for some |
| 12 // test/debug functionality in standalone dart mode. | 12 // test/debug functionality in standalone dart mode. |
| 13 | 13 |
| 14 void PrintString(FILE* out, Dart_Handle str) { | 14 void PrintString(FILE* out, Dart_Handle str) { |
| 15 Dart_Result result = Dart_StringToCString(str); | 15 const char* cstring = NULL; |
| 16 const char* cstring = Dart_IsValidResult(result) ? | 16 Dart_Handle result = Dart_StringToCString(str, &cstring); |
| 17 Dart_GetResultAsCString(result) : Dart_GetErrorCString(result); | 17 if (!Dart_IsValid(result)) { |
| 18 cstring = Dart_GetError(result); |
| 19 } |
| 18 fprintf(out, "%s\n", cstring); | 20 fprintf(out, "%s\n", cstring); |
| 19 fflush(out); | 21 fflush(out); |
| 20 } | 22 } |
| 21 | 23 |
| 22 | 24 |
| 23 void FUNCTION_NAME(Logger_PrintString)(Dart_NativeArguments args) { | 25 void FUNCTION_NAME(Logger_PrintString)(Dart_NativeArguments args) { |
| 24 Dart_EnterScope(); | 26 Dart_EnterScope(); |
| 25 PrintString(stdout, Dart_GetNativeArgument(args, 0)); | 27 PrintString(stdout, Dart_GetNativeArgument(args, 0)); |
| 26 Dart_ExitScope(); | 28 Dart_ExitScope(); |
| 27 } | 29 } |
| OLD | NEW |