Make sure LogPrintf strings are line-terminated

Fix the cases where LogPrint[f] was accidentally called without line
terminator, which resulted in concatenated log lines.

(see e.g. #6492)
pull/262/head
Wladimir J. van der Laan 9 years ago
parent 86cfd23f68
commit f18b8ec7cf

@ -3398,7 +3398,7 @@ bool LoadExternalBlockFile(FILE* fileIn, CDiskBlockPos *dbp)
} }
} }
} catch (const std::exception& e) { } catch (const std::exception& e) {
LogPrintf("%s: Deserialize or I/O error - %s", __func__, e.what()); LogPrintf("%s: Deserialize or I/O error - %s\n", __func__, e.what());
} }
} }
} catch (const std::runtime_error& e) { } catch (const std::runtime_error& e) {

@ -249,7 +249,7 @@ unsigned int TxConfirmStats::NewTx(unsigned int nBlockHeight, double val)
unsigned int bucketindex = bucketMap.lower_bound(val)->second; unsigned int bucketindex = bucketMap.lower_bound(val)->second;
unsigned int blockIndex = nBlockHeight % unconfTxs.size(); unsigned int blockIndex = nBlockHeight % unconfTxs.size();
unconfTxs[blockIndex][bucketindex]++; unconfTxs[blockIndex][bucketindex]++;
LogPrint("estimatefee", "adding to %s\n", dataTypeString); LogPrint("estimatefee", "adding to %s", dataTypeString);
return bucketindex; return bucketindex;
} }
@ -390,8 +390,9 @@ void CBlockPolicyEstimator::processTransaction(const CTxMemPoolEntry& entry, boo
mapMemPoolTxs[hash].bucketIndex = feeStats.NewTx(txHeight, (double)feeRate.GetFeePerK()); mapMemPoolTxs[hash].bucketIndex = feeStats.NewTx(txHeight, (double)feeRate.GetFeePerK());
} }
else { else {
LogPrint("estimatefee", "not adding\n"); LogPrint("estimatefee", "not adding");
} }
LogPrint("estimatefee", "\n");
} }
void CBlockPolicyEstimator::processBlockTx(unsigned int nBlockHeight, const CTxMemPoolEntry& entry) void CBlockPolicyEstimator::processBlockTx(unsigned int nBlockHeight, const CTxMemPoolEntry& entry)

@ -752,14 +752,14 @@ void StopRPCThreads()
{ {
acceptor->cancel(ec); acceptor->cancel(ec);
if (ec) if (ec)
LogPrintf("%s: Warning: %s when cancelling acceptor", __func__, ec.message()); LogPrintf("%s: Warning: %s when cancelling acceptor\n", __func__, ec.message());
} }
rpc_acceptors.clear(); rpc_acceptors.clear();
BOOST_FOREACH(const PAIRTYPE(std::string, boost::shared_ptr<deadline_timer>) &timer, deadlineTimers) BOOST_FOREACH(const PAIRTYPE(std::string, boost::shared_ptr<deadline_timer>) &timer, deadlineTimers)
{ {
timer.second->cancel(ec); timer.second->cancel(ec);
if (ec) if (ec)
LogPrintf("%s: Warning: %s when cancelling timer", __func__, ec.message()); LogPrintf("%s: Warning: %s when cancelling timer\n", __func__, ec.message());
} }
deadlineTimers.clear(); deadlineTimers.clear();

@ -348,7 +348,7 @@ CTxMemPool::WriteFeeEstimates(CAutoFile& fileout) const
minerPolicyEstimator->Write(fileout); minerPolicyEstimator->Write(fileout);
} }
catch (const std::exception&) { catch (const std::exception&) {
LogPrintf("CTxMemPool::WriteFeeEstimates(): unable to write policy estimator data (non-fatal)"); LogPrintf("CTxMemPool::WriteFeeEstimates(): unable to write policy estimator data (non-fatal)\n");
return false; return false;
} }
return true; return true;
@ -367,7 +367,7 @@ CTxMemPool::ReadFeeEstimates(CAutoFile& filein)
minerPolicyEstimator->Read(filein); minerPolicyEstimator->Read(filein);
} }
catch (const std::exception&) { catch (const std::exception&) {
LogPrintf("CTxMemPool::ReadFeeEstimates(): unable to read policy estimator data (non-fatal)"); LogPrintf("CTxMemPool::ReadFeeEstimates(): unable to read policy estimator data (non-fatal)\n");
return false; return false;
} }
return true; return true;

@ -186,7 +186,7 @@ bool CCryptoKeyStore::Unlock(const CKeyingMaterial& vMasterKeyIn)
} }
if (keyPass && keyFail) if (keyPass && keyFail)
{ {
LogPrintf("The wallet is probably corrupted: Some keys decrypt but not all."); LogPrintf("The wallet is probably corrupted: Some keys decrypt but not all.\n");
assert(false); assert(false);
} }
if (keyFail || !keyPass) if (keyFail || !keyPass)

@ -2109,7 +2109,7 @@ bool CWallet::CommitTransaction(CWalletTx& wtxNew, CReserveKey& reservekey)
if (!wtxNew.AcceptToMemoryPool(false)) if (!wtxNew.AcceptToMemoryPool(false))
{ {
// This must not fail. The transaction has already been signed and recorded. // This must not fail. The transaction has already been signed and recorded.
LogPrintf("CommitTransaction(): Error: Transaction not valid"); LogPrintf("CommitTransaction(): Error: Transaction not valid\n");
return false; return false;
} }
wtxNew.RelayWalletTransaction(); wtxNew.RelayWalletTransaction();

Loading…
Cancel
Save