mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-01-23 04:54:18 +00:00
- Fix defining a new label from torrent addition dialog
- Stop catching SIGABRT, SIGSEGV once one is received to avoid possible infinite loop
This commit is contained in:
parent
824b2f6fff
commit
8f4bf93f02
@ -101,6 +101,8 @@ void sigtermHandler(int) {
|
||||
app->exit();
|
||||
}
|
||||
void sigsegvHandler(int) {
|
||||
signal(SIGABRT, 0);
|
||||
signal(SIGTERM, 0);
|
||||
std::cerr << "\n\n*************************************************************\n";
|
||||
std::cerr << "Catching SIGSEGV, please report a bug at http://bug.qbittorrent.org\nand provide the following backtrace:\n";
|
||||
print_stacktrace();
|
||||
@ -108,6 +110,8 @@ void sigsegvHandler(int) {
|
||||
std::abort();
|
||||
}
|
||||
void sigabrtHandler(int) {
|
||||
signal(SIGABRT, 0);
|
||||
signal(SIGTERM, 0);
|
||||
std::cerr << "\n\n*************************************************************\n";
|
||||
std::cerr << "Catching SIGABRT, please report a bug at http://bug.qbittorrent.org\nand provide the following backtrace:\n";
|
||||
print_stacktrace();
|
||||
|
@ -329,6 +329,7 @@ protected slots:
|
||||
void torrentAdded(QModelIndex index) {
|
||||
Q_ASSERT(index.isValid());
|
||||
QString label = transferList->model()->index(index.row(), TR_LABEL).data(Qt::DisplayRole).toString().trimmed();
|
||||
qDebug("New torrent was added with label: %s", label.toLocal8Bit().data());
|
||||
if(!label.isEmpty()) {
|
||||
if(!customLabels.contains(label)) {
|
||||
addLabel(label);
|
||||
|
@ -192,7 +192,7 @@ void TransferListWidget::addTorrent(QTorrentHandle& h) {
|
||||
if(listModel->rowCount() == 1)
|
||||
selectionModel()->setCurrentIndex(proxyModel->index(row, TR_NAME), QItemSelectionModel::SelectCurrent|QItemSelectionModel::Rows);
|
||||
// Emit signal
|
||||
emit torrentAdded(listModel->index(row, 0));
|
||||
emit torrentAdded(mapFromSource(listModel->index(row, 0)));
|
||||
// Refresh the list
|
||||
refreshList();
|
||||
} catch(invalid_handle e) {
|
||||
@ -490,6 +490,11 @@ QModelIndex TransferListWidget::mapToSource(QModelIndex index) const {
|
||||
return labelFilterModel->mapToSource(proxyModel->mapToSource(index));
|
||||
}
|
||||
|
||||
QModelIndex TransferListWidget::mapFromSource(QModelIndex index) const {
|
||||
return proxyModel->mapFromSource(labelFilterModel->mapFromSource(index));
|
||||
}
|
||||
|
||||
|
||||
QStringList TransferListWidget::getCustomLabels() const {
|
||||
QSettings settings(QString::fromUtf8("qBittorrent"), QString::fromUtf8("qBittorrent"));
|
||||
settings.beginGroup(QString::fromUtf8("TransferListFilters"));
|
||||
|
@ -64,6 +64,7 @@ protected:
|
||||
int getRowFromHash(QString hash) const;
|
||||
QString getHashFromRow(int row) const;
|
||||
QModelIndex mapToSource(QModelIndex index) const;
|
||||
QModelIndex mapFromSource(QModelIndex index) const;
|
||||
QStringList getCustomLabels() const;
|
||||
void saveColWidthList();
|
||||
bool loadColWidthList();
|
||||
|
Loading…
x
Reference in New Issue
Block a user