diff options
| -rw-r--r-- | internal/platforms/mastodon/mastodon.go | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/internal/platforms/mastodon/mastodon.go b/internal/platforms/mastodon/mastodon.go index e639b47..938cf6f 100644 --- a/internal/platforms/mastodon/mastodon.go +++ b/internal/platforms/mastodon/mastodon.go @@ -22,19 +22,20 @@ func Post(ctx context.Context, args config.Args, sizeLimit int, en entry.Entry) if err != nil { return err } - payload := map[string]string{"status": content} - payloadBytes, err := json.Marshal(payload) - if err != nil { - return fmt.Errorf("failed to marshal payload: %w", err) - } if args.DryRun { colour.Infoln("Not posting", en, "to Mastodon as dry-run enabled") return nil } - if _, err = prompt.FileAction("Do you want to post this message to Mastodon?", content, en.Path); err != nil { + if content, err = prompt.FileAction("Do you want to post this message to Mastodon?", content, en.Path); err != nil { return err } + payload := map[string]string{"status": content} + payloadBytes, err := json.Marshal(payload) + if err != nil { + return fmt.Errorf("failed to marshal payload: %w", err) + } + newCtx, cancel := context.WithTimeout(ctx, mastodonTimeout) defer cancel() req, err := http.NewRequestWithContext(newCtx, "POST", args.Secrets.MastodonURL, bytes.NewBuffer(payloadBytes)) |
