From c515ebb74149012bf1f05c8f763d4028987e3937 Mon Sep 17 00:00:00 2001 From: Pierre-Emmanuel Jacquier Date: Wed, 30 Oct 2019 10:46:26 +0100 Subject: [PATCH] Fix m3u url path by escaping it (#18) Signed-off-by: Pierre-Emmanuel Jacquier --- pkg/m3u/m3u.go | 8 ++++---- pkg/routes/xtream.go | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pkg/m3u/m3u.go b/pkg/m3u/m3u.go index b0ad62a..c34af00 100644 --- a/pkg/m3u/m3u.go +++ b/pkg/m3u/m3u.go @@ -13,7 +13,7 @@ func Marshall(p *m3u.Playlist) (string, error) { result := "#EXTM3U\n" for _, track := range p.Tracks { result += "#EXTINF:" - result += fmt.Sprintf("%d ", track.Length) + result += fmt.Sprintf("%d, ", track.Length) for i := range track.Tags { if i == len(track.Tags)-1 { result += fmt.Sprintf("%s=%q,", track.Tags[i].Name, track.Tags[i].Value) @@ -46,9 +46,9 @@ func ReplaceURL(playlist *m3u.Playlist, user, password string, hostConfig *confi protocol, hostConfig.Hostname, hostConfig.Port, - oriURL.Path, - user, - password, + oriURL.EscapedPath(), + url.QueryEscape(user), + url.QueryEscape(password), ) destURL, err := url.Parse(uri) if err != nil { diff --git a/pkg/routes/xtream.go b/pkg/routes/xtream.go index dd90cc3..dea5377 100644 --- a/pkg/routes/xtream.go +++ b/pkg/routes/xtream.go @@ -298,9 +298,9 @@ func xtreamReplaceURL(playlist *m3u.Playlist, user, password string, hostConfig protocol, hostConfig.Hostname, hostConfig.Port, - user, - password, - id, + url.QueryEscape(user), + url.QueryEscape(password), + url.QueryEscape(id), ) destURL, err := url.Parse(uri) if err != nil {