mirror of
https://github.com/encounter/engine.git
synced 2026-03-30 11:09:55 -07:00
Define Uri.base as CWD to match the standalone Dart VM. (#5137)
Bug: https://github.com/flutter/flutter/issues/17118
This commit is contained in:
@@ -88,9 +88,9 @@ static void InitDartInternal(Dart_Handle builtin_library, bool is_ui_isolate) {
|
||||
}
|
||||
|
||||
static void InitDartCore(Dart_Handle builtin, const std::string& script_uri) {
|
||||
DART_CHECK_VALID(
|
||||
Dart_SetField(builtin, ToDart("_baseURL"), ToDart(script_uri)));
|
||||
Dart_Handle get_base_url = GetClosure(builtin, "_getGetBaseURLClosure");
|
||||
Dart_Handle io_lib = Dart_LookupLibrary(ToDart("dart:io"));
|
||||
Dart_Handle get_base_url =
|
||||
Dart_Invoke(io_lib, ToDart("_getUriBaseClosure"), 0, NULL);
|
||||
Dart_Handle core_library = Dart_LookupLibrary(ToDart("dart:core"));
|
||||
DART_CHECK_VALID(
|
||||
Dart_SetField(core_library, ToDart("_uriBaseClosure"), get_base_url));
|
||||
|
||||
@@ -37,15 +37,11 @@ void _setupHooks() {
|
||||
|
||||
void _scheduleMicrotask(void callback()) native 'ScheduleMicrotask';
|
||||
|
||||
String _baseURL;
|
||||
Uri _getBaseURL() => Uri.parse(_baseURL);
|
||||
|
||||
// Required for gen_snapshot to work correctly.
|
||||
int _isolateId;
|
||||
|
||||
Function _getPrintClosure() => _print;
|
||||
Function _getScheduleMicrotaskClosure() => _scheduleMicrotask;
|
||||
Function _getGetBaseURLClosure() => _getBaseURL;
|
||||
|
||||
// Though the "main" symbol is not included in any of the libraries imported
|
||||
// above, the builtin library will be included manually during VM setup. This
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
dart:_internal,::,_printClosure
|
||||
dart:async,::,_setScheduleImmediateClosure
|
||||
dart:io,::,_getUriBaseClosure
|
||||
dart:io,::,_setupHooks
|
||||
dart:io,_Platform,_localeClosure
|
||||
dart:io,_Platform,set:_nativeScript
|
||||
@@ -11,8 +12,6 @@ dart:ui,::,_dispatchPlatformMessage
|
||||
dart:ui,::,_dispatchPointerDataPacket
|
||||
dart:ui,::,_dispatchSemanticsAction
|
||||
dart:ui,::,_drawFrame
|
||||
dart:ui,::,_getGetBaseURLClosure
|
||||
dart:ui,::,_baseURL
|
||||
dart:ui,::,_getLocaleClosure
|
||||
dart:ui,::,_getMainClosure
|
||||
dart:ui,::,_getPrintClosure
|
||||
|
||||
Reference in New Issue
Block a user