Browse Source

在提取任务进行处理的时候,某些情况下,这个任务的主体文件被移动或者删除了,就需要删除这个任务

Signed-off-by: allan716 <[email protected]>
allan716 3 years ago
parent
commit
7190176046
1 changed files with 20 additions and 0 deletions
  1. 20 0
      pkg/downloader/downloader.go

+ 20 - 0
pkg/downloader/downloader.go

@@ -212,11 +212,31 @@ func (d *Downloader) QueueDownloader() {
 			epsVideoNfoInfo, err := decode.GetVideoNfoInfo4OneSeriesEpisode(oneJob.VideoFPath)
 			if err != nil {
 				d.log.Errorln("decode.GetVideoNfoInfo4OneSeriesEpisode()", err)
+				d.log.Infoln("will delete this job")
+				bok, err = d.downloadQueue.Del(oneJob.Id)
+				if err != nil {
+					d.log.Errorln("d.downloadQueue.Del()", err)
+					return
+				}
+				if bok == false {
+					d.log.Errorln(fmt.Sprintf("d.downloadQueue.Del(%d) == false", oneJob.Id))
+					return
+				}
 				return
 			}
 			seriesInfoDirPath := decode.GetSeriesDirRootFPath(oneJob.VideoFPath)
 			if seriesInfoDirPath == "" {
 				d.log.Errorln(fmt.Sprintf("decode.GetSeriesDirRootFPath == Empty, %s", oneJob.VideoFPath))
+				d.log.Infoln("will delete this job")
+				bok, err = d.downloadQueue.Del(oneJob.Id)
+				if err != nil {
+					d.log.Errorln("d.downloadQueue.Del()", err)
+					return
+				}
+				if bok == false {
+					d.log.Errorln(fmt.Sprintf("d.downloadQueue.Del(%d) == false", oneJob.Id))
+					return
+				}
 				return
 			}
 			oneJob.Season = epsVideoNfoInfo.Season