fix for win
This commit is contained in:
@@ -33,6 +33,19 @@
|
|||||||
|
|
||||||
using json = nlohmann::json;
|
using json = nlohmann::json;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef Q_OS_WIN
|
||||||
|
auto dirwallet = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)).filePath("silentdragonlite/silentdragonlite-wallet.dat");
|
||||||
|
auto dirwalletenc = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)).filePath("silentdragonlite/silentdragonlite-wallet-enc.dat");
|
||||||
|
auto dirwalletbackup = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)).filePath("silentdragonlite/silentdragonlite-wallet.datBackup");
|
||||||
|
#endif
|
||||||
|
#ifdef Q_OS_UNIX
|
||||||
|
auto dirwallet = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
||||||
|
auto dirwalletenc = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
||||||
|
auto dirwalletbackup = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".silentdragonlite/silentdragonlite-wallet.datBackup");
|
||||||
|
#endif
|
||||||
|
|
||||||
MainWindow::MainWindow(QWidget *parent) :
|
MainWindow::MainWindow(QWidget *parent) :
|
||||||
QMainWindow(parent),
|
QMainWindow(parent),
|
||||||
ui(new Ui::MainWindow)
|
ui(new Ui::MainWindow)
|
||||||
@@ -56,7 +69,10 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||||||
|
|
||||||
logger = new Logger(this, QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)).filePath("silentdragonlite-wallet.log"));
|
logger = new Logger(this, QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)).filePath("silentdragonlite-wallet.log"));
|
||||||
// Check for encryption
|
// Check for encryption
|
||||||
if(fileExists(QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat")))
|
|
||||||
|
|
||||||
|
|
||||||
|
if(fileExists(dirwalletenc))
|
||||||
{
|
{
|
||||||
this->removeWalletEncryptionStartUp();
|
this->removeWalletEncryptionStartUp();
|
||||||
}
|
}
|
||||||
@@ -270,13 +286,13 @@ void MainWindow::closeEvent(QCloseEvent* event) {
|
|||||||
rpc->shutdownhushd();
|
rpc->shutdownhushd();
|
||||||
|
|
||||||
// Check is encryption is ON for SDl
|
// Check is encryption is ON for SDl
|
||||||
if(fileExists(QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat")))
|
if(fileExists(dirwalletenc))
|
||||||
|
|
||||||
{
|
{
|
||||||
// delete old file before
|
// delete old file before
|
||||||
|
|
||||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
//auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||||
QFile fileoldencryption(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat"));
|
QFile fileoldencryption(dirwalletenc);
|
||||||
fileoldencryption.remove();
|
fileoldencryption.remove();
|
||||||
|
|
||||||
// Encrypt our wallet.dat
|
// Encrypt our wallet.dat
|
||||||
@@ -315,15 +331,15 @@ void MainWindow::closeEvent(QCloseEvent* event) {
|
|||||||
// auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
// auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||||
QString source_file = dir.filePath("addresslabels.dat");
|
QString source_file = dir.filePath("addresslabels.dat");
|
||||||
QString target_enc_file = dir.filePath("addresslabels.dat.enc");
|
QString target_enc_file = dir.filePath("addresslabels.dat.enc");
|
||||||
QString sourceWallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
QString sourceWallet_file = dirwallet;
|
||||||
QString target_encWallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
QString target_encWallet_file = dirwalletenc;
|
||||||
|
|
||||||
FileEncryption::encrypt(target_enc_file, source_file, key);
|
FileEncryption::encrypt(target_enc_file, source_file, key);
|
||||||
FileEncryption::encrypt(target_encWallet_file, sourceWallet_file, key);
|
FileEncryption::encrypt(target_encWallet_file, sourceWallet_file, key);
|
||||||
|
|
||||||
///////////////// we rename the plaintext wallet.dat to Backup, for testing.
|
///////////////// we rename the plaintext wallet.dat to Backup, for testing.
|
||||||
|
|
||||||
QFile wallet(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat"));
|
QFile wallet(dirwallet);
|
||||||
QFile address(dir.filePath("addresslabels.dat"));
|
QFile address(dir.filePath("addresslabels.dat"));
|
||||||
wallet.remove();
|
wallet.remove();
|
||||||
address.remove();
|
address.remove();
|
||||||
@@ -411,15 +427,15 @@ void MainWindow::encryptWallet() {
|
|||||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||||
QString source_file = dir.filePath("addresslabels.dat");
|
QString source_file = dir.filePath("addresslabels.dat");
|
||||||
QString target_enc_file = dir.filePath("addresslabels.dat.enc");
|
QString target_enc_file = dir.filePath("addresslabels.dat.enc");
|
||||||
QString sourceWallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
QString sourceWallet_file = dirwallet;
|
||||||
QString target_encWallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
QString target_encWallet_file = dirwalletenc;
|
||||||
|
|
||||||
FileEncryption::encrypt(target_enc_file, source_file, key);
|
FileEncryption::encrypt(target_enc_file, source_file, key);
|
||||||
FileEncryption::encrypt(target_encWallet_file, sourceWallet_file, key);
|
FileEncryption::encrypt(target_encWallet_file, sourceWallet_file, key);
|
||||||
|
|
||||||
QFile wallet(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat"));
|
QFile wallet(dirwallet);
|
||||||
QFile address(dir.filePath("addresslabels.dat"));
|
QFile address(dir.filePath("addresslabels.dat"));
|
||||||
wallet.rename(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.datBackup"));
|
wallet.rename(dirwalletbackup);
|
||||||
address.rename(dir.filePath("addresslabels.datBackup"));
|
address.rename(dir.filePath("addresslabels.datBackup"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -482,16 +498,16 @@ void MainWindow::removeWalletEncryption() {
|
|||||||
|
|
||||||
auto dir = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation));
|
auto dir = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation));
|
||||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||||
QString target_encwallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
QString target_encwallet_file = dirwalletenc;
|
||||||
QString target_decwallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
QString target_decwallet_file = dirwallet;
|
||||||
QString target_encaddr_file = dir.filePath("addresslabels.dat.enc");
|
QString target_encaddr_file = dir.filePath("addresslabels.dat.enc");
|
||||||
QString target_decaddr_file = dir.filePath("addresslabels.dat");
|
QString target_decaddr_file = dir.filePath("addresslabels.dat");
|
||||||
|
|
||||||
FileEncryption::decrypt(target_decwallet_file, target_encwallet_file, key);
|
FileEncryption::decrypt(target_decwallet_file, target_encwallet_file, key);
|
||||||
FileEncryption::decrypt(target_decaddr_file, target_encaddr_file, key);
|
FileEncryption::decrypt(target_decaddr_file, target_encaddr_file, key);
|
||||||
|
|
||||||
QFile filencrypted(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat"));
|
QFile filencrypted(dirwalletenc);
|
||||||
QFile wallet(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat"));
|
QFile wallet(dirwallet);
|
||||||
|
|
||||||
if (wallet.size() > 0)
|
if (wallet.size() > 0)
|
||||||
{
|
{
|
||||||
@@ -578,8 +594,8 @@ void MainWindow::removeWalletEncryptionStartUp() {
|
|||||||
{
|
{
|
||||||
auto dir = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation));
|
auto dir = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation));
|
||||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||||
QString target_encwallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
QString target_encwallet_file = dirwalletenc;
|
||||||
QString target_decwallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
QString target_decwallet_file = dirwallet;
|
||||||
QString target_encaddr_file = dir.filePath("addresslabels.dat.enc");
|
QString target_encaddr_file = dir.filePath("addresslabels.dat.enc");
|
||||||
QString target_decaddr_file = dir.filePath("addresslabels.dat");
|
QString target_decaddr_file = dir.filePath("addresslabels.dat");
|
||||||
|
|
||||||
@@ -589,12 +605,12 @@ void MainWindow::removeWalletEncryptionStartUp() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||||
QFile wallet(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat"));
|
QFile wallet(dirwallet);
|
||||||
//QFile backup(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.datBACKUP"));*/
|
//QFile backup(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.datBACKUP"));*/
|
||||||
|
|
||||||
if (wallet.size() > 0)
|
if (wallet.size() > 0)
|
||||||
{
|
{
|
||||||
if (fileExists(QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".silentdragonlite/silentdragonlite-wallet.datBackup")))
|
if (fileExists(dirwalletbackup))
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user