fix(jukebox): fix mpv command and template parsing (#4162)
* test(mpv): add unit tests for MPV command generation and execution Signed-off-by: Deluan <deluan@navidrome.org> * fix(mpv): improve command template parsing Signed-off-by: Deluan <deluan@navidrome.org> * fix(mpv): update mock script to output arguments to stdout instead of a file Signed-off-by: Deluan <deluan@navidrome.org> * test(mpv): add test suite for MPV command functionality Signed-off-by: Deluan <deluan@navidrome.org> * fix(mpv): improve MPV command template parsing to handle quoted arguments Signed-off-by: Deluan <deluan@navidrome.org> * fix(mpv): simplify MPV command check by removing unnecessary string containment Signed-off-by: Deluan <deluan@navidrome.org> * fix(mpv): add error handling for empty command arguments and malformed templates Signed-off-by: Deluan <deluan@navidrome.org> --------- Signed-off-by: Deluan <deluan@navidrome.org>
This commit is contained in:
@@ -35,6 +35,9 @@ func NewTrack(ctx context.Context, playbackDoneChannel chan bool, deviceName str
|
||||
tmpSocketName := socketName("mpv-ctrl-", ".socket")
|
||||
|
||||
args := createMPVCommand(deviceName, mf.Path, tmpSocketName)
|
||||
if len(args) == 0 {
|
||||
return nil, fmt.Errorf("no mpv command arguments provided")
|
||||
}
|
||||
exe, err := start(ctx, args)
|
||||
if err != nil {
|
||||
log.Error("Error starting mpv process", err)
|
||||
|
||||
Reference in New Issue
Block a user