diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/crashhandler.cpp | 56 | ||||
| -rw-r--r-- | src/crashhandler.h | 30 | ||||
| -rw-r--r-- | src/crashhandler_dummy.cpp | 16 | ||||
| -rw-r--r-- | src/main.cpp | 13 | ||||
| -rw-r--r-- | src/meson.build | 7 | ||||
| -rw-r--r-- | src/wallet/wallet.cpp | 35 | ||||
| -rw-r--r-- | src/wallet/wallet.h | 18 | 
7 files changed, 0 insertions, 175 deletions
| diff --git a/src/crashhandler.cpp b/src/crashhandler.cpp deleted file mode 100644 index ed9298f..0000000 --- a/src/crashhandler.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* - * This file is part of smolbote. It's copyrighted by the contributors recorded - * in the version control history of the file, available from its original - * location: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote - * - * SPDX-License-Identifier: GPL-3.0 - */ - -#include "crashhandler.h" -#include "version.h" -#include <QByteArray> -#include <client/linux/handler/exception_handler.h> -#include <unistd.h> - -// bool filter_callback (void*) -// --> true: continue processing and write a minidump -static bool minidumpCb(const google_breakpad::MinidumpDescriptor &descriptor, void *context, bool succeeded) -{ -    printf("Dump path: %s\n", descriptor.path()); - -    auto *ctx = static_cast<CrashHandler::Context *>(context); -    if(ctx != nullptr) { -        if(!ctx->handler.empty()) { -            // fork and run 'handler master:commit path.dmp' -            pid_t pid = fork(); -            if(pid == 0) { -                // pathname program argument ... nullptr -                execlp(ctx->handler.c_str(), -                    ctx->handler.c_str(), "--crashd", ctx->dumppath.c_str(), "-c", descriptor.path(), poi_Version, -                    (char *)nullptr); -            } -        } -    } - -    return succeeded; -} - -bool CrashHandler::install_handler(CrashHandler::Context &ctx) -{ -    if(ctx.dumppath.empty()) -        return false; - -    // Disable Chromium's crash handler so breakpad can capture crashes instead. -    // This has to be done before QtWebEngine gets initialized. -    const auto chromiumFlags = qgetenv("QTWEBENGINE_CHROMIUM_FLAGS"); -    if(!chromiumFlags.contains("disable-in-process-stack-traces")) { -        qputenv("QTWEBENGINE_CHROMIUM_FLAGS", chromiumFlags + " --disable-in-process-stack-traces"); -    } - -    google_breakpad::MinidumpDescriptor descriptor(ctx.dumppath.c_str()); - -    // minidump descriptor, filter callback, minidump callback, callback_context, install handler, server_fd -    new google_breakpad::ExceptionHandler(descriptor, nullptr, minidumpCb, &ctx, true, -1); - -    return true; -} diff --git a/src/crashhandler.h b/src/crashhandler.h deleted file mode 100644 index 73b1768..0000000 --- a/src/crashhandler.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - * This file is part of smolbote. It's copyrighted by the contributors recorded - * in the version control history of the file, available from its original - * location: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote - * - * SPDX-License-Identifier: GPL-3.0 - */ - -#ifndef SMOLBOTE_CRASHHANDLER_H -#define SMOLBOTE_CRASHHANDLER_H - -#include <string> - -namespace CrashHandler -{ -struct Context { -    const std::string dumppath; -    const std::string handler; - -    explicit Context(const std::string &path, const std::string &crashhandler) -        : dumppath(path) -        , handler(crashhandler) -    { -    } -}; - -bool install_handler(Context &ctx); -} - -#endif // SMOLBOTE_CRASHHANDLER_H diff --git a/src/crashhandler_dummy.cpp b/src/crashhandler_dummy.cpp deleted file mode 100644 index e230c82..0000000 --- a/src/crashhandler_dummy.cpp +++ /dev/null @@ -1,16 +0,0 @@ -/* - * This file is part of smolbote. It's copyrighted by the contributors recorded - * in the version control history of the file, available from its original - * location: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote - * - * SPDX-License-Identifier: GPL-3.0 - */ - -#include "crashhandler.h" - - -bool CrashHandler::install_handler(CrashHandler::Context &) -{ -    return false; -} - diff --git a/src/main.cpp b/src/main.cpp index 3976f53..97b529b 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -9,7 +9,6 @@  #include "browser.h"  #include "builtins.h"  #include "configuration.h" -#include "crashhandler.h"  #include "session/sessiondialog.h"  #include "session_json.hpp"  #include "settings.h" @@ -95,18 +94,6 @@ int main(int argc, char **argv)          app.setAttribute(Qt::AA_DontCreateNativeWidgetSiblings, true);          { -            if(conf.ptr->value<bool>("usebreakpad").value()) { -                CrashHandler::Context ctx( -                    conf.ptr->value<std::string>("path.crashdump").value(), -                    conf.ptr->value<std::string>("path.crashhandler").value()); - -                if(CrashHandler::install_handler(ctx)) { -                    spdlog::info("Installed breakpad crash handler: {}", ctx.dumppath); -                } else { -                    spdlog::warn("Failed to install breakpad crash handler: {}", ctx.dumppath); -                } -            } -              // load plugins              for(const QString &path : Util::files(conf.ptr->value<QString>("plugins.path").value(), { "*.so", "*.dll" })) {                  if(app.loadPlugin(path)) { diff --git a/src/meson.build b/src/meson.build index 6a4abd8..aa98d61 100644 --- a/src/meson.build +++ b/src/meson.build @@ -47,14 +47,7 @@ poi_sourceset.add(files(      'subwindow/subwindow.cpp',      'subwindow/tabwidget.cpp', - -    'wallet/wallet.cpp', 'wallet/wallet.h'  ),    version_h, poi_settings_h  ) -poi_sourceset.add(when: [dep_breakpad, dep_threads], -  if_true: files('crashhandler.cpp'), -  if_false: files('crashhandler_dummy.cpp') -) - diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp deleted file mode 100644 index 5023ea4..0000000 --- a/src/wallet/wallet.cpp +++ /dev/null @@ -1,35 +0,0 @@ -/* - * This file is part of smolbote. It's copyrighted by the contributors recorded - * in the version control history of the file, available from its original - * location: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote - * - * SPDX-License-Identifier: GPL-3.0 - */ - -#include "wallet.h" -#include <QWebEngineView> -#include <QWebEngineScript> - -void Wallet::autocompleteForm(QWebEngineView *view) -{ -    const auto findFormFunction = QLatin1String("index = undefined; for(var i = 0; i < document.forms.length; ++i) { if(document.forms[i].autocomplete) { index = i } }; index"); - -    view->page()->runJavaScript(findFormFunction, QWebEngineScript::ApplicationWorld, [view](const QVariant &v) { -        if(!v.isNull()) { -            const QString username = "test-username"; -            const QString password = "test-password"; - -            auto autofillFunction = QString("inputs = document.forms[%1].getElementsByTagName('input');" -                                            "for(var i = 0; i < inputs.length; ++i) {" -                                            "  if(inputs[i].type == 'username') { inputs[i].value='username' }" -                                            "  else if(inputs[i].type == 'email') { inputs[i].value='%2' }" -                                            "  else if(inputs[i].type == 'password') { inputs[i].value='%3' }" -                                            "  else { inputs[i].value=inputs[i].type }" -                                            "}") -                                        .arg(v.toString(), username, password); -            // TODO -            // for page->url() get list of pairs type = value -            view->page()->runJavaScript(autofillFunction, QWebEngineScript::ApplicationWorld); -        } -    }); -} diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h deleted file mode 100644 index d2fdb71..0000000 --- a/src/wallet/wallet.h +++ /dev/null @@ -1,18 +0,0 @@ -/* - * This file is part of smolbote. It's copyrighted by the contributors recorded - * in the version control history of the file, available from its original - * location: https://neueland.iserlohn-fortress.net/gitea/aqua/smolbote - * - * SPDX-License-Identifier: GPL-3.0 - */ - -#ifndef SMOLBOTE_WALLET_H -#define SMOLBOTE_WALLET_H - -class QWebEngineView; - -namespace Wallet { -    void autocompleteForm(QWebEngineView *view); -} - -#endif // SMOLBOTE_WALLET_H | 
