Author: hindessm
Date: Tue Jun 1 19:03:06 2010
New Revision: 950206
URL: http://svn.apache.org/viewvc?rev=950206&view=rev
Log:
Merge changes from trunk@950187
Removed:
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/BaseByteBuffer.java
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/MappedByteBufferAdapter.java
Modified:
harmony/enhanced/java/branches/java6/ (props changed)
harmony/enhanced/java/branches/java6/classlib/ (props changed)
harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mak
harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mk
harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc32.mk
harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc64.mk
harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86.mk
harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86_64.mk
harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86.mk
harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86_64.mk
harmony/enhanced/java/branches/java6/classlib/depends/libs/ (props changed)
harmony/enhanced/java/branches/java6/classlib/make/properties.xml
harmony/enhanced/java/branches/java6/classlib/modules/archive/src/main/native/archive/unix/makefile
harmony/enhanced/java/branches/java6/classlib/modules/awt/src/main/native/linuxfont/unix/makefile
harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/java/java/lang/reflect/Proxy.java
harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/unix/makefile
harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/windows/OSFileSystemWin32.c
harmony/enhanced/java/branches/java6/classlib/modules/misc/build.xml
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/DirectByteBuffer.java
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/HeapByteBuffer.java
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/MappedByteBuffer.java
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadOnlyDirectByteBuffer.java
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadWriteDirectByteBuffer.java
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/org/apache/harmony/nio/internal/MappedByteBufferFactory.java
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/MappedByteBufferTest.java
harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/channels/SocketChannelTest.java
harmony/enhanced/java/branches/java6/classlib/modules/portlib/build.xml
harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.common
harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.linux.x86_64.drl
harmony/enhanced/java/branches/java6/common_resources/ (props changed)
harmony/enhanced/java/branches/java6/common_resources/make/properties.xml
harmony/enhanced/java/branches/java6/drlvm/ (props changed)
harmony/enhanced/java/branches/java6/jdktools/ (props changed)
harmony/enhanced/java/branches/java6/jdktools/modules/jdktools/build.xml
harmony/enhanced/java/branches/java6/jdktools/modules/jpda/build.xml
harmony/enhanced/java/branches/java6/jdktools/modules/jretools/build.xml
Propchange: harmony/enhanced/java/branches/java6/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jun 1 19:03:06 2010
@@ -1,3 +1,3 @@
/harmony/enhanced/java/branches/mrh:935751-941490
-/harmony/enhanced/java/trunk:929253-948965
+/harmony/enhanced/java/trunk:929253-950187
/harmony/enhanced/trunk:810871-929252
Propchange: harmony/enhanced/java/branches/java6/classlib/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jun 1 19:03:06 2010
@@ -1,7 +1,7 @@
/harmony/enhanced/classlib/trunk:713674-735919,765923-926091,926318-926838
/harmony/enhanced/classlib/trunk/working_classlib:884014-884286
/harmony/enhanced/java/branches/mrh/classlib:935751-941490
-/harmony/enhanced/java/trunk/classlib:929253-948965
+/harmony/enhanced/java/trunk/classlib:929253-950187
/harmony/enhanced/trunk/classlib:810871-929252
/harmony/enhanced/trunk/working_classlib:476396-920147
/incubator/harmony/enhanced/trunk/working_classlib:423974-476394
Modified: harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mak
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mak?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mak (original)
+++ harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mak Tue Jun 1 19:03:06 2010
@@ -13,6 +13,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+!include <$(HY_HDK)/build/make/properties.mak>
+
!ifndef APPVER
APPVER=4.0 #Default Windows version
!endif
Modified: harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mk
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mk?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mk (original)
+++ harmony/enhanced/java/branches/java6/classlib/depends/build/defines.mk Tue Jun 1 19:03:06 2010
@@ -17,6 +17,8 @@
# Configuration Makefile
#
+include $(HY_HDK)/build/make/properties.mk
+
CXX = $(CC)
CPP = $(CC) -E
AS = as
@@ -27,7 +29,7 @@ DLL_LD = $(CC)
DLL_LDFLAGS = -shared -Wl,-soname=$(@F) -Wl,--version-script,$(EXPFILE)
CXX_DLL_LD = $(CXX)
STDCLIBS = -lstdc++
-OSLIBS = -lc -lm
+OSLIBS = -lc
XLIBS = -L/usr/X11R6/lib -lX11 -lXft -lXext -lXtst
MDLLIBPREFIX = -Xlinker --start-group
MDLLIBSUFFIX = -Xlinker --end-group
@@ -81,11 +83,3 @@ endif
ifeq ($(HY_ZIP_API),true)
DEFINES += -DHY_ZIP_API
endif
-
-ifeq ($(HY_LOCAL_ZLIB),true)
-DEFINES += -DHY_LOCAL_ZLIB
-OSLIBS += -lz
-MDLLIBZLIB =
-else
-MDLLIBZLIB += $(DLLPATH)libhyzlib$(HY_LINKLIB_SUFFIX)
-endif
Modified: harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc32.mk
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc32.mk?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc32.mk (original)
+++ harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc32.mk Tue Jun 1 19:03:06 2010
@@ -18,7 +18,7 @@ DEFINES += -DAIX -DAIX_PPC32 -DHYPPC32 -
PLATFORM += -qcpluscmt -q32 -q mbcs -qlanglvl=extended -qarch=ppc -qinfo=pro \
-qalias=noansi -D_XOPEN_SOURCE_EXTENDED=1 -D_ALL_SOURCE \
-D_LARGE_FILES -qsuppress=1500-010
-OSLIBS = -lc_r -lC_r -lm -lpthread -liconv
+OSLIBS = -lc_r -lC_r -lpthread -liconv
XLIBS = -L/opt/freeware/lib -lX11 -lXft -lfreetype -lfontconfig -lXext -lXtst
STDCLIBS =
WARNFLAGS =
Modified: harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc64.mk
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc64.mk?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc64.mk (original)
+++ harmony/enhanced/java/branches/java6/classlib/depends/build/platform/aix.ppc64.mk Tue Jun 1 19:03:06 2010
@@ -18,7 +18,7 @@ DEFINES += -DAIX -DAIX_PPC64 -DHYPPC64 -
PLATFORM += -qcpluscmt -q64 -DPPC64 -q mbcs -qlanglvl=extended -qarch=ppc \
-qinfo=pro -qalias=noansi -D_XOPEN_SOURCE_EXTENDED=1 -D_ALL_SOURCE \
-D_LARGE_FILES -qsuppress=1500-010
-OSLIBS = -lc_r -lC_r -lm -lpthread -liconv
+OSLIBS = -lc_r -lC_r -lpthread -liconv
XLIBS = -L/opt/freeware/lib -lX11 -lXft -lfreetype -lfontconfig -lXext -lXtst
STDCLIBS =
WARNFLAGS =
Modified: harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86.mk
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86.mk?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86.mk (original)
+++ harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86.mk Tue Jun 1 19:03:06 2010
@@ -16,6 +16,6 @@
DEFINES += -DFREEBSD -DFREEBSD_X86 -DHYX86 -DNEEDS_SYS_TYPES \
-DIPv6_FUNCTION_SUPPORT
PLATFORM += -march=pentium3
-OSLIBS = -L/usr/local/lib -lpthread -lm
+OSLIBS = -L/usr/local/lib -lpthread
INCLUDES += -I/usr/local/include
XLIBS = -lX11 -lXft -lXext -lXtst
Modified: harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86_64.mk
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86_64.mk?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86_64.mk (original)
+++ harmony/enhanced/java/branches/java6/classlib/depends/build/platform/freebsd.x86_64.mk Tue Jun 1 19:03:06 2010
@@ -15,6 +15,6 @@
DEFINES += -DFREEBSD -DFREEBSD_X86_64 -DHYX86_64 -DNEEDS_SYS_TYPES \
-DIPv6_FUNCTION_SUPPORT
-OSLIBS = -L/usr/local/lib -lpthread -lm
+OSLIBS = -L/usr/local/lib -lpthread
INCLUDES += -I/usr/local/include
XLIBS = -lX11 -lXft -lXext -lXtst
Modified: harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86.mk
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86.mk?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86.mk (original)
+++ harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86.mk Tue Jun 1 19:03:06 2010
@@ -22,7 +22,7 @@ DEFINES += -DMACOSX -DMACOSX_X86 -DHYX86
INCLUDES += -I/opt/local/include
PLATFORM = -fPIC -fno-common -arch i386 -mmacosx-version-min=10.5
ASFLAGS += -arch i386
-OSLIBS = -L/opt/local/lib -lc -lm -ldl -liconv
+OSLIBS = -L/opt/local/lib -lc -ldl -liconv
XLIBS = -L/usr/X11R6/lib -lX11 -lXft -lXext -lXtst -lXrender -lexpat \
-lfreetype -lfontconfig
MDLLIBPREFIX =
Modified: harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86_64.mk
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86_64.mk?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86_64.mk (original)
+++ harmony/enhanced/java/branches/java6/classlib/depends/build/platform/macosx.x86_64.mk Tue Jun 1 19:03:06 2010
@@ -20,7 +20,7 @@ INCLUDES += -I/opt/local/include
PLATFORM = -fPIC -fno-common -arch x86_64 -mmacosx-version-min=10.5
ASFLAGS += -arch x86_64
# WARNFLAGS += -Wconversion -Wformat -Wshorten-64-to-32
-OSLIBS = -L/opt/local/lib -lc -lm -ldl -liconv
+OSLIBS = -L/opt/local/lib -lc -ldl -liconv
XLIBS = -L/usr/X11R6/lib -lX11 -lXft -lXext -lXtst -lXrender -lexpat \
-lfreetype -lfontconfig
MDLLIBPREFIX =
Propchange: harmony/enhanced/java/branches/java6/classlib/depends/libs/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jun 1 19:03:06 2010
@@ -1,3 +1,3 @@
/harmony/enhanced/classlib/trunk/depends/libs:544451-926091
-/harmony/enhanced/java/trunk/classlib/depends/libs:929253-948965
+/harmony/enhanced/java/trunk/classlib/depends/libs:929253-950187
/harmony/enhanced/trunk/classlib/depends/libs:810871-929252
Modified: harmony/enhanced/java/branches/java6/classlib/make/properties.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/make/properties.xml?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/make/properties.xml (original)
+++ harmony/enhanced/java/branches/java6/classlib/make/properties.xml Tue Jun 1 19:03:06 2010
@@ -262,6 +262,11 @@
+
+
+
+
+
@@ -316,23 +321,22 @@
-
-
-
+
+
+
+
+
+
-
-
-
+
-
-
-
+
@@ -587,20 +591,23 @@ properties in preference to these:
Making "@{target}" in @{dir}
+
+HY_ZIP_API=${hy.zip.api}
+HY_PORTLIB_STUBS=${hy.portlib.stubs}
+HY_CFG=${hy.cfg}
+HY_ARCH=${hy.arch}
+HY_OS=${hy.os}
+HY_PLATFORM=${hy.platform}
+HY_NO_THR=${hy.no.thr}
+HY_THR_NO_DEPLOY=${hy.thr.no.deploy}
+HY_LOCAL_ZLIB=${hy.local.zlib}
+HY_SHLIB_SUFFIX=${shlib.suffix}
+HY_LINKLIB_SUFFIX=${linklib.suffix}
+
-
-
-
-
-
-
-
-
-
-
Modified: harmony/enhanced/java/branches/java6/classlib/modules/archive/src/main/native/archive/unix/makefile
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/archive/src/main/native/archive/unix/makefile?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/archive/src/main/native/archive/unix/makefile (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/archive/src/main/native/archive/unix/makefile Tue Jun 1 19:03:06 2010
@@ -29,6 +29,13 @@ ifneq ($(HY_ZIP_API),true)
MDLLIBFILES += $(LIBPATH)libhyzip.a
endif
+ifeq ($(HY_LOCAL_ZLIB),true)
+DEFINES += -DHY_LOCAL_ZLIB
+OSLIBS += -lz
+else
+MDLLIBZLIB += $(DLLPATH)libhyzlib$(HY_LINKLIB_SUFFIX)
+endif
+
MDLLIBFILES += \
$(MDLLIBZLIB) $(LIBPATH)libhypool.a \
$(LIBPATH)libvmi$(HY_LINKLIB_SUFFIX)
Modified: harmony/enhanced/java/branches/java6/classlib/modules/awt/src/main/native/linuxfont/unix/makefile
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/awt/src/main/native/linuxfont/unix/makefile?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/awt/src/main/native/linuxfont/unix/makefile (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/awt/src/main/native/linuxfont/unix/makefile Tue Jun 1 19:03:06 2010
@@ -34,7 +34,7 @@ MDLLIBFILES += $(LIBPATH)libhypool.a \
$(LIBPATH)libvmi$(HY_LINKLIB_SUFFIX) \
$(DLLPATH)libFL$(HY_LINKLIB_SUFFIX)
-OSLIBS += $(XLIBS)
+OSLIBS += -lm $(XLIBS)
DLLNAME=$(DLLPATH)liblinuxfont$(HY_SHLIB_SUFFIX)
EXPNAME=HYLINUXFONT_0.1
Modified: harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/java/java/lang/reflect/Proxy.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/java/java/lang/reflect/Proxy.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/java/java/lang/reflect/Proxy.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/java/java/lang/reflect/Proxy.java Tue Jun 1 19:03:06 2010
@@ -77,7 +77,7 @@ public class Proxy implements Serializab
* @param loader
* the class loader that will define the proxy class
* @param interfaces
- * an array of {@code Class} objects, each one identifying an
+ * a list of {@code Class} objects, each one identifying an
* interface that will be implemented by the returned proxy
* class
* @return a proxy class that implements all of the interfaces referred to
@@ -89,7 +89,7 @@ public class Proxy implements Serializab
* {@code null}
*/
public static Class> getProxyClass(ClassLoader loader,
- Class>[] interfaces) throws IllegalArgumentException {
+ Class>... interfaces) throws IllegalArgumentException {
// check that interfaces are a valid array of visible interfaces
if (interfaces == null) {
throw new NullPointerException();
Modified: harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/unix/makefile
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/unix/makefile?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/unix/makefile (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/unix/makefile Tue Jun 1 19:03:06 2010
@@ -47,6 +47,8 @@ endif
MDLLIBFILES += $(LIBPATH)libhypool.a $(LIBPATH)libhyfdlibm.a \
$(LIBPATH)libvmi$(HY_LINKLIB_SUFFIX)
+OSLIBS += -lm
+
DLLNAME = $(DLLPATH)libhyluni$(HY_SHLIB_SUFFIX)
EXPNAME = HYLUNI_0.1
Modified: harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/windows/OSFileSystemWin32.c
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/windows/OSFileSystemWin32.c?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/windows/OSFileSystemWin32.c (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/luni/src/main/native/luni/windows/OSFileSystemWin32.c Tue Jun 1 19:03:06 2010
@@ -307,7 +307,7 @@ JNIEXPORT jlong JNICALL Java_org_apache_
BY_HANDLE_FILE_INFORMATION info;
HANDLE hfile = (HANDLE)fd;
if (GetFileInformationByHandle(hfile, (LPBY_HANDLE_FILE_INFORMATION) &info)) {
- return (jlong) ((info.nFileSizeHigh<<0x20) + info.nFileSizeLow);
+ return (jlong) (((DWORDLONG)info.nFileSizeHigh<<0x20) + info.nFileSizeLow);
} else {
return (jlong)-1;
}
Modified: harmony/enhanced/java/branches/java6/classlib/modules/misc/build.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/misc/build.xml?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/misc/build.xml (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/misc/build.xml Tue Jun 1 19:03:06 2010
@@ -55,7 +55,7 @@
-
+
Modified: harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/DirectByteBuffer.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/DirectByteBuffer.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/DirectByteBuffer.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/DirectByteBuffer.java Tue Jun 1 19:03:06 2010
@@ -34,10 +34,7 @@ import org.apache.harmony.nio.internal.n
*
*
*/
-abstract class DirectByteBuffer extends BaseByteBuffer implements DirectBuffer {
-
- // This is the base address of the buffer memory.
- protected PlatformAddress address;
+abstract class DirectByteBuffer extends MappedByteBuffer implements DirectBuffer {
// This is the offset from the base address at which this buffer logically
// starts.
@@ -59,6 +56,7 @@ abstract class DirectByteBuffer extends
super(capacity);
this.address = address;
this.offset = offset;
+ address.autoFree();
}
/*
@@ -275,4 +273,54 @@ abstract class DirectByteBuffer extends
public final int getByteCapacity() {
return capacity;
}
+
+ @Override
+ public final CharBuffer asCharBuffer() {
+ return CharToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final DoubleBuffer asDoubleBuffer() {
+ return DoubleToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final FloatBuffer asFloatBuffer() {
+ return FloatToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final IntBuffer asIntBuffer() {
+ return IntToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final LongBuffer asLongBuffer() {
+ return LongToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final ShortBuffer asShortBuffer() {
+ return ShortToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final char getChar() {
+ return (char) getShort();
+ }
+
+ @Override
+ public final char getChar(int index) {
+ return (char) getShort(index);
+ }
+
+ @Override
+ public final ByteBuffer putChar(char value) {
+ return putShort((short) value);
+ }
+
+ @Override
+ public final ByteBuffer putChar(int index, char value) {
+ return putShort(index, (short) value);
+ }
}
Modified: harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/HeapByteBuffer.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/HeapByteBuffer.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/HeapByteBuffer.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/HeapByteBuffer.java Tue Jun 1 19:03:06 2010
@@ -31,7 +31,7 @@ import org.apache.harmony.luni.platform.
*
*
*/
-abstract class HeapByteBuffer extends BaseByteBuffer {
+abstract class HeapByteBuffer extends ByteBuffer {
protected final byte[] backingArray;
@@ -261,4 +261,54 @@ abstract class HeapByteBuffer extends Ba
backingArray[baseOffset] = (byte) (value & 0xFF);
}
}
+
+ @Override
+ public final CharBuffer asCharBuffer() {
+ return CharToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final DoubleBuffer asDoubleBuffer() {
+ return DoubleToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final FloatBuffer asFloatBuffer() {
+ return FloatToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final IntBuffer asIntBuffer() {
+ return IntToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final LongBuffer asLongBuffer() {
+ return LongToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final ShortBuffer asShortBuffer() {
+ return ShortToByteBufferAdapter.wrap(this);
+ }
+
+ @Override
+ public final char getChar() {
+ return (char) getShort();
+ }
+
+ @Override
+ public final char getChar(int index) {
+ return (char) getShort(index);
+ }
+
+ @Override
+ public final ByteBuffer putChar(char value) {
+ return putShort((short) value);
+ }
+
+ @Override
+ public final ByteBuffer putChar(int index, char value) {
+ return putShort(index, (short) value);
+ }
}
Modified: harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/MappedByteBuffer.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/MappedByteBuffer.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/MappedByteBuffer.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/MappedByteBuffer.java Tue Jun 1 19:03:06 2010
@@ -37,34 +37,13 @@ import org.apache.harmony.nio.internal.D
*/
public abstract class MappedByteBuffer extends ByteBuffer {
- final DirectByteBuffer wrapped;
+ // This is the base address of the direct byte buffer memory.
+ protected PlatformAddress address;
- private int mapMode;
+ protected int mapMode;
- MappedByteBuffer(ByteBuffer directBuffer) {
- super(directBuffer.capacity);
- if (!directBuffer.isDirect()) {
- throw new IllegalArgumentException();
- }
- this.wrapped = (DirectByteBuffer) directBuffer;
-
- }
-
- MappedByteBuffer(PlatformAddress addr, int capa, int offset, int mode) {
- super(capa);
- mapMode = mode;
- switch (mapMode) {
- case IMemorySystem.MMAP_READ_ONLY:
- wrapped = new ReadOnlyDirectByteBuffer(addr, capa, offset);
- break;
- case IMemorySystem.MMAP_READ_WRITE:
- case IMemorySystem.MMAP_WRITE_COPY:
- wrapped = new ReadWriteDirectByteBuffer(addr, capa, offset);
- break;
- default:
- throw new IllegalArgumentException();
- }
- addr.autoFree();
+ MappedByteBuffer(int capacity) {
+ super(capacity);
}
/**
@@ -76,8 +55,7 @@ public abstract class MappedByteBuffer e
* otherwise.
*/
public final boolean isLoaded() {
- return ((MappedPlatformAddress) ((DirectBuffer) wrapped)
- .getBaseAddress()).mmapIsLoaded();
+ return ((MappedPlatformAddress)address).mmapIsLoaded();
}
/**
@@ -87,8 +65,7 @@ public abstract class MappedByteBuffer e
* @return this buffer.
*/
public final MappedByteBuffer load() {
- ((MappedPlatformAddress) ((DirectBuffer) wrapped).getBaseAddress())
- .mmapLoad();
+ ((MappedPlatformAddress)address).mmapLoad();
return this;
}
@@ -102,8 +79,7 @@ public abstract class MappedByteBuffer e
*/
public final MappedByteBuffer force() {
if (mapMode == IMemorySystem.MMAP_READ_WRITE) {
- ((MappedPlatformAddress) ((DirectBuffer) wrapped).getBaseAddress())
- .mmapFlush();
+ ((MappedPlatformAddress)address).mmapFlush();
}
return this;
}
Modified: harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadOnlyDirectByteBuffer.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadOnlyDirectByteBuffer.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadOnlyDirectByteBuffer.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadOnlyDirectByteBuffer.java Tue Jun 1 19:03:06 2010
@@ -48,6 +48,15 @@ final class ReadOnlyDirectByteBuffer ext
super(address, capacity, offset);
}
+ /*
+ * This constructor is specifically for MappedByteBuffer construction
+ */
+ protected ReadOnlyDirectByteBuffer(PlatformAddress address, int capacity,
+ int offset, int mapMode) {
+ super(address, capacity, offset);
+ this.mapMode = mapMode;
+ }
+
@Override
public ByteBuffer asReadOnlyBuffer() {
return copy(this, mark);
Modified: harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadWriteDirectByteBuffer.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadWriteDirectByteBuffer.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadWriteDirectByteBuffer.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/java/nio/ReadWriteDirectByteBuffer.java Tue Jun 1 19:03:06 2010
@@ -52,6 +52,15 @@ final class ReadWriteDirectByteBuffer ex
super(address, capacity, offset);
}
+ /*
+ * This constructor is specifically for MappedByteBuffer construction
+ */
+ ReadWriteDirectByteBuffer(PlatformAddress address, int capacity,
+ int offset, int mapMode) {
+ super(address, capacity, offset);
+ this.mapMode = mapMode;
+ }
+
@Override
public ByteBuffer asReadOnlyBuffer() {
return ReadOnlyDirectByteBuffer.copy(this, mark);
Modified: harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/org/apache/harmony/nio/internal/MappedByteBufferFactory.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/org/apache/harmony/nio/internal/MappedByteBufferFactory.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/org/apache/harmony/nio/internal/MappedByteBufferFactory.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/nio/src/main/java/common/org/apache/harmony/nio/internal/MappedByteBufferFactory.java Tue Jun 1 19:03:06 2010
@@ -24,20 +24,45 @@ import java.security.PrivilegedAction;
import org.apache.harmony.luni.platform.PlatformAddress;
+import org.apache.harmony.luni.platform.IMemorySystem;
+import org.apache.harmony.luni.platform.MappedPlatformAddress;
+import org.apache.harmony.luni.platform.PlatformAddress;
+import org.apache.harmony.nio.internal.DirectBuffer;
+
class MappedByteBufferFactory {
- static final Constructor> constructor;
+ static final Constructor> readOnlyConstructor;
+ static final Constructor> readWriteConstructor;
static {
- constructor = AccessController
+ readOnlyConstructor = AccessController
+ .doPrivileged(new PrivilegedAction>() {
+ public Constructor> run() {
+ try {
+ Class> wrapperClazz = ClassLoader
+ .getSystemClassLoader().loadClass(
+ "java.nio.ReadOnlyDirectByteBuffer"); //$NON-NLS-1$
+ Constructor> result = wrapperClazz
+ .getDeclaredConstructor(new Class[] {
+ PlatformAddress.class, int.class,
+ int.class, int.class });
+ result.setAccessible(true);
+ return result;
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ }
+ });
+
+ readWriteConstructor = AccessController
.doPrivileged(new PrivilegedAction>() {
public Constructor> run() {
try {
Class> wrapperClazz = ClassLoader
.getSystemClassLoader().loadClass(
- "java.nio.MappedByteBufferAdapter"); //$NON-NLS-1$
+ "java.nio.ReadWriteDirectByteBuffer"); //$NON-NLS-1$
Constructor> result = wrapperClazz
- .getConstructor(new Class[] {
+ .getDeclaredConstructor(new Class[] {
PlatformAddress.class, int.class,
int.class, int.class });
result.setAccessible(true);
@@ -55,8 +80,18 @@ class MappedByteBufferFactory {
* Spec points out explicitly that the size of map should be no greater
* than Integer.MAX_VALUE, so long to int cast is safe here.
*/
- return (MappedByteBuffer) constructor.newInstance(new Object[] { addr,
+ switch (mapmode) {
+ case IMemorySystem.MMAP_READ_ONLY:
+ return (MappedByteBuffer) readOnlyConstructor.newInstance(new Object[] { addr,
+ Integer.valueOf((int)size), Integer.valueOf(offset),
+ Integer.valueOf(mapmode) });
+ case IMemorySystem.MMAP_READ_WRITE:
+ case IMemorySystem.MMAP_WRITE_COPY:
+ return (MappedByteBuffer) readWriteConstructor.newInstance(new Object[] { addr,
Integer.valueOf((int)size), Integer.valueOf(offset),
Integer.valueOf(mapmode) });
+ default:
+ throw new IllegalArgumentException();
+ }
}
}
Modified: harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/MappedByteBufferTest.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/MappedByteBufferTest.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/MappedByteBufferTest.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/MappedByteBufferTest.java Tue Jun 1 19:03:06 2010
@@ -208,4 +208,24 @@ public class MappedByteBufferTest extend
emptyFile = File.createTempFile("harmony", "test"); //$NON-NLS-1$//$NON-NLS-2$
emptyFile.deleteOnExit();
}
+
+ public void test_position() throws IOException {
+ File tmp = File.createTempFile("hmy", "tmp");
+ tmp.deleteOnExit();
+ RandomAccessFile f = new RandomAccessFile(tmp, "rw");
+ FileChannel ch = f.getChannel();
+ MappedByteBuffer mbb = ch.map(MapMode.READ_WRITE, 0L, 100L);
+ ch.close();
+
+ mbb.putInt(1, 1);
+ mbb.position(50);
+ mbb.putInt(50);
+
+ mbb.flip();
+ mbb.get();
+ assertEquals(1, mbb.getInt());
+
+ mbb.position(50);
+ assertEquals(50, mbb.getInt());
+ }
}
Modified: harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/channels/SocketChannelTest.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/channels/SocketChannelTest.java?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/channels/SocketChannelTest.java (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/nio/src/test/java/common/org/apache/harmony/nio/tests/java/nio/channels/SocketChannelTest.java Tue Jun 1 19:03:06 2010
@@ -491,8 +491,6 @@ public class SocketChannelTest extends T
assertEquals(s.getPort(), address.getPort());
assertNotNull(s.getLocalSocketAddress());
assertTrue(s.getReceiveBufferSize() >= 8192);
- // equal , not same
- assertNotSame(s.getRemoteSocketAddress(), (SocketAddress) address);
assertEquals(s.getRemoteSocketAddress(), (SocketAddress) address);
// assertFalse(s.getReuseAddress());
assertTrue(s.getSendBufferSize() >= 8192);
Modified: harmony/enhanced/java/branches/java6/classlib/modules/portlib/build.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/portlib/build.xml?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/portlib/build.xml (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/portlib/build.xml Tue Jun 1 19:03:06 2010
@@ -158,8 +158,8 @@
-
-
+
Modified: harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.common
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.common?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.common (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.common Tue Jun 1 19:03:06 2010
@@ -1,5 +1,11 @@
+#HARMONY-6524
+org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
+
+#HARMONY-6525
org/apache/harmony/text/tests/java/text/DecimalFormatTest.java
-org/apache/harmony/text/tests/java/text/MessageFormatTest.java
+
+#HARMONY-6526
org/apache/harmony/text/tests/java/text/SimpleDateFormatTest.java
-org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
+
+#HARMONY-6527
org/apache/harmony/text/tests/java/text/CollationElementIteratorTest.java
Modified: harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.linux.x86_64.drl
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.linux.x86_64.drl?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.linux.x86_64.drl (original)
+++ harmony/enhanced/java/branches/java6/classlib/modules/text/make/exclude.linux.x86_64.drl Tue Jun 1 19:03:06 2010
@@ -1,2 +0,0 @@
-org/apache/harmony/text/tests/java/text/DateFormatSymbolsTest.java
-org/apache/harmony/text/tests/java/text/RuleBasedCollatorTest.java
Propchange: harmony/enhanced/java/branches/java6/common_resources/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jun 1 19:03:06 2010
@@ -1,4 +1,4 @@
/harmony/enhanced/java/branches/mrh/common_resources:935751-941490
-/harmony/enhanced/java/trunk/common_resources:929253-948965
+/harmony/enhanced/java/trunk/common_resources:929253-950187
/harmony/enhanced/trunk/common_resources:476396-929252
/incubator/harmony/enhanced/trunk/common_resources:423974-476394
Modified: harmony/enhanced/java/branches/java6/common_resources/make/properties.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/common_resources/make/properties.xml?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/common_resources/make/properties.xml (original)
+++ harmony/enhanced/java/branches/java6/common_resources/make/properties.xml Tue Jun 1 19:03:06 2010
@@ -276,18 +276,7 @@ properties in preference to these:
-
-
-
-
-
-
-
-
-
-
-
Propchange: harmony/enhanced/java/branches/java6/drlvm/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jun 1 19:03:06 2010
@@ -1,5 +1,5 @@
/harmony/enhanced/java/branches/mrh/drlvm:935751-941490
-/harmony/enhanced/java/trunk/drlvm:929253-948965
+/harmony/enhanced/java/trunk/drlvm:929253-950187
/harmony/enhanced/trunk/drlvm:810871-929252
/harmony/enhanced/trunk/working_vm:476396-920147
/incubator/harmony/enhanced/trunk/working_vm:423974-476394
Propchange: harmony/enhanced/java/branches/java6/jdktools/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Jun 1 19:03:06 2010
@@ -1,4 +1,4 @@
-/harmony/enhanced/java/trunk/jdktools:929253-948965
+/harmony/enhanced/java/trunk/jdktools:929253-950187
/harmony/enhanced/jdktools/trunk:630107-925933
/harmony/enhanced/trunk/jdktools:810871-929252
/harmony/enhanced/trunk/working_jdktools:476396-920147
Modified: harmony/enhanced/java/branches/java6/jdktools/modules/jdktools/build.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/java/branches/java6/jdktools/modules/jdktools/build.xml?rev=950206&r1=950205&r2=950206&view=diff
==============================================================================
--- harmony/enhanced/java/branches/java6/jdktools/modules/jdktools/build.xml (original)
+++ harmony/enhanced/java/branches/java6/jdktools/modules/jdktools/build.xml Tue Jun 1 19:03:06 2010
@@ -41,6 +41,9 @@
+
+
@@ -51,6 +54,8 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+