Wladimir J. van der Laan aca77a4d58
Merge #11655: net: Assert state.m_chain_sync.m_work_header in ConsiderEviction
63c2d83 Explicitly state assumption that state.m_chain_sync.m_work_header != nullptr in ConsiderEviction (practicalswift)

Pull request description:

  Explicitly state assumption that `state.m_chain_sync.m_work_header != nullptr` in `ConsiderEviction(…)`.

  Static analyzer (and humans!) will see the null-check in ...

  ```
  else if (state.m_chain_sync.m_timeout == 0 || (state.m_chain_sync.m_work_header != nullptr && ...
  ```

  ... and infer that `state.m_chain_sync.m_work_header` might be set to `nullptr` when reaching `else if (state.m_chain_sync.m_timeout > 0 && time_in_seconds > state.m_chain_sync.m_timeout)` and thus flag `state.m_chain_sync.m_work_header->GetBlockHash().ToString()` as a potential null pointer dereference.

  This commit makes the tacit assumption of `state.m_chain_sync.m_work_header != nullptr` explicit.

  Code introduced in 5a6d00c6defc587e22c93e63029fdd538ce8858d ("Permit disconnection of outbound peers on bad/slow chains") which was merged into master four days ago.

  Friendly ping @sdaftuar :-)

Tree-SHA512: 32e5631025b7ba7556a02c89d040fbe339c482a03f28d0dbc9871c699e1f8ac867619b89c5fd41fdcfcf0dc4d7c859295b26ccd988572145cc244261aec18ce9
2017-11-15 13:55:40 +01:00
..
2017-09-29 16:02:39 +02:00
2017-11-10 17:16:07 +01:00
2017-07-15 14:28:40 +02:00
2017-02-13 14:39:48 +09:00
2017-10-09 19:14:47 +02:00
2017-11-06 19:29:20 -08:00
2017-09-29 14:50:30 +08:00
2017-06-09 10:25:26 +02:00
2017-09-21 23:40:33 -07:00
2017-10-09 10:37:40 +02:00
2017-09-18 13:47:47 -04:00
2017-11-09 13:16:03 +01:00
2017-09-30 22:43:55 +01:00
2017-10-29 21:12:12 +08:00
2017-07-22 09:55:57 +02:00