Skip to content

Commit

Permalink
Fix message html entities escaping when sending to Telegram
Browse files Browse the repository at this point in the history
  • Loading branch information
sas1024 committed Jun 29, 2022
1 parent e450e1c commit a9b5875
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 3 deletions.
13 changes: 11 additions & 2 deletions bridge/telegram/html.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ package btelegram

import (
"bytes"
"html"

"github.com/russross/blackfriday"
)
Expand All @@ -24,10 +23,16 @@ func (options *customHTML) Paragraph(out *bytes.Buffer, text func() bool) {
func (options *customHTML) BlockCode(out *bytes.Buffer, text []byte, lang string) {
out.WriteString("<pre>")

out.WriteString(html.EscapeString(string(text)))
out.WriteString(string(text))
out.WriteString("</pre>\n")
}

func (options *customHTML) CodeSpan(out *bytes.Buffer, text []byte) {
out.WriteString("<code>")
out.WriteString(string(text))
out.WriteString("</code>")
}

func (options *customHTML) Header(out *bytes.Buffer, text func() bool, level int, id string) {
options.Paragraph(out, text)
}
Expand All @@ -42,6 +47,10 @@ func (options *customHTML) BlockQuote(out *bytes.Buffer, text []byte) {
out.WriteByte('\n')
}

func (options *customHTML) LineBreak(out *bytes.Buffer) {
out.WriteByte('\n')
}

func (options *customHTML) List(out *bytes.Buffer, text func() bool, flags int) {
options.Paragraph(out, text)
}
Expand Down
2 changes: 1 addition & 1 deletion bridge/telegram/telegram.go
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ func (b *Btelegram) Send(msg config.Message) (string, error) {
}

if b.GetString("MessageFormat") == HTMLFormat {
msg.Text = makeHTML(msg.Text)
msg.Text = makeHTML(html.EscapeString(msg.Text))
}

// Delete message
Expand Down

0 comments on commit a9b5875

Please # to comment.