diff --git a/build.xml b/build.xml
index 9991e46e..d17b3005 100644
--- a/build.xml
+++ b/build.xml
@@ -223,6 +223,9 @@
+
+
+
diff --git a/source/net/filebot/Main.java b/source/net/filebot/Main.java
index ebd70478..816987e1 100644
--- a/source/net/filebot/Main.java
+++ b/source/net/filebot/Main.java
@@ -58,7 +58,7 @@ public class Main {
public static void main(String[] argv) {
try {
// parse arguments
- ArgumentBean args = isMacSandbox() ? new ArgumentBean() : new ArgumentBean(argv); // MAS does not support or allow command-line applications and may run executables with strange arguments for no apparent reason (e.g. filebot.launcher -psn_0_774333)
+ ArgumentBean args = ArgumentBean.parse(argv);
// just print help message or version string and then exit
if (args.printHelp()) {
diff --git a/source/net/filebot/cli/ArgumentBean.java b/source/net/filebot/cli/ArgumentBean.java
index e7d4ff7c..7614936b 100644
--- a/source/net/filebot/cli/ArgumentBean.java
+++ b/source/net/filebot/cli/ArgumentBean.java
@@ -367,8 +367,8 @@ public class ArgumentBean {
this.args = new String[0];
}
- public ArgumentBean(String... args) throws CmdLineException {
- this.args = args;
+ public ArgumentBean(String[] args) throws CmdLineException {
+ this.args = args.clone();
CmdLineParser parser = new CmdLineParser(this);
parser.parseArgument(args);
@@ -393,4 +393,9 @@ public class ArgumentBean {
return () -> new CmdlineException(message + ": " + value);
}
+ public static ArgumentBean parse(String... args) throws CmdLineException {
+ // MAS does not support or allow command-line applications and may run executables with strange arguments for no apparent reason (e.g. filebot.launcher -psn_0_774333) so we ignore arguments completely in this case
+ return Boolean.parseBoolean(System.getProperty("apple.app.launcher")) || args == null ? new ArgumentBean() : new ArgumentBean(args);
+ }
+
}