diff --git a/src/main/java/br/ufrgs/inf/prosoft/remoteexecutor/Server.java b/src/main/java/br/ufrgs/inf/prosoft/remoteexecutor/Server.java
index f93b312..e62a78b 100644
--- a/src/main/java/br/ufrgs/inf/prosoft/remoteexecutor/Server.java
+++ b/src/main/java/br/ufrgs/inf/prosoft/remoteexecutor/Server.java
@@ -13,7 +13,9 @@ import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
+import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Iterator;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -55,11 +57,15 @@ public class Server {
ProcessBuilder processBuilder = new ProcessBuilder();
processBuilder.directory(home);
String[] commandArray = command.split(" ");
- List<String> commandList = Arrays.asList(commandArray);
- if (commandList.get(0).contains("=")) {
- String[] map = commandList.get(0).split("=");
+ List<String> commandList = new ArrayList<>(Arrays.asList(commandArray));
+ for (Iterator<String> iterator = commandList.iterator(); iterator.hasNext();) {
+ String export = iterator.next();
+ if (!export.contains("=")) {
+ break;
+ }
+ String[] map = export.split("=");
processBuilder.environment().put(map[0], map[1]);
- commandList = commandList.subList(1, commandList.size());
+ iterator.remove();
}
processBuilder.command(commandList);
processBuilder.inheritIO();