diff --git a/src/net_processing.cpp b/src/net_processing.cpp index a4000cd846..371dd1d914 100644 --- a/src/net_processing.cpp +++ b/src/net_processing.cpp @@ -2952,6 +2952,9 @@ bool SendMessages(CNode* pto, CConnman& connman, std::atomic& interruptMsg int64_t timeNow = GetTimeMicros(); if (timeNow > pto->nextSendTimeFeeFilter) { CAmount filterToSend = filterRounder.round(currentFilter); + // If we don't allow free transactions, then we always have a fee filter of at least minRelayTxFee + if (GetArg("-limitfreerelay", DEFAULT_LIMITFREERELAY) <= 0) + filterToSend = std::max(filterToSend, ::minRelayTxFee.GetFeePerK()); if (filterToSend != pto->lastSentFeeFilter) { connman.PushMessage(pto, msgMaker.Make(NetMsgType::FEEFILTER, filterToSend)); pto->lastSentFeeFilter = filterToSend;