From owner-svn-ports-all@FreeBSD.ORG Mon Aug 6 05:57:55 2012 Return-Path: Delivered-To: svn-ports-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5AB8C106564A; Mon, 6 Aug 2012 05:57:55 +0000 (UTC) (envelope-from glewis@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 4409E8FC08; Mon, 6 Aug 2012 05:57:55 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q765vtqU093728; Mon, 6 Aug 2012 05:57:55 GMT (envelope-from glewis@svn.freebsd.org) Received: (from glewis@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q765vt3e093724; Mon, 6 Aug 2012 05:57:55 GMT (envelope-from glewis@svn.freebsd.org) Message-Id: <201208060557.q765vt3e093724@svn.freebsd.org> From: Greg Lewis Date: Mon, 6 Aug 2012 05:57:55 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r302145 - in head/java/openjdk7: . files X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Aug 2012 05:57:55 -0000 Author: glewis Date: Mon Aug 6 05:57:54 2012 New Revision: 302145 URL: http://svn.freebsd.org/changeset/ports/302145 Log: . Update to what should be 7u5. Based on the bug ids from http://blog.fuseyism.com/index.php/2012/06/13/security-icedtea-2-1-1-2-2-1-released/ Added: head/java/openjdk7/files/patch-u5 (contents, props changed) Modified: head/java/openjdk7/Makefile (contents, props changed) Modified: head/java/openjdk7/Makefile ============================================================================== --- head/java/openjdk7/Makefile Mon Aug 6 03:15:43 2012 (r302144) +++ head/java/openjdk7/Makefile Mon Aug 6 05:57:54 2012 (r302145) @@ -6,8 +6,7 @@ # PORTNAME= openjdk -PORTVERSION= ${JDK_MAJOR_VERSION}.${JDK_MINOR_VERSION}.${JDK_BUILD_NUMBER} -PORTREVISION= 2 +PORTVERSION= ${JDK_MAJOR_VERSION}.${PORT_MINOR_VERSION}.${PORT_BUILD_NUMBER} CATEGORIES= java devel MASTER_SITES= http://download.java.net/openjdk/jdk${JDK_MAJOR_VERSION}u${JDK_MINOR_VERSION}/promoted/b${JDK_BUILD_NUMBER}/ \ http://download.java.net/jaxp/1.4.5/:jaxp \ @@ -38,6 +37,8 @@ MAKE_JOBS_UNSAFE= YES OPTIONS= POLICY "Install the Unlimited Strength Policy Files" on \ TZUPDATE "Update the time zone data" on +PORT_MINOR_VERSION= 5 +PORT_BUILD_NUMBER= 06 JDK_MAJOR_VERSION= 7 JDK_MINOR_VERSION= 4 JDK_BUILD_NUMBER= 22 @@ -97,8 +98,8 @@ MAKE_ENV+= LANG="C" \ SKIP_DEBUG_BUILD="true" \ PTHREAD_LIBS="${PTHREAD_LIBS}" \ MILESTONE="fcs" \ - JDK_MICRO_VERSION="0_0${JDK_MINOR_VERSION}" \ - BUILD_NUMBER="b${JDK_BUILD_NUMBER}" + JDK_MICRO_VERSION="0_0${PORT_MINOR_VERSION}" \ + BUILD_NUMBER="b${PORT_BUILD_NUMBER}" .if !defined(DISABLE_MAKE_JOBS) .if defined(MAKE_JOBS_NUMBER) Added: head/java/openjdk7/files/patch-u5 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/java/openjdk7/files/patch-u5 Mon Aug 6 05:57:54 2012 (r302145) @@ -0,0 +1,2985 @@ +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java +--- corba/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/interceptors/ClientRequestInfoImpl.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2000, 2012, 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 +@@ -217,7 +217,7 @@ + + // ClientRequestInfo validity table (see ptc/00-08-06 table 21-1). + // Note: These must be in the same order as specified in contants. +- protected static final boolean validCall[][] = { ++ private static final boolean validCall[][] = { + // LEGEND: + // s_req = send_request r_rep = receive_reply + // s_pol = send_poll r_exc = receive_exception +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/interceptors/ServerRequestInfoImpl.java +--- corba/src/share/classes/com/sun/corba/se/impl/interceptors/ServerRequestInfoImpl.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/interceptors/ServerRequestInfoImpl.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2000, 2003, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2000, 2012, 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 +@@ -195,7 +195,7 @@ + + // ServerRequestInfo validity table (see ptc/00-08-06 table 21-2). + // Note: These must be in the same order as specified in contants. +- protected static final boolean validCall[][] = { ++ private static final boolean validCall[][] = { + // LEGEND: + // r_rsc = receive_request_service_contexts + // r_req = receive_request +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java +--- corba/src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/javax/rmi/CORBA/Util.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1999, 2004, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1999, 2012, 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 +@@ -130,10 +130,23 @@ + private UtilSystemException utilWrapper = UtilSystemException.get( + CORBALogDomains.RPC_ENCODING); + +- public static Util instance = null; ++ private static Util instance = null; + + public Util() { +- instance = this; ++ setInstance(this); ++ } ++ ++ private static void setInstance( Util util ) { ++ assert instance == null : "Instance already defined"; ++ instance = util; ++ } ++ ++ public static Util getInstance() { ++ return instance; ++ } ++ ++ public static boolean isInstanceDefined() { ++ return instance != null; + } + + // Used by TOAFactory.shutdown to unexport all targets for this +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/oa/poa/POAPolicyMediatorBase_R.java +--- corba/src/share/classes/com/sun/corba/se/impl/oa/poa/POAPolicyMediatorBase_R.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/oa/poa/POAPolicyMediatorBase_R.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2002, 2012, 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 +@@ -93,7 +93,7 @@ + + activeObjectMap.putServant( servant, entry ) ; + +- if (Util.instance != null) { ++ if (Util.isInstanceDefined()) { + POAManagerImpl pm = (POAManagerImpl)poa.the_POAManager() ; + POAFactory factory = pm.getFactory() ; + factory.registerPOAForServant(poa, servant); +@@ -129,7 +129,7 @@ + + activeObjectMap.remove(key); + +- if (Util.instance != null) { ++ if (Util.isInstanceDefined()) { + POAManagerImpl pm = (POAManagerImpl)poa.the_POAManager() ; + POAFactory factory = pm.getFactory() ; + factory.unregisterPOAForServant(poa, s); +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/oa/toa/TOAFactory.java +--- corba/src/share/classes/com/sun/corba/se/impl/oa/toa/TOAFactory.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/oa/toa/TOAFactory.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2002, 2012, 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 +@@ -78,8 +78,8 @@ + + public void shutdown( boolean waitForCompletion ) + { +- if (Util.instance != null) { +- Util.instance.unregisterTargetsForORB(orb); ++ if (Util.isInstanceDefined()) { ++ Util.getInstance().unregisterTargetsForORB(orb); + } + } + +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/orb/ParserTable.java +--- corba/src/share/classes/com/sun/corba/se/impl/orb/ParserTable.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/orb/ParserTable.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2002, 2006, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2002, 2012, 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 +@@ -106,7 +106,9 @@ + + public ParserData[] getParserData() + { +- return parserData ; ++ ParserData[] parserArray = new ParserData[parserData.length]; ++ System.arraycopy(parserData, 0, parserArray, 0, parserData.length); ++ return parserArray; + } + + private ParserTable() { +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3.java +--- corba/src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2000, 2002, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2000, 2012, 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 +@@ -62,7 +62,7 @@ + // legal use of '.' in a Java name. + + public static final RepositoryIdCache_1_3 cache = new RepositoryIdCache_1_3(); +- public static final byte[] IDL_IDENTIFIER_CHARS = { ++ private static final byte[] IDL_IDENTIFIER_CHARS = { + + // 0 1 2 3 4 5 6 7 8 9 a b c d e f + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 00-0f +@@ -180,7 +180,7 @@ + public static final String kRemoteTypeStr = ""; + public static final String kRemoteValueRepID = ""; + +- public static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); ++ private static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); + + static { + kSpecialArrayTypeStrings.put("CORBA.WStringValue", new StringBuffer(java.lang.String.class.getName())); +@@ -189,7 +189,7 @@ + + } + +- public static final Hashtable kSpecialCasesRepIDs = new Hashtable(); ++ private static final Hashtable kSpecialCasesRepIDs = new Hashtable(); + + static { + kSpecialCasesRepIDs.put(java.lang.String.class, kWStringValueRepID); +@@ -197,7 +197,7 @@ + kSpecialCasesRepIDs.put(java.rmi.Remote.class, kRemoteValueRepID); + } + +- public static final Hashtable kSpecialCasesStubValues = new Hashtable(); ++ private static final Hashtable kSpecialCasesStubValues = new Hashtable(); + + static { + kSpecialCasesStubValues.put(java.lang.String.class, kWStringStubValue); +@@ -209,7 +209,7 @@ + } + + +- public static final Hashtable kSpecialCasesVersions = new Hashtable(); ++ private static final Hashtable kSpecialCasesVersions = new Hashtable(); + + static { + kSpecialCasesVersions.put(java.lang.String.class, kWStringValueHash); +@@ -220,7 +220,7 @@ + kSpecialCasesVersions.put(java.rmi.Remote.class, kRemoteValueHash); + } + +- public static final Hashtable kSpecialCasesClasses = new Hashtable(); ++ private static final Hashtable kSpecialCasesClasses = new Hashtable(); + + static { + kSpecialCasesClasses.put(kWStringTypeStr, java.lang.String.class); +@@ -232,7 +232,7 @@ + //kSpecialCasesClasses.put(kRemoteTypeStr, java.rmi.Remote.class); + } + +- public static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); ++ private static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); + + static { + kSpecialCasesArrayPrefix.put(java.lang.String.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); +@@ -243,7 +243,7 @@ + kSpecialCasesArrayPrefix.put(java.rmi.Remote.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); + } + +- public static final Hashtable kSpecialPrimitives = new Hashtable(); ++ private static final Hashtable kSpecialPrimitives = new Hashtable(); + + static { + kSpecialPrimitives.put("int","long"); +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3_1.java +--- corba/src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3_1.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/orbutil/RepositoryId_1_3_1.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2001, 2002, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2001, 2012, 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 +@@ -63,7 +63,7 @@ + // uniformly, and is safe because that is the only + // legal use of '.' in a Java name. + +- public static final byte[] IDL_IDENTIFIER_CHARS = { ++ private static final byte[] IDL_IDENTIFIER_CHARS = { + + // 0 1 2 3 4 5 6 7 8 9 a b c d e f + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 00-0f +@@ -198,7 +198,7 @@ + public static final String kRemoteTypeStr = ""; + public static final String kRemoteValueRepID = ""; + +- public static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); ++ private static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); + + static { + kSpecialArrayTypeStrings.put("CORBA.WStringValue", new StringBuffer(java.lang.String.class.getName())); +@@ -207,7 +207,7 @@ + + } + +- public static final Hashtable kSpecialCasesRepIDs = new Hashtable(); ++ private static final Hashtable kSpecialCasesRepIDs = new Hashtable(); + + static { + kSpecialCasesRepIDs.put(java.lang.String.class, kWStringValueRepID); +@@ -215,7 +215,7 @@ + kSpecialCasesRepIDs.put(java.rmi.Remote.class, kRemoteValueRepID); + } + +- public static final Hashtable kSpecialCasesStubValues = new Hashtable(); ++ private static final Hashtable kSpecialCasesStubValues = new Hashtable(); + + static { + kSpecialCasesStubValues.put(java.lang.String.class, kWStringStubValue); +@@ -227,7 +227,7 @@ + } + + +- public static final Hashtable kSpecialCasesVersions = new Hashtable(); ++ private static final Hashtable kSpecialCasesVersions = new Hashtable(); + + static { + kSpecialCasesVersions.put(java.lang.String.class, kWStringValueHash); +@@ -238,7 +238,7 @@ + kSpecialCasesVersions.put(java.rmi.Remote.class, kRemoteValueHash); + } + +- public static final Hashtable kSpecialCasesClasses = new Hashtable(); ++ private static final Hashtable kSpecialCasesClasses = new Hashtable(); + + static { + kSpecialCasesClasses.put(kWStringTypeStr, java.lang.String.class); +@@ -250,7 +250,7 @@ + //kSpecialCasesClasses.put(kRemoteTypeStr, java.rmi.Remote.class); + } + +- public static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); ++ private static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); + + static { + kSpecialCasesArrayPrefix.put(java.lang.String.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); +@@ -261,7 +261,7 @@ + kSpecialCasesArrayPrefix.put(java.rmi.Remote.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); + } + +- public static final Hashtable kSpecialPrimitives = new Hashtable(); ++ private static final Hashtable kSpecialPrimitives = new Hashtable(); + + static { + kSpecialPrimitives.put("int","long"); +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/protocol/LocalClientRequestDispatcherBase.java +--- corba/src/share/classes/com/sun/corba/se/impl/protocol/LocalClientRequestDispatcherBase.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/protocol/LocalClientRequestDispatcherBase.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2002, 2012, 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 +@@ -52,7 +52,7 @@ + + // If isNextIsLocalValid.get() == Boolean.TRUE, + // the next call to isLocal should be valid +- protected static ThreadLocal isNextCallValid = new ThreadLocal() { ++ private static final ThreadLocal isNextCallValid = new ThreadLocal() { + protected synchronized Object initialValue() { + return Boolean.TRUE; + } +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/impl/util/RepositoryId.java +--- corba/src/share/classes/com/sun/corba/se/impl/util/RepositoryId.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/impl/util/RepositoryId.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1998, 2004, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1998, 2012, 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 +@@ -57,7 +57,7 @@ + // uniformly, and is safe because that is the only + // legal use of '.' in a Java name. + +- public static final byte[] IDL_IDENTIFIER_CHARS = { ++ private static final byte[] IDL_IDENTIFIER_CHARS = { + + // 0 1 2 3 4 5 6 7 8 9 a b c d e f + 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 00-0f +@@ -95,7 +95,7 @@ + private static IdentityHashtable classIDLToRepStr = new IdentityHashtable(); + private static IdentityHashtable classSeqToRepStr = new IdentityHashtable(); + +- private static IdentityHashtable repStrToByteArray = new IdentityHashtable(); ++ private static final IdentityHashtable repStrToByteArray = new IdentityHashtable(); + private static Hashtable repStrToClass = new Hashtable(); + + private String repId = null; +@@ -192,7 +192,7 @@ + public static final String kRemoteTypeStr = ""; + public static final String kRemoteValueRepID = ""; + +- public static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); ++ private static final Hashtable kSpecialArrayTypeStrings = new Hashtable(); + + static { + kSpecialArrayTypeStrings.put("CORBA.WStringValue", new StringBuffer(java.lang.String.class.getName())); +@@ -201,7 +201,7 @@ + + } + +- public static final Hashtable kSpecialCasesRepIDs = new Hashtable(); ++ private static final Hashtable kSpecialCasesRepIDs = new Hashtable(); + + static { + kSpecialCasesRepIDs.put(java.lang.String.class, kWStringValueRepID); +@@ -209,7 +209,7 @@ + kSpecialCasesRepIDs.put(java.rmi.Remote.class, kRemoteValueRepID); + } + +- public static final Hashtable kSpecialCasesStubValues = new Hashtable(); ++ private static final Hashtable kSpecialCasesStubValues = new Hashtable(); + + static { + kSpecialCasesStubValues.put(java.lang.String.class, kWStringStubValue); +@@ -221,7 +221,7 @@ + } + + +- public static final Hashtable kSpecialCasesVersions = new Hashtable(); ++ private static final Hashtable kSpecialCasesVersions = new Hashtable(); + + static { + kSpecialCasesVersions.put(java.lang.String.class, kWStringValueHash); +@@ -232,7 +232,7 @@ + kSpecialCasesVersions.put(java.rmi.Remote.class, kRemoteValueHash); + } + +- public static final Hashtable kSpecialCasesClasses = new Hashtable(); ++ private static final Hashtable kSpecialCasesClasses = new Hashtable(); + + static { + kSpecialCasesClasses.put(kWStringTypeStr, java.lang.String.class); +@@ -244,7 +244,7 @@ + //kSpecialCasesClasses.put(kRemoteTypeStr, java.rmi.Remote.class); + } + +- public static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); ++ private static final Hashtable kSpecialCasesArrayPrefix = new Hashtable(); + + static { + kSpecialCasesArrayPrefix.put(java.lang.String.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); +@@ -255,7 +255,7 @@ + kSpecialCasesArrayPrefix.put(java.rmi.Remote.class, kValuePrefix + kSequencePrefix + kCORBAPrefix); + } + +- public static final Hashtable kSpecialPrimitives = new Hashtable(); ++ private static final Hashtable kSpecialPrimitives = new Hashtable(); + + static { + kSpecialPrimitives.put("int","long"); +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/com/sun/corba/se/spi/logging/CORBALogDomains.java +--- corba/src/share/classes/com/sun/corba/se/spi/logging/CORBALogDomains.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/com/sun/corba/se/spi/logging/CORBALogDomains.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2003, 2012, 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 +@@ -58,7 +58,7 @@ + private CORBALogDomains() {} + + // Top level log domain for CORBA +- public static String TOP_LEVEL_DOMAIN = "javax.enterprise.resource.corba"; ++ public static final String TOP_LEVEL_DOMAIN = "javax.enterprise.resource.corba"; + + public static final String RPC = "rpc" ; + +diff -r 6a262c36caeb -r 2e5e8c37d787 src/share/classes/sun/rmi/rmic/iiop/IDLNames.java +--- corba/src/share/classes/sun/rmi/rmic/iiop/IDLNames.java Thu Feb 23 15:14:14 2012 -0800 ++++ corba/src/share/classes/sun/rmi/rmic/iiop/IDLNames.java Tue Feb 28 17:00:14 2012 +0000 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1998, 2007, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1998, 2012, 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 +@@ -71,6 +71,34 @@ + (byte)'F', + }; + ++ // Legal IDL Identifier characters (1 = legal). Note ++ // that '.' (2E) is marked as legal even though it is ++ // not legal in IDL. This allows us to treat a fully ++ // qualified Java name with '.' package separators ++ // uniformly, and is safe because that is the only ++ // legal use of '.' in a Java name. ++ ++ private static final byte[] IDL_IDENTIFIER_CHARS = { ++ ++ // 0 1 2 3 4 5 6 7 8 9 a b c d e f ++ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 00-0f ++ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 10-1f ++ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,1,0, // 20-2f ++ 1,1,1,1, 1,1,1,1, 1,1,0,0, 0,0,0,0, // 30-3f ++ 0,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1, // 40-4f ++ 1,1,1,1, 1,1,1,1, 1,1,1,0, 0,0,0,1, // 50-5f ++ 0,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1, // 60-6f ++ 1,1,1,1, 1,1,1,1, 1,1,1,0, 0,0,0,0, // 70-7f ++ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 80-8f ++ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // 90-9f ++ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // a0-af ++ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, // b0-bf ++ 1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1, // c0-cf ++ 0,1,1,1, 1,1,1,0, 1,1,1,1, 1,0,0,1, // d0-df ++ 1,1,1,1, 1,1,1,1, 1,1,1,1, 1,1,1,1, // e0-ef ++ 0,1,1,1, 1,1,1,0, 1,1,1,1, 1,0,0,1, // f0-ff ++ }; ++ + //_____________________________________________________________________ + // Public Interfaces + //_____________________________________________________________________ +@@ -139,7 +167,7 @@ + result = replace(result,"x\\U","U"); + + // Now see if we have any remaining illegal characters (see +- // RepositoryId.IDL_IDENTIFIER_CHARS array)... ++ // IDL_IDENTIFIER_CHARS array)... + + int length = result.length(); + StringBuffer buffer = null; +@@ -148,7 +176,7 @@ + + char c = result.charAt(i); + +- if (c > 255 || RepositoryId.IDL_IDENTIFIER_CHARS[c] == 0) { ++ if (c > 255 || IDL_IDENTIFIER_CHARS[c] == 0) { + + // We gotta convert. Have we already started? + +diff -r 149b6bbf77ff -r 6a7aac2ae8db src/share/vm/compiler/compilerOracle.cpp +--- hotspot/src/share/vm/compiler/compilerOracle.cpp Fri Mar 23 10:43:32 2012 -0700 ++++ hotspot/src/share/vm/compiler/compilerOracle.cpp Thu Mar 29 13:22:24 2012 -0400 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1998, 2012, 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 +@@ -551,13 +551,22 @@ + } + + static const char* cc_file() { +- if (CompileCommandFile == NULL) ++#ifdef ASSERT ++ if (CompileCommandFile == NULL) { + return ".hotspot_compiler"; ++ } ++#endif + return CompileCommandFile; + } ++ ++bool CompilerOracle::has_command_file() { ++ return cc_file() != NULL; ++} ++ + bool CompilerOracle::_quiet = false; + + void CompilerOracle::parse_from_file() { ++ assert(has_command_file(), "command file must be specified"); + FILE* stream = fopen(cc_file(), "rt"); + if (stream == NULL) return; + +@@ -600,6 +609,7 @@ + } + + void CompilerOracle::append_comment_to_file(const char* message) { ++ assert(has_command_file(), "command file must be specified"); + fileStream stream(fopen(cc_file(), "at")); + stream.print("# "); + for (int index = 0; message[index] != '\0'; index++) { +@@ -610,6 +620,7 @@ + } + + void CompilerOracle::append_exclude_to_file(methodHandle method) { ++ assert(has_command_file(), "command file must be specified"); + fileStream stream(fopen(cc_file(), "at")); + stream.print("exclude "); + Klass::cast(method->method_holder())->name()->print_symbol_on(&stream); +@@ -624,7 +635,9 @@ + void compilerOracle_init() { + CompilerOracle::parse_from_string(CompileCommand, CompilerOracle::parse_from_line); + CompilerOracle::parse_from_string(CompileOnly, CompilerOracle::parse_compile_only); +- CompilerOracle::parse_from_file(); ++ if (CompilerOracle::has_command_file()) { ++ CompilerOracle::parse_from_file(); ++ } + if (lists[PrintCommand] != NULL) { + if (PrintAssembly) { + warning("CompileCommand and/or .hotspot_compiler file contains 'print' commands, but PrintAssembly is also enabled"); +diff -r 149b6bbf77ff -r 6a7aac2ae8db src/share/vm/compiler/compilerOracle.hpp +--- hotspot/src/share/vm/compiler/compilerOracle.hpp Fri Mar 23 10:43:32 2012 -0700 ++++ hotspot/src/share/vm/compiler/compilerOracle.hpp Thu Mar 29 13:22:24 2012 -0400 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1998, 2012, 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 +@@ -36,6 +36,10 @@ + static bool _quiet; + + public: ++ ++ // True if the command file has been specified or is implicit ++ static bool has_command_file(); ++ + // Reads from file and adds to lists + static void parse_from_file(); + +diff -r 149b6bbf77ff -r 6a7aac2ae8db src/share/vm/opto/runtime.cpp +--- hotspot/src/share/vm/opto/runtime.cpp Fri Mar 23 10:43:32 2012 -0700 ++++ hotspot/src/share/vm/opto/runtime.cpp Thu Mar 29 13:22:24 2012 -0400 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1998, 2012, 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 +@@ -896,7 +896,8 @@ + methodOop method = ((nmethod*)n)->method(); + tty->print_cr("# Method where it happened %s.%s ", Klass::cast(method->method_holder())->name()->as_C_string(), method->name()->as_C_string()); + tty->print_cr("#"); +- if (ShowMessageBoxOnError && UpdateHotSpotCompilerFileOnError) { ++ if (ShowMessageBoxOnError && UpdateHotSpotCompilerFileOnError && ++ CompilerOracle::has_command_file()) { + const char* title = "HotSpot Runtime Error"; + const char* question = "Do you want to exclude compilation of this method in future runs?"; + if (os::message_box(title, question)) { +diff -r 149b6bbf77ff -r 6a7aac2ae8db src/share/vm/runtime/arguments.cpp +--- hotspot/src/share/vm/runtime/arguments.cpp Fri Mar 23 10:43:32 2012 -0700 ++++ hotspot/src/share/vm/runtime/arguments.cpp Thu Mar 29 13:22:24 2012 -0400 +@@ -2997,12 +2997,14 @@ + } + } + ++#ifdef ASSERT + // Parse default .hotspotrc settings file + if (!settings_file_specified) { + if (!process_settings_file(".hotspotrc", false, args->ignoreUnrecognized)) { + return JNI_EINVAL; + } + } ++#endif + + if (PrintVMOptions) { + for (index = 0; index < args->nOptions; index++) { +diff -r 149b6bbf77ff -r 6a7aac2ae8db test/runtime/7110720/Test7110720.sh +--- hotspot/test/runtime/7110720/Test7110720.sh Thu Jan 01 00:00:00 1970 +0000 ++++ hotspot/test/runtime/7110720/Test7110720.sh Thu Mar 29 13:22:24 2012 -0400 +@@ -0,0 +1,122 @@ ++# ++# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. ++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++# ++ ++ ++# ++# @test Test7110720.sh ++# @bug 7110720 ++# @summary improve VM configuration file loading ++# @run shell Test7110720.sh ++# ++ ++if [ "${TESTSRC}" = "" ] ++ then TESTSRC=. ++fi ++ ++if [ "${TESTJAVA}" = "" ] ++then ++ PARENT=`dirname \`which java\`` ++ TESTJAVA=`dirname ${PARENT}` ++ echo "TESTJAVA not set, selecting " ${TESTJAVA} ++ echo "If this is incorrect, try setting the variable manually." ++fi ++ ++if [ "${TESTCLASSES}" = "" ] ++then ++ echo "TESTCLASSES not set. Test cannot execute. Failed." ++ exit 1 ++fi ++ ++# Jtreg sets TESTVMOPTS which may include -d64 which is ++# required to test a 64-bit JVM on some platforms. ++# If another test harness still creates HOME/JDK64BIT, ++# we can recognise that. ++ ++# set platform-dependent variables ++OS=`uname -s` ++case "$OS" in ++ SunOS | Linux ) ++ FS="/" ++ RM=/bin/rm ++ CP=/bin/cp ++ MV=/bin/mv ++ ## for solaris, linux it's HOME ++ FILE_LOCATION=$HOME ++ if [ -f ${FILE_LOCATION}${FS}JDK64BIT -a ${OS} = "SunOS" ] ++ then ++ TESTVMOPTS=`cat ${FILE_LOCATION}${FS}JDK64BIT` ++ fi ++ ;; ++ Windows_* ) ++ FS="\\" ++ RM=rm ++ CP=cp ++ MV=mv ++ ;; ++ * ) ++ echo "Unrecognized system!" ++ exit 1; ++ ;; ++esac ++ ++ ++JAVA=${TESTJAVA}${FS}bin${FS}java ++ ++# Don't test debug builds, they do read the config files: ++${JAVA} ${TESTVMOPTS} -version 2>&1 | grep "debug" >/dev/null ++if [ "$?" = "0" ]; then ++ echo Skipping test for debug build. ++ exit 0 ++fi ++ ++ok=yes ++ ++$RM -f .hotspot_compiler .hotspotrc ++ ++${JAVA} ${TESTVMOPTS} -version 2>&1 | grep "garbage in" >/dev/null ++if [ "$?" = "0" ]; then ++ echo "FAILED: base case failure" ++ exit 1 ++fi ++ ++ ++echo "garbage in, garbage out" > .hotspot_compiler ++${JAVA} ${TESTVMOPTS} -version 2>&1 | grep "garbage in" >/dev/null ++if [ "$?" = "0" ]; then ++ echo "FAILED: .hotspot_compiler was read" ++ ok=no ++fi ++ ++$MV .hotspot_compiler hs_comp.txt ++${JAVA} ${TESTVMOPTS} -XX:CompileCommandFile=hs_comp.txt -version 2>&1 | grep "garbage in" >/dev/null ++if [ "$?" = "1" ]; then ++ echo "FAILED: explicit compiler command file not read" ++ ok=no ++fi ++ ++$RM -f .hotspot_compiler hs_comp.txt ++ ++echo "garbage" > .hotspotrc ++${JAVA} ${TESTVMOPTS} -version 2>&1 | grep "garbage" >/dev/null ++if [ "$?" = "0" ]; then ++ echo "FAILED: .hotspotrc was read" ++ ok=no ++fi ++ ++$MV .hotspotrc hs_flags.txt ++${JAVA} ${TESTVMOPTS} -XX:Flags=hs_flags.txt -version 2>&1 | grep "garbage" >/dev/null ++if [ "$?" = "1" ]; then ++ echo "FAILED: explicit flags file not read" ++ ok=no ++fi ++ ++if [ "${ok}" = "no" ]; then ++ echo "Some tests failed." ++ exit 1 ++else ++ echo "Passed" ++ exit 0 ++fi ++ +diff -r 988706e33b26 -r 21aac3eb7c40 src/macosx/classes/apple/applescript/AppleScriptEngine.java +--- jdk/src/macosx/classes/apple/applescript/AppleScriptEngine.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/macosx/classes/apple/applescript/AppleScriptEngine.java Tue Feb 28 15:44:47 2012 -0800 +@@ -26,6 +26,7 @@ + package apple.applescript; + + import java.io.*; ++import java.nio.file.Files; + import java.util.*; + import java.util.Map.Entry; + +@@ -297,7 +298,7 @@ + File tmpfile; + FileWriter tmpwrite; + try { +- tmpfile = File.createTempFile("AppleScriptEngine.", ".scpt"); ++ tmpfile = Files.createTempFile("AppleScriptEngine.", ".scpt").toFile(); + tmpwrite = new FileWriter(tmpfile); + + // read in our input and write directly to tmpfile +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/com/sun/java/util/jar/pack/Driver.java +--- jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java Tue Feb 28 15:44:47 2012 -0800 +@@ -35,6 +35,7 @@ + import java.io.OutputStream; + import java.io.PrintStream; + import java.text.MessageFormat; ++import java.nio.file.Files; + import java.util.ArrayList; + import java.util.Arrays; + import java.util.HashMap; +@@ -385,9 +386,7 @@ + if ( base.getParentFile() == null && suffix.equals(".bak")) + where = new File(".").getAbsoluteFile(); + +- +- File f = File.createTempFile(prefix, suffix, where); +- return f; ++ return Files.createTempFile(where.toPath(), prefix, suffix).toFile(); + } + + static private +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/java/awt/Font.java +--- jdk/src/share/classes/java/awt/Font.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/java/awt/Font.java Tue Feb 28 15:44:47 2012 -0800 +@@ -36,6 +36,7 @@ + import java.awt.peer.FontPeer; + import java.io.*; + import java.lang.ref.SoftReference; ++import java.nio.file.Files; + import java.security.AccessController; + import java.security.PrivilegedExceptionAction; + import java.text.AttributedCharacterIterator.Attribute; +@@ -830,7 +831,7 @@ + File f = null; + boolean hasPerm = false; + try { +- f = File.createTempFile("+~JT", ".tmp", null); ++ f = Files.createTempFile("+~JT", ".tmp").toFile(); + f.delete(); + f = null; + hasPerm = true; +@@ -880,7 +881,7 @@ + final File tFile = AccessController.doPrivileged( + new PrivilegedExceptionAction() { + public File run() throws IOException { +- return File.createTempFile("+~JF", ".tmp", null); ++ return Files.createTempFile("+~JF", ".tmp").toFile(); + } + } + ); +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/javax/imageio/stream/FileCacheImageInputStream.java +--- jdk/src/share/classes/javax/imageio/stream/FileCacheImageInputStream.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/javax/imageio/stream/FileCacheImageInputStream.java Tue Feb 28 15:44:47 2012 -0800 +@@ -29,6 +29,7 @@ + import java.io.InputStream; + import java.io.IOException; + import java.io.RandomAccessFile; ++import java.nio.file.Files; + import com.sun.imageio.stream.StreamCloser; + import com.sun.imageio.stream.StreamFinalizer; + import sun.java2d.Disposer; +@@ -97,8 +98,11 @@ + throw new IllegalArgumentException("Not a directory!"); + } + this.stream = stream; +- this.cacheFile = +- File.createTempFile("imageio", ".tmp", cacheDir); ++ if (cacheDir == null) ++ this.cacheFile = Files.createTempFile("imageio", ".tmp").toFile(); ++ else ++ this.cacheFile = Files.createTempFile(cacheDir.toPath(), "imageio", ".tmp") ++ .toFile(); + this.cache = new RandomAccessFile(cacheFile, "rw"); + + this.closeAction = StreamCloser.createCloseAction(this); +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/javax/imageio/stream/FileCacheImageOutputStream.java +--- jdk/src/share/classes/javax/imageio/stream/FileCacheImageOutputStream.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/javax/imageio/stream/FileCacheImageOutputStream.java Tue Feb 28 15:44:47 2012 -0800 +@@ -29,6 +29,7 @@ + import java.io.IOException; + import java.io.OutputStream; + import java.io.RandomAccessFile; ++import java.nio.file.Files; + import com.sun.imageio.stream.StreamCloser; + + /** +@@ -83,8 +84,11 @@ + throw new IllegalArgumentException("Not a directory!"); + } + this.stream = stream; +- this.cacheFile = +- File.createTempFile("imageio", ".tmp", cacheDir); ++ if (cacheDir == null) ++ this.cacheFile = Files.createTempFile("imageio", ".tmp").toFile(); ++ else ++ this.cacheFile = Files.createTempFile(cacheDir.toPath(), "imageio", ".tmp") ++ .toFile(); + this.cache = new RandomAccessFile(cacheFile, "rw"); + + this.closeAction = StreamCloser.createCloseAction(this); +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/javax/management/loading/MLet.java +--- jdk/src/share/classes/javax/management/loading/MLet.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/javax/management/loading/MLet.java Tue Feb 28 15:44:47 2012 -0800 +@@ -44,6 +44,7 @@ + import java.net.MalformedURLException; + import java.net.URL; + import java.net.URLStreamHandlerFactory; ++import java.nio.file.Files; + import java.security.AccessController; + import java.security.PrivilegedAction; + import java.util.ArrayList; +@@ -1160,8 +1161,9 @@ + try { + File directory = new File(libraryDirectory); + directory.mkdirs(); +- File file = File.createTempFile(libname + ".", null, +- directory); ++ File file = Files.createTempFile(directory.toPath(), ++ libname + ".", null) ++ .toFile(); + file.deleteOnExit(); + FileOutputStream fileOutput = new FileOutputStream(file); + try { +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/sun/print/PSPrinterJob.java +--- jdk/src/share/classes/sun/print/PSPrinterJob.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/sun/print/PSPrinterJob.java Tue Feb 28 15:44:47 2012 -0800 +@@ -93,6 +93,7 @@ + import java.nio.charset.*; + import java.nio.CharBuffer; + import java.nio.ByteBuffer; ++import java.nio.file.Files; + + //REMIND: Remove use of this class when IPPPrintService is moved to share directory. + import java.lang.reflect.Method; +@@ -655,7 +656,7 @@ + * is not removed for some reason, request that it is + * removed when the VM exits. + */ +- spoolFile = File.createTempFile("javaprint", ".ps", null); ++ spoolFile = Files.createTempFile("javaprint", ".ps").toFile(); + spoolFile.deleteOnExit(); + + result = new FileOutputStream(spoolFile); +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/sun/rmi/server/Activation.java +--- jdk/src/share/classes/sun/rmi/server/Activation.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/sun/rmi/server/Activation.java Tue Feb 28 15:44:47 2012 -0800 +@@ -43,6 +43,7 @@ + import java.net.Socket; + import java.net.SocketAddress; + import java.net.SocketException; ++import java.nio.file.Files; + import java.nio.channels.Channel; + import java.nio.channels.ServerSocketChannel; + import java.rmi.AccessException; +@@ -1937,7 +1938,7 @@ + new PrivilegedExceptionAction() { + public Void run() throws IOException { + File file = +- File.createTempFile("rmid-err", null, null); ++ Files.createTempFile("rmid-err", null).toFile(); + PrintStream errStream = + new PrintStream(new FileOutputStream(file)); + System.setErr(errStream); +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/sun/tools/jar/Main.java +--- jdk/src/share/classes/sun/tools/jar/Main.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/sun/tools/jar/Main.java Tue Feb 28 15:44:47 2012 -0800 +@@ -137,7 +137,7 @@ + File dir = file.getParentFile(); + if (dir == null) + dir = new File("."); +- return File.createTempFile("jartmp", null, dir); ++ return Files.createTempFile(dir.toPath(), "jartmp", null).toFile(); + } + + private boolean ok; +diff -r 988706e33b26 -r 21aac3eb7c40 src/share/classes/sun/tools/native2ascii/Main.java +--- jdk/src/share/classes/sun/tools/native2ascii/Main.java Mon Feb 27 20:18:28 2012 +0200 ++++ jdk/src/share/classes/sun/tools/native2ascii/Main.java Tue Feb 28 15:44:47 2012 -0800 +@@ -71,6 +71,7 @@ + import java.nio.charset.CharsetEncoder; + import java.nio.charset.Charset; + import java.nio.charset.IllegalCharsetNameException; ++import java.nio.file.Files; + import java.io.UnsupportedEncodingException; + import java.nio.charset.UnsupportedCharsetException; + import sun.tools.native2ascii.A2NFilter; +@@ -240,9 +241,7 @@ + if (tempDir == null) + tempDir = new File(System.getProperty("user.dir")); + +- tempFile = File.createTempFile("_N2A", +- ".TMP", +- tempDir); ++ tempFile = Files.createTempFile(tempDir.toPath(), "_N2A", ".TMP").toFile(); + tempFile.deleteOnExit(); + + try { +@@ -292,9 +291,7 @@ *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***