aboutsummaryrefslogtreecommitdiffstats
path: root/commands/msg
diff options
context:
space:
mode:
Diffstat (limited to 'commands/msg')
-rw-r--r--commands/msg/forward.go10
1 files changed, 8 insertions, 2 deletions
diff --git a/commands/msg/forward.go b/commands/msg/forward.go
index c044fb64..28abbed1 100644
--- a/commands/msg/forward.go
+++ b/commands/msg/forward.go
@@ -136,9 +136,15 @@ func (forward) Execute(aerc *widgets.Aerc, args []string) error {
template = aerc.Config().Templates.Forwards
}
- // TODO: something more intelligent than fetching the 1st part
// TODO: add attachments!
- store.FetchBodyPart(msg.Uid, []int{1}, func(reader io.Reader) {
+ part := findPlaintext(msg.BodyStructure, nil)
+ if part == nil {
+ part = findFirstNonMultipart(msg.BodyStructure, nil)
+ if part == nil {
+ part = []int{1}
+ }
+ }
+ store.FetchBodyPart(msg.Uid, part, func(reader io.Reader) {
buf := new(bytes.Buffer)
buf.ReadFrom(reader)
original.Text = buf.String()