Skip to content

Commit 26e5417

Browse files
authored
Merge pull request #379 from jyoo980/yoo/patch-generate-dmg
Prevent run-time exception when image mounting fails
2 parents 932d0e8 + a89538e commit 26e5417

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

src/main/java/io/github/fvarrui/javapackager/packagers/GenerateDmg.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import java.io.File;
77
import java.util.Arrays;
8+
import java.util.Optional;
89

910
import org.apache.commons.lang3.StringUtils;
1011

@@ -99,13 +100,13 @@ protected File doApply(MacPackager packager) throws Exception {
99100
// mounts image
100101
Logger.info("Mounting image: " + tempDmgFile.getAbsolutePath());
101102
String result = execute("hdiutil", "attach", "-readwrite", "-noverify", "-noautoopen", tempDmgFile);
102-
String deviceName = Arrays.asList(result.split("\n"))
103-
.stream()
104-
.filter(s -> s.contains(mountFolder.getAbsolutePath()))
105-
.map(s -> StringUtils.normalizeSpace(s))
106-
.map(s -> s.split(" ")[0])
107-
.findFirst().get();
108-
Logger.info("- Device name: " + deviceName);
103+
Optional<String> optDeviceName = Arrays.asList(result.split("\n"))
104+
.stream()
105+
.filter(s -> s.contains(mountFolder.getAbsolutePath()))
106+
.map(s -> StringUtils.normalizeSpace(s))
107+
.map(s -> s.split(" ")[0])
108+
.findFirst();
109+
optDeviceName.ifPresent(deviceName -> Logger.info("- Device name: " + deviceName));
109110

110111
// pause to prevent occasional "Can't get disk" (-1728) issues
111112
// https://github.com/seltzered/create-dmg/commit/5fe7802917bb85b40c0630b026d33e421db914ea

0 commit comments

Comments
 (0)