diff options
author | saturneric <[email protected]> | 2024-11-27 20:23:51 +0000 |
---|---|---|
committer | saturneric <[email protected]> | 2024-11-27 20:23:51 +0000 |
commit | a83c6e28a16f998d89b956688f07ce5352a2864f (patch) | |
tree | 796ad69eee3add96df38e3e4f1dc78a82745a9db /src/sdk/private/CommonUtils.cpp | |
parent | fix: solve devops build issues (diff) | |
download | GpgFrontend-a83c6e28a16f998d89b956688f07ce5352a2864f.tar.gz GpgFrontend-a83c6e28a16f998d89b956688f07ce5352a2864f.zip |
feat: improve ui logic and support more email operations
Diffstat (limited to 'src/sdk/private/CommonUtils.cpp')
-rw-r--r-- | src/sdk/private/CommonUtils.cpp | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/src/sdk/private/CommonUtils.cpp b/src/sdk/private/CommonUtils.cpp deleted file mode 100644 index 68afcb5f..00000000 --- a/src/sdk/private/CommonUtils.cpp +++ /dev/null @@ -1,103 +0,0 @@ -/** - * Copyright (C) 2021-2024 Saturneric <[email protected]> - * - * This file is part of GpgFrontend. - * - * GpgFrontend is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * GpgFrontend is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GpgFrontend. If not, see <https://www.gnu.org/licenses/>. - * - * The initial version of the source code is inherited from - * the gpg4usb project, which is under GPL-3.0-or-later. - * - * All the source code of GpgFrontend was modified and released by - * Saturneric <[email protected]> starting on May 12, 2021. - * - * SPDX-License-Identifier: GPL-3.0-or-later - * - */ - -#include "CommonUtils.h" - -#include <core/utils/MemoryUtils.h> - -#include <cstring> - -#include "GFSDKModule.h" - -auto GFStrDup(const QString& str) -> char* { - auto utf8_str = str.toUtf8(); - auto* c_str = static_cast<char*>( - GpgFrontend::SecureMalloc((utf8_str.size() + 1) * sizeof(char))); - - memcpy(c_str, utf8_str.constData(), utf8_str.size()); - c_str[utf8_str.size()] = '\0'; - return c_str; -} - -auto GFUnStrDup(char* str) -> QString { - auto qt_str = QString::fromUtf8(str); - GpgFrontend::SecureFree(static_cast<void*>(const_cast<char*>(str))); - return qt_str; -} - -auto GFUnStrDup(const char* str) -> QString { - return GFUnStrDup(const_cast<char*>(str)); -} - -auto CharArrayToQMap(char** char_array, int size) -> QMap<QString, QString> { - QMap<QString, QString> map; - for (int i = 0; i < size; i += 2) { - QString const key = GFUnStrDup(char_array[i]); - QString const value = QString::fromUtf8(char_array[i + 1]); - map.insert(key, value); - } - return map; -} - -auto QMapToCharArray(const QMap<QString, QString>& map, int& size) -> char** { - size = map.size() * 2; - char** char_array = new char*[size]; - - int index = 0; - for (auto it = map.begin(); it != map.end(); ++it) { - QByteArray const key = it.key().toUtf8(); - QByteArray const value = it.value().toUtf8(); - - char_array[index] = new char[key.size() + 1]; - std::strcpy(char_array[index], key.constData()); - index++; - - char_array[index] = new char[value.size() + 1]; - std::strcpy(char_array[index], value.constData()); - index++; - } - - 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 |