]> Some of my projects - localmylist.git/commitdiff
Avoid hashing files that are already in unknown_files
authorAPTX <marek321@gmail.com>
Sun, 4 Feb 2018 15:37:34 +0000 (00:37 +0900)
committerAPTX <marek321@gmail.com>
Sun, 4 Feb 2018 15:37:34 +0000 (00:37 +0900)
localmylist/addfiletask.cpp
localmylist/databaseclasses.cpp
localmylist/databaseclasses.h

index 910d80e8bbeaf1725dede2947b00e7ab560c23e7..50e41dc5b6ce1e228697bcda9067ac8cb5e1c365 100644 (file)
@@ -51,6 +51,14 @@ void AddFileTask::start()
                hashingFinished();
                return;
        }
+
+       // Avoid hashing files that are already in unknown_files
+       const auto unknownFile = db->getUnknownFileByPath(m_file.canonicalFilePath());
+       if (!unknownFile.isEmpty()) {
+               emit finished();
+               return;
+       }
+
        hashResult = Hash::instance()->hashFile(HashRequest(m_file));
        connect(hashResult, SIGNAL(resultReady()), this, SLOT(hashingFinished()));
 #else
index ff4005c4640d0b4d1e8374fcbd490acfa04d36bc..5ad845e378f013d099caa15bd6c30eef10c1dbc7 100644 (file)
@@ -72,6 +72,11 @@ FileEpisodeRel::FileEpisodeRel()
        endPercent = 0;
 }
 
+bool UnknownFile::isEmpty() const
+{
+       return ed2k.isEmpty() || !size;
+}
+
 UnknownFile::UnknownFile()
 {
        size = 0;
index 75d6c0950cb060fb8672ff446d1f081f80c9c4fa..cf81e0bf4ecb65a49f2490e85edb9145ea7791c0 100644 (file)
@@ -144,6 +144,8 @@ struct LOCALMYLISTSHARED_EXPORT UnknownFile
        int hostId;
        QString path;
 
+       bool isEmpty() const;
+
        UnknownFile();
 };