diff options
Diffstat (limited to 'archiveeditdialog.cpp')
-rw-r--r-- | archiveeditdialog.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/archiveeditdialog.cpp b/archiveeditdialog.cpp index 667cfd9..dbcc613 100644 --- a/archiveeditdialog.cpp +++ b/archiveeditdialog.cpp @@ -18,6 +18,7 @@ #include <QList> #include <QVariant> #include <QFile> +#include <QHash> #include "archiveeditdialog.h" #include "archivefilewidget.h" @@ -110,6 +111,10 @@ void ArchiveEditDialog::archive(){ files << front << back << general; files.removeAll(QString()); files << file; + QHash<QString, QString> md5Sums; + foreach(QString f, files){ + md5Sums[f] = Helper::md5Sum(f); + } if(checkInput(genre, actors, files, title, file, quality)){ QSettings s; QString archivePath = s.value("paths/archivedir").toString(); @@ -130,17 +135,16 @@ void ArchiveEditDialog::archive(){ } QList<QVariant> data; QFileInfo movie(file); - QString hash = Helper::md5Sum(file); - data << title << movie.fileName() << hash << movie.size() << genre << quality << -1 << seriesno << partno; + data << title << movie.fileName() << md5Sums.value(file) << movie.size() << genre << quality << -1 << seriesno << partno; QList<CoverItem> covers; if(!front.isEmpty()){ - covers << coverItem(front, "front", Helper::md5Sum(front)); + covers << coverItem(front, "front", md5Sums.value(front)); } if(!back.isEmpty()){ - covers << coverItem(back, "back", Helper::md5Sum(back)); + covers << coverItem(back, "back", md5Sums.value(back)); } if(!general.isEmpty()){ - covers << coverItem(general, "general", Helper::md5Sum(general)); + covers << coverItem(general, "general", md5Sums.value(general)); } QList<QVariant> vAList; foreach(int a, actors){ @@ -150,6 +154,7 @@ void ArchiveEditDialog::archive(){ QStringList refreshDirs; foreach(QString f, files){ QFileInfo file(f); + QString hash = md5Sums.value(f); QString destDirS = QString("%1/%2/%3").arg(archivePath).arg(hash[0]).arg(hash[1]); QString destFileS = QString("%1/%2/%3/%4").arg(archivePath).arg(hash[0]).arg(hash[1]).arg(file.fileName()); QFileInfo dir(destDirS); |