Repository navigation
An assert in a flutter app can hang the engine #7431
Copy link
Copy link
Closed
Description
16:23:15.442: I/flutter (25825): Another exception was thrown: The intrinsic dimension methods of the RenderFlex class returned values that violate the intrinsic protocol contract.
16:23:15.445: I/flutter (25825): Another exception was thrown: The intrinsic dimension methods of the RenderClipRRect class returned values that violate the intrinsic protocol contract.
16:23:15.447: I/flutter (25825): Another exception was thrown: The intrinsic dimension methods of the RenderFlex class returned values that violate the intrinsic protocol contract.
16:23:15.450: I/flutter (25825): Another exception was thrown: The intrinsic dimension methods of the RenderClipRRect class returned values that violate the intrinsic protocol contract.
16:23:15.452: I/flutter (25825): box RenderMetaData relayoutBoundary=up2 NEEDS-LAYOUT
16:23:15.461: I/flutter (25825): box RenderMetaData relayoutBoundary=up2
16:23:15.546: I/flutter (25825): Another exception was thrown: 'package:flutter/src/widgets/scroll_behavior.dart': Failed assertion: line 166: 'minScrollOffset <= maxScrollOffset' is not true.
16:23:15.548: I/flutter (25825): box RenderMetaData relayoutBoundary=up2 NEEDS-LAYOUT
RRequest to Dart VM Service timed out: _flutter.runInView({viewId: _flutterView/0xe0ff03b0, mainScript: /data/user/0/com.google.fuchsia.armadillo/cache/armadillonxiodu/lib/main.dart, packagesFile: /data/user/0/com.google.fuchsia.armadillo/cache/armadillonxiodu/.packages, assetDirectory: /data/user/0/com.google.fuchsia.armadillo/cache/armadillonxiodu/build/flx})
16:23:38.266: Performing full restart... /
Exception from flutter run: TimeoutException after 0:00:10.000000: Future not completed
dart:async _Completer.completeError
package:flutter_tools/src/vmservice.dart 589 VM.invokeRpcRaw.<async>
===== asynchronous gap ===========================
dart:async _asyncErrorWrapperHelper
package:flutter_tools/src/vmservice.dart VM.invokeRpcRaw
package:flutter_tools/src/vmservice.dart 591 VM.invokeRpc.<async>
===== asynchronous gap ===========================
dart:async Future.Future.microtask
package:flutter_tools/src/vmservice.dart VM.invokeRpc
package:flutter_tools/src/vmservice.dart 659 VM.runInView
package:flutter_tools/src/vmservice.dart 943 FlutterView.runFromSource.<async>
===== asynchronous gap ===========================
dart:async Future.Future.microtask
package:flutter_tools/src/vmservice.dart FlutterView.runFromSource
package:flutter_tools/src/hot.dart 327 HotRunner._launchInView.<async>
===== asynchronous gap ===========================
dart:async Future.Future.microtask
package:flutter_tools/src/hot.dart HotRunner._launchInView
package:flutter_tools/src/hot.dart 339 HotRunner._launchFromDevFS.<async>
===== asynchronous gap ===========================
dart:async Future.Future.microtask
package:flutter_tools/src/hot.dart HotRunner._launchFromDevFS
package:flutter_tools/src/hot.dart 350 HotRunner._restartFromSources.<async>
dart:async _SyncCompleter.complete
package:flutter_tools/src/hot.dart 298 HotRunner._updateDevFS.<async>
dart:async _SyncCompleter.complete
package:flutter_tools/src/devfs.dart 457 DevFS.update.<async>
dart:async _SyncCompleter.complete
package:flutter_tools/src/devfs.dart 196 ServiceProtocolDevFSOperations.writeSource.<async>
dart:async _SyncCompleter.complete
package:flutter_tools/src/vmservice.dart 581 VM.invokeRpcRaw.<async>
dart:async _SyncCompleter.complete
package:json_rpc_2/src/client.dart 174 Client._handleSingleResponse
package:json_rpc_2/src/client.dart 164 Client._handleResponse
dart:async _StreamController.add
package:json_rpc_2/src/peer.dart 91 Peer.listen.<fn>
===== asynchronous gap ===========================
dart:async _asyncThenWrapperHelper
package:flutter_tools/src/hot.dart HotRunner._restartFromSources
package:flutter_tools/src/hot.dart 388 HotRunner.restart.<async>
===== asynchronous gap ===========================
dart:async Future.Future.microtask
package:flutter_tools/src/hot.dart HotRunner.restart
package:flutter_tools/src/hot.dart 255 HotRunner.handleTerminalCommand.<async>
===== asynchronous gap ===========================
dart:async Future.Future.microtask
package:flutter_tools/src/hot.dart HotRunner.handleTerminalCommand
package:flutter_tools/src/resident_runner.dart 198 ResidentRunner.processTerminalInput.<async>
dart:async _SyncCompleter.complete
package:flutter_tools/src/resident_runner.dart 184 ResidentRunner._commonTerminalInputHandler.<async>
===== asynchronous gap ===========================
dart:async _asyncThenWrapperHelper
package:flutter_tools/src/resident_runner.dart ResidentRunner.processTerminalInput
package:flutter_tools/src/resident_runner.dart 225 ResidentRunner.setupTerminal.<fn>
===== asynchronous gap ===========================
dart:async _BoundSinkStream.listen
package:flutter_tools/src/resident_runner.dart 224 ResidentRunner.setupTerminal
package:flutter_tools/src/hot.dart 223 HotRunner._run.<async>
dart:async _SyncCompleter.complete
package:flutter_tools/src/vmservice.dart 687 VM.refreshViews.<async>
dart:async _SyncCompleter.complete
package:flutter_tools/src/vmservice.dart 597 VM.invokeRpc.<async>
dart:async _SyncCompleter.complete
package:flutter_tools/src/vmservice.dart 581 VM.invokeRpcRaw.<async>
dart:async _SyncCompleter.complete
package:json_rpc_2/src/client.dart 174 Client._handleSingleResponse
package:json_rpc_2/src/client.dart 164 Client._handleResponse
dart:async _StreamController.add
package:json_rpc_2/src/peer.dart 91 Peer.listen.<fn>
===== asynchronous gap ===========================
dart:async _asyncThenWrapperHelper
package:flutter_tools/src/hot.dart HotRunner._run
package:flutter_tools/src/hot.dart 88 HotRunner.run.<fn>
package:stack_trace Chain.capture
package:flutter_tools/src/hot.dart 87 HotRunner.run
package:flutter_tools/src/commands/run.dart 246 RunCommand.runCommand.<async>
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
sethladd commentedon Jan 11, 2017
cc @johnmccutchan
johnmccutchan commentedon Jan 11, 2017
According to the log this wasn't a hot reload but a hot restart.
[-]An assert in a flutter app can mess up hot reloading.[/-][+]An assert in a flutter app can mess up hot restart[/+]johnmccutchan commentedon Jan 11, 2017
@jason-simmons This seems like a hang in the shell?
apwilson commentedon Jan 11, 2017
Yeah looks like everything just locks up - hot reload may just be a symptom of that.
[-]An assert in a flutter app can mess up hot restart[/-][+]An assert in a flutter app can hang the engine[/+]johnmccutchan commentedon Jan 11, 2017
After discussing with @apwilson - The engine thread hangs while processing a drag. So far nothing related to hot reload / restart.
jason-simmons commentedon Jan 13, 2017
Reproduced this and traced it to a call to SkRTree::CountNodes() that never exits. This happened because we created a Skia canvas with a paint bounds rectangle having NaN dimensions.
Do not paint a RenderFittedBox with an empty size (#7489)
Check if the canvas bounds rect contains infinite or NaN values
Check if the canvas bounds rect contains infinite or NaN values (#3339)
github-actions commentedon Sep 5, 2021
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.