fix for win
This commit is contained in:
@@ -33,6 +33,19 @@
|
||||
|
||||
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) :
|
||||
QMainWindow(parent),
|
||||
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"));
|
||||
// Check for encryption
|
||||
if(fileExists(QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)).filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat")))
|
||||
|
||||
|
||||
|
||||
if(fileExists(dirwalletenc))
|
||||
{
|
||||
this->removeWalletEncryptionStartUp();
|
||||
}
|
||||
@@ -270,13 +286,13 @@ void MainWindow::closeEvent(QCloseEvent* event) {
|
||||
rpc->shutdownhushd();
|
||||
|
||||
// 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
|
||||
|
||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||
QFile fileoldencryption(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat"));
|
||||
//auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||
QFile fileoldencryption(dirwalletenc);
|
||||
fileoldencryption.remove();
|
||||
|
||||
// Encrypt our wallet.dat
|
||||
@@ -315,15 +331,15 @@ void MainWindow::closeEvent(QCloseEvent* event) {
|
||||
// auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||
QString source_file = dir.filePath("addresslabels.dat");
|
||||
QString target_enc_file = dir.filePath("addresslabels.dat.enc");
|
||||
QString sourceWallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
||||
QString target_encWallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
||||
QString sourceWallet_file = dirwallet;
|
||||
QString target_encWallet_file = dirwalletenc;
|
||||
|
||||
FileEncryption::encrypt(target_enc_file, source_file, key);
|
||||
FileEncryption::encrypt(target_encWallet_file, sourceWallet_file, key);
|
||||
|
||||
///////////////// 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"));
|
||||
wallet.remove();
|
||||
address.remove();
|
||||
@@ -411,15 +427,15 @@ void MainWindow::encryptWallet() {
|
||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||
QString source_file = dir.filePath("addresslabels.dat");
|
||||
QString target_enc_file = dir.filePath("addresslabels.dat.enc");
|
||||
QString sourceWallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
||||
QString target_encWallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
||||
QString sourceWallet_file = dirwallet;
|
||||
QString target_encWallet_file = dirwalletenc;
|
||||
|
||||
FileEncryption::encrypt(target_enc_file, source_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"));
|
||||
wallet.rename(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.datBackup"));
|
||||
wallet.rename(dirwalletbackup);
|
||||
address.rename(dir.filePath("addresslabels.datBackup"));
|
||||
}
|
||||
}
|
||||
@@ -482,16 +498,16 @@ void MainWindow::removeWalletEncryption() {
|
||||
|
||||
auto dir = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation));
|
||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||
QString target_encwallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
||||
QString target_decwallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
||||
QString target_encwallet_file = dirwalletenc;
|
||||
QString target_decwallet_file = dirwallet;
|
||||
QString target_encaddr_file = dir.filePath("addresslabels.dat.enc");
|
||||
QString target_decaddr_file = dir.filePath("addresslabels.dat");
|
||||
|
||||
FileEncryption::decrypt(target_decwallet_file, target_encwallet_file, key);
|
||||
FileEncryption::decrypt(target_decaddr_file, target_encaddr_file, key);
|
||||
|
||||
QFile filencrypted(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat"));
|
||||
QFile wallet(dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat"));
|
||||
QFile filencrypted(dirwalletenc);
|
||||
QFile wallet(dirwallet);
|
||||
|
||||
if (wallet.size() > 0)
|
||||
{
|
||||
@@ -578,8 +594,8 @@ void MainWindow::removeWalletEncryptionStartUp() {
|
||||
{
|
||||
auto dir = QDir(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation));
|
||||
auto dirHome = QDir(QStandardPaths::writableLocation(QStandardPaths::HomeLocation));
|
||||
QString target_encwallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet-enc.dat");
|
||||
QString target_decwallet_file = dirHome.filePath(".silentdragonlite/silentdragonlite-wallet.dat");
|
||||
QString target_encwallet_file = dirwalletenc;
|
||||
QString target_decwallet_file = dirwallet;
|
||||
QString target_encaddr_file = dir.filePath("addresslabels.dat.enc");
|
||||
QString target_decaddr_file = dir.filePath("addresslabels.dat");
|
||||
|
||||
@@ -589,12 +605,12 @@ void MainWindow::removeWalletEncryptionStartUp() {
|
||||
}
|
||||
|
||||
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"));*/
|
||||
|
||||
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