From 378ade3d3a5a61d4cb6782031a100b9e999f0121 Mon Sep 17 00:00:00 2001 From: OBattler Date: Sun, 1 Feb 2026 06:34:21 +0100 Subject: [PATCH] The forgotten qt/qt_settings.cpp. --- src/qt/qt_settings.cpp | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/src/qt/qt_settings.cpp b/src/qt/qt_settings.cpp index 312b48996..d1c25a014 100644 --- a/src/qt/qt_settings.cpp +++ b/src/qt/qt_settings.cpp @@ -44,6 +44,9 @@ extern "C" { #include #include +#include +#include + class SettingsModel : public QAbstractListModel { public: SettingsModel(QObject *parent) @@ -236,5 +239,36 @@ Settings::accept() return; } } + QDialog::accept(); } + +static int +plat_path_is_empty(char *path) +{ + int n = 0; + DIR *dir = opendir(path); + struct dirent *d; + + if (dir == NULL) + /* Not a directory or doesn't exist. */ + return 1; + + while ((d = readdir(dir)) != NULL) { + if (++n > 2) + break; + } + + closedir(dir); + + return (n <= 2); +} + +void +Settings::reject() +{ + if (plat_path_is_empty(usr_path)) + rmdir(usr_path); + + QDialog::reject(); +}