From 88962108fc1e1e59c4d3f4765cae3f28c03a7745 Mon Sep 17 00:00:00 2001 From: Ralph Loader Date: Mon, 22 Sep 2003 08:17:49 +0000 Subject: re PR libgcj/12350 (StringBuffer.substring handles shared flag incorrected.) 2003-09-21 Ralph Loader PR java/12350: * java/lang/StringBuffer.java (substring): Fix handling of shared flag. 2003-09-21 Ralph Loader PR java/12350 * libjava.lang/PR12350.java: New file. * libjava.lang/PR12350.out: New file. From-SVN: r71651 --- libjava/testsuite/libjava.lang/PR12350.java | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 libjava/testsuite/libjava.lang/PR12350.java (limited to 'libjava/testsuite/libjava.lang/PR12350.java') diff --git a/libjava/testsuite/libjava.lang/PR12350.java b/libjava/testsuite/libjava.lang/PR12350.java new file mode 100644 index 0000000..ded8856 --- /dev/null +++ b/libjava/testsuite/libjava.lang/PR12350.java @@ -0,0 +1,20 @@ +public class PR12350 +{ + static public void main (String[] ignored) throws Throwable + { + StringBuffer b = new StringBuffer ("Good string. More than 16 chars."); + + // Should cause sharing. + String s = b.toString(); + + // Take a char by char unshared copy of s. + String t = new String (s.toCharArray()); + + b.substring (0, 4); // BUG: Clears shared flag. + b.replace (0, 4, "Bad "); // Modifies shared data. + + System.out.println (s); + assert s.equals (t); + } + +} -- cgit v1.1