diff options
| author | Silarn <jrim@rimpo.org> | 2019-01-31 14:54:45 -0600 |
|---|---|---|
| committer | Silarn <jrim@rimpo.org> | 2019-02-18 21:29:27 -0600 |
| commit | f04c437960c0882e62af7ead176c3f22adcd681d (patch) | |
| tree | f8041d812d6ec198eabceec5826cd33d0cf4d329 /src/settings.cpp | |
| parent | 42d8bba5d419d13fcc6334c9bd73cb3c3a6d5251 (diff) | |
Rework the data and cleanup a bit
Diffstat (limited to 'src/settings.cpp')
| -rw-r--r-- | src/settings.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/settings.cpp b/src/settings.cpp index 80d429c3..eb34ab29 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -181,10 +181,11 @@ QString Settings::obfuscate(const QString &info) QString result; DATA_BLOB input; DATA_BLOB output; - BYTE *pbInput = new unsigned char[info.size() + 1]; - memcpy(pbInput, info.constData(), info.size() + 1); + std::vector<uint8_t> data; + data.reserve(info.size() + 1); + memcpy(data.data(), info.constData(), info.size() + 1); DWORD cbInput = info.size() + 1; - input.pbData = pbInput; + input.pbData = data.data(); input.cbData = cbInput; if (CryptProtectData(&input, NULL, NULL, NULL, NULL, 0, &output)) { @@ -193,8 +194,7 @@ QString Settings::obfuscate(const QString &info) } else { qCritical() << "Failed to encrypt the data!"; } - delete pbInput; - delete output.pbData; + LocalFree(output.pbData); return result; } @@ -204,10 +204,11 @@ QString Settings::deObfuscate(const QString &info) QByteArray realInfo = QByteArray::fromBase64(info.toUtf8()); DATA_BLOB input; DATA_BLOB output; - BYTE *pbInput = new unsigned char[realInfo.size() + 1]; - memcpy(pbInput, realInfo.constData(), realInfo.size() + 1); + std::vector<uint8_t> data; + data.reserve(realInfo.size() + 1); + memcpy(data.data(), realInfo.constData(), realInfo.size() + 1); DWORD cbInput = realInfo.size() + 1; - input.pbData = pbInput; + input.pbData = data.data(); input.cbData = cbInput; if (CryptUnprotectData(&input, NULL, NULL, NULL, NULL, 0, &output)) { @@ -216,8 +217,7 @@ QString Settings::deObfuscate(const QString &info) } else { qCritical() << "Failed to decrypt data!"; } - delete pbInput; - delete output.pbData; + LocalFree(output.pbData); return result; } |
