aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/nio
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/nio')
-rw-r--r--libjava/java/nio/charset/CoderResult.java20
1 files changed, 8 insertions, 12 deletions
diff --git a/libjava/java/nio/charset/CoderResult.java b/libjava/java/nio/charset/CoderResult.java
index 49c6663..7824183 100644
--- a/libjava/java/nio/charset/CoderResult.java
+++ b/libjava/java/nio/charset/CoderResult.java
@@ -1,5 +1,5 @@
/* CoderResult.java --
- Copyright (C) 2002 Free Software Foundation, Inc.
+ Copyright (C) 2002, 2004 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -82,7 +82,8 @@ public class CoderResult
private final int type;
private final int length;
- private CoderResult (int type, int length)
+ // Package-private to avoid a trampoline constructor.
+ CoderResult (int type, int length)
{
this.type = type;
this.length = length;
@@ -157,19 +158,14 @@ public class CoderResult
{
private final HashMap cache;
- private Cache ()
+ // Package-private to avoid a trampoline constructor.
+ Cache ()
{
- // If we didn't synchronize on this, then cache would be initialized
- // without holding a lock. Undefined behavior would occur if the
- // first thread to call get(int) was not the same as the one that
- // called the constructor.
- synchronized (this)
- {
- cache = new HashMap ();
- }
+ cache = new HashMap ();
}
- private synchronized CoderResult get (int length)
+ // Package-private to avoid a trampoline.
+ synchronized CoderResult get (int length)
{
if (length <= 0)
throw new IllegalArgumentException ("Non-positive length");