title: snapshot.ConnectionState always waiting
body: <p>In a <code>FutureBuilder</code>, <code>snapshot.ConnectionState</code> is always waiting, but the future function completed successfully. While in a different page the same block of code works and the <code>ConnectionState</code> transitions from waiting to done.</p>
  <p>The future function:</p>
  <pre class="lang-dart prettyprint-override"><code>Future getDoctors() async {
      var res = await http.get(globals.domain + &quot;users/docs/&quot;);
      var resBody = json.decode(utf8.decode(res.bodyBytes));
  
      print(res.statusCode);
  
      if (res.statusCode == 200) {
        if (mounted) {
          setState(() {
            doctors = resBody;
          });
        }
      }
    }
  </code></pre>
  <p>The future builder:</p>
  <pre class="lang-dart prettyprint-override"><code>FutureBuilder(
      future: getDoctors(),
      builder: (BuildContext context, snapshot) {
          print(snapshot);
      }
  )
  </code></pre>
  <p>Actual result:
  <code>AsyncSnapshot&lt;dynamic&gt;(ConnectionState.waiting, null, null)</code>
  Expected result: transiton to <code> AsyncSnapshot&lt;dynamic&gt;(ConnectionState.done, null, null)</code></p>
  <p>EDIT1:
  while debugging noticed that the future function <code>getDoctors()</code> is called periodically, I guess that's why the snapshot is always waiting</p>