Skip to content

Commit

Permalink
#173: fixed git pull hangs #6
Browse files Browse the repository at this point in the history
  • Loading branch information
jan-vcapgemini committed Feb 16, 2024
1 parent 0d5bb39 commit 84760ce
Showing 1 changed file with 7 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;

import com.devonfw.tools.ide.cli.CliException;
import com.devonfw.tools.ide.context.IdeContext;
Expand Down Expand Up @@ -44,6 +45,7 @@ public ProcessContextImpl(IdeContext context) {
this.context = context;
this.processBuilder = new ProcessBuilder();
// TODO needs to be configurable for GUI
// this.processBuilder.inheritIO();
this.processBuilder.redirectOutput(Redirect.INHERIT).redirectError(Redirect.INHERIT);
this.errorHandling = ProcessErrorHandling.THROW;
Map<String, String> environment = this.processBuilder.environment();
Expand Down Expand Up @@ -134,26 +136,11 @@ public ProcessResult run(boolean capture, boolean isBackgroundProcess) {
List<String> err = null;
Process process = this.processBuilder.start();
if (capture) {
out = new ArrayList<>();
err = new ArrayList<>();
try (BufferedReader outReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
BufferedReader errReader = new BufferedReader(new InputStreamReader(process.getErrorStream()))) {
String outLine = "";
String errLine = "";
while ((outLine != null) || (errLine != null)) {
if (outLine != null) {
outLine = outReader.readLine();
if (outLine != null) {
out.add(outLine);
}
}
if (errLine != null) {
errLine = errReader.readLine();
if (errLine != null) {
err.add(errLine);
}
}
}
try (BufferedReader outReader = new BufferedReader(new InputStreamReader(process.getInputStream()));) {
out = outReader.lines().collect(Collectors.toList());
}
try (BufferedReader errReader = new BufferedReader(new InputStreamReader(process.getErrorStream()))) {
err = errReader.lines().collect(Collectors.toList());
}
}
int exitCode = process.waitFor();
Expand Down

0 comments on commit 84760ce

Please sign in to comment.