}
     
    --- old/src/windows/classes/sun/print/Win32PrintService.java        2014-01-27 11:17:55.000000000 -0800
    +++ new/src/windows/classes/sun/print/Win32PrintService.java        2014-01-27 11:17:55.000000000 -0800
    @@ -1,5 +1,5 @@
     /*
    - * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All     rights reserved.
    + * Copyright (c) 2000, 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
    @@ -506,8 +506,7 @@
                         }
                     } else {
                         // if getting  MPA failed, we use MediaSize
    -                    MediaSize ms =
    -                            MediaSize.getMediaSizeForName((MediaSizeName)mediaName);
    +                    MediaSize ms =     MediaSize.getMediaSizeForName(mediaName);
     
                         if (ms != null) {
                             try {
    
   ">

(original) (raw)

On 01/27/2014 12:04 AM, Alan Bateman wrote:
On 26/01/2014 09:30, Alan Bateman wrote:
The only non-client changes that I see are to Setup.gmk (previously reviewed on build-dev) and Sdp.java.
I see the others now, just hard to spot in a large mind-numbing patch :-)

All looks good but as I look at this again then I see a few Iterator usages where it might be as quick to just replace the iteration with for-each. One example is ProxyClient. getGarbageCollectorMXBeans, another one might be XOpenTypeView.load. I realize it's going a bit beyond eliminating casts but it's an alternative for a couple of these.

\-Alan.

Hello,

Alan, I strongly prefer to limit this patch to just cast cleanup. However, I fully support broader cleanup of this code and other code in the jdk repo; many of these files haven't been touched in over a decade and would certainly benefit from some care and attention! I suggest interested parties do additional cleanup work using the same methodology Paul Sandoz and Brian Goetz have been using in core libs and langtools: sending out IDE-driven single-issue changes to review. I think that keeps the reviews easier and decreases the likelihood of problems being introduced.

Based on the results of an exploratory jprt job, listed below is the incremental patch to address the remaining platform-specific cast warnings in open code that wasn't covered in the original webrev.

Revised full webrev uploaded to

http://cr.openjdk.java.net/\~darcy/8032733.1/

There are also a number of closed source files which need to be updated for a cast-free build to succeed; I'll be requesting internal reviews for those changes.

Thanks,

\-Joe

\--- old/src/macosx/classes/apple/security/KeychainStore.java 2014-01-27 11:17:51.000000000 -0800
+++ new/src/macosx/classes/apple/security/KeychainStore.java 2014-01-27 11:17:50.000000000 -0800
@@ -1,5 +1,5 @@
/\*
\- \* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
\+ \* Copyright (c) 2011, 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
@@ -248,7 +248,7 @@
if (((KeyEntry)entry).chain == null) {
return null;
} else {
\- return (Certificate\[\])((KeyEntry)entry).chain.clone();
\+ return ((KeyEntry)entry).chain.clone();
}
} else {
return null;
@@ -365,7 +365,7 @@
throw new KeyStoreException("Certificate chain does not validate");
}

\- entry.chain = (Certificate\[\])chain.clone();
\+ entry.chain = chain.clone();
entry.chainRefs = new long\[entry.chain.length\];
}

@@ -429,7 +429,7 @@

if ((chain != null) &&
(chain.length != 0)) {
\- entry.chain = (Certificate\[\])chain.clone();
\+ entry.chain = chain.clone();
entry.chainRefs = new long\[entry.chain.length\];
}

@@ -1122,7 +1122,7 @@
throw uke;
}

\- return ((byte\[\])key);
\+ return key;
}


\--- old/src/macosx/classes/sun/lwawt/macosx/CPrinterJob.java 2014-01-27 11:17:51.000000000 -0800
+++ new/src/macosx/classes/sun/lwawt/macosx/CPrinterJob.java 2014-01-27 11:17:51.000000000 -0800
@@ -1,5 +1,5 @@
/\*
\- \* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
\+ \* Copyright (c) 2011, 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
@@ -640,7 +640,7 @@
if (onEventThread) {
try { EventQueue.invokeAndWait(r);
} catch (java.lang.reflect.InvocationTargetException ite) {
\- Throwable te = (Throwable)ite.getTargetException();
\+ Throwable te = ite.getTargetException();
if (te instanceof PrinterException) throw (PrinterException)te;
else te.printStackTrace();
} catch (Exception e) { e.printStackTrace(); }
\--- old/src/macosx/classes/sun/font/CFontManager.java 2014-01-27 11:17:52.000000000 -0800
+++ new/src/macosx/classes/sun/font/CFontManager.java 2014-01-27 11:17:51.000000000 -0800
@@ -1,5 +1,5 @@
/\*
\- \* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
\+ \* Copyright (c) 2011, 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
@@ -76,7 +76,7 @@

// This is a way to register any kind of Font2D, not just files and composites.
public static Font2D\[\] getGenericFonts() {
\- return (Font2D\[\])genericFonts.values().toArray(new Font2D\[0\]);
\+ return genericFonts.values().toArray(new Font2D\[0\]);
}

public Font2D registerGenericFont(Font2D f)
@@ -117,7 +117,7 @@
}
return f;
} else {
\- return (Font2D)genericFonts.get(fontName);
\+ return genericFonts.get(fontName);
}
}

\--- old/src/macosx/classes/sun/java2d/CRenderer.java 2014-01-27 11:17:52.000000000 -0800
+++ new/src/macosx/classes/sun/java2d/CRenderer.java 2014-01-27 11:17:52.000000000 -0800
@@ -1,5 +1,5 @@
/\*
\- \* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
\+ \* Copyright (c) 2011, 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
@@ -457,7 +457,7 @@

protected boolean blitImage(SunGraphics2D sg2d, Image img, boolean fliph, boolean flipv, int sx, int sy, int sw, int sh, int dx, int dy, int dw, int dh, Color bgColor) {
CPrinterSurfaceData surfaceData = (CPrinterSurfaceData)sg2d.getSurfaceData();
\- OSXOffScreenSurfaceData imgSurfaceData = (OSXOffScreenSurfaceData) OSXOffScreenSurfaceData.createNewSurface((BufferedImage)img);
\+ OSXOffScreenSurfaceData imgSurfaceData = OSXOffScreenSurfaceData.createNewSurface((BufferedImage)img);
surfaceData.blitImage(this, sg2d, imgSurfaceData, fliph, flipv, sx, sy, sw, sh, dx, dy, dw, dh, bgColor);
return true;
}
\--- old/src/windows/classes/sun/awt/Win32GraphicsDevice.java 2014-01-27 11:17:53.000000000 -0800
+++ new/src/windows/classes/sun/awt/Win32GraphicsDevice.java 2014-01-27 11:17:52.000000000 -0800
@@ -1,5 +1,5 @@
/\*
\- \* Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
\+ \* Copyright (c) 1997, 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
@@ -88,7 +88,7 @@
// is run as an NT service. To prevent the loading of ddraw.dll
// completely, sun.awt.nopixfmt should be set as well. Apps which use
// OpenGL w/ Java probably don't want to set this.
\- String nopixfmt = (String)java.security.AccessController.doPrivileged(
\+ String nopixfmt = java.security.AccessController.doPrivileged(
new sun.security.action.GetPropertyAction("sun.awt.nopixfmt"));
pfDisabled = (nopixfmt != null);
initIDs();
\--- old/src/windows/classes/sun/awt/windows/WPathGraphics.java 2014-01-27 11:17:53.000000000 -0800
+++ new/src/windows/classes/sun/awt/windows/WPathGraphics.java 2014-01-27 11:17:53.000000000 -0800
@@ -1,5 +1,5 @@
/\*
\- \* Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
\+ \* Copyright (c) 1998, 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
@@ -94,7 +94,7 @@
private static boolean preferGDITextLayout = false;
static {
String textLayoutStr =
\- (String)java.security.AccessController.doPrivileged(
\+ java.security.AccessController.doPrivileged(
new sun.security.action.GetPropertyAction(
"sun.java2d.print.enableGDITextLayout"));

\--- old/src/windows/classes/sun/io/Win32ErrorMode.java 2014-01-27 11:17:54.000000000 -0800
+++ new/src/windows/classes/sun/io/Win32ErrorMode.java 2014-01-27 11:17:54.000000000 -0800
@@ -1,5 +1,5 @@
/\*
\- \* Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
\+ \* Copyright (c) 2005, 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
@@ -67,7 +67,7 @@
\*/
public static void initialize() {
if (!sun.misc.VM.isBooted()) {
\- String s = (String) System.getProperty("sun.io.allowCriticalErrorMessageBox");
\+ String s = System.getProperty("sun.io.allowCriticalErrorMessageBox");
if (s == null || s.equals(Boolean.FALSE.toString())) {
long mode = setErrorMode(0);
mode |= SEM\_FAILCRITICALERRORS;
\--- old/src/windows/classes/sun/print/Win32PrintJob.java 2014-01-27 11:17:54.000000000 -0800
+++ new/src/windows/classes/sun/print/Win32PrintJob.java 2014-01-27 11:17:54.000000000 -0800
@@ -1,5 +1,5 @@
/\*
\- \* Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
\+ \* Copyright (c) 2000, 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
@@ -308,12 +308,10 @@
}
}

\- PrinterState prnState = (PrinterState)service.getAttribute(
\- PrinterState.class);
\+ PrinterState prnState = service.getAttribute(PrinterState.class);
if (prnState == PrinterState.STOPPED) {
PrinterStateReasons prnStateReasons =
\- (PrinterStateReasons)service.getAttribute(
\- PrinterStateReasons.class);
\+ service.getAttribute(PrinterStateReasons.class);
if ((prnStateReasons != null) &&

(prnStateReasons.containsKey(PrinterStateReason.SHUTDOWN)))

{

@@ -321,9 +319,8 @@

}

}



- if ((PrinterIsAcceptingJobs)(service.getAttribute(

- PrinterIsAcceptingJobs.class)) ==

- PrinterIsAcceptingJobs.NOT_ACCEPTING_JOBS)
{

+ if (service.getAttribute(PrinterIsAcceptingJobs.class) ==

+ PrinterIsAcceptingJobs.NOT_ACCEPTING_JOBS) {

throw new PrintException("Printer is not accepting
job.");

}



--- old/src/windows/classes/sun/print/Win32PrintService.java
2014-01-27 11:17:55.000000000 -0800

+++ new/src/windows/classes/sun/print/Win32PrintService.java
2014-01-27 11:17:55.000000000 -0800

@@ -1,5 +1,5 @@

/*

- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All
rights reserved.

+ * Copyright (c) 2000, 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

@@ -506,8 +506,7 @@

}

} else {

// if getting MPA failed, we use MediaSize

- MediaSize ms =

-
MediaSize.getMediaSizeForName((MediaSizeName)mediaName);

+ MediaSize ms =
MediaSize.getMediaSizeForName(mediaName);



if (ms != null) {

try {