diff --git a/packages/flutter_tools/lib/src/base/net.dart b/packages/flutter_tools/lib/src/base/net.dart index 66459fdc210..60dc35ceb69 100644 --- a/packages/flutter_tools/lib/src/base/net.dart +++ b/packages/flutter_tools/lib/src/base/net.dart @@ -27,9 +27,16 @@ Future> fetchUrl(Uri url) async { ); } - BytesBuilder responseBody = new BytesBuilder(copy: false); - await for (List chunk in response) - responseBody.add(chunk); + try { + BytesBuilder responseBody = new BytesBuilder(copy: false); + await for (List chunk in response) + responseBody.add(chunk); - return responseBody.takeBytes(); + return responseBody.takeBytes(); + } on IOException catch (e) { + throw new ToolExit( + 'Download failed: $url\n $e', + exitCode: kNetworkProblemExitCode, + ); + } }