From 290b7f64b5e3bc1dad14911be133ba5f75fb600b Mon Sep 17 00:00:00 2001 From: David Daney Date: Mon, 9 Apr 2007 17:40:20 +0000 Subject: re PR libgcj/23758 (java::lang::ConcreteProcess::nativeSpawn unsafe) PR libgcj/23758 * java/lang/natPosixProcess.cc (nativeSpawn): Move building of environment before the fork. * testsuite/libjava.lang/Process_7.java: New test. * testsuite/libjava.lang/Process_7.out: Its expected results. * testsuite/libjava.lang/Process_7.jar: Generated file. From-SVN: r123676 --- libjava/testsuite/libjava.lang/Process_7.jar | Bin 0 -> 1618 bytes libjava/testsuite/libjava.lang/Process_7.java | 45 ++++++++++++++++++++++++++ libjava/testsuite/libjava.lang/Process_7.out | 1 + 3 files changed, 46 insertions(+) create mode 100644 libjava/testsuite/libjava.lang/Process_7.jar create mode 100644 libjava/testsuite/libjava.lang/Process_7.java create mode 100644 libjava/testsuite/libjava.lang/Process_7.out (limited to 'libjava/testsuite/libjava.lang') diff --git a/libjava/testsuite/libjava.lang/Process_7.jar b/libjava/testsuite/libjava.lang/Process_7.jar new file mode 100644 index 0000000..261578e Binary files /dev/null and b/libjava/testsuite/libjava.lang/Process_7.jar differ diff --git a/libjava/testsuite/libjava.lang/Process_7.java b/libjava/testsuite/libjava.lang/Process_7.java new file mode 100644 index 0000000..d6f654e --- /dev/null +++ b/libjava/testsuite/libjava.lang/Process_7.java @@ -0,0 +1,45 @@ +// Verify we can modify the environment. +import java.io.BufferedReader; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.Map; + + + +public class Process_7 +{ + public static void main(String[] args) + { + try + { + ProcessBuilder pb = new ProcessBuilder("env"); + Map e = pb.environment(); + e.clear(); + String v = "process7_value"; + String k = "PROCESS_7_KEY"; + e.put(k, v); + Process p = pb.start(); + InputStream is = p.getInputStream(); + InputStreamReader isr = new InputStreamReader(is); + BufferedReader br = new BufferedReader(isr); + boolean found = false; + + String result; + while ((result = br.readLine()) != null) + { + if (result.equals(k + '=' + v)) + found = true; + } + if (!found) + { + System.out.println("bad"); + return; + } + System.out.println("ok"); + } + catch (Exception ex) + { + System.out.println(ex.toString()); + } + } +} diff --git a/libjava/testsuite/libjava.lang/Process_7.out b/libjava/testsuite/libjava.lang/Process_7.out new file mode 100644 index 0000000..9766475 --- /dev/null +++ b/libjava/testsuite/libjava.lang/Process_7.out @@ -0,0 +1 @@ +ok -- cgit v1.1