/hg/release/icedtea6-1.13: 9 new changesets
andrew at icedtea.classpath.org
andrew at icedtea.classpath.org
Wed Jan 22 03:42:35 PST 2014
changeset 5a408c1472b0 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=5a408c1472b0
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Thu Dec 26 19:03:54 2013 +0000
Fix usage of JEP and add key.
2013-12-26 Andrew John Hughes <gnu.andrew at redhat.com>
* NEWS: Fix usage of JEP and add key.
changeset 120fcb6621f2 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=120fcb6621f2
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Fri Jan 17 22:21:40 2014 +0000
Adapt to upstream b30 changes.
2014-01-17 Andrew John Hughes <gnu.andrew at redhat.com>
* patches/openjdk/6763340-corba_memory_leak.patch,
* patches/openjdk/6893617-cnctx_always_uses_default_orb.patch,
* patches/openjdk/6980681-corba_deadlock.patch,
* patches/openjdk/7162902-corba_fixes.patch,
* patches/openjdk/8009530-icu_kern_table_support_broken.patch:
Remove upstreamed fixes.
* Makefile.am:
(ICEDTEA_PATCHES): Drop above.
* patches/hotspot/hs23/update-bootclasspath.patch,
* patches/openjdk/p11cipher-6812738-native_cleanup.patch:
Regenerated against upstream.
changeset 4254fe8a95c5 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=4254fe8a95c5
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Fri Jan 17 22:30:56 2014 +0000
Bump to next release, b30.
2014-01-17 Andrew John Hughes <gnu.andrew at redhat.com>
* Makefile.am:
(OPENJDK_VERSION): Bump to next release, b30.
changeset e4993084e698 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=e4993084e698
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Fri Jan 17 23:04:10 2014 +0000
Update NEWS with upstream fixes.
2014-01-17 Andrew John Hughes <gnu.andrew at redhat.com>
* NEWS: Add fixes added to upstream.
changeset d2919052bc27 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=d2919052bc27
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Wed Jan 22 09:53:21 2014 +0000
Update to b30 tarball.
2014-01-22 Andrew John Hughes <gnu.andrew at redhat.com>
* Makefile.am:
(OPENJDK_DATE): Set to date of b30.
(OPENJDK_SHA256SUM): Add b30 SHA256 checksum.
(OPENJDK_SRC_ZIP): Switch to smaller xz tarball.
changeset a57af491ae85 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=a57af491ae85
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Wed Jan 22 10:21:56 2014 +0000
Add fixes from end of b30 lifecycle.
2014-01-22 Andrew John Hughes <gnu.andrew at redhat.com>
* NEWS: Add fixes from end of b30 lifecycle.
changeset 3ca6adc6e412 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=3ca6adc6e412
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Tue Jan 21 19:54:26 2014 +0000
Fix path in nss-not-enabled-config.patch
2014-01-10 Omair Majid <omajid at redhat.com>
* patches/nss-not-enabled-config.patch: Fix path
to java.security.
changeset 99eae205c056 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=99eae205c056
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Mon Jan 20 18:42:31 2014 +0000
Credit Aurelien Jarno for D729448 patch.
2014-01-20 Andrew John Hughes <gnu.andrew at redhat.com>
* AUTHORS:
Credit Aurelien Jarno for D729448 patch.
changeset 1368d29bbdf0 in /hg/release/icedtea6-1.13
details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=1368d29bbdf0
author: Andrew John Hughes <gnu.andrew at redhat.com>
date: Wed Jan 22 11:42:18 2014 +0000
Update NEWS with NSS patch fix.
2014-01-22 Andrew John Hughes <gnu.andrew at redhat.com>
* NEWS: Update with NSS patch fix.
diffstat:
AUTHORS | 1 +
ChangeLog | 52 +
Makefile.am | 13 +-
NEWS | 45 +-
patches/hotspot/hs23/update-bootclasspath.patch | 12 +-
patches/nss-not-enabled-config.patch | 2 +-
patches/openjdk/6763340-corba_memory_leak.patch | 409 -
patches/openjdk/6893617-cnctx_always_uses_default_orb.patch | 234 -
patches/openjdk/6980681-corba_deadlock.patch | 69 -
patches/openjdk/7162902-corba_fixes.patch | 2258 -----------
patches/openjdk/8009530-icu_kern_table_support_broken.patch | 332 -
patches/openjdk/p11cipher-6812738-native_cleanup.patch | 67 +-
12 files changed, 137 insertions(+), 3357 deletions(-)
diffs (truncated from 3711 to 500 lines):
diff -r c73a000ee810 -r 1368d29bbdf0 AUTHORS
--- a/AUTHORS Thu Jan 16 18:06:30 2014 +0000
+++ b/AUTHORS Wed Jan 22 11:42:18 2014 +0000
@@ -19,6 +19,7 @@
Andrew John Hughes <gnu_andrew at member.fsf.org, gnu.andrew at redhat.com>
Tomas Hurka <tomas.hurka at sun.com>
Ioana Ivan <iivan at redhat.com>
+Aurelien Jarno <aurelien at aurel32.net>
C. K. Jester-Young (cky944 at gmail.com)
Alex Kasko (alex.kasko.lists at gmail.com)
Matthias Klose <doko at ubuntu.com>
diff -r c73a000ee810 -r 1368d29bbdf0 ChangeLog
--- a/ChangeLog Thu Jan 16 18:06:30 2014 +0000
+++ b/ChangeLog Wed Jan 22 11:42:18 2014 +0000
@@ -1,3 +1,55 @@
+2014-01-22 Andrew John Hughes <gnu.andrew at redhat.com>
+
+ * NEWS: Update with NSS patch fix.
+
+2014-01-20 Andrew John Hughes <gnu.andrew at redhat.com>
+
+ * AUTHORS:
+ Credit Aurelien Jarno for D729448 patch.
+
+2014-01-10 Omair Majid <omajid at redhat.com>
+
+ * patches/nss-not-enabled-config.patch: Fix path
+ to java.security.
+
+2014-01-22 Andrew John Hughes <gnu.andrew at redhat.com>
+
+ * NEWS: Add fixes from end of b30 lifecycle.
+
+2014-01-22 Andrew John Hughes <gnu.andrew at redhat.com>
+
+ * Makefile.am:
+ (OPENJDK_DATE): Set to date of b30.
+ (OPENJDK_SHA256SUM): Add b30 SHA256 checksum.
+ (OPENJDK_SRC_ZIP): Switch to smaller xz tarball.
+
+2014-01-17 Andrew John Hughes <gnu.andrew at redhat.com>
+
+ * NEWS: Add fixes added to upstream.
+
+2014-01-17 Andrew John Hughes <gnu.andrew at redhat.com>
+
+ * Makefile.am:
+ (OPENJDK_VERSION): Bump to next release, b30.
+
+2014-01-17 Andrew John Hughes <gnu.andrew at redhat.com>
+
+ * patches/openjdk/6763340-corba_memory_leak.patch,
+ * patches/openjdk/6893617-cnctx_always_uses_default_orb.patch,
+ * patches/openjdk/6980681-corba_deadlock.patch,
+ * patches/openjdk/7162902-corba_fixes.patch,
+ * patches/openjdk/8009530-icu_kern_table_support_broken.patch:
+ Remove upstreamed fixes.
+ * Makefile.am:
+ (ICEDTEA_PATCHES): Drop above.
+ * patches/hotspot/hs23/update-bootclasspath.patch,
+ * patches/openjdk/p11cipher-6812738-native_cleanup.patch:
+ Regenerated against upstream.
+
+2013-12-26 Andrew John Hughes <gnu.andrew at redhat.com>
+
+ * NEWS: Fix usage of JEP and add key.
+
2014-01-16 Andrew John Hughes <gnu.andrew at redhat.com>
* NEWS: Add 1.13.1 section.
diff -r c73a000ee810 -r 1368d29bbdf0 Makefile.am
--- a/Makefile.am Thu Jan 16 18:06:30 2014 +0000
+++ b/Makefile.am Wed Jan 22 11:42:18 2014 +0000
@@ -1,8 +1,8 @@
# Dependencies
-OPENJDK_DATE = 05_dec_2013
-OPENJDK_SHA256SUM = a9b1b0a48fb52aef82bbe5db33b1dae1672fc8a5f456451f2e300158fc7a7d6b
-OPENJDK_VERSION = b29
+OPENJDK_DATE = 21_jan_2014
+OPENJDK_SHA256SUM = ebd9fdf39c8590cd620cb78c481ca233f5919f2819237b5d2b440666f1dd3475
+OPENJDK_VERSION = b30
OPENJDK_URL = https://java.net/downloads/openjdk6/
CACAO_VERSION = 68fe50ac34ec
@@ -175,7 +175,7 @@
if USE_HG
OPENJDK_SRC_ZIP =
else
- OPENJDK_SRC_ZIP = openjdk-6-src-$(OPENJDK_VERSION)-$(OPENJDK_DATE).tar.gz
+ OPENJDK_SRC_ZIP = openjdk-6-src-$(OPENJDK_VERSION)-$(OPENJDK_DATE).tar.xz
endif
# FIXME (HotSpot): HotSpot changeset logic goes here
@@ -498,9 +498,6 @@
patches/openjdk/p11cipher-6604496-support_ckm_aes_ctr.patch \
patches/openjdk/p11cipher-6414899-p11digest_should_support_cloning.patch \
patches/merge_fix.patch \
- patches/openjdk/6763340-corba_memory_leak.patch \
- patches/openjdk/6980681-corba_deadlock.patch \
- patches/openjdk/7162902-corba_fixes.patch \
patches/traceable.patch \
patches/pr1319-support_giflib_5.patch \
patches/openjdk/6718364-inference_failure.patch \
@@ -510,7 +507,6 @@
patches/openjdk/7003595-incompatibleclasschangeerror.patch \
patches/openjdk/6500343-bad_code_from_conditionals.patch \
patches/jaxws-tempfiles-ioutils-6.patch \
- patches/openjdk/8009530-icu_kern_table_support_broken.patch \
patches/jtreg-LayoutGetCharacterCount.patch \
patches/jtreg-LayoutLimits.patch \
patches/jtreg-ComponentOrientationTests.patch \
@@ -571,7 +567,6 @@
patches/hotspot/original/jvmtiEnv.patch \
patches/sparc-trapsfix.patch \
patches/print_lsb_release.patch \
- patches/openjdk/6893617-cnctx_always_uses_default_orb.patch \
patches/alternative_krb5_cache.patch \
patches/alternative_krb5_cache_fixup.patch \
patches/openjdk/8014469-tzdata2013c.patch \
diff -r c73a000ee810 -r 1368d29bbdf0 NEWS
--- a/NEWS Thu Jan 16 18:06:30 2014 +0000
+++ b/NEWS Wed Jan 22 11:42:18 2014 +0000
@@ -8,11 +8,53 @@
CAX - http://server.complang.tuwien.ac.at/cgi-bin/bugzilla/show_bug.cgi?id=X
LPX - https://bugs.launchpad.net/bugs/X
OJX - http://java.net/jira/browse/OPENJDK6-X
+JEPX - http://openjdk.java.net/jeps/X
CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY
New in release 1.13.1 (2014-XX-XX):
+* Security fixes
+ - S6727821: Enhance JAAS Configuration
+ - S7068126, CVE-2014-0373: Enhance SNMP statuses
+ - S8010935: Better XML handling
+ - S8011786, CVE-2014-0368: Better applet networking
+ - S8021257, CVE-2013-5896: com.sun.corba.se.** should be on restricted package list
+ - S8021271: Better buffering in ObjC code
+ - S8022904: Enhance JDBC Parsers
+ - S8022927: Input validation for byte/endian conversions
+ - S8022935: Enhance Apache resolver classes
+ - S8022945: Enhance JNDI implementation classes
+ - S8023057: Enhance start up image display
+ - S8023069, CVE-2014-0411: Enhance TLS connections
+ - S8023245, CVE-2014-0423: Enhance Beans decoding
+ - S8023301: Enhance generic classes
+ - S8023672: Enhance jar file validation
+ - S8024306, CVE-2014-0416: Enhance Subject consistency
+ - S8024530: Enhance font process resilience
+ - S8024867: Enhance logging start up
+ - S8025014: Enhance Security Policy
+ - S8025018, CVE-2014-0376: Enhance JAX-P set up
+ - S8025026, CVE-2013-5878: Enhance canonicalization
+ - S8025034, CVE-2013-5907: Improve layout lookups
+ - S8025448: Enhance listening events
+ - S8025758, CVE-2014-0422: Enhance Naming management
+ - S8025767, CVE-2014-0428: Enhance IIOP Streams
+ - S8026172: Enhance UI Management
+ - S8026176: Enhance document printing
+ - S8026193, CVE-2013-5884: Enhance CORBA stub factories
+ - S8026204: Enhance auth login contexts
+ - S8026417, CVE-2013-5910: Enhance XML canonicalization
+ - S8027201, CVE-2014-0376: Enhance JAX-P set up
+* Import of OpenJDK6 b30
+ - OJ24: Fix change summary generator
+ - OJ25: Remove @Override annotation added on interfaces by 2014/01/14 security fixes
+ - S6995424: Eliminate dependency to a deprecated API com.sun.security.auth.PolicyFile
+ - S8026826: JDK 7 fix for 8010935 broke the build
+ - S8027837: JDK-8021257 causes CORBA build failure on emdedded platforms
+* Bug fixes
+ - Fix path in nss-not-enabled-config.patch.
+
New in release 1.13.0 (2013-12-26):
* New features
@@ -891,7 +933,7 @@
- PR1627: JDK check should depend on bootstrapping check
- Fix Shark hs23 build failures (missing EliminateNestedLocks and extra argument to compile_method)
* JamVM
- - JEP 171: Implement fence methods in sun.misc.Unsafe
+ - JEP171: Implement fence methods in sun.misc.Unsafe
- sun.misc.Unsafe: additional methods get/putAddress
- FreeClassData: adjust method count for Miranda methods
- Fix invokesuper check in invokespecial opcode
@@ -998,6 +1040,7 @@
- S6867671: javap whitespace formatting issues
- S6868539: javap should use current names for constant pool tags
- S6888215: memory leak in jpeg plugin
+ - S6893617: JDK 6 CNCtx always uses the default ORB
- S6902264: fix indentation of tableswitch and lookupswitch
- S6925851: Localize JRE into pt_BR
- S6954275: XML signatures with reference data larger 16KB and cacheRef on fails to validate
diff -r c73a000ee810 -r 1368d29bbdf0 patches/hotspot/hs23/update-bootclasspath.patch
--- a/patches/hotspot/hs23/update-bootclasspath.patch Thu Jan 16 18:06:30 2014 +0000
+++ b/patches/hotspot/hs23/update-bootclasspath.patch Wed Jan 22 11:42:18 2014 +0000
@@ -1,10 +1,10 @@
diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/os.cpp openjdk/hotspot/src/share/vm/runtime/os.cpp
---- openjdk.orig/hotspot/src/share/vm/runtime/os.cpp 2013-06-04 18:47:35.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/runtime/os.cpp 2013-08-15 11:53:40.989493660 +0100
-@@ -1105,6 +1105,9 @@
- #ifdef __APPLE__
- "%/lib/JObjC.jar:"
- #endif
+--- openjdk.orig/hotspot/src/share/vm/runtime/os.cpp 2014-01-17 20:29:13.006436284 +0000
++++ openjdk/hotspot/src/share/vm/runtime/os.cpp 2014-01-17 20:49:55.908779782 +0000
+@@ -1102,6 +1102,9 @@
+ "%/lib/jce.jar:"
+ "%/lib/charsets.jar:"
+ "%/lib/jfr.jar:"
+ "%/lib/netx.jar:"
+ "%/lib/plugin.jar:"
+ "%/lib/rhino.jar:"
diff -r c73a000ee810 -r 1368d29bbdf0 patches/nss-not-enabled-config.patch
--- a/patches/nss-not-enabled-config.patch Thu Jan 16 18:06:30 2014 +0000
+++ b/patches/nss-not-enabled-config.patch Wed Jan 22 11:42:18 2014 +0000
@@ -1,5 +1,5 @@
--- lib/security/java.security.old 2009-08-25 11:43:59.000000000 +0100
-+++ lib/security/java.security 2009-08-27 14:23:54.000000000 +0100
++++ lib/security/java.security-linux 2009-08-27 14:23:54.000000000 +0100
@@ -51,6 +51,10 @@
security.provider.6=com.sun.security.sasl.Provider
security.provider.7=org.jcp.xml.dsig.internal.dom.XMLDSigRI
diff -r c73a000ee810 -r 1368d29bbdf0 patches/openjdk/6763340-corba_memory_leak.patch
--- a/patches/openjdk/6763340-corba_memory_leak.patch Thu Jan 16 18:06:30 2014 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,409 +0,0 @@
-# HG changeset patch
-# User robm
-# Date 1289846868 28800
-# Node ID cff5a173ec1e89013359e804a3e31736ef6fb462
-# Parent f642c9ec81a07b88a5566ea1dc4f1a9068c7d251
-6763340: memory leak in com.sun.corba.se.* classes
-6873605: Missing finishedDispatch() call in ORBImpl causes test failures after 5u20 b04
-Summary: Reviewed by Ken Cavanaugh
-Reviewed-by: coffeys
-
-diff --git a/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java b/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java
---- openjdk/corba/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java
-+++ openjdk/corba/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java
-@@ -74,6 +74,7 @@
- import com.sun.corba.se.spi.ior.iiop.GIOPVersion;
- import com.sun.corba.se.spi.orb.ORB;
- import com.sun.corba.se.spi.protocol.CorbaMessageMediator;
-+import com.sun.corba.se.spi.protocol.RetryType;
- import com.sun.corba.se.spi.transport.CorbaContactInfo;
- import com.sun.corba.se.spi.transport.CorbaContactInfoList;
- import com.sun.corba.se.spi.transport.CorbaContactInfoListIterator;
-@@ -110,7 +111,7 @@
-
- // The current retry request status. True if this request is being
- // retried and this info object is to be reused, or false otherwise.
-- private boolean retryRequest;
-+ private RetryType retryRequest;
-
- // The number of times this info object has been (re)used. This is
- // incremented every time a request is retried, and decremented every
-@@ -163,7 +164,8 @@
-
- // Please keep these in the same order that they're declared above.
-
-- retryRequest = false;
-+ // 6763340
-+ retryRequest = RetryType.NONE;
-
- // Do not reset entryCount because we need to know when to pop this
- // from the stack.
-@@ -824,14 +826,15 @@
- /**
- * Set or reset the retry request flag.
- */
-- void setRetryRequest( boolean retryRequest ) {
-+ void setRetryRequest( RetryType retryRequest ) {
- this.retryRequest = retryRequest;
- }
-
- /**
- * Retrieve the current retry request status.
- */
-- boolean getRetryRequest() {
-+ RetryType getRetryRequest() {
-+ // 6763340
- return this.retryRequest;
- }
-
-diff --git a/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java b/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java
---- openjdk/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java
-+++ openjdk/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PIHandlerImpl.java
-@@ -70,6 +70,7 @@
- import com.sun.corba.se.spi.protocol.CorbaMessageMediator;
- import com.sun.corba.se.spi.protocol.ForwardException;
- import com.sun.corba.se.spi.protocol.PIHandler;
-+import com.sun.corba.se.spi.protocol.RetryType;
- import com.sun.corba.se.spi.logging.CORBALogDomains;
-
- import com.sun.corba.se.impl.logging.InterceptorsSystemException;
-@@ -372,9 +373,24 @@
- }
- }
-
-- public Exception invokeClientPIEndingPoint(
-- int replyStatus, Exception exception )
-- {
-+ // Needed when an error forces a retry AFTER initiateClientPIRequest
-+ // but BEFORE invokeClientPIStartingPoint.
-+ public Exception makeCompletedClientRequest( int replyStatus,
-+ Exception exception ) {
-+
-+ // 6763340
-+ return handleClientPIEndingPoint( replyStatus, exception, false ) ;
-+ }
-+
-+ public Exception invokeClientPIEndingPoint( int replyStatus,
-+ Exception exception ) {
-+
-+ // 6763340
-+ return handleClientPIEndingPoint( replyStatus, exception, true ) ;
-+ }
-+
-+ public Exception handleClientPIEndingPoint(
-+ int replyStatus, Exception exception, boolean invokeEndingPoint ) {
- if( !hasClientInterceptors ) return exception;
- if( !isClientPIEnabledForThisThread() ) return exception;
-
-@@ -388,24 +404,31 @@
- ClientRequestInfoImpl info = peekClientRequestInfoImplStack();
- info.setReplyStatus( piReplyStatus );
- info.setException( exception );
-- interceptorInvoker.invokeClientInterceptorEndingPoint( info );
-- piReplyStatus = info.getReplyStatus();
-+
-+ if (invokeEndingPoint) {
-+ // 6763340
-+ interceptorInvoker.invokeClientInterceptorEndingPoint( info );
-+ piReplyStatus = info.getReplyStatus();
-+ }
-
- // Check reply status:
- if( (piReplyStatus == LOCATION_FORWARD.value) ||
-- (piReplyStatus == TRANSPORT_RETRY.value) )
-- {
-+ (piReplyStatus == TRANSPORT_RETRY.value) ) {
- // If this is a forward or a retry, reset and reuse
- // info object:
- info.reset();
-- info.setRetryRequest( true );
-+
-+ // fix for 6763340:
-+ if (invokeEndingPoint) {
-+ info.setRetryRequest( RetryType.AFTER_RESPONSE ) ;
-+ } else {
-+ info.setRetryRequest( RetryType.BEFORE_RESPONSE ) ;
-+ }
-
- // ... and return a RemarshalException so the orb internals know
- exception = new RemarshalException();
-- }
-- else if( (piReplyStatus == SYSTEM_EXCEPTION.value) ||
-- (piReplyStatus == USER_EXCEPTION.value) )
-- {
-+ } else if( (piReplyStatus == SYSTEM_EXCEPTION.value) ||
-+ (piReplyStatus == USER_EXCEPTION.value) ) {
- exception = info.getException();
- }
-
-@@ -421,18 +444,21 @@
- RequestInfoStack infoStack =
- (RequestInfoStack)threadLocalClientRequestInfoStack.get();
- ClientRequestInfoImpl info = null;
-- if( !infoStack.empty() ) info =
-- (ClientRequestInfoImpl)infoStack.peek();
-
-- if( !diiRequest && (info != null) && info.isDIIInitiate() ) {
-+ if (!infoStack.empty() ) {
-+ info = (ClientRequestInfoImpl)infoStack.peek();
-+ }
-+
-+ if (!diiRequest && (info != null) && info.isDIIInitiate() ) {
- // In RequestImpl.doInvocation we already called
- // initiateClientPIRequest( true ), so ignore this initiate.
- info.setDIIInitiate( false );
-- }
-- else {
-+ } else {
- // If there is no info object or if we are not retrying a request,
- // push a new ClientRequestInfoImpl on the stack:
-- if( (info == null) || !info.getRetryRequest() ) {
-+
-+ // 6763340: don't push unless this is not a retry
-+ if( (info == null) || !info.getRetryRequest().isRetry() ) {
- info = new ClientRequestInfoImpl( orb );
- infoStack.push( info );
- printPush();
-@@ -442,9 +468,15 @@
- // Reset the retry request flag so that recursive calls will
- // push a new info object, and bump up entry count so we know
- // when to pop this info object:
-- info.setRetryRequest( false );
-+ info.setRetryRequest( RetryType.NONE );
- info.incrementEntryCount();
-
-+ // KMC 6763340: I don't know why this wasn't set earlier,
-+ // but we do not want a retry to pick up the previous
-+ // reply status, so clear it here. Most likely a new
-+ // info was pushed before, so that this was not a problem.
-+ info.setReplyStatus( RequestInfoImpl.UNINITIALIZED ) ;
-+
- // If this is a DII request, make sure we ignore the next initiate.
- if( diiRequest ) {
- info.setDIIInitiate( true );
-@@ -457,25 +489,34 @@
- if( !isClientPIEnabledForThisThread() ) return;
-
- ClientRequestInfoImpl info = peekClientRequestInfoImplStack();
-+ RetryType rt = info.getRetryRequest() ;
-
-- // If the replyStatus has not yet been set, this is an indication
-- // that the ORB threw an exception before we had a chance to
-- // invoke the client interceptor ending points.
-- //
-- // _REVISIT_ We cannot handle any exceptions or ForwardRequests
-- // flagged by the ending points here because there is no way
-- // to gracefully handle this in any of the calling code.
-- // This is a rare corner case, so we will ignore this for now.
-- short replyStatus = info.getReplyStatus();
-- if( replyStatus == info.UNINITIALIZED ) {
-- invokeClientPIEndingPoint( ReplyMessage.SYSTEM_EXCEPTION,
-- wrapper.unknownRequestInvoke(
-- CompletionStatus.COMPLETED_MAYBE ) ) ;
-+ // fix for 6763340
-+ if (!rt.equals( RetryType.BEFORE_RESPONSE )) {
-+
-+ // If the replyStatus has not yet been set, this is an indication
-+ // that the ORB threw an exception before we had a chance to
-+ // invoke the client interceptor ending points.
-+ //
-+ // _REVISIT_ We cannot handle any exceptions or ForwardRequests
-+ // flagged by the ending points here because there is no way
-+ // to gracefully handle this in any of the calling code.
-+ // This is a rare corner case, so we will ignore this for now.
-+ short replyStatus = info.getReplyStatus();
-+ if (replyStatus == info.UNINITIALIZED ) {
-+ invokeClientPIEndingPoint( ReplyMessage.SYSTEM_EXCEPTION,
-+ wrapper.unknownRequestInvoke(
-+ CompletionStatus.COMPLETED_MAYBE ) ) ;
-+ }
- }
-
- // Decrement entry count, and if it is zero, pop it from the stack.
- info.decrementEntryCount();
-- if( info.getEntryCount() == 0 ) {
-+
-+ // fix for 6763340, and probably other cases (non-recursive retry)
-+ if (info.getEntryCount() == 0 && !info.getRetryRequest().isRetry()) {
-+ // RequestInfoStack<ClientRequestInfoImpl> infoStack =
-+ // threadLocalClientRequestInfoStack.get();
- RequestInfoStack infoStack =
- (RequestInfoStack)threadLocalClientRequestInfoStack.get();
- infoStack.pop();
-diff --git a/src/share/classes/com/sun/corba/se/impl/interceptors/PINoOpHandlerImpl.java b/src/share/classes/com/sun/corba/se/impl/interceptors/PINoOpHandlerImpl.java
---- openjdk/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PINoOpHandlerImpl.java
-+++ openjdk/corba/src/share/classes/com/sun/corba/se/impl/interceptors/PINoOpHandlerImpl.java
-@@ -107,6 +107,11 @@
- return null;
- }
-
-+ public Exception makeCompletedClientRequest(
-+ int replyStatus, Exception exception ) {
-+ return null;
-+ }
-+
- public void initiateClientPIRequest( boolean diiRequest ) {
- }
-
-diff --git a/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java b/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java
---- openjdk/corba/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java
-+++ openjdk/corba/src/share/classes/com/sun/corba/se/impl/interceptors/RequestInfoImpl.java
-@@ -187,7 +187,8 @@
- startingPointCall = 0;
- intermediatePointCall = 0;
- endingPointCall = 0;
-- replyStatus = UNINITIALIZED;
-+ // 6763340
-+ setReplyStatus( UNINITIALIZED ) ;
- currentExecutionPoint = EXECUTION_POINT_STARTING;
- alreadyExecuted = false;
- connection = null;
-diff --git a/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java b/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java
---- openjdk/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java
-+++ openjdk/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java
-@@ -1672,6 +1672,7 @@
- {
- StackImpl invocationInfoStack =
- (StackImpl)clientInvocationInfoStack.get();
-+ int entryCount = -1;
- ClientInvocationInfo clientInvocationInfo = null;
- if (!invocationInfoStack.empty()) {
- clientInvocationInfo =
-@@ -1680,8 +1681,12 @@
More information about the distro-pkg-dev
mailing list