From 7aeb072cc3e22f31cac6eef649b33b0540dc5a85 Mon Sep 17 00:00:00 2001 From: Julien Neuhart Date: Mon, 10 Dec 2018 18:42:23 +0100 Subject: [PATCH] fixing issue with merge endpoint: was not returning file --- internal/app/api/merge.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/internal/app/api/merge.go b/internal/app/api/merge.go index 68fb5a88..d79d825e 100644 --- a/internal/app/api/merge.go +++ b/internal/app/api/merge.go @@ -25,22 +25,25 @@ func merge(c echo.Context) error { return fmt.Errorf("getting result file name: %v", err) } filename := fmt.Sprintf("%s.pdf", baseFilename) - dest := fmt.Sprintf("%s/%s", r.dirPath, filename) + fpath := fmt.Sprintf("%s/%s", r.dirPath, filename) if r.webhookURL() == "" { // if no webhook URL given, run merge // and directly return the resulting PDF file // or and error. - return printer.Merge(fpaths, dest) + if err := printer.Merge(fpaths, fpath); err != nil { + return err + } + return c.Attachment(fpath, filename) } // as a webhook URL has been given, we // run the following lines in a goroutine so that // it doesn't block. go func() { - if err := printer.Merge(fpaths, dest); err != nil { + if err := printer.Merge(fpaths, fpath); err != nil { c.Logger().Errorf("%v", err) return } - f, err := os.Open(dest) + f, err := os.Open(fpath) if err != nil { c.Logger().Errorf("%v", err) return