diff --git a/src/init.cpp b/src/init.cpp index e0c0c893a..0ddcd558a 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -13,6 +13,7 @@ #include #include #include +#include #ifndef WIN32 #include @@ -126,7 +127,7 @@ bool AppInit(int argc, char* argv[]) // Command-line RPC for (int i = 1; i < argc; i++) - if (!IsSwitchChar(argv[i][0]) && !(strlen(argv[i]) > 7 && strncasecmp(argv[i], "bitcoin:", 8) == 0)) + if (!IsSwitchChar(argv[i][0]) && !boost::algorithm::istarts_with(argv[i], "bitcoin:")) fCommandLine = true; if (fCommandLine) diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index 07bdee088..bdc6ea6ff 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -21,6 +21,7 @@ #include #include +#include #if defined(BITCOIN_NEED_QT_PLUGINS) && !defined(_BITCOIN_QT_PLUGINS_INCLUDED) #define _BITCOIN_QT_PLUGINS_INCLUDED @@ -160,9 +161,6 @@ void HelpMessageBox::exec() #endif } -#ifdef WIN32 -#define strncasecmp strnicmp -#endif #ifndef BITCOIN_QT_TEST int main(int argc, char *argv[]) { @@ -172,7 +170,7 @@ int main(int argc, char *argv[]) // Do this early as we don't want to bother initializing if we are just calling IPC for (int i = 1; i < argc; i++) { - if (strlen(argv[i]) > 7 && strncasecmp(argv[i], "bitcoin:", 8) == 0) + if (boost::algorithm::istarts_with(argv[i], "bitcoin:")) { const char *strURI = argv[i]; try { @@ -312,17 +310,16 @@ int main(int argc, char *argv[]) { window.show(); } +#if !defined(MAC_OSX) && !defined(WIN32) +// TODO: implement qtipcserver.cpp for Mac and Windows // Place this here as guiref has to be defined if we dont want to lose URIs ipcInit(); -#if !defined(MAC_OSX) && !defined(WIN32) -// TODO: implement qtipcserver.cpp for Mac and Windows - // Check for URI in argv for (int i = 1; i < argc; i++) { - if (strlen(argv[i]) > 7 && strncasecmp(argv[i], "bitcoin:", 8) == 0) + if (boost::algorithm::istarts_with(argv[i], "bitcoin:")) { const char *strURI = argv[i]; try {