/hg/release/icedtea7-forest-2.1/jdk: 30 new changesets
andrew at icedtea.classpath.org
andrew at icedtea.classpath.org
Thu Apr 18 07:58:10 PDT 2013
changeset 37003fadbad8 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=37003fadbad8
author: anthony
date: Wed Jan 18 19:09:26 2012 +0400
7130662: GTK file dialog crashes with a NPE
Summary: Guard adding a back slash to the directory name with an if (!= null) check
Reviewed-by: anthony, art
Contributed-by: Matt <melkor at orangepalantir.org>
changeset b3c4cb100f47 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=b3c4cb100f47
author: andrew
date: Wed Apr 17 23:45:18 2013 +0100
6657673: Issues with JAXP
Reviewed-by: alanb, lancea, ahgross, mullan
changeset 127b6047cea5 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=127b6047cea5
author: malenkov
date: Fri Feb 08 18:06:56 2013 +0400
7200507: Refactor Introspector internals
Reviewed-by: ahgross, art
changeset 625e0cbac8e6 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=625e0cbac8e6
author: andrew
date: Wed Apr 17 23:47:37 2013 +0100
8000724: Improve networking serialization
Summary: delegate InetAddress fields to a holder object
Reviewed-by: alanb, chegar
changeset c29c31915f78 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=c29c31915f78
author: andrew
date: Wed Apr 10 17:27:39 2013 +0100
8004986: Better handling of glyph table
8004987: Improve font layout
8004994: Improve checking of glyph table
Reviewed-by: bae, mschoene, jgodinez
Contributed-by: steven.loomis at oracle.com
changeset cd1f77ec3f92 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=cd1f77ec3f92
author: andrew
date: Wed Apr 10 22:07:37 2013 +0100
8001031: Better font processing.
Reviewed-by: vadim, prr, mschoene
changeset 8d81b73d62cf in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=8d81b73d62cf
author: andrew
date: Wed Apr 10 23:02:46 2013 +0100
8001040: Rework RMI model
Reviewed-by: alanb, ahgross, coffeys, dmocek
changeset 419761887dd7 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=419761887dd7
author: dfuchs
date: Mon Mar 11 15:07:19 2013 +0100
8001322: Refactor deserialization
Reviewed-by: mchung, skoivu, smarks
changeset 396c04a8c465 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=396c04a8c465
author: dmocek
date: Tue Feb 05 16:38:25 2013 -0800
8001329: Augment RMI logging
Reviewed-by: smarks, hawtin, alanb
changeset bb41c7eaa674 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=bb41c7eaa674
author: chegar
date: Thu Dec 20 13:40:27 2012 +0000
8003335: Better handling of Finalizer thread
Reviewed-by: alanb, ahgross
changeset 7e6563f7851e in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=7e6563f7851e
author: andrew
date: Wed Apr 17 23:48:54 2013 +0100
8003445: Adjust JAX-WS to focus on API
Reviewed-by: vinnie, ahgross, mgrebac
changeset e71d4707dd4c in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=e71d4707dd4c
author: serb
date: Tue Feb 19 20:40:48 2013 +0400
8004261: Improve input validation
Reviewed-by: art, mschoene, amenkov
changeset 3b7d35921eec in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=3b7d35921eec
author: andrew
date: Wed Apr 17 23:49:28 2013 +0100
8005432: Update access to JAX-WS
Summary: newly restricted the whole package com.sun.xml.internal; fix reviewed also by Alexander Fomin
Reviewed-by: mullan, skoivu
changeset e14abcc3c294 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=e14abcc3c294
author: uta
date: Tue Feb 26 15:58:40 2013 +0400
8005943: (process) Improved Runtime.exec
Reviewed-by: alanb, ahgross
changeset 13ddee59e6f8 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=13ddee59e6f8
author: dsamersoff
date: Mon Feb 25 20:06:22 2013 +0400
8006435: Improvements in JMX
Summary: Improvements in JMX
Reviewed-by: dfuchs, skoivu
changeset cf788fcc3614 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=cf788fcc3614
author: andrew
date: Wed Apr 17 23:49:59 2013 +0100
8006790: Improve checking for windows
Reviewed-by: art, mschoene
changeset 54324eb2e0a9 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=54324eb2e0a9
author: prr
date: Thu Feb 07 12:14:31 2013 -0800
8006795: Improve font warning messages
Reviewed-by: bae, jgodinez, mschoene
changeset 022d446c4771 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=022d446c4771
author: raginip
date: Fri Mar 01 14:06:10 2013 +0000
8007406: Improve accessibility of AccessBridge
Reviewed-by: skoivu, mullan, ptbrunet
changeset 0b2dc7912f10 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=0b2dc7912f10
author: bae
date: Fri Feb 22 15:14:25 2013 +0400
8007617: Better validation of images
Reviewed-by: prr, jgodinez
changeset 39d2cd3250bd in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=39d2cd3250bd
author: bae
date: Tue Feb 26 00:15:17 2013 +0400
8007667: Better image reading
Reviewed-by: prr, jgodinez
changeset a4fe7a868b18 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=a4fe7a868b18
author: andrew
date: Wed Apr 10 23:35:45 2013 +0100
8007918: Better image writing
Reviewed-by: prr, jgodinez
changeset 78dfaa989a38 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=78dfaa989a38
author: vlivanov
date: Fri Mar 01 03:50:33 2013 +0400
8008140: Better method handle resolution
Reviewed-by: jrose, twisti, jdn
changeset ba3e07024008 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=ba3e07024008
author: vlivanov
date: Fri Mar 01 03:50:17 2013 +0400
8009049: Better method handle binding
Reviewed-by: jrose, twisti, jdn
changeset 5b067978a725 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=5b067978a725
author: andrew
date: Wed Apr 17 23:16:21 2013 +0100
8009063: Improve reliability of ConcurrentHashMap
Reviewed-by: alanb, ahgross
changeset 8abc50bce580 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=8abc50bce580
author: dfuchs
date: Thu Mar 14 17:27:32 2013 +0100
8009305: Improve AWT data transfer
Reviewed-by: art, skoivu, smarks, ant
changeset b836de51e07a in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=b836de51e07a
author: andrew
date: Wed Apr 17 23:54:20 2013 +0100
8009677: Better setting of setters
Reviewed-by: ahgross, jrose, twisti
changeset 29b45a693cf0 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=29b45a693cf0
author: lancea
date: Sat Mar 16 10:08:14 2013 -0400
8009814: Better driver management
Reviewed-by: alanb, skoivu
changeset 9edf8a6832d2 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=9edf8a6832d2
author: smarks
date: Mon Mar 18 18:05:31 2013 -0700
8009857: Problem with plugin
Reviewed-by: jdn, mchung
changeset acaa2de9f547 in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=acaa2de9f547
author: andrew
date: Mon Apr 15 23:39:14 2013 +0100
Handle bad font in TCK
changeset 2d91409e8c5d in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=2d91409e8c5d
author: andrew
date: Thu Apr 18 15:05:19 2013 +0100
Added tag icedtea-2.1.8 for changeset acaa2de9f547
diffstat:
.hgtags | 1 +
src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java | 293 ++++-
src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java | 147 ++-
src/share/classes/com/sun/jmx/mbeanserver/MBeanInstantiator.java | 6 +-
src/share/classes/com/sun/media/sound/AbstractMidiDevice.java | 25 +-
src/share/classes/com/sun/media/sound/FastShortMessage.java | 2 +-
src/share/classes/com/sun/media/sound/FastSysexMessage.java | 2 +-
src/share/classes/com/sun/media/sound/MidiOutDevice.java | 16 +-
src/share/classes/com/sun/media/sound/RealTimeSequencer.java | 2 +-
src/share/classes/java/awt/Window.java | 4 +-
src/share/classes/java/awt/peer/WindowPeer.java | 13 +-
src/share/classes/java/beans/ThreadGroupContext.java | 7 +-
src/share/classes/java/beans/WeakIdentityMap.java | 181 +++
src/share/classes/java/io/ObjectInputStream.java | 19 +
src/share/classes/java/lang/ProcessBuilder.java | 19 +-
src/share/classes/java/lang/invoke/MethodHandles.java | 36 +-
src/share/classes/java/lang/ref/Finalizer.java | 18 +-
src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java | 2 +-
src/share/classes/java/net/Inet4Address.java | 39 +-
src/share/classes/java/net/Inet4AddressImpl.java | 2 +-
src/share/classes/java/net/Inet6Address.java | 19 +-
src/share/classes/java/net/Inet6AddressImpl.java | 2 +-
src/share/classes/java/net/InetAddress.java | 120 +-
src/share/classes/java/net/InetSocketAddress.java | 4 +-
src/share/classes/java/rmi/server/LogStream.java | 9 +-
src/share/classes/java/sql/DriverManager.java | 4 +-
src/share/classes/java/util/concurrent/ConcurrentHashMap.java | 28 +-
src/share/classes/sun/awt/EmbeddedFrame.java | 4 +-
src/share/classes/sun/awt/datatransfer/TransferableProxy.java | 20 +-
src/share/classes/sun/awt/image/ImageRepresentation.java | 19 +-
src/share/classes/sun/font/CMap.java | 3 -
src/share/classes/sun/invoke/util/Wrapper.java | 3 +
src/share/classes/sun/reflect/misc/MethodUtil.java | 40 +-
src/share/classes/sun/reflect/misc/ReflectUtil.java | 10 +-
src/share/classes/sun/rmi/server/MarshalInputStream.java | 14 +-
src/share/lib/security/java.security | 40 +-
src/share/lib/security/java.security-solaris | 40 +-
src/share/lib/security/java.security-windows | 42 +-
src/share/native/java/net/InetAddress.c | 23 +-
src/share/native/java/net/net_util.c | 70 +-
src/share/native/java/net/net_util.h | 12 +-
src/share/native/sun/awt/image/awt_ImageRep.c | 173 ++-
src/share/native/sun/awt/image/jpeg/imageioJPEG.c | 45 +-
src/share/native/sun/font/FontInstanceAdapter.cpp | 47 +-
src/share/native/sun/font/FontInstanceAdapter.h | 1 +
src/share/native/sun/font/fontscalerdefs.h | 21 +-
src/share/native/sun/font/layout/AlternateSubstSubtables.cpp | 11 +-
src/share/native/sun/font/layout/AlternateSubstSubtables.h | 6 +-
src/share/native/sun/font/layout/ArabicLayoutEngine.cpp | 36 +-
src/share/native/sun/font/layout/ArabicLayoutEngine.h | 2 +-
src/share/native/sun/font/layout/ArabicShaping.cpp | 14 +-
src/share/native/sun/font/layout/ArabicShaping.h | 2 +
src/share/native/sun/font/layout/AttachmentPosnSubtables.h | 6 +-
src/share/native/sun/font/layout/CanonData.cpp | 5 +
src/share/native/sun/font/layout/CanonShaping.cpp | 10 +-
src/share/native/sun/font/layout/CanonShaping.h | 2 +
src/share/native/sun/font/layout/ClassDefinitionTables.cpp | 104 +-
src/share/native/sun/font/layout/ClassDefinitionTables.h | 27 +-
src/share/native/sun/font/layout/ContextualGlyphSubstProc.cpp | 48 +-
src/share/native/sun/font/layout/ContextualGlyphSubstProc.h | 8 +-
src/share/native/sun/font/layout/ContextualSubstSubtables.cpp | 8 +-
src/share/native/sun/font/layout/ContextualSubstSubtables.h | 22 +
src/share/native/sun/font/layout/CoverageTables.h | 3 +
src/share/native/sun/font/layout/CursiveAttachmentSubtables.cpp | 6 +-
src/share/native/sun/font/layout/CursiveAttachmentSubtables.h | 3 +-
src/share/native/sun/font/layout/DeviceTables.h | 1 +
src/share/native/sun/font/layout/ExtensionSubtables.cpp | 8 +-
src/share/native/sun/font/layout/Features.cpp | 12 +-
src/share/native/sun/font/layout/GDEFMarkFilter.cpp | 7 +-
src/share/native/sun/font/layout/GDEFMarkFilter.h | 4 +-
src/share/native/sun/font/layout/GXLayoutEngine.cpp | 5 +-
src/share/native/sun/font/layout/GXLayoutEngine.h | 4 +-
src/share/native/sun/font/layout/GlyphDefinitionTables.cpp | 28 +-
src/share/native/sun/font/layout/GlyphDefinitionTables.h | 20 +-
src/share/native/sun/font/layout/GlyphIterator.cpp | 27 +-
src/share/native/sun/font/layout/GlyphIterator.h | 6 +-
src/share/native/sun/font/layout/GlyphLookupTables.cpp | 15 +-
src/share/native/sun/font/layout/GlyphLookupTables.h | 4 +-
src/share/native/sun/font/layout/GlyphPositioningTables.cpp | 6 +-
src/share/native/sun/font/layout/GlyphPositioningTables.h | 5 +-
src/share/native/sun/font/layout/GlyphPosnLookupProc.cpp | 36 +-
src/share/native/sun/font/layout/GlyphPosnLookupProc.h | 4 +-
src/share/native/sun/font/layout/GlyphSubstLookupProc.cpp | 28 +-
src/share/native/sun/font/layout/GlyphSubstLookupProc.h | 4 +-
src/share/native/sun/font/layout/GlyphSubstitutionTables.cpp | 7 +-
src/share/native/sun/font/layout/GlyphSubstitutionTables.h | 5 +-
src/share/native/sun/font/layout/HanLayoutEngine.cpp | 2 +-
src/share/native/sun/font/layout/HanLayoutEngine.h | 2 +-
src/share/native/sun/font/layout/HangulLayoutEngine.cpp | 2 +-
src/share/native/sun/font/layout/HangulLayoutEngine.h | 2 +-
src/share/native/sun/font/layout/ICUFeatures.h | 9 +-
src/share/native/sun/font/layout/IndicLayoutEngine.cpp | 2 +-
src/share/native/sun/font/layout/IndicLayoutEngine.h | 2 +-
src/share/native/sun/font/layout/IndicRearrangementProcessor.cpp | 14 +-
src/share/native/sun/font/layout/IndicRearrangementProcessor.h | 7 +-
src/share/native/sun/font/layout/IndicReordering.cpp | 5 +
src/share/native/sun/font/layout/KernTable.cpp | 55 +-
src/share/native/sun/font/layout/KernTable.h | 12 +-
src/share/native/sun/font/layout/KhmerLayoutEngine.cpp | 2 +-
src/share/native/sun/font/layout/KhmerLayoutEngine.h | 2 +-
src/share/native/sun/font/layout/LEFontInstance.h | 19 +
src/share/native/sun/font/layout/LEScripts.h | 22 +-
src/share/native/sun/font/layout/LETableReference.h | 497 ++++++++++
src/share/native/sun/font/layout/LETypes.h | 45 +-
src/share/native/sun/font/layout/LayoutEngine.cpp | 103 +-
src/share/native/sun/font/layout/LayoutEngine.h | 8 +-
src/share/native/sun/font/layout/LigatureSubstProc.cpp | 68 +-
src/share/native/sun/font/layout/LigatureSubstProc.h | 6 +-
src/share/native/sun/font/layout/LigatureSubstSubtables.cpp | 4 +-
src/share/native/sun/font/layout/LigatureSubstSubtables.h | 5 +-
src/share/native/sun/font/layout/LookupProcessor.cpp | 127 +-
src/share/native/sun/font/layout/LookupProcessor.h | 19 +-
src/share/native/sun/font/layout/LookupTables.cpp | 29 +-
src/share/native/sun/font/layout/LookupTables.h | 10 +-
src/share/native/sun/font/layout/Lookups.cpp | 36 +-
src/share/native/sun/font/layout/Lookups.h | 29 +-
src/share/native/sun/font/layout/MarkArrays.h | 1 +
src/share/native/sun/font/layout/MarkToBasePosnSubtables.cpp | 6 +-
src/share/native/sun/font/layout/MarkToBasePosnSubtables.h | 4 +-
src/share/native/sun/font/layout/MarkToLigaturePosnSubtables.cpp | 6 +-
src/share/native/sun/font/layout/MarkToLigaturePosnSubtables.h | 5 +-
src/share/native/sun/font/layout/MarkToMarkPosnSubtables.cpp | 6 +-
src/share/native/sun/font/layout/MarkToMarkPosnSubtables.h | 4 +-
src/share/native/sun/font/layout/MorphTables.cpp | 40 +-
src/share/native/sun/font/layout/MorphTables.h | 7 +-
src/share/native/sun/font/layout/MultipleSubstSubtables.cpp | 4 +-
src/share/native/sun/font/layout/MultipleSubstSubtables.h | 4 +-
src/share/native/sun/font/layout/NonContextualGlyphSubstProc.cpp | 23 +-
src/share/native/sun/font/layout/NonContextualGlyphSubstProc.h | 6 +-
src/share/native/sun/font/layout/OpenTypeLayoutEngine.cpp | 81 +-
src/share/native/sun/font/layout/OpenTypeLayoutEngine.h | 16 +-
src/share/native/sun/font/layout/OpenTypeTables.h | 3 +-
src/share/native/sun/font/layout/OpenTypeUtilities.cpp | 98 +-
src/share/native/sun/font/layout/OpenTypeUtilities.h | 13 +-
src/share/native/sun/font/layout/PairPositioningSubtables.cpp | 27 +-
src/share/native/sun/font/layout/PairPositioningSubtables.h | 10 +-
src/share/native/sun/font/layout/ScriptAndLanguage.cpp | 65 +-
src/share/native/sun/font/layout/ScriptAndLanguage.h | 9 +-
src/share/native/sun/font/layout/SegmentArrayProcessor.cpp | 20 +-
src/share/native/sun/font/layout/SegmentArrayProcessor.h | 6 +-
src/share/native/sun/font/layout/SegmentSingleProcessor.cpp | 17 +-
src/share/native/sun/font/layout/SegmentSingleProcessor.h | 6 +-
src/share/native/sun/font/layout/ShapingTypeData.cpp | 2 +
src/share/native/sun/font/layout/SimpleArrayProcessor.cpp | 20 +-
src/share/native/sun/font/layout/SimpleArrayProcessor.h | 6 +-
src/share/native/sun/font/layout/SinglePositioningSubtables.cpp | 18 +-
src/share/native/sun/font/layout/SinglePositioningSubtables.h | 7 +-
src/share/native/sun/font/layout/SingleSubstitutionSubtables.cpp | 18 +-
src/share/native/sun/font/layout/SingleSubstitutionSubtables.h | 7 +-
src/share/native/sun/font/layout/SingleTableProcessor.cpp | 13 +-
src/share/native/sun/font/layout/SingleTableProcessor.h | 6 +-
src/share/native/sun/font/layout/StateTableProcessor.cpp | 24 +-
src/share/native/sun/font/layout/StateTableProcessor.h | 9 +-
src/share/native/sun/font/layout/StateTables.h | 36 +
src/share/native/sun/font/layout/SubtableProcessor.cpp | 6 +-
src/share/native/sun/font/layout/SubtableProcessor.h | 6 +-
src/share/native/sun/font/layout/ThaiLayoutEngine.cpp | 9 +-
src/share/native/sun/font/layout/TibetanLayoutEngine.cpp | 2 +-
src/share/native/sun/font/layout/TibetanLayoutEngine.h | 2 +-
src/share/native/sun/font/layout/TrimmedArrayProcessor.cpp | 20 +-
src/share/native/sun/font/layout/TrimmedArrayProcessor.h | 6 +-
src/share/native/sun/font/layout/ValueRecords.h | 1 +
src/share/native/sun/font/sunFont.c | 18 +-
src/solaris/classes/sun/awt/X11/GtkFileDialogPeer.java | 9 +-
src/solaris/classes/sun/awt/X11/XWindowPeer.java | 6 +-
src/solaris/native/java/net/Inet4AddressImpl.c | 11 +-
src/solaris/native/java/net/Inet6AddressImpl.c | 13 +-
src/solaris/native/java/net/NetworkInterface.c | 13 +-
src/solaris/native/java/net/PlainDatagramSocketImpl.c | 55 +-
src/solaris/native/java/net/net_util_md.c | 6 +-
src/windows/classes/java/lang/ProcessImpl.java | 125 ++-
src/windows/classes/sun/awt/windows/WFileDialogPeer.java | 4 +-
src/windows/classes/sun/awt/windows/WPrintDialogPeer.java | 4 +-
src/windows/classes/sun/awt/windows/WWindowPeer.java | 6 +-
src/windows/native/java/net/Inet4AddressImpl.c | 14 +-
src/windows/native/java/net/Inet6AddressImpl.c | 13 +-
src/windows/native/java/net/NetworkInterface.c | 9 +-
src/windows/native/java/net/NetworkInterface.h | 1 -
src/windows/native/java/net/NetworkInterface_winXP.c | 6 +-
src/windows/native/java/net/TwoStacksPlainDatagramSocketImpl.c | 52 +-
src/windows/native/java/net/TwoStacksPlainSocketImpl.c | 9 +-
src/windows/native/java/net/net_util_md.c | 6 +-
test/Makefile | 2 +-
test/java/rmi/registry/classPathCodebase/ClassPathCodebase.java | 3 +-
test/java/rmi/registry/readTest/readTest.sh | 3 +-
test/java/rmi/server/RMIClassLoader/downloadArrayClass/DownloadArrayClass.java | 4 +
test/java/rmi/server/RMIClassLoader/downloadArrayClass/security.policy | 2 +
test/java/rmi/server/RMIClassLoader/loadProxyClasses/LoadProxyClasses.java | 3 +-
test/java/rmi/testlibrary/RMID.java | 3 +
189 files changed, 3199 insertions(+), 1257 deletions(-)
diffs (truncated from 9850 to 500 lines):
diff -r 1040c44a496d -r 2d91409e8c5d .hgtags
--- a/.hgtags Mon Mar 11 08:14:04 2013 +0000
+++ b/.hgtags Thu Apr 18 15:05:19 2013 +0100
@@ -166,3 +166,4 @@
0000000000000000000000000000000000000000 icedtea-2.1.6
31e42bc321027abccb9fb8135f13d63bea0fa762 icedtea-2.1.6
2989f7467d8345a2fc32416223fd6eafe96037f2 icedtea-2.1.7
+acaa2de9f547c4e6936e4297428599f0b0d4d64b icedtea-2.1.8
diff -r 1040c44a496d -r 2d91409e8c5d src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java
--- a/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java Mon Mar 11 08:14:04 2013 +0000
+++ b/src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java Thu Apr 18 15:05:19 2013 +0100
@@ -238,12 +238,17 @@
* sending warnings to listeners.
*/
protected void warningOccurred(int code) {
- if ((code < 0) || (code > MAX_WARNING)){
- throw new InternalError("Invalid warning index");
+ cbLock.lock();
+ try {
+ if ((code < 0) || (code > MAX_WARNING)){
+ throw new InternalError("Invalid warning index");
+ }
+ processWarningOccurred
+ ("com.sun.imageio.plugins.jpeg.JPEGImageReaderResources",
+ Integer.toString(code));
+ } finally {
+ cbLock.unlock();
}
- processWarningOccurred
- ("com.sun.imageio.plugins.jpeg.JPEGImageReaderResources",
- Integer.toString(code));
}
/**
@@ -260,7 +265,12 @@
* library warnings from being printed to stderr.
*/
protected void warningWithMessage(String msg) {
- processWarningOccurred(msg);
+ cbLock.lock();
+ try {
+ processWarningOccurred(msg);
+ } finally {
+ cbLock.unlock();
+ }
}
public void setInput(Object input,
@@ -269,18 +279,55 @@
{
setThreadLock();
try {
+ cbLock.check();
+
super.setInput(input, seekForwardOnly, ignoreMetadata);
this.ignoreMetadata = ignoreMetadata;
resetInternalState();
iis = (ImageInputStream) input; // Always works
- setSource(structPointer, iis);
+ setSource(structPointer);
} finally {
clearThreadLock();
}
}
- private native void setSource(long structPointer,
- ImageInputStream source);
+ /**
+ * This method is called from native code in order to fill
+ * native input buffer.
+ *
+ * We block any attempt to change the reading state during this
+ * method, in order to prevent a corruption of the native decoder
+ * state.
+ *
+ * @return number of bytes read from the stream.
+ */
+ private int readInputData(byte[] buf, int off, int len) throws IOException {
+ cbLock.lock();
+ try {
+ return iis.read(buf, off, len);
+ } finally {
+ cbLock.unlock();
+ }
+ }
+
+ /**
+ * This method is called from the native code in order to
+ * skip requested number of bytes in the input stream.
+ *
+ * @param n
+ * @return
+ * @throws IOException
+ */
+ private long skipInputBytes(long n) throws IOException {
+ cbLock.lock();
+ try {
+ return iis.skipBytes(n);
+ } finally {
+ cbLock.unlock();
+ }
+ }
+
+ private native void setSource(long structPointer);
private void checkTablesOnly() throws IOException {
if (debug) {
@@ -332,6 +379,8 @@
public int getNumImages(boolean allowSearch) throws IOException {
setThreadLock();
try { // locked thread
+ cbLock.check();
+
return getNumImagesOnThread(allowSearch);
} finally {
clearThreadLock();
@@ -531,8 +580,13 @@
if (debug) {
System.out.println("pushing back " + num + " bytes");
}
- iis.seek(iis.getStreamPosition()-num);
- // The buffer is clear after this, so no need to set haveSeeked.
+ cbLock.lock();
+ try {
+ iis.seek(iis.getStreamPosition()-num);
+ // The buffer is clear after this, so no need to set haveSeeked.
+ } finally {
+ cbLock.unlock();
+ }
}
/**
@@ -639,7 +693,12 @@
* Ignore this profile.
*/
iccCS = null;
- warningOccurred(WARNING_IGNORE_INVALID_ICC);
+ cbLock.lock();
+ try {
+ warningOccurred(WARNING_IGNORE_INVALID_ICC);
+ } finally {
+ cbLock.unlock();
+ }
}
}
}
@@ -648,6 +707,7 @@
setThreadLock();
try {
if (currentImage != imageIndex) {
+ cbLock.check();
readHeader(imageIndex, true);
}
return width;
@@ -660,6 +720,7 @@
setThreadLock();
try {
if (currentImage != imageIndex) {
+ cbLock.check();
readHeader(imageIndex, true);
}
return height;
@@ -688,6 +749,8 @@
setThreadLock();
try {
if (currentImage != imageIndex) {
+ cbLock.check();
+
readHeader(imageIndex, true);
}
@@ -711,6 +774,7 @@
private Iterator getImageTypesOnThread(int imageIndex)
throws IOException {
if (currentImage != imageIndex) {
+ cbLock.check();
readHeader(imageIndex, true);
}
@@ -926,6 +990,7 @@
setThreadLock();
try {
if (!tablesOnlyChecked) {
+ cbLock.check();
checkTablesOnly();
}
return streamMetadata;
@@ -946,6 +1011,8 @@
return imageMetadata;
}
+ cbLock.check();
+
gotoImage(imageIndex);
imageMetadata = new JPEGMetadata(false, false, iis, this);
@@ -962,6 +1029,7 @@
throws IOException {
setThreadLock();
try {
+ cbLock.check();
try {
readInternal(imageIndex, param, false);
} catch (RuntimeException e) {
@@ -1191,58 +1259,63 @@
}
target.setRect(destROI.x, destROI.y + y, raster);
- processImageUpdate(image,
- destROI.x, destROI.y+y,
- raster.getWidth(), 1,
- 1, 1,
- destinationBands);
- if ((y > 0) && (y%progInterval == 0)) {
- int height = target.getHeight()-1;
- float percentOfPass = ((float)y)/height;
- if (progressive) {
- if (knownPassCount != UNKNOWN) {
- processImageProgress((pass + percentOfPass)*100.0F
- / knownPassCount);
- } else if (maxProgressivePass != Integer.MAX_VALUE) {
- // Use the range of allowed progressive passes
- processImageProgress((pass + percentOfPass)*100.0F
- / (maxProgressivePass - minProgressivePass + 1));
+ cbLock.lock();
+ try {
+ processImageUpdate(image,
+ destROI.x, destROI.y+y,
+ raster.getWidth(), 1,
+ 1, 1,
+ destinationBands);
+ if ((y > 0) && (y%progInterval == 0)) {
+ int height = target.getHeight()-1;
+ float percentOfPass = ((float)y)/height;
+ if (progressive) {
+ if (knownPassCount != UNKNOWN) {
+ processImageProgress((pass + percentOfPass)*100.0F
+ / knownPassCount);
+ } else if (maxProgressivePass != Integer.MAX_VALUE) {
+ // Use the range of allowed progressive passes
+ processImageProgress((pass + percentOfPass)*100.0F
+ / (maxProgressivePass - minProgressivePass + 1));
+ } else {
+ // Assume there are a minimum of MIN_ESTIMATED_PASSES
+ // and that there is always one more pass
+ // Compute the percentage as the percentage at the end
+ // of the previous pass, plus the percentage of this
+ // pass scaled to be the percentage of the total remaining,
+ // assuming a minimum of MIN_ESTIMATED_PASSES passes and
+ // that there is always one more pass. This is monotonic
+ // and asymptotic to 1.0, which is what we need.
+ int remainingPasses = // including this one
+ Math.max(2, MIN_ESTIMATED_PASSES-pass);
+ int totalPasses = pass + remainingPasses-1;
+ progInterval = Math.max(height/20*totalPasses,
+ totalPasses);
+ if (y%progInterval == 0) {
+ percentToDate = previousPassPercentage +
+ (1.0F - previousPassPercentage)
+ * (percentOfPass)/remainingPasses;
+ if (debug) {
+ System.out.print("pass= " + pass);
+ System.out.print(", y= " + y);
+ System.out.print(", progInt= " + progInterval);
+ System.out.print(", % of pass: " + percentOfPass);
+ System.out.print(", rem. passes: "
+ + remainingPasses);
+ System.out.print(", prev%: "
+ + previousPassPercentage);
+ System.out.print(", %ToDate: " + percentToDate);
+ System.out.print(" ");
+ }
+ processImageProgress(percentToDate*100.0F);
+ }
+ }
} else {
- // Assume there are a minimum of MIN_ESTIMATED_PASSES
- // and that there is always one more pass
- // Compute the percentage as the percentage at the end
- // of the previous pass, plus the percentage of this
- // pass scaled to be the percentage of the total remaining,
- // assuming a minimum of MIN_ESTIMATED_PASSES passes and
- // that there is always one more pass. This is monotonic
- // and asymptotic to 1.0, which is what we need.
- int remainingPasses = // including this one
- Math.max(2, MIN_ESTIMATED_PASSES-pass);
- int totalPasses = pass + remainingPasses-1;
- progInterval = Math.max(height/20*totalPasses,
- totalPasses);
- if (y%progInterval == 0) {
- percentToDate = previousPassPercentage +
- (1.0F - previousPassPercentage)
- * (percentOfPass)/remainingPasses;
- if (debug) {
- System.out.print("pass= " + pass);
- System.out.print(", y= " + y);
- System.out.print(", progInt= " + progInterval);
- System.out.print(", % of pass: " + percentOfPass);
- System.out.print(", rem. passes: "
- + remainingPasses);
- System.out.print(", prev%: "
- + previousPassPercentage);
- System.out.print(", %ToDate: " + percentToDate);
- System.out.print(" ");
- }
- processImageProgress(percentToDate*100.0F);
- }
+ processImageProgress(percentOfPass * 100.0F);
}
- } else {
- processImageProgress(percentOfPass * 100.0F);
}
+ } finally {
+ cbLock.unlock();
}
}
@@ -1255,33 +1328,58 @@
}
private void passStarted (int pass) {
- this.pass = pass;
- previousPassPercentage = percentToDate;
- processPassStarted(image,
- pass,
- minProgressivePass,
- maxProgressivePass,
- 0, 0,
- 1,1,
- destinationBands);
+ cbLock.lock();
+ try {
+ this.pass = pass;
+ previousPassPercentage = percentToDate;
+ processPassStarted(image,
+ pass,
+ minProgressivePass,
+ maxProgressivePass,
+ 0, 0,
+ 1,1,
+ destinationBands);
+ } finally {
+ cbLock.unlock();
+ }
}
private void passComplete () {
- processPassComplete(image);
+ cbLock.lock();
+ try {
+ processPassComplete(image);
+ } finally {
+ cbLock.unlock();
+ }
}
void thumbnailStarted(int thumbnailIndex) {
- processThumbnailStarted(currentImage, thumbnailIndex);
+ cbLock.lock();
+ try {
+ processThumbnailStarted(currentImage, thumbnailIndex);
+ } finally {
+ cbLock.unlock();
+ }
}
// Provide access to protected superclass method
void thumbnailProgress(float percentageDone) {
- processThumbnailProgress(percentageDone);
+ cbLock.lock();
+ try {
+ processThumbnailProgress(percentageDone);
+ } finally {
+ cbLock.unlock();
+ }
}
// Provide access to protected superclass method
void thumbnailComplete() {
- processThumbnailComplete();
+ cbLock.lock();
+ try {
+ processThumbnailComplete();
+ } finally {
+ cbLock.unlock();
+ }
}
/**
@@ -1305,6 +1403,11 @@
public void abort() {
setThreadLock();
try {
+ /**
+ * NB: we do not check the call back lock here,
+ * we allow to abort the reader any time.
+ */
+
super.abort();
abortRead(structPointer);
} finally {
@@ -1327,6 +1430,7 @@
setThreadLock();
Raster retval = null;
try {
+ cbLock.check();
/*
* This could be further optimized by not resetting the dest.
* offset and creating a translated raster in readInternal()
@@ -1366,6 +1470,8 @@
public int getNumThumbnails(int imageIndex) throws IOException {
setThreadLock();
try {
+ cbLock.check();
+
getImageMetadata(imageIndex); // checks iis state for us
// Now check the jfif segments
JFIFMarkerSegment jfif =
@@ -1386,6 +1492,8 @@
throws IOException {
setThreadLock();
try {
+ cbLock.check();
+
if ((thumbnailIndex < 0)
|| (thumbnailIndex >= getNumThumbnails(imageIndex))) {
throw new IndexOutOfBoundsException("No such thumbnail");
@@ -1404,6 +1512,8 @@
throws IOException {
setThreadLock();
try {
+ cbLock.check();
+
if ((thumbnailIndex < 0)
|| (thumbnailIndex >= getNumThumbnails(imageIndex))) {
throw new IndexOutOfBoundsException("No such thumbnail");
@@ -1423,6 +1533,8 @@
throws IOException {
setThreadLock();
try {
+ cbLock.check();
+
if ((thumbnailIndex < 0)
|| (thumbnailIndex >= getNumThumbnails(imageIndex))) {
throw new IndexOutOfBoundsException("No such thumbnail");
@@ -1463,6 +1575,7 @@
public void reset() {
setThreadLock();
try {
+ cbLock.check();
super.reset();
} finally {
clearThreadLock();
@@ -1474,6 +1587,8 @@
public void dispose() {
setThreadLock();
try {
+ cbLock.check();
+
if (structPointer != 0) {
disposerRecord.dispose();
structPointer = 0;
@@ -1535,6 +1650,36 @@
theThread = null;
}
}
+
+ private CallBackLock cbLock = new CallBackLock();
+
+ private static class CallBackLock {
+
+ private State lockState;
+
+ CallBackLock() {
+ lockState = State.Unlocked;
+ }
+
+ void check() {
+ if (lockState != State.Unlocked) {
+ throw new IllegalStateException("Access to the reader is not allowed");
+ }
+ }
+
+ private void lock() {
+ lockState = State.Locked;
+ }
+
+ private void unlock() {
+ lockState = State.Unlocked;
+ }
+
+ private static enum State {
+ Unlocked,
+ Locked
+ }
+ }
}
/**
diff -r 1040c44a496d -r 2d91409e8c5d src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java
More information about the distro-pkg-dev
mailing list