anchor.diff:              return new Future.error(
                   'Push timed out: Total time exceeds 5 minutes');
             });
  -    }).then((List<int> msg) {
  -      return _expectHttpOkResponse(msg);
  -    }).whenComplete(() {
  +    }).then((List<int> msg) => _expectHttpOkResponse(msg))
  +    .whenComplete(() {
         if (_device != null) _device.dispose();
       });
     }
  
positive.code:     // Start ADT on the device.
      //return client.startActivity(AdbApplication.CHROME_ADT);
  
  
  
      // TODO: a SocketException, code == -100 here often means that the App Dev
      // Tool is not running on the device.
      // Setup port forwarding to 2424 on the device.
  
negative.code:   Future _pushViaUSB(ProgressMonitor monitor) {
      List<int> httpRequest;
      AndroidDevice _device;
  
      // Build the archive.
      return archiveContainer(appContainer, true).then((List<int> archivedData) {
  