Fix Preview for .!qB extended files

This commit is contained in:
Andrea 2013-02-05 01:46:00 +01:00
parent 3e7329fb07
commit c7efd0dd05
2 changed files with 14 additions and 3 deletions

View File

@ -81,8 +81,18 @@ QString fsutils::toDisplayPath(const QString& path)
*/
QString fsutils::fileExtension(const QString &filename)
{
const int point_index = filename.lastIndexOf(".");
return (point_index >= 0) ? filename.mid(point_index + 1) : QString();
QString holder;
int point_index = filename.lastIndexOf(".");
if (point_index >= 0) {
QString holder = filename.mid(point_index + 1);
if (holder == "!qB") {
holder = filename.mid(0, point_index);
point_index = holder.lastIndexOf(".");
holder = (point_index >= 0) ? holder.mid(point_index + 1) : QString();
}
return holder;
}
return QString();
}
QString fsutils::fileName(const QString& file_path)

View File

@ -39,6 +39,7 @@
#include "misc.h"
#include "previewlistdelegate.h"
#include "previewselect.h"
#include "fs_utils.h"
PreviewSelect::PreviewSelect(QWidget* parent, QTorrentHandle h): QDialog(parent), h(h) {
setupUi(this);
@ -58,7 +59,7 @@ PreviewSelect::PreviewSelect(QWidget* parent, QTorrentHandle h): QDialog(parent)
unsigned int nbFiles = h.num_files();
for (unsigned int i=0; i<nbFiles; ++i) {
QString fileName = h.filename_at(i);
QString extension = fileName.split(QString::fromUtf8(".")).last().toUpper();
QString extension = fsutils::fileExtension(fileName).toUpper();
if (misc::isPreviewable(extension)) {
int row = previewListModel->rowCount();
previewListModel->insertRow(row);