diff options
author | saturneric <[email protected]> | 2024-07-27 12:18:26 +0000 |
---|---|---|
committer | saturneric <[email protected]> | 2024-07-27 12:18:26 +0000 |
commit | 5be04d1602355278814bc86c69ec9f648978be8c (patch) | |
tree | 6d691279591a267a6fe82bd3e9f84ced68dea214 /src/sdk/private/CommonUtils.cpp | |
parent | fix: discover and solve some memory issues (diff) | |
download | GpgFrontend-5be04d1602355278814bc86c69ec9f648978be8c.tar.gz GpgFrontend-5be04d1602355278814bc86c69ec9f648978be8c.zip |
feat: improve sdk api for pinentry module
Diffstat (limited to '')
-rw-r--r-- | src/sdk/private/CommonUtils.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/sdk/private/CommonUtils.cpp b/src/sdk/private/CommonUtils.cpp index 16dc2db6..d6fec3db 100644 --- a/src/sdk/private/CommonUtils.cpp +++ b/src/sdk/private/CommonUtils.cpp @@ -30,6 +30,8 @@ #include <core/utils/MemoryUtils.h> +#include "GFSDKModule.h" + auto GFStrDup(const QString& str) -> char* { auto utf8_str = str.toUtf8(); auto* c_str = static_cast<char*>( @@ -80,3 +82,20 @@ auto QMapToCharArray(const QMap<QString, QString>& map, int& size) -> char** { return char_array; } + +auto ConvertEventParamsToMap(GFModuleEventParam* params) + -> QMap<QString, QString> { + QMap<QString, QString> param_map; + GFModuleEventParam* current = params; + GFModuleEventParam* last; + + while (current != nullptr) { + param_map[current->name] = GFUnStrDup(current->value); + + last = current; + current = current->next; + GpgFrontend::SecureFree(last); + } + + return param_map; +}
\ No newline at end of file |