As of #11466 we no longer have any logic to prevent a user from opening a wallet twice in two instances simultaneously. Not only could this break BDB (without the -privdb=false option, which I have really no idea why we even have a tuneable option for that), but we certainly don't have logic to handle such a case gracefully. It was noted in the original PR's description, but somehow was never followed up on before merge.
{
public:
    CInit()
    {
        
        ppmutexOpenSSL.reset(new CCriticalSection[CRYPTO_num_locks()]);
        CRYPTO_set_locking_callback(locking_callback);
        
        
        
        
        
        OPENSSL_no_config();
#ifdef WIN32
        
        RAND_screen();
#endif
        
        RandAddSeed();
    }
    ~CInit()