media.go
1 package utilities 2 3 import ( 4 "fmt" 5 "os/exec" 6 "slices" 7 "strings" 8 ) 9 10 func OpenMedia(viewer string, paths []string) error { 11 if viewer == "" { 12 return UnspecifiedProgramError{} 13 } 14 15 cmd := slices.Concat(strings.Split(viewer, " "), paths) 16 17 command := exec.Command(cmd[0], cmd[1:]...) // #nosec G204 -- External command call defined in user's configuration file. 18 19 if err := command.Start(); err != nil { 20 return fmt.Errorf("received an error after starting the program: %w", err) 21 } 22 23 return nil 24 }