|
13 | 13 | import java.io.InputStreamReader; |
14 | 14 | import java.util.ArrayList; |
15 | 15 | import java.util.List; |
| 16 | +import java.util.regex.Matcher; |
| 17 | +import java.util.regex.Pattern; |
16 | 18 | import java.util.zip.ZipEntry; |
17 | 19 | import java.util.zip.ZipInputStream; |
18 | 20 |
|
@@ -388,22 +390,25 @@ public void actionPerformed(ActionEvent e) |
388 | 390 | public void actionPerformed(ActionEvent e) |
389 | 391 | { |
390 | 392 | String args = command.getText(); |
391 | | - String[] split = args.split(" "); |
392 | | - for(int i = 0; i < split.length; i++) |
| 393 | + Matcher matcher = Pattern.compile("([^\"]\\S*|\".+?\")\\s*").matcher(args); |
| 394 | + List<String> split = new ArrayList<>(); |
| 395 | + while(matcher.find()) |
| 396 | + split.add(matcher.group(1).replace("\"", "")); |
| 397 | + for(int i = 0; i < split.size(); i++) |
393 | 398 | { |
394 | | - String arg = split[i]; |
395 | | - if(arg.equals("-jar") && split.length > i + 1) |
| 399 | + String arg = split.get(i); |
| 400 | + if(arg.equals("-jar") && split.size() > i + 1) |
396 | 401 | { |
397 | | - deobfuscatorField.setText(split[i + 1]); |
398 | | - loadTransformers(split[i + 1], successOrFail); |
399 | | - }else if(arg.equals("-input") && split.length > i + 1) |
400 | | - inputField.setText(split[i + 1]); |
401 | | - else if(arg.equals("-output") && split.length > i + 1) |
402 | | - outputField.setText(split[i + 1]); |
403 | | - else if(arg.equals("-transformer") && split.length > i + 1) |
404 | | - selectedTransformers.addElement(split[i + 1]); |
405 | | - else if(arg.equals("-path") && split.length > i + 1) |
406 | | - librariesList.addElement(split[i + 1]); |
| 402 | + deobfuscatorField.setText(split.get(i + 1)); |
| 403 | + loadTransformers(split.get(i + 1), successOrFail); |
| 404 | + }else if(arg.equals("-input") && split.size() > i + 1) |
| 405 | + inputField.setText(split.get(i + 1)); |
| 406 | + else if(arg.equals("-output") && split.size() > i + 1) |
| 407 | + outputField.setText(split.get(i + 1)); |
| 408 | + else if(arg.equals("-transformer") && split.size() > i + 1) |
| 409 | + selectedTransformers.addElement(split.get(i + 1)); |
| 410 | + else if(arg.equals("-path") && split.size() > i + 1) |
| 411 | + librariesList.addElement(split.get(i + 1)); |
407 | 412 | newFrame.dispose(); |
408 | 413 | } |
409 | 414 | } |
|
0 commit comments