* Fix for issue 12526
Ensure that child isolates do not clear the dart_ui_state_ field present in the dart controller.
The commit dd1e0b59ec implemented code to reset the dart_ui_state_ back to null when an isolate was being shutdown to ensure there was no use after free issues when the main isolate exeutes Isolate.current.kill() it however it was also clearning the field when a child isolate was shutdown causing SEGVs later.
* Address code format issues.
This reverts commit a89f46696d4bc16d814f6697f46e9514b1193b0e.
Doing the synchronized roll of Dart into engine as well as into Fuchsia
to prevent Fuchsia breakage.
* Roll dart to pick up change where platform.dill was removed
* Fix flutter patch sdk generation
* Update license hash. No changes to license text.
* Roll dart to pick up a fix for zero-rebuild problem
* Update license hash
Previously, cases like:
```dart
Color.lerp(const Color(0xFF00FF7F), const Color(0xFF00FFFF), 1.1)
```
...would result in unexpected effects (in this instance, lerping
between these colors with a curve that overshoots would take what
should be a simple animation from pale green to blue and add some
flickering bright green whenever it overshoots).
* Remove padding values in line_heights and glyph_position_x. Each value
in glyph_position_x now represents an actual glyph in the layout.
* Remove code intended to handle extra characters beyond the end of the
last line. The LineBreaker should ensure that the end of the last run
matches the end of the last line.
* Return the upstream/downstream affinity of the cursor position in
GetGlyphPositionAtCoordinate.
* Account for the space at the end of a word wrapped line in
GetGlyphPositionAtCoordinate / GetCoordinatesForGlyphPosition
If an isolate shuts down (for example if an app calls
Isolate.current.kill()), the UIDartState* on DartController will refer
to a freed object. This wires through notification that the is shutting
down through to the DartController so it can clean up appropriately.
This also makes gives the vm-service isolate an UIDartState* so that
the shutdown callback can behave correctly.
If an isolate shuts down (for example if an app calls
Isolate.current.kill()), the UIDartState* on DartController will refer
to a freed object. This wires through notification that the is shutting
down through to the DartController so it can clean up appropriately.
* Fix remaining ftl->fxl conversions
The previous scripting pass at this did not account for objective c file endings
* Update tonic DEPS reference to the post-fxl version
Dart_DebugName should be used just to make debug outputs more readable.
We remove the dependency from this API and form the UIDartState debug
name in the engine using the predefined format:
<script_uri>$main-<main_port>
This will allow the engine to change the format of the isolate name
without breaking the engine.
Related https://codereview.chromium.org/3004563003/