mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 12:32:48 +01:00
Merge pull request #5950
3a3ecc0
Initialization: setup environment before starting QT tests (dexX7)fc3979a
Initialization: setup environment before starting tests (dexX7)ba0fa0d
Initialization: set fallback locale as environment variable (dexX7)
This commit is contained in:
commit
41113e33ad
@ -6,6 +6,7 @@
|
||||
#include "config/bitcoin-config.h"
|
||||
#endif
|
||||
|
||||
#include "util.h"
|
||||
#include "uritests.h"
|
||||
|
||||
#ifdef ENABLE_WALLET
|
||||
@ -27,6 +28,7 @@ Q_IMPORT_PLUGIN(qkrcodecs)
|
||||
// This is all you need to run all the tests
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
SetupEnvironment();
|
||||
bool fInvalid = false;
|
||||
|
||||
// Don't remove this, it's needed to access
|
||||
|
@ -28,6 +28,7 @@ extern void noui_connect();
|
||||
|
||||
BasicTestingSetup::BasicTestingSetup()
|
||||
{
|
||||
SetupEnvironment();
|
||||
fPrintToDebugLog = false; // don't want to write to debug.log file
|
||||
SelectParams(CBaseChainParams::MAIN);
|
||||
}
|
||||
|
@ -723,18 +723,19 @@ void RenameThread(const char* name)
|
||||
|
||||
void SetupEnvironment()
|
||||
{
|
||||
std::locale loc("C");
|
||||
// On most POSIX systems (e.g. Linux, but not BSD) the environment's locale
|
||||
// may be invalid, in which case the "C" locale is used as fallback.
|
||||
#if !defined(WIN32) && !defined(MAC_OSX) && !defined(__FreeBSD__) && !defined(__OpenBSD__)
|
||||
try {
|
||||
std::locale(""); // Raises a runtime error if current locale is invalid
|
||||
loc = std::locale(""); // Raises a runtime error if current locale is invalid
|
||||
} catch (const std::runtime_error&) {
|
||||
std::locale::global(std::locale("C"));
|
||||
setenv("LC_ALL", "C", 1);
|
||||
}
|
||||
#endif
|
||||
// The path locale is lazy initialized and to avoid deinitialization errors
|
||||
// in multithreading environments, it is set explicitly by the main thread.
|
||||
boost::filesystem::path::imbue(std::locale());
|
||||
boost::filesystem::path::imbue(loc);
|
||||
}
|
||||
|
||||
void SetThreadPriority(int nPriority)
|
||||
|
Loading…
Reference in New Issue
Block a user