message: copy actual nFlags to header
diff: @@ -858,7 +858,9 @@ static uint256 most_recent_block_hash;
  static bool fWitnessesPresentInMostRecentCompactBlock;
  void PeerLogicValidation::NewPoWValidBlock(const CBlockIndex *pindex, const std::shared_ptr<const CBlock>& pblock) {
  - std::shared_ptr<const CBlockHeaderAndShortTxIDs> pcmpctblock = std::make_shared<const CBlockHeaderAndShortTxIDs> (*pblock, true);
  + std::shared_ptr<CBlockHeaderAndShortTxIDs> pcmpctblock = std::make_shared<CBlockHeaderAndShortTxIDs> (*pblock, true);
  + pcmpctblock->header.nFlags = pindex->nFlags;
  +
  const CNetMsgMaker msgMaker(PROTOCOL_VERSION);
  LOCK(cs_main);
  @@ -3583,6 +3585,7 @@ bool PeerLogicValidation::SendMessages(CNode* pto, std::atomic<bool>& interruptM
  connman->PushMessage(pto, msgMaker.Make(nSendFlags, NetMsgType::CMPCTBLOCK, *most_recent_compact_block));
  else {
  CBlockHeaderAndShortTxIDs cmpctblock(*most_recent_block, state.fWantsCmpctWitness);
  + cmpctblock.header.nFlags = pBestIndex->nFlags;
  connman->PushMessage(pto, msgMaker.Make(nSendFlags, NetMsgType::CMPCTBLOCK, cmpctblock));
  }
  fGotBlockFromCache = true;
  