Mercurial > hg > icedtea7-forest-aarch64 > corba
changeset 1166:257be482b6c3
Merge
author | asaha |
---|---|
date | Thu, 28 Aug 2014 14:39:06 -0700 |
parents | 34147ec06239 (diff) e1299cbe39df (current diff) |
children | 8c704bcc9733 |
files | .hgtags |
diffstat | 4 files changed, 15 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/.hgtags Mon Aug 25 15:57:07 2014 -0700 +++ b/.hgtags Thu Aug 28 14:39:06 2014 -0700 @@ -511,3 +511,6 @@ c62534f0e97dc7100da18b0b9c034d846f7067dc jdk7u72-b09 62668c37376f462cfe7bfdfa001f902f52d450ef jdk7u72-b10 39828d500dfef8045eb5b531182a09ea6ecdfb71 jdk7u72-b11 +1a3aa4637b80fabbd069ae88c241efcb3520fc49 jdk7u80-b00 +df1decc820934ad8bf91c853e81c88d4f7590e25 jdk7u80-b01 +2444fa7df7e3e07f2533f6c875c3a8e408048f6c jdk7u80-b02
--- a/src/share/classes/com/sun/corba/se/impl/corba/AnyImpl.java Mon Aug 25 15:57:07 2014 -0700 +++ b/src/share/classes/com/sun/corba/se/impl/corba/AnyImpl.java Thu Aug 28 14:39:06 2014 -0700 @@ -587,7 +587,7 @@ java.lang.Object[] objholder = new java.lang.Object[1]; objholder[0] = object; long[] longholder = new long[1]; - TCUtility.unmarshalIn(in, typeCode, longholder, objholder); + TCUtility.unmarshalIn(in, realType(), longholder, objholder); value = longholder[0]; object = objholder[0]; stream = null;
--- a/src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java Mon Aug 25 15:57:07 2014 -0700 +++ b/src/share/classes/com/sun/corba/se/impl/io/OutputStreamHook.java Thu Aug 28 14:39:06 2014 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -35,7 +35,8 @@ import java.io.OutputStream; import java.io.ObjectOutputStream; import java.io.ObjectOutput; -import java.util.Hashtable; +import java.util.Map; +import java.util.HashMap; import org.omg.CORBA.INTERNAL; @@ -49,7 +50,7 @@ */ private class HookPutFields extends ObjectOutputStream.PutField { - private Hashtable fields = new Hashtable(); + private Map<String,Object> fields = new HashMap<>(); /** * Put the value of the named boolean field into the persistent field. @@ -140,7 +141,6 @@ public OutputStreamHook() throws java.io.IOException { super(); - } public void defaultWriteObject() throws IOException {
--- a/src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelAcceptorImpl.java Mon Aug 25 15:57:07 2014 -0700 +++ b/src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelAcceptorImpl.java Thu Aug 28 14:39:06 2014 -0700 @@ -253,6 +253,13 @@ // registered with the selector. Otherwise if the bytes // are read on the connection it will attempt a time stamp // but the cache will be null, resulting in NPE. + + // A connection needs to be timestamped before putting to the cache. + // Otherwise the newly created connection (with 0 timestamp) could be + // incorrectly reclaimed by concurrent reclaim() call OR if there + // will be no events on this connection then it could be reclaimed + // by upcoming reclaim() call. + getConnectionCache().stampTime(connection); getConnectionCache().put(this, connection); if (connection.shouldRegisterServerReadEvent()) {