diff options
Diffstat (limited to 'internal/pipeline')
-rw-r--r-- | internal/pipeline/get.go | 3 | ||||
-rw-r--r-- | internal/pipeline/pipeline.go | 7 |
2 files changed, 8 insertions, 2 deletions
diff --git a/internal/pipeline/get.go b/internal/pipeline/get.go index 5e43c2b..de4ac3b 100644 --- a/internal/pipeline/get.go +++ b/internal/pipeline/get.go @@ -90,7 +90,8 @@ func DownloadAnalyses(dir string, name string, conn Downloader) error { key := filepath.Join(name, a) fn := filepath.Join(dir, a) err := conn.Download(conn.WIPStorageId(), key, fn) - if err != nil { + // ignore errors with graph.png, as it will not exist in the case of a 1 page book + if err != nil && a != "graph.png" { return fmt.Errorf("Failed to download analysis file %s: %v", key, err) } } diff --git a/internal/pipeline/pipeline.go b/internal/pipeline/pipeline.go index e1a2c40..d5e8e1c 100644 --- a/internal/pipeline/pipeline.go +++ b/internal/pipeline/pipeline.go @@ -467,11 +467,16 @@ func Analyse(conn Downloader) func(chan string, chan string, chan error, *log.Lo } defer f.Close() err = bookpipeline.Graph(bestconfs, filepath.Base(savedir), f) + if err != nil { + _ = os.Remove(fn) + } if err != nil && err.Error() != "Not enough valid confidences" { errc <- fmt.Errorf("Error rendering graph: %s", err) return } - up <- fn + if err == nil { + up <- fn + } close(up) } |