Browse Source

Fix #2683

There is still an issue with the history keeping the old password, though
pull/2685/head
tux3 10 years ago
parent
commit
63644050f3
No known key found for this signature in database
GPG Key ID: 7E086DD661263264
  1. 5
      src/core/coreencryption.cpp
  2. 2
      src/persistence/profile.cpp

5
src/core/coreencryption.cpp

@ -75,6 +75,11 @@ QByteArray Core::decryptData(const QByteArray &data) @@ -75,6 +75,11 @@ QByteArray Core::decryptData(const QByteArray &data)
QByteArray Core::decryptData(const QByteArray& data, const TOX_PASS_KEY& encryptionKey)
{
if (data.size() < TOX_PASS_ENCRYPTION_EXTRA_LENGTH)
{
qWarning() << "Not enough data:"<<data.size();
return QByteArray();
}
int sz = data.size() - TOX_PASS_ENCRYPTION_EXTRA_LENGTH;
uint8_t decrypted[sz];
if (!tox_pass_key_decrypt(reinterpret_cast<const uint8_t*>(data.data()), data.size(),

2
src/persistence/profile.cpp

@ -369,7 +369,7 @@ QByteArray Profile::loadAvatarData(const QString &ownerId) @@ -369,7 +369,7 @@ QByteArray Profile::loadAvatarData(const QString &ownerId)
return {};
QByteArray pic = file.readAll();
if (encrypted)
if (encrypted && !pic.isEmpty())
{
uint8_t salt[TOX_PASS_SALT_LENGTH];
tox_get_salt(reinterpret_cast<uint8_t *>(pic.data()), salt);

Loading…
Cancel
Save