1
mirror of https://github.com/qbittorrent/qBittorrent synced 2025-10-07 09:52:18 +02:00

Compare commits

...

17 Commits

Author SHA1 Message Date
Christophe Dumez
14b3414e9d Bump version to v3.0.1 2012-08-21 20:22:20 +03:00
Christophe Dumez
73254962f1 Update Changelog 2012-08-21 17:50:47 +03:00
Christophe Dumez
74f042516b Make uTP rate limited by default 2012-08-21 17:50:07 +03:00
Christophe Dumez
8c0853248c Fix wiki link for "Anonymous Mode" feature (#25) 2012-08-14 20:58:36 +03:00
Christophe Dumez
80ea0a67b5 Update Changelog 2012-08-14 20:44:42 +03:00
Christophe Dumez
6d2b51203c Update URL for search plugins updater (closes #25) 2012-08-14 20:44:02 +03:00
Christophe Dumez
8ac82156b3 Update Changelog 2012-08-12 17:59:39 +03:00
Christophe Dumez
c1806b099a Fix crash when using unauthorized characters in label names (closes #19) 2012-08-12 17:59:09 +03:00
Christophe Dumez
1046c816bf Remove unused function 2012-08-12 10:14:05 +03:00
Christophe Dumez
cfbb5ecde5 Update Changelog 2012-08-12 09:58:54 +03:00
Christophe Dumez
afdec02674 Remember queue position for torrents without metadata (closes #17) 2012-08-12 09:58:05 +03:00
Christophe Dumez
927e6bc6cc Fixes to Italian translation 2012-08-10 21:28:40 +03:00
Christophe Dumez
e862d3332c Update language files 2012-08-10 14:23:36 +03:00
Simone
699144a83d Update src/lang/qbittorrent_it.ts 2012-08-10 14:22:40 +03:00
Christophe Dumez
1792f44bfa Update Changelog 2012-08-10 11:23:06 +03:00
Christophe Dumez
64e4095ef1 Fix possible crash when adding a tracker to a magnet torrent without metadata (Closes #1034254) 2012-08-10 11:18:37 +03:00
Christophe Dumez
1d1ffcec7c Handle exceptions in readAlerts() 2012-08-10 10:04:28 +03:00
36 changed files with 1467 additions and 1485 deletions

View File

@@ -1,3 +1,10 @@
* Tue Aug 21 2012 - Christophe Dumez <chris@qbittorrent.org> - v3.0.1
- BUGFIX: Fix possible crash when adding a tracker to a magnet torrent without metadata (Closes #1034254)
- BUGFIX: Remember queue position for torrents without metadata (closes #17)
- BUGFIX: Fix crash when using unauthorized characters in label names (closes #19)
- BUGFIX: Fix search plugins updating (closes #25)
- BUGFIX: Make uTP connections rate limited by default
* Thu Aug 09 2012 - Christophe Dumez <chris@qbittorrent.org> - v3.0.0
- FEATURE: Brand new torrent addition dialog
- FEATURE: Add the ability to choose the save path when using magnet links (mutoso)

View File

@@ -45,7 +45,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>3.0.0</string>
<string>3.0.1</string>
<key>CFBundleSignature</key>
<string>qBit</string>
<key>CFBundleExecutable</key>

View File

@@ -66,9 +66,6 @@
using namespace libtorrent;
// EXT2/3/4 file systems support a maximum of 255 bytes for filenames.
const int MAX_FILENAME_BYTES = 255;
/**
* Converts a path to a string suitable for display.
* This function makes sure the directory separator used is consistent
@@ -204,54 +201,6 @@ qint64 fsutils::computePathSize(const QString& path)
return size;
}
/**
* Fixes the given file path by shortening the file names if too long.
*/
QString fsutils::fixFileNames(const QString& path)
{
QByteArray raw_path = path.toLocal8Bit();
raw_path.replace("\\", "/");
QList<QByteArray> parts = raw_path.split('/');
if (parts.isEmpty()) return path;
QByteArray last_part = parts.takeLast();
QList<QByteArray>::iterator it = parts.begin();
QList<QByteArray>::iterator itend = parts.end();
for ( ; it != itend; ++it) {
// Make sure the filename is not too long
if (it->size() > MAX_FILENAME_BYTES) {
qWarning() << "Folder" << *it << "was cut because it was too long";
it->resize(MAX_FILENAME_BYTES);
qWarning() << "New folder name is" << *it;
Q_ASSERT(it->length() == MAX_FILENAME_BYTES);
}
}
// Fix the last part (file name)
qDebug() << "Last part length:" << last_part.length();
if (last_part.length() > MAX_FILENAME_BYTES) {
qWarning() << "Filename" << last_part << "was cut because it was too long";
// Shorten the name, keep the file extension
const int point_index = last_part.lastIndexOf(".");
QByteArray extension = "";
if (point_index >= 0) {
extension = last_part.mid(point_index);
last_part = last_part.left(point_index);
}
last_part.resize(MAX_FILENAME_BYTES - extension.length());
last_part += extension;
Q_ASSERT(last_part.length() == MAX_FILENAME_BYTES);
qWarning() << "New file name is" << last_part;
}
QString ret;
foreach(const QByteArray& part, parts) {
ret += QString::fromLocal8Bit(part.constData()) + "/";
}
ret += QString::fromLocal8Bit(last_part.constData());
return ret;
}
/**
* Makes deep comparison of two files to make sure they are identical.
*/

View File

@@ -46,7 +46,6 @@ static QString toDisplayPath(const QString& path);
static QString fileExtension(const QString& filename);
static QString fileName(const QString& file_path);
static qint64 computePathSize(const QString& path);
static QString fixFileNames(const QString& path);
static bool sameFiles(const QString& path1, const QString& path2);
static QString updateLabelInSavePath(QString defaultSavePath, QString save_path, const QString& old_label, const QString& new_label);
static QString toValidFileSystemName(QString filename);

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -509,7 +509,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>482</width>
<width>486</width>
<height>952</height>
</rect>
</property>
@@ -969,7 +969,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>474</width>
<width>486</width>
<height>577</height>
</rect>
</property>
@@ -1413,7 +1413,7 @@
<rect>
<x>0</x>
<y>0</y>
<width>363</width>
<width>486</width>
<height>480</height>
</rect>
</property>
@@ -1987,7 +1987,7 @@
<item>
<widget class="QLabel" name="label_anonymous">
<property name="text">
<string> (&lt;a href=&quot;http://sourceforge.net/apps/mediawiki/qbittorrent/index.php?title=Anonymous_mode&quot;&gt;More information&lt;/a&gt;)</string>
<string> (&lt;a href=&quot;http://github.com/qbittorrent/qBittorrent/wiki/Anonymous-Mode&quot;&gt;More information&lt;/a&gt;)</string>
</property>
</widget>
</item>

View File

@@ -559,11 +559,11 @@ public:
}
bool isuTPRateLimited() const {
return value(QString::fromUtf8("Preferences/Bittorrent/uTP_rate_limiting"), false).toBool();
return value(QString::fromUtf8("Preferences/Bittorrent/uTP_rate_limited"), true).toBool();
}
void setuTPRateLimited(bool enabled) {
setValue("Preferences/Bittorrent/uTP_rate_limiting", enabled);
setValue("Preferences/Bittorrent/uTP_rate_limited", enabled);
}
bool isDHTEnabled() const {

View File

@@ -396,7 +396,9 @@ void PropertiesWidget::loadDynamicData() {
filesList->setUpdatesEnabled(true);
}
}
} catch(invalid_handle e) {}
} catch(const invalid_handle& e) {
qWarning() << "Caught exception in PropertiesWidget::loadDynamicData(): " << e.what();
}
}
void PropertiesWidget::loadUrlSeeds() {

View File

@@ -186,6 +186,28 @@ void TrackerList::clear() {
}
void TrackerList::loadStickyItems(const QTorrentHandle &h) {
// load DHT information
if (QBtSession::instance()->isDHTEnabled() && (!h.has_metadata() || !h.priv())) {
dht_item->setText(COL_STATUS, tr("Working"));
} else {
dht_item->setText(COL_STATUS, tr("Disabled"));
}
if (h.has_metadata() && h.priv()) {
dht_item->setText(COL_MSG, tr("This torrent is private"));
}
// Load PeX Information
if (QBtSession::instance()->isPexEnabled())
pex_item->setText(COL_STATUS, tr("Working"));
else
pex_item->setText(COL_STATUS, tr("Disabled"));
// Load LSD Information
if (QBtSession::instance()->isLSDEnabled())
lsd_item->setText(COL_STATUS, tr("Working"));
else
lsd_item->setText(COL_STATUS, tr("Disabled"));
// XXX: libtorrent should provide this info...
// Count peers from DHT, LSD, PeX
uint nb_dht = 0, nb_lsd = 0, nb_pex = 0;
@@ -201,27 +223,8 @@ void TrackerList::loadStickyItems(const QTorrentHandle &h) {
if (it->source & peer_info::pex)
++nb_pex;
}
// load DHT information
if (QBtSession::instance()->isDHTEnabled() && !h.priv()) {
dht_item->setText(COL_STATUS, tr("Working"));
} else {
dht_item->setText(COL_STATUS, tr("Disabled"));
}
dht_item->setText(COL_PEERS, QString::number(nb_dht));
if (h.has_metadata() && h.priv()) {
dht_item->setText(COL_MSG, tr("This torrent is private"));
}
// Load PeX Information
if (QBtSession::instance()->isPexEnabled())
pex_item->setText(COL_STATUS, tr("Working"));
else
pex_item->setText(COL_STATUS, tr("Disabled"));
pex_item->setText(COL_PEERS, QString::number(nb_pex));
// Load LSD Information
if (QBtSession::instance()->isLSDEnabled())
lsd_item->setText(COL_STATUS, tr("Working"));
else
lsd_item->setText(COL_STATUS, tr("Disabled"));
lsd_item->setText(COL_PEERS, QString::number(nb_lsd));
}

File diff suppressed because it is too large Load Diff

View File

@@ -46,7 +46,7 @@
#include <QTemporaryFile>
enum EngineColumns {ENGINE_NAME, ENGINE_URL, ENGINE_STATE, ENGINE_ID};
const QString UPDATE_URL = QString("https://raw.github.com/cdumez/qBittorrent/master/src/searchengine/") + (misc::pythonVersion() >= 3 ? "nova3" : "nova") + "/engines/";
const QString UPDATE_URL = QString("https://raw.github.com/qbittorrent/qBittorrent/master/src/searchengine/") + (misc::pythonVersion() >= 3 ? "nova3" : "nova") + "/engines/";
engineSelectDlg::engineSelectDlg(QWidget *parent, SupportedEngines *supported_engines) : QDialog(parent), supported_engines(supported_engines) {
setupUi(this);

Some files were not shown because too many files have changed in this diff Show More