diff options
author | saturneric <[email protected]> | 2024-10-26 13:43:14 +0000 |
---|---|---|
committer | saturneric <[email protected]> | 2024-10-26 13:43:14 +0000 |
commit | 24c28eb752aa611dd1670f3fa7ab6b358b052f1b (patch) | |
tree | 6a4f9af003fa4a86b7d7e29a965e37a231951092 /src/core/function/gpg | |
parent | fix: thread concurrent crash issue (diff) | |
download | GpgFrontend-24c28eb752aa611dd1670f3fa7ab6b358b052f1b.tar.gz GpgFrontend-24c28eb752aa611dd1670f3fa7ab6b358b052f1b.zip |
fix: test basic operations of multi key db and solve issues
Diffstat (limited to 'src/core/function/gpg')
-rw-r--r-- | src/core/function/gpg/GpgKeyGetter.cpp | 4 | ||||
-rw-r--r-- | src/core/function/gpg/GpgKeyManager.cpp | 4 | ||||
-rw-r--r-- | src/core/function/gpg/GpgKeyOpera.cpp | 18 |
3 files changed, 13 insertions, 13 deletions
diff --git a/src/core/function/gpg/GpgKeyGetter.cpp b/src/core/function/gpg/GpgKeyGetter.cpp index 5d002b0d..c4526e49 100644 --- a/src/core/function/gpg/GpgKeyGetter.cpp +++ b/src/core/function/gpg/GpgKeyGetter.cpp @@ -172,8 +172,8 @@ class GpgKeyGetter::Impl : public SingletonFunctionObject<GpgKeyGetter::Impl> { } auto GetGpgKeyTableModel() -> QSharedPointer<GpgKeyTableModel> { - return SecureCreateQSharedObject<GpgKeyTableModel>(FetchGpgKeyList(), - nullptr); + return SecureCreateQSharedObject<GpgKeyTableModel>( + SingletonFunctionObject::GetChannel(), FetchGpgKeyList(), nullptr); } private: diff --git a/src/core/function/gpg/GpgKeyManager.cpp b/src/core/function/gpg/GpgKeyManager.cpp index fda3173a..2d201289 100644 --- a/src/core/function/gpg/GpgKeyManager.cpp +++ b/src/core/function/gpg/GpgKeyManager.cpp @@ -39,7 +39,7 @@ GpgFrontend::GpgKeyManager::GpgKeyManager(int channel) auto GpgFrontend::GpgKeyManager::SignKey( const GpgFrontend::GpgKey& target, GpgFrontend::KeyArgsList& keys, const QString& uid, const std::unique_ptr<QDateTime>& expires) -> bool { - GpgBasicOperator::GetInstance().SetSigners(keys, true); + GpgBasicOperator::GetInstance(GetChannel()).SetSigners(keys, true); unsigned int flags = 0; unsigned int expires_time_t = 0; @@ -60,7 +60,7 @@ auto GpgFrontend::GpgKeyManager::SignKey( auto GpgFrontend::GpgKeyManager::RevSign( const GpgFrontend::GpgKey& key, const GpgFrontend::SignIdArgsListPtr& signature_id) -> bool { - auto& key_getter = GpgKeyGetter::GetInstance(); + auto& key_getter = GpgKeyGetter::GetInstance(GetChannel()); for (const auto& sign_id : *signature_id) { auto signing_key = key_getter.GetKey(sign_id.first); diff --git a/src/core/function/gpg/GpgKeyOpera.cpp b/src/core/function/gpg/GpgKeyOpera.cpp index 0d84017f..f5027d4c 100644 --- a/src/core/function/gpg/GpgKeyOpera.cpp +++ b/src/core/function/gpg/GpgKeyOpera.cpp @@ -54,7 +54,7 @@ GpgKeyOpera::GpgKeyOpera(int channel) void GpgKeyOpera::DeleteKeys(KeyIdArgsListPtr key_ids) { GpgError err; for (const auto& tmp : *key_ids) { - auto key = GpgKeyGetter::GetInstance().GetKey(tmp); + auto key = GpgKeyGetter::GetInstance(GetChannel()).GetKey(tmp); if (key.IsGood()) { err = CheckGpgError(gpgme_op_delete_ext( ctx_.DefaultContext(), static_cast<gpgme_key_t>(key), @@ -332,8 +332,8 @@ void GpgKeyOpera::GenerateKeyWithSubkey( const std::shared_ptr<GenKeyInfo>& subkey_params, const GpgOperationCallback& callback) { RunGpgOperaAsync( - [&ctx = ctx_, params, - subkey_params](const DataObjectPtr& data_object) -> GpgError { + [&ctx = ctx_, params, subkey_params, + channel = GetChannel()](const DataObjectPtr& data_object) -> GpgError { auto userid = params->GetUserid().toUtf8(); auto algo = (params->GetAlgo() + params->GetKeySizeStr()).toUtf8(); unsigned long expires = @@ -368,8 +368,8 @@ void GpgKeyOpera::GenerateKeyWithSubkey( return err; } - auto key = - GpgKeyGetter::GetInstance().GetKey(genkey_result.GetFingerprint()); + auto key = GpgKeyGetter::GetInstance(channel).GetKey( + genkey_result.GetFingerprint()); if (!key.IsGood()) { LOG_W() << "cannot get key which has been generate, fpr: " << genkey_result.GetFingerprint(); @@ -413,8 +413,8 @@ auto GpgKeyOpera::GenerateKeyWithSubkeySync( const std::shared_ptr<GenKeyInfo>& subkey_params) -> std::tuple<GpgError, DataObjectPtr> { return RunGpgOperaSync( - [&ctx = ctx_, params, - subkey_params](const DataObjectPtr& data_object) -> GpgError { + [&ctx = ctx_, params, subkey_params, + channel = GetChannel()](const DataObjectPtr& data_object) -> GpgError { auto userid = params->GetUserid().toUtf8(); auto algo = (params->GetAlgo() + params->GetKeySizeStr()).toUtf8(); unsigned long expires = @@ -449,8 +449,8 @@ auto GpgKeyOpera::GenerateKeyWithSubkeySync( return err; } - auto key = - GpgKeyGetter::GetInstance().GetKey(genkey_result.GetFingerprint()); + auto key = GpgKeyGetter::GetInstance(channel).GetKey( + genkey_result.GetFingerprint()); if (!key.IsGood()) { LOG_W() << "cannot get key which has been generate, fpr: " << genkey_result.GetFingerprint(); |