Refactor: OutputDebugStringF -> LogPrint(category, ...)

This commit is contained in:
Gavin Andresen 2013-09-18 18:03:21 +10:00
parent b16e9f02c8
commit e51321fb75
5 changed files with 16 additions and 8 deletions

View file

@ -426,7 +426,7 @@ bool AppInit2(boost::thread_group& threadGroup)
// ********************************************************* Step 3: parameter-to-internal-flags
fDebug = GetBoolArg("-debug", false);
if (mapMultiArgs.count("-debug")) fDebug = true;
fBenchmark = GetBoolArg("-benchmark", false);
mempool.fChecks = GetBoolArg("-checkmempool", RegTest());
Checkpoints::fEnabled = GetBoolArg("-checkpoints", true);

View file

@ -155,12 +155,12 @@ static void initTranslations(QTranslator &qtTranslatorBase, QTranslator &qtTrans
#if QT_VERSION < 0x050000
void DebugMessageHandler(QtMsgType type, const char * msg)
{
OutputDebugStringF("Bitcoin-Qt: %s\n", msg);
LogPrint("qt", "Bitcoin-Qt: %s\n", msg);
}
#else
void DebugMessageHandler(QtMsgType type, const QMessageLogContext& context, const QString &msg)
{
OutputDebugStringF("Bitcoin-Qt: %s\n", qPrintable(msg));
LogPrint("qt", "Bitcoin-Qt: %s\n", qPrintable(msg));
}
#endif

View file

@ -15,8 +15,6 @@
#include <boost/variant/get.hpp>
#include <boost/algorithm/string.hpp>
#define printf OutputDebugStringF
using namespace json_spirit;
using namespace std;

View file

@ -233,8 +233,16 @@ static void DebugPrintInit()
mutexDebugLog = new boost::mutex();
}
int OutputDebugStringF(const char* pszFormat, ...)
int LogPrint(const char* category, const char* pszFormat, ...)
{
if (category != NULL)
{
if (!fDebug) return 0;
const vector<string>& categories = mapMultiArgs["-debug"];
if (find(categories.begin(), categories.end(), string(category)) == categories.end())
return 0;
}
int ret = 0; // Returns total number of characters written
if (fPrintToConsole)
{

View file

@ -153,7 +153,9 @@ extern volatile bool fReopenDebugLog;
void RandAddSeed();
void RandAddSeedPerfmon();
int ATTR_WARN_PRINTF(1,2) OutputDebugStringF(const char* pszFormat, ...);
// Print to debug.log if -debug=category switch is given OR category is NULL.
int ATTR_WARN_PRINTF(2,3) LogPrint(const char* category, const char* pszFormat, ...);
/*
Rationale for the real_strprintf / strprintf construction:
@ -179,7 +181,7 @@ bool ATTR_WARN_PRINTF(1,2) error(const char *format, ...);
* __attribute__((format(printf,X,Y))) gets expanded to __attribute__((format(OutputDebugStringF,X,Y)))
* which confuses gcc.
*/
#define printf OutputDebugStringF
#define printf(...) LogPrint(NULL, __VA_ARGS__)
void LogException(std::exception* pex, const char* pszThread);
void PrintException(std::exception* pex, const char* pszThread);