Fixed Uncompressed FLA (XFL) export creates a directory

This commit is contained in:
Jindra Petřík
2022-12-28 22:16:46 +01:00
parent 71da5e9bc9
commit 7d548fca30
2 changed files with 15 additions and 4 deletions

View File

@@ -146,6 +146,7 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.StringReader;
import java.io.StringWriter;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
@@ -3557,16 +3558,25 @@ public class XFLConverter {
if (!useAS3 && flaVersion.minASVersion() > 2) {
throw new IllegalArgumentException("FLA version " + flaVersion + " does not support AS1/2");
}
File file = new File(outfile);
File outDir = file.getParentFile();
Path.createDirectorySafe(outDir);
}
File file = new File(outfile);
String baseName = swfFileName;
File f = new File(baseName);
baseName = f.getName();
if (baseName.contains(".")) {
baseName = baseName.substring(0, baseName.lastIndexOf('.'));
}
File outDir = file.getParentFile();
if (!settings.compressed) {
outDir = new File(Path.combine(outDir.getAbsolutePath(), baseName));
outfile = Path.combine(outDir.getAbsolutePath(), baseName + ".xfl");
file = new File(outfile);
}
Path.createDirectorySafe(outDir);
final HashMap<String, byte[]> files = new HashMap<>();
final HashMap<String, byte[]> datfiles = new HashMap<>();
HashMap<Integer, CharacterTag> characters = getCharacters(swf.getTags());