diff --git a/src/app/CMakeLists.txt b/src/app/CMakeLists.txt index cd0e5e761..2bf2daae0 100644 --- a/src/app/CMakeLists.txt +++ b/src/app/CMakeLists.txt @@ -107,21 +107,6 @@ if (STACKTRACE) if (CMAKE_SYSTEM_NAME STREQUAL "Windows") target_sources(qbt_app PRIVATE stacktrace_win.h) - if (GUI) - qt_wrap_ui(STACKTRACE_UI_HEADERS stacktracedialog.ui) - - target_sources(qbt_app PRIVATE - stacktracedialog.h - stacktracedialog.cpp - ${STACKTRACE_UI_HEADERS} - ) - - # UI headers will be generated in ${CMAKE_CURRENT_BINARY_DIR} - target_include_directories(qbt_app PRIVATE - ${CMAKE_CURRENT_BINARY_DIR} - ) - endif() - # i686 arch on Windows requires frame pointer preservation if (MSVC) target_compile_options(qbt_app PRIVATE /Zi) diff --git a/src/app/app.pri b/src/app/app.pri index 94956d11d..5fa6e0473 100644 --- a/src/app/app.pri +++ b/src/app/app.pri @@ -23,12 +23,7 @@ stacktrace { unix { HEADERS += $$PWD/stacktrace.h } - else { + win32 { HEADERS += $$PWD/stacktrace_win.h - !nogui { - HEADERS += $$PWD/stacktracedialog.h - SOURCES += $$PWD/stacktracedialog.cpp - FORMS += $$PWD/stacktracedialog.ui - } } } diff --git a/src/app/signalhandler.cpp b/src/app/signalhandler.cpp index 939b88514..a164e3e46 100644 --- a/src/app/signalhandler.cpp +++ b/src/app/signalhandler.cpp @@ -54,7 +54,7 @@ #else #include "stacktrace_win.h" #ifndef DISABLE_GUI -#include "stacktracedialog.h" +#include "gui/stacktracedialog.h" #endif // DISABLE_GUI #endif // Q_OS_UNIX #endif //STACKTRACE @@ -120,7 +120,7 @@ namespace #if defined Q_OS_WIN && !defined DISABLE_GUI StacktraceDialog dlg; // unsafe - dlg.setStacktraceString(QString::fromLatin1(sigName), straceWin::getBacktrace()); + dlg.setText(QString::fromLatin1(sigName), straceWin::getBacktrace()); dlg.exec(); #endif diff --git a/src/app/stacktracedialog.ui b/src/app/stacktracedialog.ui deleted file mode 100644 index ca22096db..000000000 --- a/src/app/stacktracedialog.ui +++ /dev/null @@ -1,35 +0,0 @@ - - - StacktraceDialog - - - - 0 - 0 - 640 - 480 - - - - Crash info - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8.25pt; font-weight:400; font-style:normal;"> -<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-size:8pt;"><br /></p></body></html> - - - true - - - - - - - - diff --git a/src/base/bittorrent/torrentimpl.cpp b/src/base/bittorrent/torrentimpl.cpp index 2b7a28e34..dfd1834f1 100644 --- a/src/base/bittorrent/torrentimpl.cpp +++ b/src/base/bittorrent/torrentimpl.cpp @@ -2275,8 +2275,6 @@ nonstd::expected TorrentImpl::exportTorrent() const { return nonstd::make_unexpected(QString::fromLocal8Bit(err.what())); } - - return nonstd::make_unexpected(tr("Unexpected error")); } nonstd::expected TorrentImpl::exportToBuffer() const diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index 7745e66e1..eacdf58de 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -221,6 +221,16 @@ if (DBUS) ) endif() +if (STACKTRACE) + qt_wrap_ui(STACKTRACE_UI_HEADERS stacktracedialog.ui) + + target_sources(qbt_gui PRIVATE + stacktracedialog.h + stacktracedialog.cpp + ${STACKTRACE_UI_HEADERS} + ) +endif() + if ((CMAKE_SYSTEM_NAME STREQUAL "Windows") OR (CMAKE_SYSTEM_NAME STREQUAL "Darwin")) target_sources(qbt_gui PRIVATE programupdater.h diff --git a/src/gui/gui.pri b/src/gui/gui.pri index 6afc436fb..62fbf526d 100644 --- a/src/gui/gui.pri +++ b/src/gui/gui.pri @@ -163,26 +163,6 @@ SOURCES += \ $$PWD/watchedfolderoptionsdialog.cpp \ $$PWD/watchedfoldersmodel.cpp -win32|macx { - HEADERS += $$PWD/programupdater.h - SOURCES += $$PWD/programupdater.cpp -} - -unix:!macx:dbus { - HEADERS += \ - $$PWD/powermanagement/powermanagement_x11.h \ - $$PWD/qtnotify/notifications.h - - SOURCES += \ - $$PWD/powermanagement/powermanagement_x11.cpp \ - $$PWD/qtnotify/notifications.cpp -} - -macx { - HEADERS += $$PWD/macutilities.h - OBJECTIVE_SOURCES += $$PWD/macutilities.mm -} - FORMS += \ $$PWD/aboutdialog.ui \ $$PWD/addnewtorrentdialog.ui \ @@ -215,3 +195,31 @@ FORMS += \ $$PWD/watchedfolderoptionsdialog.ui RESOURCES += $$PWD/about.qrc + +stacktrace { + !unix { + HEADERS += $$PWD/stacktracedialog.h + SOURCES += $$PWD/stacktracedialog.cpp + FORMS += $$PWD/stacktracedialog.ui + } +} + +win32|macx { + HEADERS += $$PWD/programupdater.h + SOURCES += $$PWD/programupdater.cpp +} + +unix:!macx:dbus { + HEADERS += \ + $$PWD/powermanagement/powermanagement_x11.h \ + $$PWD/qtnotify/notifications.h + + SOURCES += \ + $$PWD/powermanagement/powermanagement_x11.cpp \ + $$PWD/qtnotify/notifications.cpp +} + +macx { + HEADERS += $$PWD/macutilities.h + OBJECTIVE_SOURCES += $$PWD/macutilities.mm +} diff --git a/src/app/stacktracedialog.cpp b/src/gui/stacktracedialog.cpp similarity index 95% rename from src/app/stacktracedialog.cpp rename to src/gui/stacktracedialog.cpp index 5072738d4..7fa44803b 100644 --- a/src/app/stacktracedialog.cpp +++ b/src/gui/stacktracedialog.cpp @@ -47,7 +47,7 @@ StacktraceDialog::~StacktraceDialog() delete m_ui; } -void StacktraceDialog::setStacktraceString(const QString &sigName, const QString &trace) +void StacktraceDialog::setText(const QString &signalName, const QString &stacktrace) { // try to call Qt function as less as possible const QString htmlStr = QStringLiteral( @@ -78,8 +78,8 @@ void StacktraceDialog::setStacktraceString(const QString &sigName, const QString , Utils::Misc::opensslVersionString() , Utils::Misc::zlibVersionString() , Utils::Misc::osName() - , sigName - , trace); + , signalName + , stacktrace); m_ui->errorText->setHtml(htmlStr); } diff --git a/src/app/stacktracedialog.h b/src/gui/stacktracedialog.h similarity index 95% rename from src/app/stacktracedialog.h rename to src/gui/stacktracedialog.h index 8006aeb6e..034dc948a 100644 --- a/src/app/stacktracedialog.h +++ b/src/gui/stacktracedialog.h @@ -45,7 +45,7 @@ public: explicit StacktraceDialog(QWidget *parent = nullptr); ~StacktraceDialog() override; - void setStacktraceString(const QString &sigName, const QString &trace); + void setText(const QString &signalName, const QString &stacktrace); private: Ui::StacktraceDialog *m_ui; diff --git a/src/gui/stacktracedialog.ui b/src/gui/stacktracedialog.ui new file mode 100644 index 000000000..ad02a9335 --- /dev/null +++ b/src/gui/stacktracedialog.ui @@ -0,0 +1,28 @@ + + + StacktraceDialog + + + + 0 + 0 + 640 + 480 + + + + Crash info + + + + + + true + + + + + + + +