You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by te...@apache.org on 2006/12/19 13:24:04 UTC
svn commit: r488656 - in
/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util:
Formatter.java GregorianCalendar.java HashMap.java Hashtable.java
Properties.java Vector.java WeakHashMap.java
Author: tellison
Date: Tue Dec 19 04:24:03 2006
New Revision: 488656
URL: http://svn.apache.org/viewvc?view=rev&rev=488656
Log:
Apply patch for HARMONY-2383 ([classlib] [luni] Fixes for some minor issues in the java.util package found by Melody)
Modified:
harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Formatter.java
harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/GregorianCalendar.java
harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/HashMap.java
harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Hashtable.java
harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Properties.java
harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Vector.java
harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/WeakHashMap.java
Modified: harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Formatter.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Formatter.java?view=diff&rev=488656&r1=488655&r2=488656
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Formatter.java (original)
+++ harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Formatter.java Tue Dec 19 04:24:03 2006
@@ -1025,7 +1025,7 @@
// only '-' is valid for flags
if (FormatToken.FLAGS_UNSET != flags && FormatToken.FLAG_MINUS != flags) {
throw new FormatFlagsConversionMismatchException(formatToken
- .getStrFlags().toString(), formatToken
+ .getStrFlags(), formatToken
.getConversionType());
}
@@ -1110,8 +1110,7 @@
int flags = formatToken.getFlags();
if (FormatToken.FLAGS_UNSET != flags) {
- throw new IllegalFormatFlagsException(formatToken.getStrFlags()
- .toString());
+ throw new IllegalFormatFlagsException(formatToken.getStrFlags());
}
if (null == lineSeparator) {
@@ -1212,9 +1211,9 @@
}
if ('d' != currentConversionType) {
if (formatToken.isFlagSet(FormatToken.FLAG_ADD)
- | formatToken.isFlagSet(FormatToken.FLAG_SPACE)
- | formatToken.isFlagSet(FormatToken.FLAG_COMMA)
- | formatToken.isFlagSet(FormatToken.FLAG_PARENTHESIS)) {
+ || formatToken.isFlagSet(FormatToken.FLAG_SPACE)
+ || formatToken.isFlagSet(FormatToken.FLAG_COMMA)
+ || formatToken.isFlagSet(FormatToken.FLAG_PARENTHESIS)) {
throw new FormatFlagsConversionMismatchException(
formatToken.getStrFlags(), formatToken
.getConversionType());
@@ -2086,7 +2085,7 @@
private void transform_N() {
// TODO System.nanoTime();
- long nanosecond = calendar.get(Calendar.MILLISECOND) * 1000000;
+ long nanosecond = calendar.get(Calendar.MILLISECOND) * 1000000L;
result.append(paddingZeros(nanosecond, 9));
}
Modified: harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/GregorianCalendar.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/GregorianCalendar.java?view=diff&rev=488656&r1=488655&r2=488656
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/GregorianCalendar.java (original)
+++ harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/GregorianCalendar.java Tue Dec 19 04:24:03 2006
@@ -719,8 +719,8 @@
timeVal += days * 86400000;
// Use local time to compare with the gregorian change
if (year == changeYear
- && timeVal >= gregorianCutover + julianError() * 86400000) {
- timeVal -= julianError() * 86400000;
+ && timeVal >= gregorianCutover + julianError() * 86400000L) {
+ timeVal -= julianError() * 86400000L;
}
// It is not possible to simply subtract getOffset(timeVal) from timeVal
Modified: harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/HashMap.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/HashMap.java?view=diff&rev=488656&r1=488655&r2=488656
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/HashMap.java (original)
+++ harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/HashMap.java Tue Dec 19 04:24:03 2006
@@ -526,7 +526,7 @@
index = key == null ? 0 : (key.hashCode() & 0x7FFFFFFF)
% elementData.length;
}
- entry = createEntry(key, index, value);
+ createEntry(key, index, value);
return null;
}
Modified: harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Hashtable.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Hashtable.java?view=diff&rev=488656&r1=488655&r2=488656
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Hashtable.java (original)
+++ harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Hashtable.java Tue Dec 19 04:24:03 2006
@@ -439,33 +439,39 @@
return new Collections.SynchronizedSet<Map.Entry<K, V>>(new AbstractSet<Map.Entry<K,V>>() {
@Override
public int size() {
- return elementCount;
+ synchronized (Hashtable.this) {
+ return elementCount;
+ }
}
@Override
public void clear() {
- Hashtable.this.clear();
+ Hashtable.this.clear();
}
@Override
@SuppressWarnings("unchecked")
public boolean remove(Object object) {
- if (contains(object)) {
- Hashtable.this.remove(((Map.Entry<K, V>)object).getKey());
- return true;
- }
- return false;
+ synchronized (Hashtable.this) {
+ if (contains(object)) {
+ Hashtable.this.remove(((Map.Entry<K, V>)object).getKey());
+ return true;
+ }
+ return false;
+ }
}
@Override
@SuppressWarnings("unchecked")
public boolean contains(Object object) {
- Entry<K, V> entry = getEntry(((Map.Entry<K, V>)object).getKey());
- return object.equals(entry);
+ synchronized (Hashtable.this) {
+ Entry<K, V> entry = getEntry(((Map.Entry<K, V>)object).getKey());
+ return object.equals(entry);
+ }
}
@Override
- public Iterator<Map.Entry<K,V>> iterator() {
+ public Iterator<Map.Entry<K,V>> iterator() {
return new HashIterator<Map.Entry<K, V>>(new MapEntry.Type<Map.Entry<K, V>, K, V>() {
public Map.Entry<K, V> get(MapEntry<K, V> entry) {
return entry;
@@ -614,26 +620,32 @@
new AbstractSet<K>() {
@Override
public boolean contains(Object object) {
- return containsKey(object);
+ synchronized (Hashtable.this) {
+ return containsKey(object);
+ }
}
@Override
public int size() {
- return elementCount;
+ synchronized (Hashtable.this) {
+ return elementCount;
+ }
}
@Override
public void clear() {
- Hashtable.this.clear();
+ Hashtable.this.clear();
}
@Override
public boolean remove(Object key) {
- if (containsKey(key)) {
- Hashtable.this.remove(key);
- return true;
- }
- return false;
+ synchronized (Hashtable.this) {
+ if (containsKey(key)) {
+ Hashtable.this.remove(key);
+ return true;
+ }
+ return false;
+ }
}
@Override
@@ -843,17 +855,21 @@
return new Collections.SynchronizedCollection<V>(new AbstractCollection<V>() {
@Override
public boolean contains(Object object) {
- return Hashtable.this.contains(object);
+ synchronized (Hashtable.this) {
+ return Hashtable.this.contains(object);
+ }
}
@Override
public int size() {
- return elementCount;
+ synchronized (Hashtable.this) {
+ return elementCount;
+ }
}
@Override
public void clear() {
- Hashtable.this.clear();
+ Hashtable.this.clear();
}
@Override
Modified: harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Properties.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Properties.java?view=diff&rev=488656&r1=488655&r2=488656
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Properties.java (original)
+++ harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Properties.java Tue Dec 19 04:24:03 2006
@@ -58,7 +58,7 @@
private static final long serialVersionUID = 4112578634029874840L;
- private DocumentBuilder builder = null;
+ private transient DocumentBuilder builder = null;
private static final String PROP_DTD_NAME
= "http://java.sun.com/dtd/properties.dtd";
@@ -462,7 +462,7 @@
* the value
* @return the old value mapped to the key, or null
*/
- public synchronized Object setProperty(String name, String value) {
+ public Object setProperty(String name, String value) {
return put(name, value);
}
Modified: harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Vector.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Vector.java?view=diff&rev=488656&r1=488655&r2=488656
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Vector.java (original)
+++ harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/Vector.java Tue Dec 19 04:24:03 2006
@@ -342,7 +342,9 @@
int pos = 0;
public boolean hasMoreElements() {
- return pos < elementCount;
+ synchronized (Vector.this) {
+ return pos < elementCount;
+ }
}
public E nextElement() {
Modified: harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/WeakHashMap.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/WeakHashMap.java?view=diff&rev=488656&r1=488655&r2=488656
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/WeakHashMap.java (original)
+++ harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/util/WeakHashMap.java Tue Dec 19 04:24:03 2006
@@ -43,7 +43,7 @@
private int threshold;
- transient int modCount;
+ volatile int modCount;
//Simple utility method to isolate unchecked cast for array creation
@SuppressWarnings("unchecked")