forked from j62/ctbrec
Fix: Player not starting when path contains spaces
This commit is contained in:
parent
cbe466e7b9
commit
88bddcb188
|
@ -120,7 +120,11 @@ public class Player {
|
|||
try {
|
||||
if (Config.getInstance().getSettings().localRecording && rec != null) {
|
||||
File file = new File(Config.getInstance().getSettings().recordingsDir, rec.getPath());
|
||||
playerProcess = rt.exec(Config.getInstance().getSettings().mediaPlayer + " " + file, OS.getEnvironment(), file.getParentFile());
|
||||
String[] args = new String[] {
|
||||
Config.getInstance().getSettings().mediaPlayer,
|
||||
file.getName()
|
||||
};
|
||||
playerProcess = rt.exec(args, OS.getEnvironment(), file.getParentFile());
|
||||
} else {
|
||||
if(Config.getInstance().getSettings().requireAuthentication) {
|
||||
URL u = new URL(url);
|
||||
|
@ -136,10 +140,12 @@ public class Player {
|
|||
// create threads, which read stdout and stderr of the player process. these are needed,
|
||||
// because otherwise the internal buffer for these streams fill up and block the process
|
||||
Thread std = new Thread(new StreamRedirectThread(playerProcess.getInputStream(), new DevNull()));
|
||||
//Thread std = new Thread(new StreamRedirectThread(playerProcess.getInputStream(), System.out));
|
||||
std.setName("Player stdout pipe");
|
||||
std.setDaemon(true);
|
||||
std.start();
|
||||
Thread err = new Thread(new StreamRedirectThread(playerProcess.getErrorStream(), new DevNull()));
|
||||
//Thread err = new Thread(new StreamRedirectThread(playerProcess.getErrorStream(), System.err));
|
||||
err.setName("Player stderr pipe");
|
||||
err.setDaemon(true);
|
||||
err.start();
|
||||
|
|
Loading…
Reference in New Issue