From ptisnovs at icedtea.classpath.org Fri Mar 1 01:23:41 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 01 Mar 2013 09:23:41 +0000 Subject: /hg/rhino-tests: Added two new tests into the ScriptExceptionCla... Message-ID: changeset 2d0f54d43a5e in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=2d0f54d43a5e author: Pavel Tisnovsky date: Fri Mar 01 10:26:45 2013 +0100 Added two new tests into the ScriptExceptionClassTest: testGetMethod() and testGetDeclaredMethod(). diffstat: ChangeLog | 6 + src/org/RhinoTests/ScriptExceptionClassTest.java | 114 +++++++++++++++++++++++ 2 files changed, 120 insertions(+), 0 deletions(-) diffs (137 lines): diff -r 90ac8a0ff3c4 -r 2d0f54d43a5e ChangeLog --- a/ChangeLog Thu Feb 28 11:12:22 2013 +0100 +++ b/ChangeLog Fri Mar 01 10:26:45 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-01 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptExceptionClassTest.java: + Added two new tests into the ScriptExceptionClassTest: + testGetMethod() and testGetDeclaredMethod(). + 2013-02-28 Pavel Tisnovsky * src/org/RhinoTests/ScriptEngineClassTest.java: diff -r 90ac8a0ff3c4 -r 2d0f54d43a5e src/org/RhinoTests/ScriptExceptionClassTest.java --- a/src/org/RhinoTests/ScriptExceptionClassTest.java Thu Feb 28 11:12:22 2013 +0100 +++ b/src/org/RhinoTests/ScriptExceptionClassTest.java Fri Mar 01 10:26:45 2013 +0100 @@ -658,6 +658,120 @@ } /** + * Test for method javax.script.ScriptException.getClass().getMethod() + */ + protected void testGetMethod() throws ClassNotFoundException { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("getMessage", new Class[] {}); + methodsThatShouldExist_jdk6.put("getFileName", new Class[] {}); + methodsThatShouldExist_jdk6.put("getLineNumber", new Class[] {}); + methodsThatShouldExist_jdk6.put("getColumnNumber", new Class[] {}); + methodsThatShouldExist_jdk6.put("printStackTrace", new Class[] {}); + methodsThatShouldExist_jdk6.put("printStackTrace", new Class[] {java.io.PrintStream.class}); + methodsThatShouldExist_jdk6.put("printStackTrace", new Class[] {java.io.PrintWriter.class}); + methodsThatShouldExist_jdk6.put("fillInStackTrace", new Class[] {}); + methodsThatShouldExist_jdk6.put("getCause", new Class[] {}); + methodsThatShouldExist_jdk6.put("initCause", new Class[] {java.lang.Throwable.class}); + methodsThatShouldExist_jdk6.put("toString", new Class[] {}); + methodsThatShouldExist_jdk6.put("getLocalizedMessage", new Class[] {}); + methodsThatShouldExist_jdk6.put("getStackTrace", new Class[] {}); + methodsThatShouldExist_jdk6.put("setStackTrace", new Class[] {Class.forName("[Ljava.lang.StackTraceElement;")}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {long.class}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {long.class, int.class}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {}); + methodsThatShouldExist_jdk6.put("hashCode", new Class[] {}); + methodsThatShouldExist_jdk6.put("getClass", new Class[] {}); + methodsThatShouldExist_jdk6.put("equals", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("notify", new Class[] {}); + methodsThatShouldExist_jdk6.put("notifyAll", new Class[] {}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("getMessage", new Class[] {}); + methodsThatShouldExist_jdk7.put("getFileName", new Class[] {}); + methodsThatShouldExist_jdk7.put("getLineNumber", new Class[] {}); + methodsThatShouldExist_jdk7.put("getColumnNumber", new Class[] {}); + methodsThatShouldExist_jdk7.put("printStackTrace", new Class[] {}); + methodsThatShouldExist_jdk7.put("printStackTrace", new Class[] {java.io.PrintWriter.class}); + methodsThatShouldExist_jdk7.put("printStackTrace", new Class[] {java.io.PrintStream.class}); + methodsThatShouldExist_jdk7.put("fillInStackTrace", new Class[] {}); + methodsThatShouldExist_jdk7.put("getCause", new Class[] {}); + methodsThatShouldExist_jdk7.put("initCause", new Class[] {java.lang.Throwable.class}); + methodsThatShouldExist_jdk7.put("toString", new Class[] {}); + methodsThatShouldExist_jdk7.put("getLocalizedMessage", new Class[] {}); + methodsThatShouldExist_jdk7.put("getStackTrace", new Class[] {}); + methodsThatShouldExist_jdk7.put("setStackTrace", new Class[] {Class.forName("[Ljava.lang.StackTraceElement;")}); + methodsThatShouldExist_jdk7.put("addSuppressed", new Class[] {java.lang.Throwable.class}); + methodsThatShouldExist_jdk7.put("getSuppressed", new Class[] {}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {long.class, int.class}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {long.class}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {}); + methodsThatShouldExist_jdk7.put("equals", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("hashCode", new Class[] {}); + methodsThatShouldExist_jdk7.put("getClass", new Class[] {}); + methodsThatShouldExist_jdk7.put("notify", new Class[] {}); + methodsThatShouldExist_jdk7.put("notifyAll", new Class[] {}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.scriptExceptionClass.getMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.ScriptException.getClass().getDeclaredMethod() + */ + protected void testGetDeclaredMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("getMessage", new Class[] {}); + methodsThatShouldExist_jdk6.put("getFileName", new Class[] {}); + methodsThatShouldExist_jdk6.put("getLineNumber", new Class[] {}); + methodsThatShouldExist_jdk6.put("getColumnNumber", new Class[] {}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("getMessage", new Class[] {}); + methodsThatShouldExist_jdk7.put("getFileName", new Class[] {}); + methodsThatShouldExist_jdk7.put("getLineNumber", new Class[] {}); + methodsThatShouldExist_jdk7.put("getColumnNumber", new Class[] {}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.scriptExceptionClass.getDeclaredMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.ScriptException.getClass().getAnnotations() */ protected void testGetAnnotations() { From ptisnovs at icedtea.classpath.org Fri Mar 1 01:30:59 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 01 Mar 2013 09:30:59 +0000 Subject: /hg/gfx-test: Refactoring, move all BitBlt-related methods from ... Message-ID: changeset 0361daa31f26 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=0361daa31f26 author: Pavel Tisnovsky date: Fri Mar 01 10:34:07 2013 +0100 Refactoring, move all BitBlt-related methods from CommonBitmapOperations into a new class BitBltOperations. diffstat: ChangeLog | 7 + src/org/gfxtest/framework/BitBltOperations.java | 332 ++++++++++++++ src/org/gfxtest/framework/CommonBitmapOperations.java | 413 +++-------------- 3 files changed, 408 insertions(+), 344 deletions(-) diffs (truncated from 1241 to 500 lines): diff -r 406c7bcb1337 -r 0361daa31f26 ChangeLog --- a/ChangeLog Thu Feb 28 11:08:30 2013 +0100 +++ b/ChangeLog Fri Mar 01 10:34:07 2013 +0100 @@ -1,3 +1,10 @@ +2013-03-01 Pavel Tisnovsky + + * src/org/gfxtest/framework/BitBltOperations.java: + * src/org/gfxtest/framework/CommonBitmapOperations.java: + Refactoring, move all BitBlt-related methods into a new + class BitBltOperations. + 2013-02-28 Pavel Tisnovsky * Makefile: diff -r 406c7bcb1337 -r 0361daa31f26 src/org/gfxtest/framework/BitBltOperations.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/framework/BitBltOperations.java Fri Mar 01 10:34:07 2013 +0100 @@ -0,0 +1,332 @@ +/* + Java gfx-test framework + + Copyright (C) 2013 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.framework; + +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.Rectangle; +import java.awt.image.BufferedImage; +import java.awt.image.BufferedImageOp; + + + +/** + * This class contains methods which performs various BitBlt operations. + * + * @author Pavel Tisnovsky + */ +public class BitBltOperations +{ + /** + * Create buffered bitmap with given type. + * + * @param type + * type of the created image + * @return new buffered bitmap + */ + protected static BufferedImage createBufferedBitmap(int type) + { + return new BufferedImage(CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH, CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT, type); + } + + /** + * Performs basic BitBlt operation for given source and destination image. + * No mirroring, scaling and/or clipping are performed during BitBlt. + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d) + { + // compute top-left corner coordinates + final int x = (destinationImage.getWidth() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH) >> 1; + final int y = (destinationImage.getHeight() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT) >> 1; + return graphics2d.drawImage(sourceImage, x, y, null); + } + + /** + * Performs basic BitBlt operation for given source and destination image. + * No mirroring, scaling and/or clipping are performed during BitBlt. + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @param bgcolor + * background color + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, Color bgcolor) + { + // compute top-left corner coordinates + final int x = (destinationImage.getWidth() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH) >> 1; + final int y = (destinationImage.getHeight() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT) >> 1; + return graphics2d.drawImage(sourceImage, x, y, bgcolor, null); + } + + /** + * Performs BitBlt operation for given source and destination image. Scaling + * are performed according to parameters width and height. + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @param width + * width of the destination region + * @param height + * height of the destination region + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, int width, int height) + { + // compute top-left corner coordinates + final int x = (destinationImage.getWidth() - width) >> 1; + final int y = (destinationImage.getHeight() - height) >> 1; + return graphics2d.drawImage(sourceImage, x, y, width, height, null); + } + + /** + * Performs BitBlt operation for given source and destination image. Scaling + * are performed according to parameters width and height. + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @param bgcolor + * background color + * @param width + * width of the destination region + * @param height + * height of the destination region + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, Color bgcolor, int width, int height) + { + // compute top-left corner coordinates + final int x = (destinationImage.getWidth() - width) >> 1; + final int y = (destinationImage.getHeight() - height) >> 1; + return graphics2d.drawImage(sourceImage, x, y, width, height, bgcolor, null); + } + + /** + * Performs BitBlt operation for given source and destination image. + * Horizontal and/or vertical flipping/mirroring are performed according to + * parameters horizontalFlip and verticalFlip. + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @param horizontalFlip + * enables performing horizontal flip of image + * @param verticalFlip + * enables performing vertical flip of image + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, + boolean horizontalFlip, boolean verticalFlip) + { + // compute top-left corner coordinates of destination image + final int dx1 = (destinationImage.getWidth() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH) >> 1; + final int dy1 = (destinationImage.getHeight() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT) >> 1; + // compute bottom-right corner coordinates of destination image + final int dx2 = dx1 + CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH; + final int dy2 = dy1 + CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT; + // compute top-left corner coordinates of source image + final int sx1 = horizontalFlip ? CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH: 0; + final int sy1 = verticalFlip ? CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT : 0; + // compute bottom-right corner coordinates of source image + final int sx2 = horizontalFlip ? 0 : CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH; + final int sy2 = verticalFlip ? 0 : CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT; + return graphics2d.drawImage(sourceImage, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, null); + } + + /** + * Performs BitBlt operation for given source and destination image. + * Horizontal and/or vertical flipping/mirroring are performed according to + * parameters horizontalFlip and verticalFlip. + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @param bgcolor + * background color + * @param horizontalFlip + * enables performing horizontal flip of image + * @param verticalFlip + * enables performing vertical flip of image + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, + Color bgcolor, boolean horizontalFlip, boolean verticalFlip) + { + // compute top-left corner coordinates of destination image + final int dx1 = (destinationImage.getWidth() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH) >> 1; + final int dy1 = (destinationImage.getHeight() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT) >> 1; + // compute bottom-right corner coordinates of destination image + final int dx2 = dx1 + CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH; + final int dy2 = dy1 + CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT; + // compute top-left corner coordinates of source image + final int sx1 = horizontalFlip ? CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH: 0; + final int sy1 = verticalFlip ? CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT : 0; + // compute bottom-right corner coordinates of source image + final int sx2 = horizontalFlip ? 0 : CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH; + final int sy2 = verticalFlip ? 0 : CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT; + return graphics2d.drawImage(sourceImage, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, bgcolor, null); + } + + /** + * Performs BitBlt operation for given source and destination image. + * Cropping is used according to parameter cropRegion. + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @param cropRegion + * region used to crop part of the image + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, + Rectangle cropRegion) + { + // compute top-left corner coordinates of destination image + final int dx1 = (destinationImage.getWidth() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH) >> 1; + final int dy1 = (destinationImage.getHeight() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT) >> 1; + // compute bottom-right corner coordinates of destination image + final int dx2 = dx1 + cropRegion.width; + final int dy2 = dy1 + cropRegion.height; + // compute top-left corner coordinates of source image + final int sx1 = cropRegion.x; + final int sy1 = cropRegion.y; + // compute bottom-right corner coordinates of source image + final int sx2 = sx1 + cropRegion.width; + final int sy2 = sy1 + cropRegion.height; + return graphics2d.drawImage(sourceImage, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, null); + } + + /** + * Performs BitBlt operation for given source and destination image. + * Cropping is used according to parameter cropRegion. + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @param bgcolor + * background color + * @param cropRegion + * region used to crop part of the image + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, + Color bgcolor, Rectangle cropRegion) + { + // compute top-left corner coordinates of destination image + final int dx1 = (destinationImage.getWidth() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH) >> 1; + final int dy1 = (destinationImage.getHeight() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT) >> 1; + // compute bottom-right corner coordinates of destination image + final int dx2 = dx1 + cropRegion.width; + final int dy2 = dy1 + cropRegion.height; + // compute top-left corner coordinates of source image + final int sx1 = cropRegion.x; + final int sy1 = cropRegion.y; + // compute bottom-right corner coordinates of source image + final int sx2 = sx1 + cropRegion.width; + final int sy2 = sy1 + cropRegion.height; + return graphics2d.drawImage(sourceImage, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, bgcolor, null); + } + + /** + * Performs BitBlt operation for given source and destination image. + * Selected raster operator is applied during BitBlt + * + * @param sourceImage + * source image for BitBlt + * @param destinationImage + * destination image for BitBlt graphics canvas + * @param graphics2d + * instance of class used during rendering + * @param rop + * raster operator to be applied during BibBlt + * @return if the image has completely loaded and its pixels are no longer + * being changed, then returns true. Otherwise, returns false + */ + protected static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, + BufferedImageOp rop) + { + // compute top-left corner coordinates + final int x = (destinationImage.getWidth() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_WIDTH) >> 1; + final int y = (destinationImage.getHeight() - CommonBitmapOperations.DEFAULT_TEST_IMAGE_HEIGHT) >> 1; + graphics2d.drawImage(sourceImage, rop, x, y); + return true; + } +} diff -r 406c7bcb1337 -r 0361daa31f26 src/org/gfxtest/framework/CommonBitmapOperations.java --- a/src/org/gfxtest/framework/CommonBitmapOperations.java Thu Feb 28 11:08:30 2013 +0100 +++ b/src/org/gfxtest/framework/CommonBitmapOperations.java Fri Mar 01 10:34:07 2013 +0100 @@ -56,11 +56,6 @@ public class CommonBitmapOperations { /** - * Grid size for images with checker pattern. - */ - private static final int GRID_SIZE = 20; - - /** * Width of tested buffered image. */ public final static int DEFAULT_TEST_IMAGE_WIDTH = 256; @@ -71,279 +66,9 @@ public final static int DEFAULT_TEST_IMAGE_HEIGHT = 256; /** - * Performs basic BitBlt operation for given source and destination image. - * No mirroring, scaling and/or clipping are performed during BitBlt. - * - * @param sourceImage - * source image for BitBlt - * @param destinationImage - * destination image for BitBlt graphics canvas - * @param graphics2d - * instance of class used during rendering - * @return if the image has completely loaded and its pixels are no longer - * being changed, then returns true. Otherwise, returns false + * Grid size for images with checker pattern. */ - private static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d) - { - // compute top-left corner coordinates - final int x = (destinationImage.getWidth() - DEFAULT_TEST_IMAGE_WIDTH) >> 1; - final int y = (destinationImage.getHeight() - DEFAULT_TEST_IMAGE_HEIGHT) >> 1; - return graphics2d.drawImage(sourceImage, x, y, null); - } - - /** - * Performs basic BitBlt operation for given source and destination image. - * No mirroring, scaling and/or clipping are performed during BitBlt. - * - * @param sourceImage - * source image for BitBlt - * @param destinationImage - * destination image for BitBlt graphics canvas - * @param graphics2d - * instance of class used during rendering - * @param bgcolor - * background color - * @return if the image has completely loaded and its pixels are no longer - * being changed, then returns true. Otherwise, returns false - */ - private static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, Color bgcolor) - { - // compute top-left corner coordinates - final int x = (destinationImage.getWidth() - DEFAULT_TEST_IMAGE_WIDTH) >> 1; - final int y = (destinationImage.getHeight() - DEFAULT_TEST_IMAGE_HEIGHT) >> 1; - return graphics2d.drawImage(sourceImage, x, y, bgcolor, null); - } - - /** - * Performs BitBlt operation for given source and destination image. Scaling - * are performed according to parameters width and height. - * - * @param sourceImage - * source image for BitBlt - * @param destinationImage - * destination image for BitBlt graphics canvas - * @param graphics2d - * instance of class used during rendering - * @param width - * width of the destination region - * @param height - * height of the destination region - * @return if the image has completely loaded and its pixels are no longer - * being changed, then returns true. Otherwise, returns false - */ - private static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, int width, int height) - { - // compute top-left corner coordinates - final int x = (destinationImage.getWidth() - width) >> 1; - final int y = (destinationImage.getHeight() - height) >> 1; - return graphics2d.drawImage(sourceImage, x, y, width, height, null); - } - - /** - * Performs BitBlt operation for given source and destination image. Scaling - * are performed according to parameters width and height. - * - * @param sourceImage - * source image for BitBlt - * @param destinationImage - * destination image for BitBlt graphics canvas - * @param graphics2d - * instance of class used during rendering - * @param bgcolor - * background color - * @param width - * width of the destination region - * @param height - * height of the destination region - * @return if the image has completely loaded and its pixels are no longer - * being changed, then returns true. Otherwise, returns false - */ - private static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, Color bgcolor, int width, int height) - { - // compute top-left corner coordinates - final int x = (destinationImage.getWidth() - width) >> 1; - final int y = (destinationImage.getHeight() - height) >> 1; - return graphics2d.drawImage(sourceImage, x, y, width, height, bgcolor, null); - } - - /** - * Performs BitBlt operation for given source and destination image. - * Horizontal and/or vertical flipping/mirroring are performed according to - * parameters horizontalFlip and verticalFlip. - * - * @param sourceImage - * source image for BitBlt - * @param destinationImage - * destination image for BitBlt graphics canvas - * @param graphics2d - * instance of class used during rendering - * @param horizontalFlip - * enables performing horizontal flip of image - * @param verticalFlip - * enables performing vertical flip of image - * @return if the image has completely loaded and its pixels are no longer - * being changed, then returns true. Otherwise, returns false - */ - private static boolean performBitBlt(BufferedImage sourceImage, TestImage destinationImage, Graphics2D graphics2d, - boolean horizontalFlip, boolean verticalFlip) - { - // compute top-left corner coordinates of destination image - final int dx1 = (destinationImage.getWidth() - DEFAULT_TEST_IMAGE_WIDTH) >> 1; - final int dy1 = (destinationImage.getHeight() - DEFAULT_TEST_IMAGE_HEIGHT) >> 1; - // compute bottom-right corner coordinates of destination image - final int dx2 = dx1 + DEFAULT_TEST_IMAGE_WIDTH; - final int dy2 = dy1 + DEFAULT_TEST_IMAGE_HEIGHT; - // compute top-left corner coordinates of source image - final int sx1 = horizontalFlip ? DEFAULT_TEST_IMAGE_WIDTH: 0; - final int sy1 = verticalFlip ? DEFAULT_TEST_IMAGE_HEIGHT : 0; - // compute bottom-right corner coordinates of source image - final int sx2 = horizontalFlip ? 0 : DEFAULT_TEST_IMAGE_WIDTH; - final int sy2 = verticalFlip ? 0 : DEFAULT_TEST_IMAGE_HEIGHT; - return graphics2d.drawImage(sourceImage, dx1, dy1, dx2, dy2, sx1, sy1, sx2, sy2, null); - } From jvanek at redhat.com Fri Mar 1 02:59:22 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 01 Mar 2013 11:59:22 +0100 Subject: Request for review on German localizations for icedtea-web In-Reply-To: <201302281844.r1SIiE16024434@mail-web02.excite.co.jp> References: <201302281844.r1SIiE16024434@mail-web02.excite.co.jp> Message-ID: <51308A0A.1040602@redhat.com> On 02/28/2013 07:44 PM, Jacob Wisor wrote: > Hello Jiri, > > I have tested your patch. Here are some of my notes regarding it. Thanx for check! > > "Jiri Vanek" wrote: >> On 02/22/2013 03:04 AM, Jacob Wisor wrote: >>> Hello there! >>> >>>>> Jacob, Alexander - in your emails you have come to conclusion, that there >>>>> are errors - both lexical >>>>> and semantic in original English properties. If you will have spare time, >>>>> do you think - as >>>>> separate patch, you can fix them? > > As I have seen, you have adjusted the relevant message about absolute paths. It is still kind of bothering me because it suggests that there are only two operating systems on this planet. ;) I would rather reformulate it so that it just gives a hint that the specified string is not an absolute path, regardless of its possible form on any given OS. I understand that you want to provide a helpful message to the user but in the world of Java we are probably left with nothing else than just saying that it is not an absolute path, or having specific messages for specific OSs (what I would not advise to do). Seams reasonable. All platform specific traces from this line removed. > > Btw, please note that Linux and Windows are names so that the have to begin with a capital letter in English. Further more Windows is a registered trademark and as such there has to be some notion of it in the product, documentation, or has to have an adjacent trademark symbol when mentioned. AFAIK this especially applies to US law but to many other jurisdictions as well. And, for the sake of completeness it should probably be stated as "Microsoft Windows". So as far as that is concerned, I would rather leave out mentioning explicit OS's names. Damn :) But I understand.... If you will be willing to find and mark such a cases it will be really appreciated. I think you are the only person ever who tried to think about our properties in such an point of view. > > There are even more trademark issues in the Messages.properties file, but I am going to comment on them in my proposals later. > >>>> *** OK, I can try to have look, but generally sometimes the source is quite >>>> confusing and the translator can only guess, what is the correct meaning. >>>> Rather the developers themselves should see our comments about unclear >>>> parts and rephrase them so that the meaning is clear... >>> >>> I can post some proposals for the messages in question. It should not be really that much, but a few of them are utterly confusing indeed. >>> >>> Btw, as I already wrote to Alexandr, I was able to compile at least NetX on Windows today, so I can see the German and Polish translations in the context of the running application. This helps a lot. >>> Having done that, I have also found a minor bug (I did not check whether it has been already reported) in regards to one message on Windows. I have already commented on it. It is the message that refers to absolute paths that must begin with a /. Though absolute paths on Windows do not begin with a / (it is a forbidden character anyway), icedtea-web assumes the (semi-) correct default value. The default value is an absolute Windows path beginning with a drive letter or device. Icedtea-Web still complains about it that it does not begin with a / and prints an error message about the value. It should be easy to fix. >>> >>> Anyway, I will post an updated localization patch ASAP. >>> >>> Regards, >>> Jacob >>> >> >> Wou! >> So there will be also Polish trnaslation? >> /me amazed :) >> >> And I'm happy netx is working on windows !o) >> >> I'm attaching patch to window paths. If you will be able to test, it would be nice (As there is no >> win machine around :( ) I will send [rfc] for it as separate email later. > > So as already mentioned, I have tested it. It compiles and runs. You can have a look at the output log it produces. There are still some cases where the validation does not take effect. I see:-/ btw- the IOException your log is ending with will probably be caused by not existing C:\Users\Jakob\.icedtea\security\ directory. This is definitely bug (as directory should be create din sucha case imho), but ith sould be discused in separate thread. (and probably submitted to classpath bugzilla:-/) > Btw, after reviewing your code I would rather suggest to use java.io.File.isAbsolute(). Please do not try using your own regex pattern to test that, since absolute paths on Windows NT can be even more complex beginning with "\\?\" or "\\.\". There are some further rules to that, so it is probably safest to rely on the work that has already been done by Sun or Oracle. It is even more advisable to use java.io.File.isAbsolute() because every platform specific JRE implementation has their own implementation of it and thus knows best how to check for absoluteness. This way, you do not have to even check for a specific OS before, as you do in boolean net.sourceforge.jnlp.config.BasicValueValidators.canBeWindows(java.lang.String). Although I was aware i was not covering all possible win "path beginnings" I hopped for most of them and seeing "/" in code I utterly forgot about isAbsolute method !-( shame in me:(( So followed, fixed. > > You do not need to bother about Windows stuff for now - unless you really want to. I am going to build IcedTea-Web for and on Windows anyway. There are even more flaws that should be fixed for Windows. Especially determining the user's and application's data files and folders should be fixed for Windows. So I am going take a look into that. Oh tahnk you! It is really loong time since last win build effort. I cross my fingers for you (and for us to help you) to finish this issue! New patch attached. J. ps: considering absolutism of file, as Mac is derived from Linux kernel, I believe from this point of view really just two (UNIX like and DOS-like) exists... (/me hopes O:) J. -------------- next part -------------- A non-text attachment was scrubbed... Name: fixedWinPAthValidator_2.diff Type: text/x-patch Size: 7563 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130301/040f8c0b/fixedWinPAthValidator_2.diff From bugzilla-daemon at icedtea.classpath.org Fri Mar 1 03:34:32 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 01 Mar 2013 11:34:32 +0000 Subject: [Bug 1324] I often get a crash like this, located in 'libzip.so' In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1324 boogybu at mailinator.net changed: What |Removed |Added ---------------------------------------------------------------------------- OS|Windows |Linux -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130301/eb78066d/attachment.html From adomurad at redhat.com Fri Mar 1 09:10:07 2013 From: adomurad at redhat.com (Adam Domurad) Date: Fri, 01 Mar 2013 12:10:07 -0500 Subject: [fyi][icedtea-web] backend and itw-settings for extended applets security In-Reply-To: <512F83FC.1080101@redhat.com> References: <510E532C.8040401@redhat.com> <51119426.9090000@redhat.com> <511D1142.2090501@redhat.com> <511D2AA8.2040709@redhat.com> <5124C5D0.7080309@redhat.com> <512545CD.4080305@redhat.com> <51269AAA.8090606@redhat.com> <512B8F37.9020703@redhat.com> <512F83FC.1080101@redhat.com> Message-ID: <5130E0EF.2030003@redhat.com> [ large snip ] > New version attached. > -Adam Woops. In the back&forth between 1.2 and HEAD I have forgot to add the normalization stuff. Rough location of the changes (sorry for the odd format, I just grepped them): + private static UnsignedAppletActionEntry getMatchingItem(UnsignedAppletActionStorage actionStorage, PluginBridge file) { + return actionStorage.getMatchingItem( + normalizeURLQuietly(file.getSourceLocation()).toString(), + normalizeURLQuietly(file.getCodeBase()).toString(), + file.getArchiveJars()); + } + + static private URL normalizeURLQuietly(URL url) { + try { + System.out.println("Normalizing " + url + " to " + ResourceTracker.normalizeUrl(url, false)); + return ResourceTracker.normalizeUrl(url, false); + } catch (IOException e) { + e.printStackTrace(); + } catch (URISyntaxException e) { + e.printStackTrace(); + } + return url; + } -- + } + + URL codebase = normalizeURLQuietly(file.getCodeBase()); + URL documentbase = normalizeURLQuietly(file.getSourceLocation()); + + /* Else, create a new entry */ + UrlRegEx codebaseRegex = new UrlRegEx("\\Q" + codebase + "\\E"); + UrlRegEx documentbaseRegex = new UrlRegEx("\\Q" + documentbase + "\\E"); + + UnsignedAppletActionEntry entry = new UnsignedAppletActionEntry( + behaviour, Happy hacking, -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: integrated-dialogue3-with-normalization.patch Type: text/x-patch Size: 32183 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130301/9edfa81a/integrated-dialogue3-with-normalization.patch From adomurad at icedtea.classpath.org Fri Mar 1 10:11:49 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Fri, 01 Mar 2013 18:11:49 +0000 Subject: /hg/release/icedtea-web-1.3: Fix PR1157: Applets can hang browse... Message-ID: changeset f63bdf513e9d in /hg/release/icedtea-web-1.3 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.3?cmd=changeset;node=f63bdf513e9d author: Adam Domurad date: Fri Mar 01 13:12:21 2013 -0500 Fix PR1157: Applets can hang browser after fatal exception diffstat: ChangeLog | 7 +++++++ NEWS | 3 +++ netx/net/sourceforge/jnlp/NetxPanel.java | 10 +++++++--- 3 files changed, 17 insertions(+), 3 deletions(-) diffs (54 lines): diff -r c89c2bf6707b -r f63bdf513e9d ChangeLog --- a/ChangeLog Wed Feb 06 09:22:51 2013 -0500 +++ b/ChangeLog Fri Mar 01 13:12:21 2013 -0500 @@ -1,3 +1,10 @@ +2013-03-01 Adam Domurad + + Fix PR1157: Applets can hang browser after fatal exception + * NEWS: Add entry for PR1157 + * netx/net/sourceforge/jnlp/NetxPanel.java + (runLoader): Move dispatchAppletEvent into a 'finally' block. + 2013-02-06 Adam Domurad Name threads for easier debugging/tooling. Remove 2 erroneous diff -r c89c2bf6707b -r f63bdf513e9d NEWS --- a/NEWS Wed Feb 06 09:22:51 2013 -0500 +++ b/NEWS Fri Mar 01 13:12:21 2013 -0500 @@ -8,6 +8,9 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY +New in release 1.3.3 (2012-XX-XX): + PR1157: Applets can hang browser after fatal exception + New in release 1.3.2 (2012-XX-XX): * Plugin PR1260: IcedTea-Web should not rely on GTK diff -r c89c2bf6707b -r f63bdf513e9d netx/net/sourceforge/jnlp/NetxPanel.java --- a/netx/net/sourceforge/jnlp/NetxPanel.java Wed Feb 06 09:22:51 2013 -0500 +++ b/netx/net/sourceforge/jnlp/NetxPanel.java Fri Mar 01 13:12:21 2013 -0500 @@ -163,8 +163,6 @@ // won't make it to the applet, whereas using sun.applet.AppletClassLoader // works just fine. - dispatchAppletEvent(APPLET_LOADING_COMPLETED, null); - if (applet != null) { // Stick it in the frame applet.setStub(this); @@ -176,7 +174,13 @@ } catch (Exception e) { this.appletAlive = false; e.printStackTrace(); - } + } finally { + // PR1157: This needs to occur even in the case of an exception + // so that the applet's event listeners are signaled. + // Once PluginAppletViewer.AppletEventListener is signaled PluginAppletViewer it can properly stop waiting + // in PluginAppletViewer.waitForAppletInit + dispatchAppletEvent(APPLET_LOADING_COMPLETED, null); + } } /** From bugzilla-daemon at icedtea.classpath.org Fri Mar 1 10:11:57 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 01 Mar 2013 18:11:57 +0000 Subject: [Bug 1157] icedtea-web locks up browser and future applets after first visit a page with missing code applet class. In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1157 --- Comment #5 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea-web-1.3?cmd=changeset;node=f63bdf513e9d author: Adam Domurad date: Fri Mar 01 13:12:21 2013 -0500 Fix PR1157: Applets can hang browser after fatal exception -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130301/ba31d19a/attachment.html From adomurad at icedtea.classpath.org Fri Mar 1 11:22:31 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Fri, 01 Mar 2013 19:22:31 +0000 Subject: /hg/release/icedtea-web-1.2: Fix PR1157: Applets can hang browse... Message-ID: changeset cd4a9f25808e in /hg/release/icedtea-web-1.2 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.2?cmd=changeset;node=cd4a9f25808e author: Adam Domurad date: Fri Mar 01 14:22:21 2013 -0500 Fix PR1157: Applets can hang browser after fatal exception diffstat: ChangeLog | 7 +++++++ NEWS | 3 +++ netx/net/sourceforge/jnlp/NetxPanel.java | 10 +++++++--- 3 files changed, 17 insertions(+), 3 deletions(-) diffs (54 lines): diff -r cd6608773628 -r cd4a9f25808e ChangeLog --- a/ChangeLog Mon Jan 07 11:47:37 2013 -0500 +++ b/ChangeLog Fri Mar 01 14:22:21 2013 -0500 @@ -1,3 +1,10 @@ +2013-03-01 Adam Domurad + + Fix PR1157: Applets can hang browser after fatal exception + * NEWS: Add entry for PR1157 + * netx/net/sourceforge/jnlp/NetxPanel.java + (runLoader): Move dispatchAppletEvent into a 'finally' block. + 2013-01-07 Deepak Bhole * netx/net/sourceforge/jnlp/resources/Messages.properties: Converted to diff -r cd6608773628 -r cd4a9f25808e NEWS --- a/NEWS Mon Jan 07 11:47:37 2013 -0500 +++ b/NEWS Fri Mar 01 14:22:21 2013 -0500 @@ -8,6 +8,9 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY +New in release 1.2.4 (2012-XX-XX): + - PR1157: Applets can hang browser after fatal exception + New in release 1.2.3 (2012-XX-XX): * Common - PR1161: X509VariableTrustManager does not work correctly with OpenJDK7 diff -r cd6608773628 -r cd4a9f25808e netx/net/sourceforge/jnlp/NetxPanel.java --- a/netx/net/sourceforge/jnlp/NetxPanel.java Mon Jan 07 11:47:37 2013 -0500 +++ b/netx/net/sourceforge/jnlp/NetxPanel.java Fri Mar 01 14:22:21 2013 -0500 @@ -163,8 +163,6 @@ // won't make it to the applet, whereas using sun.applet.AppletClassLoader // works just fine. - dispatchAppletEvent(APPLET_LOADING_COMPLETED, null); - if (applet != null) { // Stick it in the frame applet.setStub(this); @@ -176,7 +174,13 @@ } catch (Exception e) { this.appletAlive = false; e.printStackTrace(); - } + } finally { + // PR1157: This needs to occur even in the case of an exception + // so that the applet's event listeners are signaled. + // Once PluginAppletViewer.AppletEventListener is signaled PluginAppletViewer it can properly stop waiting + // in PluginAppletViewer.waitForAppletInit + dispatchAppletEvent(APPLET_LOADING_COMPLETED, null); + } } /** From bugzilla-daemon at icedtea.classpath.org Fri Mar 1 11:22:40 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 01 Mar 2013 19:22:40 +0000 Subject: [Bug 1157] icedtea-web locks up browser and future applets after first visit a page with missing code applet class. In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1157 --- Comment #6 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea-web-1.2?cmd=changeset;node=cd4a9f25808e author: Adam Domurad date: Fri Mar 01 14:22:21 2013 -0500 Fix PR1157: Applets can hang browser after fatal exception -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130301/795669bb/attachment.html From martinrb at google.com Fri Mar 1 16:11:12 2013 From: martinrb at google.com (Martin Buchholz) Date: Fri, 1 Mar 2013 16:11:12 -0800 Subject: Use of -Werror in langtools/make and ${warnings.fatal} Message-ID: ant can no longer be invoked directly (i.e. not via makefile) in langtools/make because ${warnings.fatal} is undefined. cd langtools/make ant -Djavac.warnings.fatal= -Dboot.java.home=$jdk6 -Dtarget.java.home=$jdk7 build ... [javac] Compiling 295 source files to /usr/local/google/home/martinrb/ws/icedtea7-forest/langtools/build/bootstrap/classes [javac] javac: invalid flag: ${warnings.fatal} Caused by this icedtea-only patch: # HG changeset patch # User andrew # Date 1345649970 -3600 # Node ID 26f5c80eb792e8536e15c82670dc38a140bb1ec3 # Parent b19919b8e86d7f17317d7cf6ca440ee4d3d4e14d PR1095: Allow -Werror to be turned off. diff --git a/make/Makefile b/make/Makefile --- a/make/Makefile +++ b/make/Makefile @@ -111,6 +111,12 @@ ANT_OPTIONS += -Ddebug.classfiles=true endif +ifeq ($(JAVAC_WARNINGS_FATAL), true) + ANT_OPTIONS += -Dwarnings.fatal=-Werror +else + ANT_OPTIONS += -Dwarnings.fatal= +endif + # Note: jdk/make/common/Defs.gmk uses LANGUAGE_VERSION (-source NN) # and the somewhat misnamed CLASS_VERSION (-target NN) ifdef TARGET_CLASS_VERSION diff --git a/make/build.properties b/make/build.properties --- a/make/build.properties +++ b/make/build.properties @@ -68,7 +68,7 @@ # set the following to -version to verify the versions of javac being used javac.version.opt = # in time, there should be no exceptions to -Xlint:all -javac.lint.opts = -Xlint:all,-deprecation -Werror +javac.lint.opts = -Xlint:all,-deprecation ${warnings.fatal} # options for the task for javac #javadoc.jls3.url=http://java.sun.com/docs/books/jls/ Here's a possible fix, that preserves the openjdk default of -Werror, renames warnings.fatal to javac.warnings.fatal, and allows escape via JAVAC_WARNINGS_FATAL=false diff --git a/make/Makefile b/make/Makefile --- a/make/Makefile +++ b/make/Makefile @@ -111,10 +111,8 @@ ANT_OPTIONS += -Ddebug.classfiles=true endif -ifeq ($(JAVAC_WARNINGS_FATAL), true) - ANT_OPTIONS += -Dwarnings.fatal=-Werror -else - ANT_OPTIONS += -Dwarnings.fatal= +ifeq ($(JAVAC_WARNINGS_FATAL), false) + ANT_OPTIONS += -Djavac.warnings.fatal= endif # Note: jdk/make/common/Defs.gmk uses LANGUAGE_VERSION (-source NN) diff --git a/make/build.properties b/make/build.properties --- a/make/build.properties +++ b/make/build.properties @@ -68,7 +68,8 @@ # set the following to -version to verify the versions of javac being used javac.version.opt = # in time, there should be no exceptions to -Xlint:all -javac.lint.opts = -Xlint:all,-deprecation ${warnings.fatal} +javac.warnings.fatal = -Werror +javac.lint.opts = -Xlint:all,-deprecation ${javac.warnings.fatal} # options for the task for javac #javadoc.jls3.url=http://java.sun.com/docs/books/jls/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130301/69bd84ae/attachment.html From bugzilla-daemon at icedtea.classpath.org Sat Mar 2 11:32:33 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 02 Mar 2013 19:32:33 +0000 Subject: [Bug 1330] New: Fatal error: SIGSEGV Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1330 Bug ID: 1330 Summary: Fatal error: SIGSEGV Classification: Unclassified Product: IcedTea Version: unspecified Hardware: x86 OS: Windows Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: i2pbugs at yopmail.com CC: unassigned at icedtea.classpath.org Created attachment 838 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=838&action=edit A fatal error has been detected by the Java Runtime Environment: This happens when running I2P (http://trac.i2p2.de/ticket/893) with OpenJDK 6 on Debian 6 amd64. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130302/2b42df22/attachment.html From stefan at complang.tuwien.ac.at Sun Mar 3 01:14:07 2013 From: stefan at complang.tuwien.ac.at (Stefan Ring) Date: Sun, 3 Mar 2013 10:14:07 +0100 Subject: icedtea6 fails to bootstrap on Fedora 17/18 Message-ID: compile: [javac] Compiling 2545 source files to /home/sr/staging/staging-build/icedtea6/openjdk.build-ecj/jaxws/build/classes [javac] ---------- [javac] 1. ERROR in /xfs/staging/staging-build/icedtea6/openjdk-ecj/jdk/src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java (at line 112) [javac] params.setSSLParameters (getSSLContext().getDefaultSSLParameters()); [javac] ^^^^^^^^^^^^^^^^^^^^^^^ [javac] The method getDefaultSSLParameters() is undefined for the type SSLContext [javac] ---------- [javac] ---------- [javac] 2. ERROR in /xfs/staging/staging-build/icedtea6/openjdk-ecj/jdk/src/share/classes/sun/net/httpserver/SSLStreams.java (at line 82) [javac] engine.setSSLParameters (sslParams); [javac] ^^^^^^^^^^^^^^^^ [javac] The method setSSLParameters(SSLParameters) is undefined for the type SSLEngine [javac] ---------- [javac] 2 problems (2 errors) BUILD FAILED /xfs/staging/staging-build/icedtea6/openjdk-ecj/jaxws/build.xml:136: Compile failed; see the compiler error output for details. Total time: 52 seconds make[4]: *** [all] Error 1 make[4]: Leaving directory `/xfs/staging/staging-build/icedtea6/openjdk-ecj/jaxws/make' make[3]: *** [jaxws-build] Error 2 make[3]: Leaving directory `/xfs/staging/staging-build/icedtea6/openjdk-ecj' make[2]: *** [build_product_image] Error 2 make[2]: Leaving directory `/xfs/staging/staging-build/icedtea6/openjdk-ecj' make[1]: *** [jdk_only] Error 2 make[1]: Leaving directory `/xfs/staging/staging-build/icedtea6/openjdk-ecj' make: *** [stamps/icedtea-ecj.stamp] Error 2 Has anyone ever investigated what causes this? I cannot find the error message on google. The same build works on Ubuntu quantal whose system Java is also no longer Java 6. No exotic configure switches used: --disable-docs --with-jdk-home=/usr/lib/jvm/java-1.5.0/gcj There shouldn't be a significant difference between these two: Ubuntu quantal: $ /usr/lib/jvm/java-1.5.0-gcj/bin/java -version java version "1.5.0" gij (GNU libgcj) version 4.7.2 Fedora 17: $ /usr/lib/jvm/java-1.5.0-gcj/bin/java -version java version "1.5.0" gij (GNU libgcj) version 4.7.2 20120921 (Red Hat 4.7.2-2) ecj is much more recent on Fedora apparently: Ubuntu quantal $ ecj -version: Eclipse Java Compiler 0.972_R35x, 3.5.1 release, Copyright IBM Corp 2000, 2009. All rights reserved. Fedora 17 $ ecj -version Eclipse Compiler for Java(TM) v20120814-155456, 3.8.2, Copyright IBM Corp 2000, 2012. All rights reserved. The only way I was able to get icedtea6 to build on Fedora 17 was to copy a binary j2sdk-image over from CentOS 6 and use that as jdk-home. From bugzilla-daemon at icedtea.classpath.org Sun Mar 3 01:30:44 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sun, 03 Mar 2013 09:30:44 +0000 Subject: [Bug 1331] New: Browser hijacked by onlinefwd.com Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1331 Bug ID: 1331 Summary: Browser hijacked by onlinefwd.com Classification: Unclassified Product: IcedTea-Web Version: unspecified Hardware: x86 OS: Linux Status: NEW Severity: critical Priority: P3 Component: Plugin Assignee: dbhole at redhat.com Reporter: davey_cole at hotmail.com CC: unassigned at icedtea.classpath.org WIth IcedTea-Web installed the browser (firefox and Chrome) in constantly hijacked by onlinefwd.com. Uninstalled IcedTea-Web and problem stopped just to confirm. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130303/f3992043/attachment.html From ptisnovs at icedtea.classpath.org Mon Mar 4 00:51:34 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 04 Mar 2013 08:51:34 +0000 Subject: /hg/rhino-tests: Added two new tests into the ScriptEngineClassT... Message-ID: changeset 4c9480106120 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=4c9480106120 author: Pavel Tisnovsky date: Mon Mar 04 09:54:38 2013 +0100 Added two new tests into the ScriptEngineClassTest: testDeclaredField() and testAnnotations(). diffstat: ChangeLog | 6 ++ src/org/RhinoTests/ScriptEngineClassTest.java | 64 +++++++++++++++++++++++++++ 2 files changed, 70 insertions(+), 0 deletions(-) diffs (94 lines): diff -r 2d0f54d43a5e -r 4c9480106120 ChangeLog --- a/ChangeLog Fri Mar 01 10:26:45 2013 +0100 +++ b/ChangeLog Mon Mar 04 09:54:38 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-04 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptEngineClassTest.java: + Added two new tests into the ScriptEngineClassTest: + testDeclaredField() and testAnnotations(). + 2013-03-01 Pavel Tisnovsky * src/org/RhinoTests/ScriptExceptionClassTest.java: diff -r 2d0f54d43a5e -r 4c9480106120 src/org/RhinoTests/ScriptEngineClassTest.java --- a/src/org/RhinoTests/ScriptEngineClassTest.java Fri Mar 01 10:26:45 2013 +0100 +++ b/src/org/RhinoTests/ScriptEngineClassTest.java Mon Mar 04 09:54:38 2013 +0100 @@ -508,6 +508,47 @@ } /** + * Test for method javax.script.ScriptEngine.getClass().getDeclaredField() + */ + protected void testGetDeclaredField() { + // following declared fields should exists + final String[] declaredFieldsThatShouldExist_jdk6 = { + "ARGV", + "FILENAME", + "ENGINE", + "ENGINE_VERSION", + "NAME", + "LANGUAGE", + "LANGUAGE_VERSION", + }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + "ARGV", + "FILENAME", + "ENGINE", + "ENGINE_VERSION", + "NAME", + "LANGUAGE", + "LANGUAGE_VERSION", + }; + + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + + // check if all required declared fields really exists + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + try { + Field field = this.scriptEngineClass.getDeclaredField(declaredFieldThatShouldExists); + String fieldName = field.getName(); + assertTrue(fieldName.equals(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.ScriptEngine.getClass().getMethods() */ protected void testGetMethods() { @@ -668,6 +709,29 @@ } /** + * Test for method javax.script.ScriptEngine.getClass().getAnnotation() + */ + protected void testGetAnnotation() { + Annotation annotation; + annotation = this.scriptEngineClass.getAnnotation(java.lang.annotation.Annotation.class); + assertNull(annotation, "annotation java.lang.annotation.Annotation should not be returned"); + annotation = this.scriptEngineClass.getAnnotation(java.lang.annotation.Documented.class); + assertNull(annotation, "annotation java.lang.annotation.Documented should not be returned"); + annotation = this.scriptEngineClass.getAnnotation(java.lang.annotation.Inherited.class); + assertNull(annotation, "annotation java.lang.annotation.Inherited should not be returned"); + annotation = this.scriptEngineClass.getAnnotation(java.lang.annotation.Retention.class); + assertNull(annotation, "annotation java.lang.annotation.Retention should not be returned"); + annotation = this.scriptEngineClass.getAnnotation(java.lang.annotation.Target.class); + assertNull(annotation, "annotation java.lang.annotation.Target should not be returned"); + annotation = this.scriptEngineClass.getAnnotation(java.lang.Deprecated.class); + assertNull(annotation, "annotation java.lang.Deprecated should not be returned"); + annotation = this.scriptEngineClass.getAnnotation(java.lang.Override.class); + assertNull(annotation, "annotation java.lang.Override should not be returned"); + annotation = this.scriptEngineClass.getAnnotation(java.lang.SuppressWarnings.class); + assertNull(annotation, "annotation java.lang.SuppressWarnings should not be returned"); + } + + /** * Test for instanceof operator applied to a class javax.script.ScriptEngine */ @SuppressWarnings("cast") From doko at ubuntu.com Mon Mar 4 00:56:59 2013 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 04 Mar 2013 16:56:59 +0800 Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: References: Message-ID: <513461DB.4000603@ubuntu.com> Am 03.03.2013 17:14, schrieb Stefan Ring: > ecj is much more recent on Fedora apparently: > > Ubuntu quantal $ ecj -version: > Eclipse Java Compiler 0.972_R35x, 3.5.1 release, Copyright IBM Corp > 2000, 2009. All rights reserved. > Fedora 17 $ ecj -version > Eclipse Compiler for Java(TM) v20120814-155456, 3.8.2, Copyright IBM > Corp 2000, 2012. All rights reserved. Debian and Ubuntu use the same sources to provide both ecj and ecj1. ftp://sourceware.org/pub/java/ still has 3.5 as the latest version available. If Fedora ships an updated ecj1, then it would be nice to see this "upstream" as well. Matthias From ptisnovs at icedtea.classpath.org Mon Mar 4 01:07:53 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 04 Mar 2013 09:07:53 +0000 Subject: /hg/gfx-test: Added stub for new test suite: PrintTestBitBltUsin... Message-ID: changeset 20e676c3a1a2 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=20e676c3a1a2 author: Pavel Tisnovsky date: Mon Mar 04 10:10:58 2013 +0100 Added stub for new test suite: PrintTestBitBltUsingBgColorAlpha.java diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/PrintTestBitBltUsingBgColorAlpha.java | 84 ++++++++++ 2 files changed, 89 insertions(+), 0 deletions(-) diffs (100 lines): diff -r 0361daa31f26 -r 20e676c3a1a2 ChangeLog --- a/ChangeLog Fri Mar 01 10:34:07 2013 +0100 +++ b/ChangeLog Mon Mar 04 10:10:58 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-04 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/PrintTestBitBltUsingBgColorAlpha.java: + Added stub for new test suite. + 2013-03-01 Pavel Tisnovsky * src/org/gfxtest/framework/BitBltOperations.java: diff -r 0361daa31f26 -r 20e676c3a1a2 src/org/gfxtest/testsuites/PrintTestBitBltUsingBgColorAlpha.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/testsuites/PrintTestBitBltUsingBgColorAlpha.java Mon Mar 04 10:10:58 2013 +0100 @@ -0,0 +1,84 @@ +/* + Java gfx-test framework + + Copyright (C) 2013 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.testsuites; + +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; + + + +import org.gfxtest.framework.CommonBitmapOperations; +import org.gfxtest.framework.PrintTest; +import org.gfxtest.framework.TestImage; +import org.gfxtest.framework.TestResult; +import org.gfxtest.framework.annotations.BitBltOperation; +import org.gfxtest.framework.annotations.BitBltOperations; +import org.gfxtest.framework.annotations.GraphicsPrimitive; +import org.gfxtest.framework.annotations.GraphicsPrimitives; +import org.gfxtest.framework.annotations.RenderStyle; +import org.gfxtest.framework.annotations.RenderStyles; +import org.gfxtest.framework.annotations.TestType; +import org.gfxtest.framework.annotations.TestTypes; +import org.gfxtest.framework.annotations.Transformation; +import org.gfxtest.framework.annotations.Transformations; +import org.gfxtest.framework.annotations.Zoom; + + + +/** + * This test check the rendering of buffered images (so called bit block + * transfers or Bit Blt) created by various constructors. Such images are + * rendered with explicitly set background color which should affect + * transparent or semi-transparent images. + * + * @author Pavel Tisnovsky + */ + at TestType(TestTypes.PRINT_TEST) + at GraphicsPrimitive(GraphicsPrimitives.COMMON_BITMAP) + at RenderStyle(RenderStyles.NORMAL) + at BitBltOperation(BitBltOperations.BITBLT) + at Transformation(Transformations.NONE) + at Zoom(1) +public class PrintTestBitBltUsingBgColorAlpha extends PrintTest +{ +} + From bugzilla-daemon at icedtea.classpath.org Mon Mar 4 06:34:31 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 04 Mar 2013 14:34:31 +0000 Subject: [Bug 1331] Browser hijacked by onlinefwd.com In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1331 Adam Domurad changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |adomurad at redhat.com --- Comment #1 from Adam Domurad --- Hi thanks for the report. Do you have any information on how online fwd interacts with the plugin, and what the hijacking entails ? Also, what version of icedtea-web are you running ? Also it may be worth mentioning to NOT visit this website if it is indeed malicious. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130304/54d550d6/attachment.html From omajid at icedtea.classpath.org Mon Mar 4 13:28:02 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 21:28:02 +0000 Subject: /hg/release/icedtea6-1.11: 3 new changesets Message-ID: changeset 9263374ed53e in /hg/release/icedtea6-1.11 details: http://icedtea.classpath.org/hg/release/icedtea6-1.11?cmd=changeset;node=9263374ed53e author: Omair Majid date: Mon Mar 04 15:14:19 2013 -0500 Add patches for the next security update. changeset 4892e006b295 in /hg/release/icedtea6-1.11 details: http://icedtea.classpath.org/hg/release/icedtea6-1.11?cmd=changeset;node=4892e006b295 author: Omair Majid date: Mon Mar 04 15:17:18 2013 -0500 Prepare for 1.11.9 release. changeset d5f5daa65a99 in /hg/release/icedtea6-1.11 details: http://icedtea.classpath.org/hg/release/icedtea6-1.11?cmd=changeset;node=d5f5daa65a99 author: Omair Majid date: Mon Mar 04 16:20:35 2013 -0500 Added tag icedtea6-1.11.9 for changeset 4892e006b295 diffstat: .hgtags | 1 + ChangeLog | 13 + Makefile.am | 4 +- NEWS | 5 +- configure.ac | 2 +- patches/security/20130304/8007014.patch | 463 +++++++++++++++++++++++++++++ patches/security/20130304/8007675.patch | 509 ++++++++++++++++++++++++++++++++ 7 files changed, 994 insertions(+), 3 deletions(-) diffs (truncated from 1046 to 500 lines): diff -r 72077c1a7451 -r d5f5daa65a99 .hgtags --- a/.hgtags Wed Feb 20 13:06:37 2013 +1100 +++ b/.hgtags Mon Mar 04 16:20:35 2013 -0500 @@ -31,3 +31,4 @@ 5abf1a204fb2d79db87beb5735f4cff245e90ff6 icedtea6-1.11.6 ae00216847f46fa26899a5317b75ea07edd5cb19 icedtea6-1.11.7 c529222b0628a112d53bfe3dafa7292df9d6e683 icedtea6-1.11.8 +4892e006b2951600c9131e595096f8eceae5ffe8 icedtea6-1.11.9 diff -r 72077c1a7451 -r d5f5daa65a99 ChangeLog --- a/ChangeLog Wed Feb 20 13:06:37 2013 +1100 +++ b/ChangeLog Mon Mar 04 16:20:35 2013 -0500 @@ -1,3 +1,16 @@ +2013-03-04 Omair Majid + + * NEWS: Add release date of 1.11.9. + * configure.ac: Prepare for 1.11.9. + +2013-03-04 Omair Majid + + * NEWS: List new patches. + * Makefile.am (ICEDTEA_PATCHES): Add new patches. + * patches/security/20130304/8007014.patch, + * patches/security/20130304/8007675.patch: + New patches for the next security update + 2013-02-20 Andrew John Hughes * configure.ac: Bump to 1.11.9pre. diff -r 72077c1a7451 -r d5f5daa65a99 Makefile.am --- a/Makefile.am Wed Feb 20 13:06:37 2013 +1100 +++ b/Makefile.am Mon Mar 04 16:20:35 2013 -0500 @@ -278,7 +278,9 @@ patches/security/20130219/8006446.patch \ patches/security/20130219/8006777.patch \ patches/openjdk/7123519-problems_with_certification_path.patch \ - patches/security/20130219/8007688.patch + patches/security/20130219/8007688.patch \ + patches/security/20130304/8007014.patch \ + patches/security/20130304/8007675.patch SPECIAL_SECURITY_PATCH = patches/security/20120214/7112642.patch diff -r 72077c1a7451 -r d5f5daa65a99 NEWS --- a/NEWS Wed Feb 20 13:06:37 2013 +1100 +++ b/NEWS Mon Mar 04 16:20:35 2013 -0500 @@ -10,7 +10,10 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 1.11.9 (2013-XX-XX): +New in release 1.11.9 (2013-03-04): +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion New in release 1.11.8 (2013-02-19): diff -r 72077c1a7451 -r d5f5daa65a99 configure.ac --- a/configure.ac Wed Feb 20 13:06:37 2013 +1100 +++ b/configure.ac Mon Mar 04 16:20:35 2013 -0500 @@ -1,4 +1,4 @@ -AC_INIT([icedtea6],[1.11.9pre],[distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6],[1.11.9],[distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) diff -r 72077c1a7451 -r d5f5daa65a99 patches/security/20130304/8007014.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/security/20130304/8007014.patch Mon Mar 04 16:20:35 2013 -0500 @@ -0,0 +1,463 @@ +# HG changeset patch +# User bae +# Date 1360857111 -14400 +# Node ID 0dcf8ad3e63dfa4bb929bf2de99b95f18f5ea1c8 +# Parent 8a980f97e66a6433a1cdc946c90aff4433ea505c +8007014: Improve image handling +Reviewed-by: prr, mschoene, jgodinez + +--- openjdk/jdk/src/share/classes/sun/awt/image/ByteComponentRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/ByteComponentRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -868,6 +868,15 @@ public class ByteComponentRaster extends + * or if data buffer has not enough capacity. + */ + protected final void verify() { ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ + for (int i = 0; i < dataOffsets.length; i++) { + if (dataOffsets[i] < 0) { + throw new RasterFormatException("Data offsets for band " + i +@@ -905,12 +914,13 @@ public class ByteComponentRaster extends + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { +- size = lastPixelOffset + dataOffsets[i]; + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + + } ++ ++ size = lastPixelOffset + dataOffsets[i]; + + if (size > maxSize) { + maxSize = size; +--- openjdk/jdk/src/share/classes/sun/awt/image/BytePackedRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/BytePackedRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -1368,11 +1368,35 @@ public class BytePackedRaster extends Su + throw new RasterFormatException("Data offsets must be >= 0"); + } + ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ ++ ++ /* ++ * pixelBitstride was verified in constructor, so just make ++ * sure that it is safe to multiply it by width. ++ */ ++ if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ ++ if (scanlineStride < 0 || ++ scanlineStride > (Integer.MAX_VALUE / height)) ++ { ++ throw new RasterFormatException("Invalid scanline stride"); ++ } ++ + int lastbit = (dataBitOffset + + (height-1) * scanlineStride * 8 + + (width-1) * pixelBitStride + + pixelBitStride - 1); +- if (lastbit / 8 >= data.length) { ++ if (lastbit < 0 || lastbit / 8 >= data.length) { + throw new RasterFormatException("raster dimensions overflow " + + "array bounds"); + } +--- openjdk/jdk/src/share/classes/sun/awt/image/IntegerComponentRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/IntegerComponentRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -208,7 +208,7 @@ public class IntegerComponentRaster exte + " SinglePixelPackedSampleModel"); + } + +- verify(false); ++ verify(); + } + + +@@ -629,16 +629,26 @@ public class IntegerComponentRaster exte + } + + /** +- * Verify that the layout parameters are consistent with +- * the data. If strictCheck +- * is false, this method will check for ArrayIndexOutOfBounds conditions. If +- * strictCheck is true, this method will check for additional error +- * conditions such as line wraparound (width of a line greater than +- * the scanline stride). +- * @return String Error string, if the layout is incompatible with +- * the data. Otherwise returns null. +- */ +- private void verify (boolean strictCheck) { ++ * Verify that the layout parameters are consistent with the data. ++ * ++ * The method verifies whether scanline stride and pixel stride do not ++ * cause an integer overflow during calculation of a position of the pixel ++ * in data buffer. It also verifies whether the data buffer has enough data ++ * to correspond the raster layout attributes. ++ * ++ * @throws RasterFormatException if an integer overflow is detected, ++ * or if data buffer has not enough capacity. ++ */ ++ protected final void verify() { ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ + if (dataOffsets[0] < 0) { + throw new RasterFormatException("Data offset ("+dataOffsets[0]+ + ") must be >= 0"); +@@ -647,17 +657,46 @@ public class IntegerComponentRaster exte + int maxSize = 0; + int size; + +- for (int i=0; i < numDataElements; i++) { +- size = (height-1)*scanlineStride + (width-1)*pixelStride + +- dataOffsets[i]; ++ // we can be sure that width and height are greater than 0 ++ if (scanlineStride < 0 || ++ scanlineStride > (Integer.MAX_VALUE / height)) ++ { ++ // integer overflow ++ throw new RasterFormatException("Incorrect scanline stride: " ++ + scanlineStride); ++ } ++ int lastScanOffset = (height - 1) * scanlineStride; ++ ++ if (pixelStride < 0 || ++ pixelStride > (Integer.MAX_VALUE / width)) ++ { ++ // integer overflow ++ throw new RasterFormatException("Incorrect pixel stride: " ++ + pixelStride); ++ } ++ int lastPixelOffset = (width - 1) * pixelStride; ++ ++ if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { ++ // integer overflow ++ throw new RasterFormatException("Incorrect raster attributes"); ++ } ++ lastPixelOffset += lastScanOffset; ++ ++ for (int i = 0; i < numDataElements; i++) { ++ if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { ++ throw new RasterFormatException("Incorrect band offset: " ++ + dataOffsets[i]); ++ } ++ ++ size = lastPixelOffset + dataOffsets[i]; ++ + if (size > maxSize) { + maxSize = size; + } + } + if (data.length < maxSize) { +- throw new RasterFormatException("Data array too small (should be "+ +- maxSize +- +" but is "+data.length+" )"); ++ throw new RasterFormatException("Data array too small (should be " ++ + maxSize + " )"); + } + } + +--- openjdk/jdk/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -151,7 +151,7 @@ public class IntegerInterleavedRaster ex + throw new RasterFormatException("IntegerInterleavedRasters must have"+ + " SinglePixelPackedSampleModel"); + } +- verify(false); ++ verify(); + } + + +@@ -540,31 +540,6 @@ public class IntegerInterleavedRaster ex + return createCompatibleWritableRaster(width,height); + } + +- /** +- * Verify that the layout parameters are consistent with +- * the data. If strictCheck +- * is false, this method will check for ArrayIndexOutOfBounds conditions. If +- * strictCheck is true, this method will check for additional error +- * conditions such as line wraparound (width of a line greater than +- * the scanline stride). +- * @return String Error string, if the layout is incompatible with +- * the data. Otherwise returns null. +- */ +- private void verify (boolean strictCheck) { +- int maxSize = 0; +- int size; +- +- size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; +- if (size > maxSize) { +- maxSize = size; +- } +- if (data.length < maxSize) { +- throw new RasterFormatException("Data array too small (should be "+ +- maxSize +- +" but is "+data.length+" )"); +- } +- } +- + public String toString() { + return new String ("IntegerInterleavedRaster: width = "+width + +" height = " + height +--- openjdk/jdk/src/share/classes/sun/awt/image/ShortComponentRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/ShortComponentRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -802,6 +802,15 @@ public class ShortComponentRaster extend + * or if data buffer has not enough capacity. + */ + protected final void verify() { ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ + for (int i = 0; i < dataOffsets.length; i++) { + if (dataOffsets[i] < 0) { + throw new RasterFormatException("Data offsets for band " + i +@@ -839,11 +848,12 @@ public class ShortComponentRaster extend + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { +- size = lastPixelOffset + dataOffsets[i]; + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + } ++ ++ size = lastPixelOffset + dataOffsets[i]; + + if (size > maxSize) { + maxSize = size; +--- openjdk/jdk/src/share/native/sun/awt/image/awt_parseImage.c Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/native/sun/awt/image/awt_parseImage.c Thu Feb 14 19:51:51 2013 +0400 +@@ -34,6 +34,7 @@ + #include "java_awt_color_ColorSpace.h" + #include "awt_Mlib.h" + #include "safe_alloc.h" ++#include "safe_math.h" + + static int setHints(JNIEnv *env, BufImageS_t *imageP); + +--- openjdk/jdk/src/share/native/sun/awt/medialib/awt_ImagingLib.c Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/awt_ImagingLib.c Thu Feb 14 19:51:51 2013 +0400 +@@ -42,6 +42,7 @@ + #include "awt_Mlib.h" + #include "gdefs.h" + #include "safe_alloc.h" ++#include "safe_math.h" + + /*************************************************************************** + * Definitions * +@@ -1993,13 +1994,23 @@ cvtCustomToDefault(JNIEnv *env, BufImage + unsigned char *dP = dataP; + #define NUM_LINES 10 + int numLines = NUM_LINES; +- int nbytes = rasterP->width*4*NUM_LINES; ++ /* it is safe to calculate the scan length, because width has been verified ++ * on creation of the mlib image ++ */ ++ int scanLength = rasterP->width * 4; ++ ++ int nbytes = 0; ++ if (!SAFE_TO_MULT(numLines, scanLength)) { ++ return -1; ++ } ++ ++ nbytes = numLines * scanLength; + + for (y=0; y < rasterP->height; y+=numLines) { + /* getData, one scanline at a time */ + if (y+numLines > rasterP->height) { + numLines = rasterP->height - y; +- nbytes = rasterP->width*4*numLines; ++ nbytes = numLines * scanLength; + } + jpixels = (*env)->CallObjectMethod(env, imageP->jimage, + g_BImgGetRGBMID, 0, y, +@@ -2129,8 +2140,14 @@ allocateArray(JNIEnv *env, BufImageS_t * + if (cvtToDefault) { + int status = 0; + *mlibImagePP = (*sMlibSysFns.createFP)(MLIB_BYTE, 4, width, height); ++ if (*mlibImagePP == NULL) { ++ return -1; ++ } + cDataP = (unsigned char *) mlib_ImageGetData(*mlibImagePP); +- /* Make sure the image is cleared */ ++ /* Make sure the image is cleared. ++ * NB: the image dimension is already verified, so we can ++ * safely calculate the length of the buffer. ++ */ + memset(cDataP, 0, width*height*4); + + if (!isSrc) { +@@ -2380,6 +2397,9 @@ allocateRasterArray(JNIEnv *env, RasterS + case sun_awt_image_IntegerComponentRaster_TYPE_BYTE_PACKED_SAMPLES: + *mlibImagePP = (*sMlibSysFns.createFP)(MLIB_BYTE, rasterP->numBands, + width, height); ++ if (*mlibImagePP == NULL) { ++ return -1; ++ } + if (!isSrc) return 0; + cDataP = (unsigned char *) mlib_ImageGetData(*mlibImagePP); + return expandPackedBCR(env, rasterP, -1, cDataP); +@@ -2388,6 +2408,9 @@ allocateRasterArray(JNIEnv *env, RasterS + if (rasterP->sppsm.maxBitSize <= 8) { + *mlibImagePP = (*sMlibSysFns.createFP)(MLIB_BYTE, rasterP->numBands, + width, height); ++ if (*mlibImagePP == NULL) { ++ return -1; ++ } + if (!isSrc) return 0; + cDataP = (unsigned char *) mlib_ImageGetData(*mlibImagePP); + return expandPackedSCR(env, rasterP, -1, cDataP); +@@ -2397,6 +2420,9 @@ allocateRasterArray(JNIEnv *env, RasterS + if (rasterP->sppsm.maxBitSize <= 8) { + *mlibImagePP = (*sMlibSysFns.createFP)(MLIB_BYTE, rasterP->numBands, + width, height); ++ if (*mlibImagePP == NULL) { ++ return -1; ++ } + if (!isSrc) return 0; + cDataP = (unsigned char *) mlib_ImageGetData(*mlibImagePP); + return expandPackedICR(env, rasterP, -1, cDataP); +--- openjdk/jdk/src/share/native/sun/awt/medialib/mlib_ImageCreate.c Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/mlib_ImageCreate.c Thu Feb 14 19:51:51 2013 +0400 +@@ -120,6 +120,7 @@ + #include "mlib_image.h" + #include "mlib_ImageRowTable.h" + #include "mlib_ImageCreate.h" ++#include "safe_math.h" + + /***************************************************************/ + mlib_image* mlib_ImageSet(mlib_image *image, +@@ -247,25 +248,47 @@ mlib_image *mlib_ImageCreate(mlib_type t + return NULL; + }; + ++ if (!SAFE_TO_MULT(width, channels)) { ++ return NULL; ++ } ++ ++ wb = width * channels; ++ + switch (type) { + case MLIB_DOUBLE: +- wb = width * channels * 8; ++ if (!SAFE_TO_MULT(wb, 8)) { ++ return NULL; ++ } ++ wb *= 8; + break; + case MLIB_FLOAT: + case MLIB_INT: +- wb = width * channels * 4; ++ if (!SAFE_TO_MULT(wb, 4)) { ++ return NULL; ++ } ++ wb *= 4; + break; + case MLIB_USHORT: + case MLIB_SHORT: +- wb = width * channels * 2; ++ if (!SAFE_TO_MULT(wb, 4)) { ++ return NULL; ++ } ++ wb *= 2; + break; + case MLIB_BYTE: +- wb = width * channels; ++ // wb is ready + break; + case MLIB_BIT: +- wb = (width * channels + 7) / 8; ++ if (!SAFE_TO_ADD(7, wb)) { ++ return NULL; ++ } ++ wb = (wb + 7) / 8; + break; + default: ++ return NULL; ++ } ++ ++ if (!SAFE_TO_MULT(wb, height)) { + return NULL; + } + +--- openjdk/jdk/src/share/native/sun/awt/medialib/safe_alloc.h Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/safe_alloc.h Thu Feb 14 19:51:51 2013 +0400 +@@ -41,10 +41,4 @@ + (((w) > 0) && ((h) > 0) && ((sz) > 0) && \ + (((0xffffffffu / ((juint)(w))) / ((juint)(h))) > ((juint)(sz)))) + +-#define SAFE_TO_MULT(a, b) \ +- (((a) > 0) && ((b) >= 0) && ((0x7fffffff / (a)) > (b))) +- +-#define SAFE_TO_ADD(a, b) \ +- (((a) >= 0) && ((b) >= 0) && ((0x7fffffff - (a)) > (b))) +- + #endif // __SAFE_ALLOC_H__ +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/safe_math.h Thu Feb 14 19:51:51 2013 +0400 +@@ -0,0 +1,35 @@ ++/* ++ * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. From omajid at icedtea.classpath.org Mon Mar 4 13:52:37 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 21:52:37 +0000 Subject: /hg/release/icedtea7-forest-2.3: Added tag icedtea-2.3.8 for cha... Message-ID: changeset ed02a059ea15 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=ed02a059ea15 author: Omair Majid date: Mon Mar 04 16:51:00 2013 -0500 Added tag icedtea-2.3.8 for changeset 506161df1c48 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 506161df1c48 -r ed02a059ea15 .hgtags --- a/.hgtags Thu Feb 14 22:10:19 2013 +0000 +++ b/.hgtags Mon Mar 04 16:51:00 2013 -0500 @@ -250,3 +250,4 @@ 0000000000000000000000000000000000000000 icedtea-2.3.6 0e569b50110e197ae20f7b8ef0a26e41f987fee6 icedtea-2.3.6 dd8d1a8f222f0e93db652cd5127644ab737eef5d icedtea-2.3.7 +506161df1c48a9c9f7f0d8db7108a0b1ab83493b icedtea-2.3.8 From omajid at icedtea.classpath.org Mon Mar 4 13:52:41 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 21:52:41 +0000 Subject: /hg/release/icedtea7-forest-2.3/corba: Added tag icedtea-2.3.8 f... Message-ID: changeset 516aae5f27cf in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=516aae5f27cf author: Omair Majid date: Mon Mar 04 16:51:00 2013 -0500 Added tag icedtea-2.3.8 for changeset 82e58144c3fb diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 82e58144c3fb -r 516aae5f27cf .hgtags --- a/.hgtags Thu Feb 14 22:10:21 2013 +0000 +++ b/.hgtags Mon Mar 04 16:51:00 2013 -0500 @@ -250,3 +250,4 @@ 0000000000000000000000000000000000000000 icedtea-2.3.6 329f1a69c6cfacd24290ae36780c37a6f69ecf62 icedtea-2.3.6 97a8b625f6e95b8a2b7419fbc20682bd120f7fe2 icedtea-2.3.7 +82e58144c3fb82cdf7147f9475b9fb13a8b0d8c6 icedtea-2.3.8 From omajid at icedtea.classpath.org Mon Mar 4 13:52:44 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 21:52:44 +0000 Subject: /hg/release/icedtea7-forest-2.3/hotspot: Added tag icedtea-2.3.8... Message-ID: changeset a152dced63a1 in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=a152dced63a1 author: Omair Majid date: Mon Mar 04 16:51:00 2013 -0500 Added tag icedtea-2.3.8 for changeset 104e2c65892d diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 104e2c65892d -r a152dced63a1 .hgtags --- a/.hgtags Thu Feb 14 22:10:25 2013 +0000 +++ b/.hgtags Mon Mar 04 16:51:00 2013 -0500 @@ -375,3 +375,4 @@ 0000000000000000000000000000000000000000 icedtea-2.3.6 19e37453ab1be02d146ace33f19d73719c119eaf icedtea-2.3.6 bc0de5a0ece28d5e8035cc7659cd6f71a838882a icedtea-2.3.7 +104e2c65892dc642bcad698d0b21cecb08e67c9e icedtea-2.3.8 From omajid at icedtea.classpath.org Mon Mar 4 13:52:48 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 21:52:48 +0000 Subject: /hg/release/icedtea7-forest-2.3/jaxp: Added tag icedtea-2.3.8 fo... Message-ID: changeset 1fbe99283d97 in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=1fbe99283d97 author: Omair Majid date: Mon Mar 04 16:51:01 2013 -0500 Added tag icedtea-2.3.8 for changeset 1d46a56eb51c diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 1d46a56eb51c -r 1fbe99283d97 .hgtags --- a/.hgtags Thu Feb 14 22:10:21 2013 +0000 +++ b/.hgtags Mon Mar 04 16:51:01 2013 -0500 @@ -250,3 +250,4 @@ 0000000000000000000000000000000000000000 icedtea-2.3.6 387d46be7c40696fcadd9f15c5538e8517af79d1 icedtea-2.3.6 d7feafb8427bd47a4b9239ff529999d65b0936ac icedtea-2.3.7 +1d46a56eb51c0efa3ef68a8aab67b3d992e36645 icedtea-2.3.8 From omajid at icedtea.classpath.org Mon Mar 4 13:52:52 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 21:52:52 +0000 Subject: /hg/release/icedtea7-forest-2.3/jaxws: Added tag icedtea-2.3.8 f... Message-ID: changeset 3c7be82314bf in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=3c7be82314bf author: Omair Majid date: Mon Mar 04 16:51:01 2013 -0500 Added tag icedtea-2.3.8 for changeset b9590aa972b9 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r b9590aa972b9 -r 3c7be82314bf .hgtags --- a/.hgtags Thu Feb 14 22:10:22 2013 +0000 +++ b/.hgtags Mon Mar 04 16:51:01 2013 -0500 @@ -250,3 +250,4 @@ 0000000000000000000000000000000000000000 icedtea-2.3.6 4390dfdde97c7de6b3a12fe59586188fa3ad535c icedtea-2.3.6 b900024eb4ba87ac1653a6cc6ff30d0809f5dcb5 icedtea-2.3.7 +b9590aa972b990f954c6d16c8a1acf83d5e56cbf icedtea-2.3.8 From omajid at icedtea.classpath.org Mon Mar 4 13:52:57 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 21:52:57 +0000 Subject: /hg/release/icedtea7-forest-2.3/jdk: 3 new changesets Message-ID: changeset fa09ada25c47 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=fa09ada25c47 author: bae date: Thu Feb 14 19:51:51 2013 +0400 8007014: Improve image handling Reviewed-by: prr, mschoene, jgodinez changeset 4f97a6256473 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=4f97a6256473 author: bae date: Thu Feb 21 11:25:43 2013 +0400 8007675: Improve color conversion Reviewed-by: prr, jgodinez changeset deac45dc94f0 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=deac45dc94f0 author: Omair Majid date: Mon Mar 04 16:51:01 2013 -0500 Added tag icedtea-2.3.8 for changeset 4f97a6256473 diffstat: .hgtags | 1 + src/share/classes/sun/awt/image/ByteComponentRaster.java | 12 +- src/share/classes/sun/awt/image/BytePackedRaster.java | 26 +- src/share/classes/sun/awt/image/IntegerComponentRaster.java | 71 +++- src/share/classes/sun/awt/image/IntegerInterleavedRaster.java | 27 +- src/share/classes/sun/awt/image/ShortComponentRaster.java | 12 +- src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java | 101 +++++- src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java | 160 +++++---- src/share/native/sun/awt/image/awt_parseImage.c | 1 + src/share/native/sun/awt/medialib/awt_ImagingLib.c | 32 +- src/share/native/sun/awt/medialib/mlib_ImageCreate.c | 33 +- src/share/native/sun/awt/medialib/safe_alloc.h | 6 - src/share/native/sun/awt/medialib/safe_math.h | 35 ++ 13 files changed, 380 insertions(+), 137 deletions(-) diffs (truncated from 895 to 500 lines): diff -r 7a8a0818efad -r deac45dc94f0 .hgtags --- a/.hgtags Tue Dec 04 14:02:08 2012 +0000 +++ b/.hgtags Mon Mar 04 16:51:01 2013 -0500 @@ -266,3 +266,4 @@ 0000000000000000000000000000000000000000 icedtea-2.3.7 0000000000000000000000000000000000000000 icedtea-2.3.7 afc09edc979709bd0cf9abb342704dbe6587123e icedtea-2.3.7 +4f97a6256473be83ea10038ff236a28176691f4a icedtea-2.3.8 diff -r 7a8a0818efad -r deac45dc94f0 src/share/classes/sun/awt/image/ByteComponentRaster.java --- a/src/share/classes/sun/awt/image/ByteComponentRaster.java Tue Dec 04 14:02:08 2012 +0000 +++ b/src/share/classes/sun/awt/image/ByteComponentRaster.java Mon Mar 04 16:51:01 2013 -0500 @@ -868,6 +868,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -905,13 +914,14 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 7a8a0818efad -r deac45dc94f0 src/share/classes/sun/awt/image/BytePackedRaster.java --- a/src/share/classes/sun/awt/image/BytePackedRaster.java Tue Dec 04 14:02:08 2012 +0000 +++ b/src/share/classes/sun/awt/image/BytePackedRaster.java Mon Mar 04 16:51:01 2013 -0500 @@ -1368,11 +1368,35 @@ throw new RasterFormatException("Data offsets must be >= 0"); } + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + + + /* + * pixelBitstride was verified in constructor, so just make + * sure that it is safe to multiply it by width. + */ + if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { + throw new RasterFormatException("Invalid raster dimension"); + } + + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + throw new RasterFormatException("Invalid scanline stride"); + } + int lastbit = (dataBitOffset + (height-1) * scanlineStride * 8 + (width-1) * pixelBitStride + pixelBitStride - 1); - if (lastbit / 8 >= data.length) { + if (lastbit < 0 || lastbit / 8 >= data.length) { throw new RasterFormatException("raster dimensions overflow " + "array bounds"); } diff -r 7a8a0818efad -r deac45dc94f0 src/share/classes/sun/awt/image/IntegerComponentRaster.java --- a/src/share/classes/sun/awt/image/IntegerComponentRaster.java Tue Dec 04 14:02:08 2012 +0000 +++ b/src/share/classes/sun/awt/image/IntegerComponentRaster.java Mon Mar 04 16:51:01 2013 -0500 @@ -208,7 +208,7 @@ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -629,16 +629,26 @@ } /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. + * Verify that the layout parameters are consistent with the data. + * + * The method verifies whether scanline stride and pixel stride do not + * cause an integer overflow during calculation of a position of the pixel + * in data buffer. It also verifies whether the data buffer has enough data + * to correspond the raster layout attributes. + * + * @throws RasterFormatException if an integer overflow is detected, + * or if data buffer has not enough capacity. */ - private void verify (boolean strictCheck) { + protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + if (dataOffsets[0] < 0) { throw new RasterFormatException("Data offset ("+dataOffsets[0]+ ") must be >= 0"); @@ -647,17 +657,46 @@ int maxSize = 0; int size; - for (int i=0; i < numDataElements; i++) { - size = (height-1)*scanlineStride + (width-1)*pixelStride + - dataOffsets[i]; + // we can be sure that width and height are greater than 0 + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + // integer overflow + throw new RasterFormatException("Incorrect scanline stride: " + + scanlineStride); + } + int lastScanOffset = (height - 1) * scanlineStride; + + if (pixelStride < 0 || + pixelStride > (Integer.MAX_VALUE / width)) + { + // integer overflow + throw new RasterFormatException("Incorrect pixel stride: " + + pixelStride); + } + int lastPixelOffset = (width - 1) * pixelStride; + + if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { + // integer overflow + throw new RasterFormatException("Incorrect raster attributes"); + } + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + } + + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } } if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); + throw new RasterFormatException("Data array too small (should be " + + maxSize + " )"); } } diff -r 7a8a0818efad -r deac45dc94f0 src/share/classes/sun/awt/image/IntegerInterleavedRaster.java --- a/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Tue Dec 04 14:02:08 2012 +0000 +++ b/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Mon Mar 04 16:51:01 2013 -0500 @@ -151,7 +151,7 @@ throw new RasterFormatException("IntegerInterleavedRasters must have"+ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -540,31 +540,6 @@ return createCompatibleWritableRaster(width,height); } - /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. - */ - private void verify (boolean strictCheck) { - int maxSize = 0; - int size; - - size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; - if (size > maxSize) { - maxSize = size; - } - if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); - } - } - public String toString() { return new String ("IntegerInterleavedRaster: width = "+width +" height = " + height diff -r 7a8a0818efad -r deac45dc94f0 src/share/classes/sun/awt/image/ShortComponentRaster.java --- a/src/share/classes/sun/awt/image/ShortComponentRaster.java Tue Dec 04 14:02:08 2012 +0000 +++ b/src/share/classes/sun/awt/image/ShortComponentRaster.java Mon Mar 04 16:51:01 2013 -0500 @@ -802,6 +802,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -839,12 +848,13 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 7a8a0818efad -r deac45dc94f0 src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Tue Dec 04 14:02:08 2012 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Mon Mar 04 16:51:01 2013 -0500 @@ -99,50 +99,75 @@ int offset; Object dataArray; - private LCMSImageLayout(int np, int pixelType, int pixelSize) { + private int dataArrayLength; /* in bytes */ + + private LCMSImageLayout(int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; width = np; height = 1; - nextRowOffset = np*pixelSize; + nextRowOffset = safeMult(pixelSize, np); offset = 0; } private LCMSImageLayout(int width, int height, int pixelType, - int pixelSize) { + int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; this.width = width; this.height = height; - nextRowOffset = width*pixelSize; + nextRowOffset = safeMult(pixelSize, width); offset = 0; } - public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_BYTE; dataArray = data; + dataArrayLength = data.length; + + verify(); } - public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_SHORT; dataArray = data; + dataArrayLength = 2 * data.length; + + verify(); } - public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_INT; dataArray = data; + dataArrayLength = 4 * data.length; + + verify(); } public LCMSImageLayout(double[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException { this(np, pixelType, pixelSize); dataType = DT_DOUBLE; dataArray = data; + dataArrayLength = 8 * data.length; + + verify(); } - public LCMSImageLayout(BufferedImage image) { + public LCMSImageLayout(BufferedImage image) throws ImageLayoutException { ShortComponentRaster shortRaster; IntegerComponentRaster intRaster; ByteComponentRaster byteRaster; @@ -186,9 +211,13 @@ case BufferedImage.TYPE_INT_ARGB: case BufferedImage.TYPE_INT_BGR: intRaster = (IntegerComponentRaster)image.getRaster(); - nextRowOffset = intRaster.getScanlineStride()*4; - offset = intRaster.getDataOffset(0)*4; + + nextRowOffset = safeMult(4, intRaster.getScanlineStride()); + + offset = safeMult(4, intRaster.getDataOffset(0)); + dataArray = intRaster.getDataStorage(); + dataArrayLength = 4 * intRaster.getDataStorage().length; dataType = DT_INT; break; @@ -196,8 +225,10 @@ case BufferedImage.TYPE_4BYTE_ABGR: byteRaster = (ByteComponentRaster)image.getRaster(); nextRowOffset = byteRaster.getScanlineStride(); - offset = byteRaster.getDataOffset(0); + int firstBand = image.getSampleModel().getNumBands() - 1; + offset = byteRaster.getDataOffset(firstBand); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; @@ -206,17 +237,20 @@ nextRowOffset = byteRaster.getScanlineStride(); offset = byteRaster.getDataOffset(0); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; case BufferedImage.TYPE_USHORT_GRAY: shortRaster = (ShortComponentRaster)image.getRaster(); - nextRowOffset = shortRaster.getScanlineStride()*2; - offset = shortRaster.getDataOffset(0) * 2; + nextRowOffset = safeMult(2, shortRaster.getScanlineStride()); + offset = safeMult(2, shortRaster.getDataOffset(0)); dataArray = shortRaster.getDataStorage(); + dataArrayLength = 2 * shortRaster.getDataStorage().length; dataType = DT_SHORT; break; } + verify(); } public static boolean isSupported(BufferedImage image) { @@ -232,4 +266,45 @@ } return false; } + + private void verify() throws ImageLayoutException { + + if (offset < 0 || offset >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + + int lastPixelOffset = safeMult(nextRowOffset, (height - 1)); + + lastPixelOffset = safeAdd(lastPixelOffset, (width - 1)); + + int off = safeAdd(offset, lastPixelOffset); + + if (off < 0 || off >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + } + + static int safeAdd(int a, int b) throws ImageLayoutException { + long res = a; + res += b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + static int safeMult(int a, int b) throws ImageLayoutException { + long res = a; + res *= b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + public static class ImageLayoutException extends Exception { + public ImageLayoutException(String message) { + super(message); + } + } } diff -r 7a8a0818efad -r deac45dc94f0 src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Tue Dec 04 14:02:08 2012 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Mon Mar 04 16:51:01 2013 -0500 @@ -51,6 +51,7 @@ import java.awt.image.ComponentSampleModel; import sun.java2d.cmm.*; import sun.java2d.cmm.lcms.*; +import static sun.java2d.cmm.lcms.LCMSImageLayout.ImageLayoutException; public class LCMSTransform implements ColorTransform { @@ -157,8 +158,12 @@ if (LCMSImageLayout.isSupported(src) && LCMSImageLayout.isSupported(dst)) { - doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); - return; + try { + doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); + return; + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } } LCMSImageLayout srcIL, dstIL; Raster srcRas = src.getRaster(); @@ -216,14 +221,18 @@ } int idx; // TODO check for src npixels = dst npixels - srcIL = new LCMSImageLayout( - srcLine, srcLine.length/getNumInComponents(), - LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumInComponents()); - dstIL = new LCMSImageLayout( - dstLine, dstLine.length/getNumOutComponents(), - LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + try { + srcIL = new LCMSImageLayout( + srcLine, srcLine.length/getNumInComponents(), + LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumInComponents()); + dstIL = new LCMSImageLayout( + dstLine, dstLine.length/getNumOutComponents(), + LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } // process each scanline for (int y = 0; y < h; y++) { // convert src scanline @@ -272,16 +281,19 @@ From omajid at icedtea.classpath.org Mon Mar 4 13:53:00 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 21:53:00 +0000 Subject: /hg/release/icedtea7-forest-2.3/langtools: Added tag icedtea-2.3... Message-ID: changeset 41426c72b802 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=41426c72b802 author: Omair Majid date: Mon Mar 04 16:51:02 2013 -0500 Added tag icedtea-2.3.8 for changeset b5006c3285c6 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r b5006c3285c6 -r 41426c72b802 .hgtags --- a/.hgtags Thu Feb 14 22:10:23 2013 +0000 +++ b/.hgtags Mon Mar 04 16:51:02 2013 -0500 @@ -250,3 +250,4 @@ 0000000000000000000000000000000000000000 icedtea-2.3.6 812eeff322ccb47cd1aa9b6f1dd9c9587c3fe911 icedtea-2.3.6 e0739a8783d19aded13ea9160fa2c87419b98664 icedtea-2.3.7 +b5006c3285c6a39e2b33d5f38b8e72329136ee81 icedtea-2.3.8 From stefan at complang.tuwien.ac.at Mon Mar 4 13:58:12 2013 From: stefan at complang.tuwien.ac.at (Stefan Ring) Date: Mon, 4 Mar 2013 22:58:12 +0100 Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: <513461DB.4000603@ubuntu.com> References: <513461DB.4000603@ubuntu.com> Message-ID: > Debian and Ubuntu use the same sources to provide both ecj and ecj1. > ftp://sourceware.org/pub/java/ still has 3.5 as the latest version available. > If Fedora ships an updated ecj1, then it would be nice to see this "upstream" as > well. Interestingly, the package has been updated only rather recently (Oct 2012, long after the F17 release): . The build works just fine with the previous version. From omajid at redhat.com Mon Mar 4 14:57:28 2013 From: omajid at redhat.com (Omair Majid) Date: Mon, 04 Mar 2013 17:57:28 -0500 Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: References: Message-ID: <513526D8.7070407@redhat.com> On 03/03/2013 04:14 AM, Stefan Ring wrote: > The only way I was able to get icedtea6 to build on Fedora 17 was to > copy a binary j2sdk-image over from CentOS 6 and use that as jdk-home. I am on Fedora 17. I can still build icedtea6-1.11 using the ecj/gcj that's part of Fedora and I have been using that to build icedtea6-1.12. HTH, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From omajid at icedtea.classpath.org Mon Mar 4 14:58:49 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 04 Mar 2013 22:58:49 +0000 Subject: /hg/release/icedtea6-1.12: 3 new changesets Message-ID: changeset abc301613e43 in /hg/release/icedtea6-1.12 details: http://icedtea.classpath.org/hg/release/icedtea6-1.12?cmd=changeset;node=abc301613e43 author: Omair Majid date: Mon Mar 04 16:37:59 2013 -0500 Add latest security fixes. 2013-03-04 Omair Majid * NEWS: List new security patches. * Makefile.am (ICEDTEA_PATCHES): Add new patches. * patches/security/20130304/8007014.patch, * patches/security/20130304/8007675.patch: New patches for the next security update. changeset 5e17710282dd in /hg/release/icedtea6-1.12 details: http://icedtea.classpath.org/hg/release/icedtea6-1.12?cmd=changeset;node=5e17710282dd author: Omair Majid date: Mon Mar 04 16:55:23 2013 -0500 Bump to 1.12.4 and set release date changeset d868cd71c566 in /hg/release/icedtea6-1.12 details: http://icedtea.classpath.org/hg/release/icedtea6-1.12?cmd=changeset;node=d868cd71c566 author: Omair Majid date: Mon Mar 04 17:58:21 2013 -0500 Added tag icedtea6-1.12.4 for changeset 5e17710282dd diffstat: .hgtags | 1 + ChangeLog | 13 + Makefile.am | 4 +- NEWS | 6 +- configure.ac | 2 +- patches/security/20130304/8007014.patch | 463 +++++++++++++++++++++++++++++ patches/security/20130304/8007675.patch | 509 ++++++++++++++++++++++++++++++++ 7 files changed, 995 insertions(+), 3 deletions(-) diffs (truncated from 1047 to 500 lines): diff -r 948267a76960 -r d868cd71c566 .hgtags --- a/.hgtags Wed Feb 20 13:02:43 2013 +1100 +++ b/.hgtags Mon Mar 04 17:58:21 2013 -0500 @@ -26,3 +26,4 @@ 63fea6a4bee0e2e8ecb9f2061dba92be4924ddb4 icedtea6-1.12.1 ba91bee6c0d6d4634a4d6de69095af01689f7419 icedtea6-1.12.2 37209dd4b07599b5f83b33c63daae8d37c708e39 icedtea6-1.12.3 +5e17710282ddf2938993ae2077028cff3786c048 icedtea6-1.12.4 diff -r 948267a76960 -r d868cd71c566 ChangeLog --- a/ChangeLog Wed Feb 20 13:02:43 2013 +1100 +++ b/ChangeLog Mon Mar 04 17:58:21 2013 -0500 @@ -1,3 +1,16 @@ +2013-03-04 Omair Majid + + * confiugre.ac: Prepare for 1.12.4. + * NEWS: Add release date fo 1.12.4. + +2013-03-04 Omair Majid + + * NEWS: List new security patches. + * Makefile.am (ICEDTEA_PATCHES): Add new patches. + * patches/security/20130304/8007014.patch, + * patches/security/20130304/8007675.patch: + New patches for the next security update. + 2013-02-20 Andrew John Hughes * configure.ac: Bump to 1.12.4pre. diff -r 948267a76960 -r d868cd71c566 Makefile.am --- a/Makefile.am Wed Feb 20 13:02:43 2013 +1100 +++ b/Makefile.am Mon Mar 04 17:58:21 2013 -0500 @@ -277,7 +277,9 @@ patches/security/20130201/8001235.patch \ patches/security/20130219/8006446.patch \ patches/security/20130219/8006777.patch \ - patches/security/20130219/8007688.patch + patches/security/20130219/8007688.patch \ + patches/security/20130304/8007014.patch \ + patches/security/20130304/8007675.patch SPECIAL_SECURITY_PATCH = patches/security/20120214/7112642.patch diff -r 948267a76960 -r d868cd71c566 NEWS --- a/NEWS Wed Feb 20 13:02:43 2013 +1100 +++ b/NEWS Mon Mar 04 17:58:21 2013 -0500 @@ -10,7 +10,11 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 1.12.4 (2013-XX-XX): +New in release 1.12.4 (2013-03-04): + +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion New in release 1.12.3 (2013-02-19): diff -r 948267a76960 -r d868cd71c566 configure.ac --- a/configure.ac Wed Feb 20 13:02:43 2013 +1100 +++ b/configure.ac Mon Mar 04 17:58:21 2013 -0500 @@ -1,4 +1,4 @@ -AC_INIT([icedtea6],[1.12.4pre],[distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6],[1.12.4],[distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) diff -r 948267a76960 -r d868cd71c566 patches/security/20130304/8007014.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/security/20130304/8007014.patch Mon Mar 04 17:58:21 2013 -0500 @@ -0,0 +1,463 @@ +# HG changeset patch +# User bae +# Date 1360857111 -14400 +# Node ID 0dcf8ad3e63dfa4bb929bf2de99b95f18f5ea1c8 +# Parent 8a980f97e66a6433a1cdc946c90aff4433ea505c +8007014: Improve image handling +Reviewed-by: prr, mschoene, jgodinez + +--- openjdk/jdk/src/share/classes/sun/awt/image/ByteComponentRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/ByteComponentRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -868,6 +868,15 @@ public class ByteComponentRaster extends + * or if data buffer has not enough capacity. + */ + protected final void verify() { ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ + for (int i = 0; i < dataOffsets.length; i++) { + if (dataOffsets[i] < 0) { + throw new RasterFormatException("Data offsets for band " + i +@@ -905,12 +914,13 @@ public class ByteComponentRaster extends + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { +- size = lastPixelOffset + dataOffsets[i]; + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + + } ++ ++ size = lastPixelOffset + dataOffsets[i]; + + if (size > maxSize) { + maxSize = size; +--- openjdk/jdk/src/share/classes/sun/awt/image/BytePackedRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/BytePackedRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -1368,11 +1368,35 @@ public class BytePackedRaster extends Su + throw new RasterFormatException("Data offsets must be >= 0"); + } + ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ ++ ++ /* ++ * pixelBitstride was verified in constructor, so just make ++ * sure that it is safe to multiply it by width. ++ */ ++ if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ ++ if (scanlineStride < 0 || ++ scanlineStride > (Integer.MAX_VALUE / height)) ++ { ++ throw new RasterFormatException("Invalid scanline stride"); ++ } ++ + int lastbit = (dataBitOffset + + (height-1) * scanlineStride * 8 + + (width-1) * pixelBitStride + + pixelBitStride - 1); +- if (lastbit / 8 >= data.length) { ++ if (lastbit < 0 || lastbit / 8 >= data.length) { + throw new RasterFormatException("raster dimensions overflow " + + "array bounds"); + } +--- openjdk/jdk/src/share/classes/sun/awt/image/IntegerComponentRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/IntegerComponentRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -208,7 +208,7 @@ public class IntegerComponentRaster exte + " SinglePixelPackedSampleModel"); + } + +- verify(false); ++ verify(); + } + + +@@ -629,16 +629,26 @@ public class IntegerComponentRaster exte + } + + /** +- * Verify that the layout parameters are consistent with +- * the data. If strictCheck +- * is false, this method will check for ArrayIndexOutOfBounds conditions. If +- * strictCheck is true, this method will check for additional error +- * conditions such as line wraparound (width of a line greater than +- * the scanline stride). +- * @return String Error string, if the layout is incompatible with +- * the data. Otherwise returns null. +- */ +- private void verify (boolean strictCheck) { ++ * Verify that the layout parameters are consistent with the data. ++ * ++ * The method verifies whether scanline stride and pixel stride do not ++ * cause an integer overflow during calculation of a position of the pixel ++ * in data buffer. It also verifies whether the data buffer has enough data ++ * to correspond the raster layout attributes. ++ * ++ * @throws RasterFormatException if an integer overflow is detected, ++ * or if data buffer has not enough capacity. ++ */ ++ protected final void verify() { ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ + if (dataOffsets[0] < 0) { + throw new RasterFormatException("Data offset ("+dataOffsets[0]+ + ") must be >= 0"); +@@ -647,17 +657,46 @@ public class IntegerComponentRaster exte + int maxSize = 0; + int size; + +- for (int i=0; i < numDataElements; i++) { +- size = (height-1)*scanlineStride + (width-1)*pixelStride + +- dataOffsets[i]; ++ // we can be sure that width and height are greater than 0 ++ if (scanlineStride < 0 || ++ scanlineStride > (Integer.MAX_VALUE / height)) ++ { ++ // integer overflow ++ throw new RasterFormatException("Incorrect scanline stride: " ++ + scanlineStride); ++ } ++ int lastScanOffset = (height - 1) * scanlineStride; ++ ++ if (pixelStride < 0 || ++ pixelStride > (Integer.MAX_VALUE / width)) ++ { ++ // integer overflow ++ throw new RasterFormatException("Incorrect pixel stride: " ++ + pixelStride); ++ } ++ int lastPixelOffset = (width - 1) * pixelStride; ++ ++ if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { ++ // integer overflow ++ throw new RasterFormatException("Incorrect raster attributes"); ++ } ++ lastPixelOffset += lastScanOffset; ++ ++ for (int i = 0; i < numDataElements; i++) { ++ if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { ++ throw new RasterFormatException("Incorrect band offset: " ++ + dataOffsets[i]); ++ } ++ ++ size = lastPixelOffset + dataOffsets[i]; ++ + if (size > maxSize) { + maxSize = size; + } + } + if (data.length < maxSize) { +- throw new RasterFormatException("Data array too small (should be "+ +- maxSize +- +" but is "+data.length+" )"); ++ throw new RasterFormatException("Data array too small (should be " ++ + maxSize + " )"); + } + } + +--- openjdk/jdk/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -151,7 +151,7 @@ public class IntegerInterleavedRaster ex + throw new RasterFormatException("IntegerInterleavedRasters must have"+ + " SinglePixelPackedSampleModel"); + } +- verify(false); ++ verify(); + } + + +@@ -540,31 +540,6 @@ public class IntegerInterleavedRaster ex + return createCompatibleWritableRaster(width,height); + } + +- /** +- * Verify that the layout parameters are consistent with +- * the data. If strictCheck +- * is false, this method will check for ArrayIndexOutOfBounds conditions. If +- * strictCheck is true, this method will check for additional error +- * conditions such as line wraparound (width of a line greater than +- * the scanline stride). +- * @return String Error string, if the layout is incompatible with +- * the data. Otherwise returns null. +- */ +- private void verify (boolean strictCheck) { +- int maxSize = 0; +- int size; +- +- size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; +- if (size > maxSize) { +- maxSize = size; +- } +- if (data.length < maxSize) { +- throw new RasterFormatException("Data array too small (should be "+ +- maxSize +- +" but is "+data.length+" )"); +- } +- } +- + public String toString() { + return new String ("IntegerInterleavedRaster: width = "+width + +" height = " + height +--- openjdk/jdk/src/share/classes/sun/awt/image/ShortComponentRaster.java Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/classes/sun/awt/image/ShortComponentRaster.java Thu Feb 14 19:51:51 2013 +0400 +@@ -802,6 +802,15 @@ public class ShortComponentRaster extend + * or if data buffer has not enough capacity. + */ + protected final void verify() { ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ + for (int i = 0; i < dataOffsets.length; i++) { + if (dataOffsets[i] < 0) { + throw new RasterFormatException("Data offsets for band " + i +@@ -839,11 +848,12 @@ public class ShortComponentRaster extend + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { +- size = lastPixelOffset + dataOffsets[i]; + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + } ++ ++ size = lastPixelOffset + dataOffsets[i]; + + if (size > maxSize) { + maxSize = size; +--- openjdk/jdk/src/share/native/sun/awt/image/awt_parseImage.c Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/native/sun/awt/image/awt_parseImage.c Thu Feb 14 19:51:51 2013 +0400 +@@ -34,6 +34,7 @@ + #include "java_awt_color_ColorSpace.h" + #include "awt_Mlib.h" + #include "safe_alloc.h" ++#include "safe_math.h" + + static int setHints(JNIEnv *env, BufImageS_t *imageP); + +--- openjdk/jdk/src/share/native/sun/awt/medialib/awt_ImagingLib.c Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/awt_ImagingLib.c Thu Feb 14 19:51:51 2013 +0400 +@@ -42,6 +42,7 @@ + #include "awt_Mlib.h" + #include "gdefs.h" + #include "safe_alloc.h" ++#include "safe_math.h" + + /*************************************************************************** + * Definitions * +@@ -1993,13 +1994,23 @@ cvtCustomToDefault(JNIEnv *env, BufImage + unsigned char *dP = dataP; + #define NUM_LINES 10 + int numLines = NUM_LINES; +- int nbytes = rasterP->width*4*NUM_LINES; ++ /* it is safe to calculate the scan length, because width has been verified ++ * on creation of the mlib image ++ */ ++ int scanLength = rasterP->width * 4; ++ ++ int nbytes = 0; ++ if (!SAFE_TO_MULT(numLines, scanLength)) { ++ return -1; ++ } ++ ++ nbytes = numLines * scanLength; + + for (y=0; y < rasterP->height; y+=numLines) { + /* getData, one scanline at a time */ + if (y+numLines > rasterP->height) { + numLines = rasterP->height - y; +- nbytes = rasterP->width*4*numLines; ++ nbytes = numLines * scanLength; + } + jpixels = (*env)->CallObjectMethod(env, imageP->jimage, + g_BImgGetRGBMID, 0, y, +@@ -2129,8 +2140,14 @@ allocateArray(JNIEnv *env, BufImageS_t * + if (cvtToDefault) { + int status = 0; + *mlibImagePP = (*sMlibSysFns.createFP)(MLIB_BYTE, 4, width, height); ++ if (*mlibImagePP == NULL) { ++ return -1; ++ } + cDataP = (unsigned char *) mlib_ImageGetData(*mlibImagePP); +- /* Make sure the image is cleared */ ++ /* Make sure the image is cleared. ++ * NB: the image dimension is already verified, so we can ++ * safely calculate the length of the buffer. ++ */ + memset(cDataP, 0, width*height*4); + + if (!isSrc) { +@@ -2380,6 +2397,9 @@ allocateRasterArray(JNIEnv *env, RasterS + case sun_awt_image_IntegerComponentRaster_TYPE_BYTE_PACKED_SAMPLES: + *mlibImagePP = (*sMlibSysFns.createFP)(MLIB_BYTE, rasterP->numBands, + width, height); ++ if (*mlibImagePP == NULL) { ++ return -1; ++ } + if (!isSrc) return 0; + cDataP = (unsigned char *) mlib_ImageGetData(*mlibImagePP); + return expandPackedBCR(env, rasterP, -1, cDataP); +@@ -2388,6 +2408,9 @@ allocateRasterArray(JNIEnv *env, RasterS + if (rasterP->sppsm.maxBitSize <= 8) { + *mlibImagePP = (*sMlibSysFns.createFP)(MLIB_BYTE, rasterP->numBands, + width, height); ++ if (*mlibImagePP == NULL) { ++ return -1; ++ } + if (!isSrc) return 0; + cDataP = (unsigned char *) mlib_ImageGetData(*mlibImagePP); + return expandPackedSCR(env, rasterP, -1, cDataP); +@@ -2397,6 +2420,9 @@ allocateRasterArray(JNIEnv *env, RasterS + if (rasterP->sppsm.maxBitSize <= 8) { + *mlibImagePP = (*sMlibSysFns.createFP)(MLIB_BYTE, rasterP->numBands, + width, height); ++ if (*mlibImagePP == NULL) { ++ return -1; ++ } + if (!isSrc) return 0; + cDataP = (unsigned char *) mlib_ImageGetData(*mlibImagePP); + return expandPackedICR(env, rasterP, -1, cDataP); +--- openjdk/jdk/src/share/native/sun/awt/medialib/mlib_ImageCreate.c Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/mlib_ImageCreate.c Thu Feb 14 19:51:51 2013 +0400 +@@ -120,6 +120,7 @@ + #include "mlib_image.h" + #include "mlib_ImageRowTable.h" + #include "mlib_ImageCreate.h" ++#include "safe_math.h" + + /***************************************************************/ + mlib_image* mlib_ImageSet(mlib_image *image, +@@ -247,25 +248,47 @@ mlib_image *mlib_ImageCreate(mlib_type t + return NULL; + }; + ++ if (!SAFE_TO_MULT(width, channels)) { ++ return NULL; ++ } ++ ++ wb = width * channels; ++ + switch (type) { + case MLIB_DOUBLE: +- wb = width * channels * 8; ++ if (!SAFE_TO_MULT(wb, 8)) { ++ return NULL; ++ } ++ wb *= 8; + break; + case MLIB_FLOAT: + case MLIB_INT: +- wb = width * channels * 4; ++ if (!SAFE_TO_MULT(wb, 4)) { ++ return NULL; ++ } ++ wb *= 4; + break; + case MLIB_USHORT: + case MLIB_SHORT: +- wb = width * channels * 2; ++ if (!SAFE_TO_MULT(wb, 4)) { ++ return NULL; ++ } ++ wb *= 2; + break; + case MLIB_BYTE: +- wb = width * channels; ++ // wb is ready + break; + case MLIB_BIT: +- wb = (width * channels + 7) / 8; ++ if (!SAFE_TO_ADD(7, wb)) { ++ return NULL; ++ } ++ wb = (wb + 7) / 8; + break; + default: ++ return NULL; ++ } ++ ++ if (!SAFE_TO_MULT(wb, height)) { + return NULL; + } + +--- openjdk/jdk/src/share/native/sun/awt/medialib/safe_alloc.h Tue Feb 26 12:42:17 2013 -0800 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/safe_alloc.h Thu Feb 14 19:51:51 2013 +0400 +@@ -41,10 +41,4 @@ + (((w) > 0) && ((h) > 0) && ((sz) > 0) && \ + (((0xffffffffu / ((juint)(w))) / ((juint)(h))) > ((juint)(sz)))) + +-#define SAFE_TO_MULT(a, b) \ +- (((a) > 0) && ((b) >= 0) && ((0x7fffffff / (a)) > (b))) +- +-#define SAFE_TO_ADD(a, b) \ +- (((a) >= 0) && ((b) >= 0) && ((0x7fffffff - (a)) > (b))) +- + #endif // __SAFE_ALLOC_H__ +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/jdk/src/share/native/sun/awt/medialib/safe_math.h Thu Feb 14 19:51:51 2013 +0400 +@@ -0,0 +1,35 @@ ++/* ++ * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. From omajid at redhat.com Mon Mar 4 15:25:52 2013 From: omajid at redhat.com (Omair Majid) Date: Mon, 04 Mar 2013 18:25:52 -0500 Subject: [SECURITY] IcedTea6 1.11.9 and 1.12.4 Released! Message-ID: <51352D80.6030003@redhat.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 The IcedTea project provides a harness to build the source code from OpenJDK6 using Free Software build tools, along with additional features such as a PulseAudio sound driver and support for alternative virtual machines. A new set of security releases is now available: * IcedTea6 1.11.9 * IcedTea6 1.12.4 We recommend that users upgrade to the latest release from the appropriate branch as soon as possible. All updates contain the following security fixes: * S8007014, CVE-2013-0809: Improve image handling * S8007675, CVE-2013-1493: Improve color conversion Full details of each release can be found below. What?s New? ?????? New in release 1.11.9 (2013-03-04): * Security fixes - S8007014, CVE-2013-0809: Improve image handling - S8007675, CVE-2013-1493: Improve color conversion New in release 1.12.4 (2013-03-04): * Security fixes - S8007014, CVE-2013-0809: Improve image handling - S8007675, CVE-2013-1493: Improve color conversion The tarballs can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea6-1.11.9.tar.gz * http://icedtea.classpath.org/download/source/icedtea6-1.12.4.tar.gz SHA256 checksums: 0c134bea8d48c77ad5d41d4a0f98f471c381faaa0ef0c215d48687e709e93f3f icedtea6-1.11.9.tar.gz eb326c6ae0147ca4abe4bd79e52c1edc2ef08e5e008230e24bee3abb39e14dda icedtea6-1.12.4.tar.gz Each tarball is accompanied by a digital signature (available at the above URL + '.sig'). This is produced using my public key. See details below. The following people helped with these releases: * Elliott Baron (checking S7189103 & S7189567) * Severin Gehwolf (creation of fix for S8007675, checking S8007014 & S8007675) * Omair Majid (applying all security patches, reproducer runs, release management) * Mario Torre (creation of fix for S8007675) We would also like to thank the bug reporters and testers! To get started: $ tar xf icedtea6-${ver}.tar.gz Full build requirements and instructions are in INSTALL: $ mkdir icedtea6-build $ cd icedtea6-build $ ../icedtea6-${ver}/configure [--enable-zero --enable-pulse-java - --enable-systemtap ...] $ make - -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.13 (GNU/Linux) iQIcBAEBAgAGBQJRNS2AAAoJEPKG8U9mSEaBZjgP/R4gifjRFSz39mRR1AwQeUlz yYB6azIn+PmvczhOPuIertcm+51OF88EJ+HeBF6YModSGLORwznqo+R/iRP4sXsP XDN2rbHkDjot2RfbrAOhOg+t5mNAxy7plEWgP3P5AXHQ9jjU1faXQiIkORUxb4zg FU+vKOCBcPKFLpzaUwGxnNTbK65i36eWk4voVYWUChyL6v2QgUyb6wuNTVvhABg2 Jf/u+OSaQLZQOZobn3gKGk31h47aFvt8gpmPku3ItNIk96pR58G3olHLULMi01Ya bZVAkptIRumcPfEYshBctMarCQbW2v/JiGGTotE58EYKReYoBfofTAQ+KNOzukyQ c/dLOzk7xjt2lYfbeY+rbJEE+rT/db69qL7F/wRcmRNt92s6o2KFRZ9yUM8g5CBL HpG980SvNW3ZIy/cA6E6qfOLl7oqwRZCjL5ECip5/lkDHilJ5eqI62uGm617VKVS HJZCd3oFzrZZQl/g2PHe74kc0fxs9AGlmCsw6bPmq1ufv4mLe7ABzDCuUPSOOS07 1hzMfazBXNJG2hD78GfrguIIbBH/wgFC2Iz8Wii6QP0kmDc+rUSziiKmfL9uEskw Sh70aiMzs6r5btdwmCkJVv7HuWDPt48znoRpKr8YyS+oh1v/9GIQY/I+ms1fZ6SM /qyo6Mh3LMPWRn7SqyB+ =1sAf -----END PGP SIGNATURE----- From martinrb at google.com Mon Mar 4 15:43:46 2013 From: martinrb at google.com (Martin Buchholz) Date: Mon, 4 Mar 2013 15:43:46 -0800 Subject: [SECURITY] IcedTea6 1.11.9 and 1.12.4 Released! In-Reply-To: <51352D80.6030003@redhat.com> References: <51352D80.6030003@redhat.com> Message-ID: Your announcements are already rather long, but it would help if they included the locations of the mercurial repositories in addition to the tarballs. It seems the repositories should be listed here: http://icedtea.classpath.org/wiki/DeveloperQuickStart but that page is outdated. The IcedTea project doesn't mention anywhere I could find that all mercurial repos can be found via: http://icedtea.classpath.org/hg/ Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130304/c8500b9d/attachment.html From omajid at redhat.com Mon Mar 4 16:09:19 2013 From: omajid at redhat.com (Omair Majid) Date: Mon, 04 Mar 2013 19:09:19 -0500 Subject: [SECURITY] IcedTea6 1.11.9 and 1.12.4 Released! In-Reply-To: References: <51352D80.6030003@redhat.com> Message-ID: <513537AF.80009@redhat.com> Hi Martin, Thanks for the suggestions! On 03/04/2013 06:43 PM, Martin Buchholz wrote: > Your announcements are already rather long, but it would help if they > included the locations of the mercurial repositories in addition to the > tarballs. I will include them next time. > It seems the repositories should be listed here: > > http://icedtea.classpath.org/wiki/DeveloperQuickStart The currently supported releases are documented on: http://icedtea.classpath.org/wiki/ReleasePolicy I have added links from ReleasePolicy to the mercurial repositories. > but that page is outdated. I have added links from DeveloperQuickStart to ReleasePolicy to avoid duplication of information. > The IcedTea project doesn't mention anywhere I could find that all > mercurial repos can be found via: > > http://icedtea.classpath.org/hg/ There is a link now under FAQs on the main page: http://icedtea.classpath.org/wiki/Main_Page#FAQs Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From omajid at redhat.com Mon Mar 4 16:17:50 2013 From: omajid at redhat.com (Omair Majid) Date: Mon, 04 Mar 2013 19:17:50 -0500 Subject: [SECURITY] IcedTea6 1.11.9 and 1.12.4 Released! In-Reply-To: References: <51352D80.6030003@redhat.com> Message-ID: <513539AE.3090705@redhat.com> On 03/04/2013 06:43 PM, Martin Buchholz wrote: > The IcedTea project doesn't mention anywhere I could find that all > mercurial repos can be found via: > > http://icedtea.classpath.org/hg/ I just realized that it's actually on the left side of every page already. The link is named "mercurial" under "resources". Thanks Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From omajid at icedtea.classpath.org Mon Mar 4 16:36:29 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 00:36:29 +0000 Subject: /hg/release/icedtea7-forest-2.1: Added tag icedtea-2.1.7 for cha... Message-ID: changeset c1c649636704 in /hg/release/icedtea7-forest-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1?cmd=changeset;node=c1c649636704 author: Omair Majid date: Mon Mar 04 19:34:13 2013 -0500 Added tag icedtea-2.1.7 for changeset 7de37e3bcca6 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 7de37e3bcca6 -r c1c649636704 .hgtags --- a/.hgtags Fri Feb 15 00:04:36 2013 +0000 +++ b/.hgtags Mon Mar 04 19:34:13 2013 -0500 @@ -153,3 +153,4 @@ f89009ada191aa33887530d70c039f0b8fee6070 icedtea-2.1.4 bc612c7c99eca70b87bb076a4699f21857cafc3b icedtea-2.1.5 9806157f99d2b58dc7de1c3da946e18da5c0dfab icedtea-2.1.6 +7de37e3bcca60b11bd28b134efa3a4a27d1f39cf icedtea-2.1.7 From omajid at icedtea.classpath.org Mon Mar 4 16:36:33 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 00:36:33 +0000 Subject: /hg/release/icedtea7-forest-2.1/corba: Added tag icedtea-2.1.7 f... Message-ID: changeset 313f1ee32118 in /hg/release/icedtea7-forest-2.1/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/corba?cmd=changeset;node=313f1ee32118 author: Omair Majid date: Mon Mar 04 19:34:15 2013 -0500 Added tag icedtea-2.1.7 for changeset 4afc0be5b3c6 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 4afc0be5b3c6 -r 313f1ee32118 .hgtags --- a/.hgtags Fri Feb 15 00:04:36 2013 +0000 +++ b/.hgtags Mon Mar 04 19:34:15 2013 -0500 @@ -161,3 +161,4 @@ 0000000000000000000000000000000000000000 icedtea-2.1.5 443887178ee9b8109bfb3786120ccb6d17f1d4ba icedtea-2.1.5 fb02b0451c095b44ed3b34ad2db682b0967b6b0e icedtea-2.1.6 +4afc0be5b3c625242ab7f9ee23d39f96d911ba14 icedtea-2.1.7 From omajid at icedtea.classpath.org Mon Mar 4 16:36:37 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 00:36:37 +0000 Subject: /hg/release/icedtea7-forest-2.1/hotspot: Added tag icedtea-2.1.7... Message-ID: changeset 0e0aaf1070b4 in /hg/release/icedtea7-forest-2.1/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot?cmd=changeset;node=0e0aaf1070b4 author: Omair Majid date: Mon Mar 04 19:34:15 2013 -0500 Added tag icedtea-2.1.7 for changeset d8b22e079abe diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r d8b22e079abe -r 0e0aaf1070b4 .hgtags --- a/.hgtags Fri Feb 15 00:04:42 2013 +0000 +++ b/.hgtags Mon Mar 04 19:34:15 2013 -0500 @@ -228,3 +228,4 @@ a456d0771ba0f6604b172f05f0b594178f7cc49c icedtea-2.1.4 76c46d4d4ad04e444f0981a559ceff81c74bf1b9 icedtea-2.1.5 32569b4d36f4f081dcabb2389ae21bdfe29f3ce1 icedtea-2.1.6 +d8b22e079abeeca06fa7dc45b67e7fdf8da265e0 icedtea-2.1.7 From omajid at icedtea.classpath.org Mon Mar 4 16:36:41 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 00:36:41 +0000 Subject: /hg/release/icedtea7-forest-2.1/jaxp: Added tag icedtea-2.1.7 fo... Message-ID: changeset 691f82a0de0b in /hg/release/icedtea7-forest-2.1/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jaxp?cmd=changeset;node=691f82a0de0b author: Omair Majid date: Mon Mar 04 19:34:17 2013 -0500 Added tag icedtea-2.1.7 for changeset efa047bf59e9 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r efa047bf59e9 -r 691f82a0de0b .hgtags --- a/.hgtags Fri Feb 15 00:04:37 2013 +0000 +++ b/.hgtags Mon Mar 04 19:34:17 2013 -0500 @@ -153,3 +153,4 @@ 77e7219c74241ff6bc56e5bb973376458ed11b2b icedtea-2.1.4 3cd118e6573deb6139bcf6247d2577748f529105 icedtea-2.1.5 c4bf68441a8de2eadcef55a1311f6f18b3b813af icedtea-2.1.6 +efa047bf59e95a21fae000817a4a7fe30e057f4d icedtea-2.1.7 From omajid at icedtea.classpath.org Mon Mar 4 16:36:44 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 00:36:44 +0000 Subject: /hg/release/icedtea7-forest-2.1/jaxws: Added tag icedtea-2.1.7 f... Message-ID: changeset a48ebab198a4 in /hg/release/icedtea7-forest-2.1/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jaxws?cmd=changeset;node=a48ebab198a4 author: Omair Majid date: Mon Mar 04 19:34:19 2013 -0500 Added tag icedtea-2.1.7 for changeset 52bbe659af64 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 52bbe659af64 -r a48ebab198a4 .hgtags --- a/.hgtags Fri Feb 15 00:04:38 2013 +0000 +++ b/.hgtags Mon Mar 04 19:34:19 2013 -0500 @@ -153,3 +153,4 @@ d92eda447bca8cdc2d53d93c80c2a014d7d05f21 icedtea-2.1.4 77e7849c5e50667e32d0c4cb0166b94d63ec8842 icedtea-2.1.5 5c2f1241ceace6ada6233a61a8d6279935cb67bc icedtea-2.1.6 +52bbe659af647277ea7d07b35514dc89b5dc0832 icedtea-2.1.7 From omajid at icedtea.classpath.org Mon Mar 4 16:36:49 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 00:36:49 +0000 Subject: /hg/release/icedtea7-forest-2.1/jdk: 3 new changesets Message-ID: changeset 206248632db3 in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=206248632db3 author: bae date: Thu Feb 14 19:51:51 2013 +0400 8007014: Improve image handling Reviewed-by: prr, mschoene, jgodinez changeset 2989f7467d83 in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=2989f7467d83 author: bae date: Thu Feb 21 11:25:43 2013 +0400 8007675: Improve color conversion Reviewed-by: prr, jgodinez changeset 0c186cb38380 in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=0c186cb38380 author: Omair Majid date: Mon Mar 04 19:34:19 2013 -0500 Added tag icedtea-2.1.7 for changeset 2989f7467d83 diffstat: .hgtags | 1 + src/share/classes/sun/awt/image/ByteComponentRaster.java | 12 +- src/share/classes/sun/awt/image/BytePackedRaster.java | 26 +- src/share/classes/sun/awt/image/IntegerComponentRaster.java | 71 +++- src/share/classes/sun/awt/image/IntegerInterleavedRaster.java | 27 +- src/share/classes/sun/awt/image/ShortComponentRaster.java | 12 +- src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java | 101 +++++- src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java | 160 +++++---- src/share/native/sun/awt/image/awt_parseImage.c | 1 + src/share/native/sun/awt/medialib/awt_ImagingLib.c | 32 +- src/share/native/sun/awt/medialib/mlib_ImageCreate.c | 33 +- src/share/native/sun/awt/medialib/safe_alloc.h | 6 - src/share/native/sun/awt/medialib/safe_math.h | 35 ++ 13 files changed, 380 insertions(+), 137 deletions(-) diffs (truncated from 895 to 500 lines): diff -r 78fbbfe20edb -r 0c186cb38380 .hgtags --- a/.hgtags Sun Feb 17 19:14:29 2013 +0000 +++ b/.hgtags Mon Mar 04 19:34:19 2013 -0500 @@ -165,3 +165,4 @@ 0000000000000000000000000000000000000000 icedtea-2.1.6 0000000000000000000000000000000000000000 icedtea-2.1.6 31e42bc321027abccb9fb8135f13d63bea0fa762 icedtea-2.1.6 +2989f7467d8345a2fc32416223fd6eafe96037f2 icedtea-2.1.7 diff -r 78fbbfe20edb -r 0c186cb38380 src/share/classes/sun/awt/image/ByteComponentRaster.java --- a/src/share/classes/sun/awt/image/ByteComponentRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/ByteComponentRaster.java Mon Mar 04 19:34:19 2013 -0500 @@ -868,6 +868,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -905,13 +914,14 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 78fbbfe20edb -r 0c186cb38380 src/share/classes/sun/awt/image/BytePackedRaster.java --- a/src/share/classes/sun/awt/image/BytePackedRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/BytePackedRaster.java Mon Mar 04 19:34:19 2013 -0500 @@ -1368,11 +1368,35 @@ throw new RasterFormatException("Data offsets must be >= 0"); } + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + + + /* + * pixelBitstride was verified in constructor, so just make + * sure that it is safe to multiply it by width. + */ + if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { + throw new RasterFormatException("Invalid raster dimension"); + } + + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + throw new RasterFormatException("Invalid scanline stride"); + } + int lastbit = (dataBitOffset + (height-1) * scanlineStride * 8 + (width-1) * pixelBitStride + pixelBitStride - 1); - if (lastbit / 8 >= data.length) { + if (lastbit < 0 || lastbit / 8 >= data.length) { throw new RasterFormatException("raster dimensions overflow " + "array bounds"); } diff -r 78fbbfe20edb -r 0c186cb38380 src/share/classes/sun/awt/image/IntegerComponentRaster.java --- a/src/share/classes/sun/awt/image/IntegerComponentRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/IntegerComponentRaster.java Mon Mar 04 19:34:19 2013 -0500 @@ -208,7 +208,7 @@ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -629,16 +629,26 @@ } /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. + * Verify that the layout parameters are consistent with the data. + * + * The method verifies whether scanline stride and pixel stride do not + * cause an integer overflow during calculation of a position of the pixel + * in data buffer. It also verifies whether the data buffer has enough data + * to correspond the raster layout attributes. + * + * @throws RasterFormatException if an integer overflow is detected, + * or if data buffer has not enough capacity. */ - private void verify (boolean strictCheck) { + protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + if (dataOffsets[0] < 0) { throw new RasterFormatException("Data offset ("+dataOffsets[0]+ ") must be >= 0"); @@ -647,17 +657,46 @@ int maxSize = 0; int size; - for (int i=0; i < numDataElements; i++) { - size = (height-1)*scanlineStride + (width-1)*pixelStride + - dataOffsets[i]; + // we can be sure that width and height are greater than 0 + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + // integer overflow + throw new RasterFormatException("Incorrect scanline stride: " + + scanlineStride); + } + int lastScanOffset = (height - 1) * scanlineStride; + + if (pixelStride < 0 || + pixelStride > (Integer.MAX_VALUE / width)) + { + // integer overflow + throw new RasterFormatException("Incorrect pixel stride: " + + pixelStride); + } + int lastPixelOffset = (width - 1) * pixelStride; + + if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { + // integer overflow + throw new RasterFormatException("Incorrect raster attributes"); + } + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + } + + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } } if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); + throw new RasterFormatException("Data array too small (should be " + + maxSize + " )"); } } diff -r 78fbbfe20edb -r 0c186cb38380 src/share/classes/sun/awt/image/IntegerInterleavedRaster.java --- a/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Mon Mar 04 19:34:19 2013 -0500 @@ -151,7 +151,7 @@ throw new RasterFormatException("IntegerInterleavedRasters must have"+ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -540,31 +540,6 @@ return createCompatibleWritableRaster(width,height); } - /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. - */ - private void verify (boolean strictCheck) { - int maxSize = 0; - int size; - - size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; - if (size > maxSize) { - maxSize = size; - } - if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); - } - } - public String toString() { return new String ("IntegerInterleavedRaster: width = "+width +" height = " + height diff -r 78fbbfe20edb -r 0c186cb38380 src/share/classes/sun/awt/image/ShortComponentRaster.java --- a/src/share/classes/sun/awt/image/ShortComponentRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/ShortComponentRaster.java Mon Mar 04 19:34:19 2013 -0500 @@ -802,6 +802,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -839,12 +848,13 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 78fbbfe20edb -r 0c186cb38380 src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Mon Mar 04 19:34:19 2013 -0500 @@ -99,50 +99,75 @@ int offset; Object dataArray; - private LCMSImageLayout(int np, int pixelType, int pixelSize) { + private int dataArrayLength; /* in bytes */ + + private LCMSImageLayout(int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; width = np; height = 1; - nextRowOffset = np*pixelSize; + nextRowOffset = safeMult(pixelSize, np); offset = 0; } private LCMSImageLayout(int width, int height, int pixelType, - int pixelSize) { + int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; this.width = width; this.height = height; - nextRowOffset = width*pixelSize; + nextRowOffset = safeMult(pixelSize, width); offset = 0; } - public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_BYTE; dataArray = data; + dataArrayLength = data.length; + + verify(); } - public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_SHORT; dataArray = data; + dataArrayLength = 2 * data.length; + + verify(); } - public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_INT; dataArray = data; + dataArrayLength = 4 * data.length; + + verify(); } public LCMSImageLayout(double[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException { this(np, pixelType, pixelSize); dataType = DT_DOUBLE; dataArray = data; + dataArrayLength = 8 * data.length; + + verify(); } - public LCMSImageLayout(BufferedImage image) { + public LCMSImageLayout(BufferedImage image) throws ImageLayoutException { ShortComponentRaster shortRaster; IntegerComponentRaster intRaster; ByteComponentRaster byteRaster; @@ -186,9 +211,13 @@ case BufferedImage.TYPE_INT_ARGB: case BufferedImage.TYPE_INT_BGR: intRaster = (IntegerComponentRaster)image.getRaster(); - nextRowOffset = intRaster.getScanlineStride()*4; - offset = intRaster.getDataOffset(0)*4; + + nextRowOffset = safeMult(4, intRaster.getScanlineStride()); + + offset = safeMult(4, intRaster.getDataOffset(0)); + dataArray = intRaster.getDataStorage(); + dataArrayLength = 4 * intRaster.getDataStorage().length; dataType = DT_INT; break; @@ -196,8 +225,10 @@ case BufferedImage.TYPE_4BYTE_ABGR: byteRaster = (ByteComponentRaster)image.getRaster(); nextRowOffset = byteRaster.getScanlineStride(); - offset = byteRaster.getDataOffset(0); + int firstBand = image.getSampleModel().getNumBands() - 1; + offset = byteRaster.getDataOffset(firstBand); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; @@ -206,17 +237,20 @@ nextRowOffset = byteRaster.getScanlineStride(); offset = byteRaster.getDataOffset(0); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; case BufferedImage.TYPE_USHORT_GRAY: shortRaster = (ShortComponentRaster)image.getRaster(); - nextRowOffset = shortRaster.getScanlineStride()*2; - offset = shortRaster.getDataOffset(0) * 2; + nextRowOffset = safeMult(2, shortRaster.getScanlineStride()); + offset = safeMult(2, shortRaster.getDataOffset(0)); dataArray = shortRaster.getDataStorage(); + dataArrayLength = 2 * shortRaster.getDataStorage().length; dataType = DT_SHORT; break; } + verify(); } public static boolean isSupported(BufferedImage image) { @@ -232,4 +266,45 @@ } return false; } + + private void verify() throws ImageLayoutException { + + if (offset < 0 || offset >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + + int lastPixelOffset = safeMult(nextRowOffset, (height - 1)); + + lastPixelOffset = safeAdd(lastPixelOffset, (width - 1)); + + int off = safeAdd(offset, lastPixelOffset); + + if (off < 0 || off >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + } + + static int safeAdd(int a, int b) throws ImageLayoutException { + long res = a; + res += b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + static int safeMult(int a, int b) throws ImageLayoutException { + long res = a; + res *= b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + public static class ImageLayoutException extends Exception { + public ImageLayoutException(String message) { + super(message); + } + } } diff -r 78fbbfe20edb -r 0c186cb38380 src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Mon Mar 04 19:34:19 2013 -0500 @@ -51,6 +51,7 @@ import java.awt.image.ComponentSampleModel; import sun.java2d.cmm.*; import sun.java2d.cmm.lcms.*; +import static sun.java2d.cmm.lcms.LCMSImageLayout.ImageLayoutException; public class LCMSTransform implements ColorTransform { @@ -157,8 +158,12 @@ if (LCMSImageLayout.isSupported(src) && LCMSImageLayout.isSupported(dst)) { - doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); - return; + try { + doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); + return; + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } } LCMSImageLayout srcIL, dstIL; Raster srcRas = src.getRaster(); @@ -216,14 +221,18 @@ } int idx; // TODO check for src npixels = dst npixels - srcIL = new LCMSImageLayout( - srcLine, srcLine.length/getNumInComponents(), - LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumInComponents()); - dstIL = new LCMSImageLayout( - dstLine, dstLine.length/getNumOutComponents(), - LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + try { + srcIL = new LCMSImageLayout( + srcLine, srcLine.length/getNumInComponents(), + LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumInComponents()); + dstIL = new LCMSImageLayout( + dstLine, dstLine.length/getNumOutComponents(), + LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } // process each scanline for (int y = 0; y < h; y++) { // convert src scanline @@ -272,16 +281,19 @@ From omajid at icedtea.classpath.org Mon Mar 4 16:36:53 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 00:36:53 +0000 Subject: /hg/release/icedtea7-forest-2.1/langtools: Added tag icedtea-2.1... Message-ID: changeset c63c8a2164e4 in /hg/release/icedtea7-forest-2.1/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/langtools?cmd=changeset;node=c63c8a2164e4 author: Omair Majid date: Mon Mar 04 19:34:22 2013 -0500 Added tag icedtea-2.1.7 for changeset ac6983a8bd4a diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r ac6983a8bd4a -r c63c8a2164e4 .hgtags --- a/.hgtags Fri Feb 15 00:04:40 2013 +0000 +++ b/.hgtags Mon Mar 04 19:34:22 2013 -0500 @@ -153,3 +153,4 @@ fd2fdb20d8585ebffee074e82b040f3b2af5ee83 icedtea-2.1.4 de674a5699784ac2d9ad945d93b341dcc82db5a5 icedtea-2.1.5 e351b6e580c2d986c2c7367cce2156800266ab75 icedtea-2.1.6 +ac6983a8bd4a559d7f56045415351deccf18f85c icedtea-2.1.7 From omajid at icedtea.classpath.org Mon Mar 4 18:30:53 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 02:30:53 +0000 Subject: /hg/release/icedtea7-forest-2.2: Added tag icedtea-2.2.7 for cha... Message-ID: changeset 1a406488fe33 in /hg/release/icedtea7-forest-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2?cmd=changeset;node=1a406488fe33 author: Omair Majid date: Mon Mar 04 21:29:07 2013 -0500 Added tag icedtea-2.2.7 for changeset cf1afd9bb936 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r cf1afd9bb936 -r 1a406488fe33 .hgtags --- a/.hgtags Thu Feb 14 23:12:39 2013 +0000 +++ b/.hgtags Mon Mar 04 21:29:07 2013 -0500 @@ -180,3 +180,4 @@ 32574ae3c2be6473eacf254d524442f8f7fd64d4 icedtea-2.2.4 431257be50142366a1ab02920c45392cc86a28e8 icedtea-2.2.5 ac5792f240c017780b09a8ac3e5e04b73c4db4ac icedtea-2.2.6 +cf1afd9bb9364eff333a7186caa81e958bffbc00 icedtea-2.2.7 From omajid at icedtea.classpath.org Mon Mar 4 18:30:58 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 02:30:58 +0000 Subject: /hg/release/icedtea7-forest-2.2/corba: Added tag icedtea-2.2.7 f... Message-ID: changeset 529355376925 in /hg/release/icedtea7-forest-2.2/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/corba?cmd=changeset;node=529355376925 author: Omair Majid date: Mon Mar 04 21:29:10 2013 -0500 Added tag icedtea-2.2.7 for changeset 5fcf70e41383 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 5fcf70e41383 -r 529355376925 .hgtags --- a/.hgtags Thu Feb 14 23:12:39 2013 +0000 +++ b/.hgtags Mon Mar 04 21:29:10 2013 -0500 @@ -184,3 +184,4 @@ 0000000000000000000000000000000000000000 icedtea-2.2.5 9c1ee05d1f2edbb912bf68c94361b1f0c508d94d icedtea-2.2.5 5a9a1b4aecd3e1ad36a139d53222be6c8c09fdf8 icedtea-2.2.6 +5fcf70e41383eb93989ddb75de8f592b3ec395ae icedtea-2.2.7 From omajid at icedtea.classpath.org Mon Mar 4 18:31:03 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 02:31:03 +0000 Subject: /hg/release/icedtea7-forest-2.2/hotspot: Added tag icedtea-2.2.7... Message-ID: changeset c312054a7ae6 in /hg/release/icedtea7-forest-2.2/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/hotspot?cmd=changeset;node=c312054a7ae6 author: Omair Majid date: Mon Mar 04 21:29:12 2013 -0500 Added tag icedtea-2.2.7 for changeset de365dd26484 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r de365dd26484 -r c312054a7ae6 .hgtags --- a/.hgtags Thu Feb 14 23:12:43 2013 +0000 +++ b/.hgtags Mon Mar 04 21:29:12 2013 -0500 @@ -291,3 +291,4 @@ 1a3dc05d59c23a25053386c921afc24d2a5d2734 icedtea-2.2.4 da3747196112fca6f8f3db3b80712bcd3b10c477 icedtea-2.2.5 d2e4bf94d38d76aa3e1908f9e01f8b8933caf09b icedtea-2.2.6 +de365dd264846fcb73fed2afc3cd41652eb44ce1 icedtea-2.2.7 From omajid at icedtea.classpath.org Mon Mar 4 18:31:07 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 02:31:07 +0000 Subject: /hg/release/icedtea7-forest-2.2/jaxp: Added tag icedtea-2.2.7 fo... Message-ID: changeset c8a89a3af782 in /hg/release/icedtea7-forest-2.2/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jaxp?cmd=changeset;node=c8a89a3af782 author: Omair Majid date: Mon Mar 04 21:29:13 2013 -0500 Added tag icedtea-2.2.7 for changeset 988fa5bfeeec diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 988fa5bfeeec -r c8a89a3af782 .hgtags --- a/.hgtags Thu Feb 14 23:12:40 2013 +0000 +++ b/.hgtags Mon Mar 04 21:29:13 2013 -0500 @@ -180,3 +180,4 @@ dc64245ac19d9c7af987f7c8197b766f39cc76aa icedtea-2.2.4 5ac7b9e75614f15e2f8b4ea31b12f1afa4623ec3 icedtea-2.2.5 7d285e628870edf9e3d69b46ea8a7ef2584a6ecb icedtea-2.2.6 +988fa5bfeeec56dd27a23fa0baf1ab1a51b9ffa3 icedtea-2.2.7 From omajid at icedtea.classpath.org Mon Mar 4 18:31:11 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 02:31:11 +0000 Subject: /hg/release/icedtea7-forest-2.2/jaxws: Added tag icedtea-2.2.7 f... Message-ID: changeset a68ab44db7ee in /hg/release/icedtea7-forest-2.2/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jaxws?cmd=changeset;node=a68ab44db7ee author: Omair Majid date: Mon Mar 04 21:29:14 2013 -0500 Added tag icedtea-2.2.7 for changeset 1b6e40dd0756 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 1b6e40dd0756 -r a68ab44db7ee .hgtags --- a/.hgtags Thu Feb 14 23:12:40 2013 +0000 +++ b/.hgtags Mon Mar 04 21:29:14 2013 -0500 @@ -180,3 +180,4 @@ b41293d5794099a25e7e7bc69ff8843529272508 icedtea-2.2.4 c620184ea4250a1988f5a2e25abcef29900108a2 icedtea-2.2.5 acf0bd2643a58566c259ea9a9a73c446d11cc28c icedtea-2.2.6 +1b6e40dd07568ca0f9eb20b8685b11f1b103898e icedtea-2.2.7 From omajid at icedtea.classpath.org Mon Mar 4 18:31:17 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 02:31:17 +0000 Subject: /hg/release/icedtea7-forest-2.2/jdk: 3 new changesets Message-ID: changeset 8fe1f6f4085d in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=8fe1f6f4085d author: bae date: Thu Feb 14 19:51:51 2013 +0400 8007014: Improve image handling Reviewed-by: prr, mschoene, jgodinez changeset 40640be5d6a0 in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=40640be5d6a0 author: bae date: Thu Feb 21 11:25:43 2013 +0400 8007675: Improve color conversion Reviewed-by: prr, jgodinez changeset cd6b0853de97 in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=cd6b0853de97 author: Omair Majid date: Mon Mar 04 21:29:15 2013 -0500 Added tag icedtea-2.2.7 for changeset 40640be5d6a0 diffstat: .hgtags | 1 + src/share/classes/sun/awt/image/ByteComponentRaster.java | 12 +- src/share/classes/sun/awt/image/BytePackedRaster.java | 26 +- src/share/classes/sun/awt/image/IntegerComponentRaster.java | 71 +++- src/share/classes/sun/awt/image/IntegerInterleavedRaster.java | 27 +- src/share/classes/sun/awt/image/ShortComponentRaster.java | 12 +- src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java | 101 +++++- src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java | 160 +++++---- src/share/native/sun/awt/image/awt_parseImage.c | 1 + src/share/native/sun/awt/medialib/awt_ImagingLib.c | 32 +- src/share/native/sun/awt/medialib/mlib_ImageCreate.c | 33 +- src/share/native/sun/awt/medialib/safe_alloc.h | 6 - src/share/native/sun/awt/medialib/safe_math.h | 35 ++ 13 files changed, 380 insertions(+), 137 deletions(-) diffs (truncated from 895 to 500 lines): diff -r 6a419ec930a6 -r cd6b0853de97 .hgtags --- a/.hgtags Sun Feb 17 20:57:18 2013 +0000 +++ b/.hgtags Mon Mar 04 21:29:15 2013 -0500 @@ -196,3 +196,4 @@ 0000000000000000000000000000000000000000 icedtea-2.2.6 0000000000000000000000000000000000000000 icedtea-2.2.6 87ea64734ee654cb63e9cccba9dd93510cf4c400 icedtea-2.2.6 +40640be5d6a050443c7037ed81a3792e35e07eee icedtea-2.2.7 diff -r 6a419ec930a6 -r cd6b0853de97 src/share/classes/sun/awt/image/ByteComponentRaster.java --- a/src/share/classes/sun/awt/image/ByteComponentRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/ByteComponentRaster.java Mon Mar 04 21:29:15 2013 -0500 @@ -868,6 +868,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -905,13 +914,14 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 6a419ec930a6 -r cd6b0853de97 src/share/classes/sun/awt/image/BytePackedRaster.java --- a/src/share/classes/sun/awt/image/BytePackedRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/BytePackedRaster.java Mon Mar 04 21:29:15 2013 -0500 @@ -1368,11 +1368,35 @@ throw new RasterFormatException("Data offsets must be >= 0"); } + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + + + /* + * pixelBitstride was verified in constructor, so just make + * sure that it is safe to multiply it by width. + */ + if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { + throw new RasterFormatException("Invalid raster dimension"); + } + + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + throw new RasterFormatException("Invalid scanline stride"); + } + int lastbit = (dataBitOffset + (height-1) * scanlineStride * 8 + (width-1) * pixelBitStride + pixelBitStride - 1); - if (lastbit / 8 >= data.length) { + if (lastbit < 0 || lastbit / 8 >= data.length) { throw new RasterFormatException("raster dimensions overflow " + "array bounds"); } diff -r 6a419ec930a6 -r cd6b0853de97 src/share/classes/sun/awt/image/IntegerComponentRaster.java --- a/src/share/classes/sun/awt/image/IntegerComponentRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/IntegerComponentRaster.java Mon Mar 04 21:29:15 2013 -0500 @@ -208,7 +208,7 @@ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -629,16 +629,26 @@ } /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. + * Verify that the layout parameters are consistent with the data. + * + * The method verifies whether scanline stride and pixel stride do not + * cause an integer overflow during calculation of a position of the pixel + * in data buffer. It also verifies whether the data buffer has enough data + * to correspond the raster layout attributes. + * + * @throws RasterFormatException if an integer overflow is detected, + * or if data buffer has not enough capacity. */ - private void verify (boolean strictCheck) { + protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + if (dataOffsets[0] < 0) { throw new RasterFormatException("Data offset ("+dataOffsets[0]+ ") must be >= 0"); @@ -647,17 +657,46 @@ int maxSize = 0; int size; - for (int i=0; i < numDataElements; i++) { - size = (height-1)*scanlineStride + (width-1)*pixelStride + - dataOffsets[i]; + // we can be sure that width and height are greater than 0 + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + // integer overflow + throw new RasterFormatException("Incorrect scanline stride: " + + scanlineStride); + } + int lastScanOffset = (height - 1) * scanlineStride; + + if (pixelStride < 0 || + pixelStride > (Integer.MAX_VALUE / width)) + { + // integer overflow + throw new RasterFormatException("Incorrect pixel stride: " + + pixelStride); + } + int lastPixelOffset = (width - 1) * pixelStride; + + if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { + // integer overflow + throw new RasterFormatException("Incorrect raster attributes"); + } + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + } + + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } } if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); + throw new RasterFormatException("Data array too small (should be " + + maxSize + " )"); } } diff -r 6a419ec930a6 -r cd6b0853de97 src/share/classes/sun/awt/image/IntegerInterleavedRaster.java --- a/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Mon Mar 04 21:29:15 2013 -0500 @@ -151,7 +151,7 @@ throw new RasterFormatException("IntegerInterleavedRasters must have"+ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -540,31 +540,6 @@ return createCompatibleWritableRaster(width,height); } - /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. - */ - private void verify (boolean strictCheck) { - int maxSize = 0; - int size; - - size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; - if (size > maxSize) { - maxSize = size; - } - if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); - } - } - public String toString() { return new String ("IntegerInterleavedRaster: width = "+width +" height = " + height diff -r 6a419ec930a6 -r cd6b0853de97 src/share/classes/sun/awt/image/ShortComponentRaster.java --- a/src/share/classes/sun/awt/image/ShortComponentRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/ShortComponentRaster.java Mon Mar 04 21:29:15 2013 -0500 @@ -802,6 +802,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -839,12 +848,13 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 6a419ec930a6 -r cd6b0853de97 src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Mon Mar 04 21:29:15 2013 -0500 @@ -99,50 +99,75 @@ int offset; Object dataArray; - private LCMSImageLayout(int np, int pixelType, int pixelSize) { + private int dataArrayLength; /* in bytes */ + + private LCMSImageLayout(int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; width = np; height = 1; - nextRowOffset = np*pixelSize; + nextRowOffset = safeMult(pixelSize, np); offset = 0; } private LCMSImageLayout(int width, int height, int pixelType, - int pixelSize) { + int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; this.width = width; this.height = height; - nextRowOffset = width*pixelSize; + nextRowOffset = safeMult(pixelSize, width); offset = 0; } - public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_BYTE; dataArray = data; + dataArrayLength = data.length; + + verify(); } - public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_SHORT; dataArray = data; + dataArrayLength = 2 * data.length; + + verify(); } - public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_INT; dataArray = data; + dataArrayLength = 4 * data.length; + + verify(); } public LCMSImageLayout(double[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException { this(np, pixelType, pixelSize); dataType = DT_DOUBLE; dataArray = data; + dataArrayLength = 8 * data.length; + + verify(); } - public LCMSImageLayout(BufferedImage image) { + public LCMSImageLayout(BufferedImage image) throws ImageLayoutException { ShortComponentRaster shortRaster; IntegerComponentRaster intRaster; ByteComponentRaster byteRaster; @@ -186,9 +211,13 @@ case BufferedImage.TYPE_INT_ARGB: case BufferedImage.TYPE_INT_BGR: intRaster = (IntegerComponentRaster)image.getRaster(); - nextRowOffset = intRaster.getScanlineStride()*4; - offset = intRaster.getDataOffset(0)*4; + + nextRowOffset = safeMult(4, intRaster.getScanlineStride()); + + offset = safeMult(4, intRaster.getDataOffset(0)); + dataArray = intRaster.getDataStorage(); + dataArrayLength = 4 * intRaster.getDataStorage().length; dataType = DT_INT; break; @@ -196,8 +225,10 @@ case BufferedImage.TYPE_4BYTE_ABGR: byteRaster = (ByteComponentRaster)image.getRaster(); nextRowOffset = byteRaster.getScanlineStride(); - offset = byteRaster.getDataOffset(0); + int firstBand = image.getSampleModel().getNumBands() - 1; + offset = byteRaster.getDataOffset(firstBand); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; @@ -206,17 +237,20 @@ nextRowOffset = byteRaster.getScanlineStride(); offset = byteRaster.getDataOffset(0); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; case BufferedImage.TYPE_USHORT_GRAY: shortRaster = (ShortComponentRaster)image.getRaster(); - nextRowOffset = shortRaster.getScanlineStride()*2; - offset = shortRaster.getDataOffset(0) * 2; + nextRowOffset = safeMult(2, shortRaster.getScanlineStride()); + offset = safeMult(2, shortRaster.getDataOffset(0)); dataArray = shortRaster.getDataStorage(); + dataArrayLength = 2 * shortRaster.getDataStorage().length; dataType = DT_SHORT; break; } + verify(); } public static boolean isSupported(BufferedImage image) { @@ -232,4 +266,45 @@ } return false; } + + private void verify() throws ImageLayoutException { + + if (offset < 0 || offset >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + + int lastPixelOffset = safeMult(nextRowOffset, (height - 1)); + + lastPixelOffset = safeAdd(lastPixelOffset, (width - 1)); + + int off = safeAdd(offset, lastPixelOffset); + + if (off < 0 || off >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + } + + static int safeAdd(int a, int b) throws ImageLayoutException { + long res = a; + res += b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + static int safeMult(int a, int b) throws ImageLayoutException { + long res = a; + res *= b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + public static class ImageLayoutException extends Exception { + public ImageLayoutException(String message) { + super(message); + } + } } diff -r 6a419ec930a6 -r cd6b0853de97 src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Mon Mar 04 21:29:15 2013 -0500 @@ -51,6 +51,7 @@ import java.awt.image.ComponentSampleModel; import sun.java2d.cmm.*; import sun.java2d.cmm.lcms.*; +import static sun.java2d.cmm.lcms.LCMSImageLayout.ImageLayoutException; public class LCMSTransform implements ColorTransform { @@ -157,8 +158,12 @@ if (LCMSImageLayout.isSupported(src) && LCMSImageLayout.isSupported(dst)) { - doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); - return; + try { + doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); + return; + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } } LCMSImageLayout srcIL, dstIL; Raster srcRas = src.getRaster(); @@ -216,14 +221,18 @@ } int idx; // TODO check for src npixels = dst npixels - srcIL = new LCMSImageLayout( - srcLine, srcLine.length/getNumInComponents(), - LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumInComponents()); - dstIL = new LCMSImageLayout( - dstLine, dstLine.length/getNumOutComponents(), - LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + try { + srcIL = new LCMSImageLayout( + srcLine, srcLine.length/getNumInComponents(), + LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumInComponents()); + dstIL = new LCMSImageLayout( + dstLine, dstLine.length/getNumOutComponents(), + LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } // process each scanline for (int y = 0; y < h; y++) { // convert src scanline @@ -272,16 +281,19 @@ From omajid at icedtea.classpath.org Mon Mar 4 18:31:21 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 02:31:21 +0000 Subject: /hg/release/icedtea7-forest-2.2/langtools: Added tag icedtea-2.2... Message-ID: changeset ae5ba074188d in /hg/release/icedtea7-forest-2.2/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/langtools?cmd=changeset;node=ae5ba074188d author: Omair Majid date: Mon Mar 04 21:29:16 2013 -0500 Added tag icedtea-2.2.7 for changeset e89d5b6f21a6 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r e89d5b6f21a6 -r ae5ba074188d .hgtags --- a/.hgtags Thu Feb 14 23:12:42 2013 +0000 +++ b/.hgtags Mon Mar 04 21:29:16 2013 -0500 @@ -181,3 +181,4 @@ e96efe42e3d541f791f82f23c7465337cefea46e icedtea-2.2.4 206668cf21e5c72ca48ebfc1aa45a012676681f6 icedtea-2.2.5 de74a816c73afcefc37d9edaacf165d7394f3cf3 icedtea-2.2.6 +e89d5b6f21a69b052fda26bc8024bbc9d0a3efc9 icedtea-2.2.7 From omajid at icedtea.classpath.org Mon Mar 4 20:33:47 2013 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 05 Mar 2013 04:33:47 +0000 Subject: /hg/release/icedtea7-forest-2.4/jdk: 2 new changesets Message-ID: changeset 19d36a087e4f in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=19d36a087e4f author: bae date: Thu Feb 14 19:51:51 2013 +0400 8007014: Improve image handling Reviewed-by: prr, mschoene, jgodinez changeset 3d0b72d4c0f9 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=3d0b72d4c0f9 author: bae date: Thu Feb 21 11:25:43 2013 +0400 8007675: Improve color conversion Reviewed-by: prr, jgodinez diffstat: src/share/classes/sun/awt/image/ByteComponentRaster.java | 12 +- src/share/classes/sun/awt/image/BytePackedRaster.java | 26 +- src/share/classes/sun/awt/image/IntegerComponentRaster.java | 71 +++- src/share/classes/sun/awt/image/IntegerInterleavedRaster.java | 27 +- src/share/classes/sun/awt/image/ShortComponentRaster.java | 12 +- src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java | 101 +++++- src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java | 160 +++++---- src/share/native/sun/awt/image/awt_parseImage.c | 1 + src/share/native/sun/awt/medialib/awt_ImagingLib.c | 32 +- src/share/native/sun/awt/medialib/mlib_ImageCreate.c | 33 +- src/share/native/sun/awt/medialib/safe_alloc.h | 6 - src/share/native/sun/awt/medialib/safe_math.h | 35 ++ 12 files changed, 379 insertions(+), 137 deletions(-) diffs (truncated from 887 to 500 lines): diff -r 2230cd11d9a5 -r 3d0b72d4c0f9 src/share/classes/sun/awt/image/ByteComponentRaster.java --- a/src/share/classes/sun/awt/image/ByteComponentRaster.java Thu Feb 07 09:41:47 2013 -0800 +++ b/src/share/classes/sun/awt/image/ByteComponentRaster.java Thu Feb 21 11:25:43 2013 +0400 @@ -868,6 +868,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -905,13 +914,14 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 2230cd11d9a5 -r 3d0b72d4c0f9 src/share/classes/sun/awt/image/BytePackedRaster.java --- a/src/share/classes/sun/awt/image/BytePackedRaster.java Thu Feb 07 09:41:47 2013 -0800 +++ b/src/share/classes/sun/awt/image/BytePackedRaster.java Thu Feb 21 11:25:43 2013 +0400 @@ -1368,11 +1368,35 @@ throw new RasterFormatException("Data offsets must be >= 0"); } + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + + + /* + * pixelBitstride was verified in constructor, so just make + * sure that it is safe to multiply it by width. + */ + if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { + throw new RasterFormatException("Invalid raster dimension"); + } + + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + throw new RasterFormatException("Invalid scanline stride"); + } + int lastbit = (dataBitOffset + (height-1) * scanlineStride * 8 + (width-1) * pixelBitStride + pixelBitStride - 1); - if (lastbit / 8 >= data.length) { + if (lastbit < 0 || lastbit / 8 >= data.length) { throw new RasterFormatException("raster dimensions overflow " + "array bounds"); } diff -r 2230cd11d9a5 -r 3d0b72d4c0f9 src/share/classes/sun/awt/image/IntegerComponentRaster.java --- a/src/share/classes/sun/awt/image/IntegerComponentRaster.java Thu Feb 07 09:41:47 2013 -0800 +++ b/src/share/classes/sun/awt/image/IntegerComponentRaster.java Thu Feb 21 11:25:43 2013 +0400 @@ -208,7 +208,7 @@ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -629,16 +629,26 @@ } /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. + * Verify that the layout parameters are consistent with the data. + * + * The method verifies whether scanline stride and pixel stride do not + * cause an integer overflow during calculation of a position of the pixel + * in data buffer. It also verifies whether the data buffer has enough data + * to correspond the raster layout attributes. + * + * @throws RasterFormatException if an integer overflow is detected, + * or if data buffer has not enough capacity. */ - private void verify (boolean strictCheck) { + protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + if (dataOffsets[0] < 0) { throw new RasterFormatException("Data offset ("+dataOffsets[0]+ ") must be >= 0"); @@ -647,17 +657,46 @@ int maxSize = 0; int size; - for (int i=0; i < numDataElements; i++) { - size = (height-1)*scanlineStride + (width-1)*pixelStride + - dataOffsets[i]; + // we can be sure that width and height are greater than 0 + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + // integer overflow + throw new RasterFormatException("Incorrect scanline stride: " + + scanlineStride); + } + int lastScanOffset = (height - 1) * scanlineStride; + + if (pixelStride < 0 || + pixelStride > (Integer.MAX_VALUE / width)) + { + // integer overflow + throw new RasterFormatException("Incorrect pixel stride: " + + pixelStride); + } + int lastPixelOffset = (width - 1) * pixelStride; + + if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { + // integer overflow + throw new RasterFormatException("Incorrect raster attributes"); + } + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + } + + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } } if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); + throw new RasterFormatException("Data array too small (should be " + + maxSize + " )"); } } diff -r 2230cd11d9a5 -r 3d0b72d4c0f9 src/share/classes/sun/awt/image/IntegerInterleavedRaster.java --- a/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Thu Feb 07 09:41:47 2013 -0800 +++ b/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Thu Feb 21 11:25:43 2013 +0400 @@ -151,7 +151,7 @@ throw new RasterFormatException("IntegerInterleavedRasters must have"+ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -540,31 +540,6 @@ return createCompatibleWritableRaster(width,height); } - /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. - */ - private void verify (boolean strictCheck) { - int maxSize = 0; - int size; - - size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; - if (size > maxSize) { - maxSize = size; - } - if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); - } - } - public String toString() { return new String ("IntegerInterleavedRaster: width = "+width +" height = " + height diff -r 2230cd11d9a5 -r 3d0b72d4c0f9 src/share/classes/sun/awt/image/ShortComponentRaster.java --- a/src/share/classes/sun/awt/image/ShortComponentRaster.java Thu Feb 07 09:41:47 2013 -0800 +++ b/src/share/classes/sun/awt/image/ShortComponentRaster.java Thu Feb 21 11:25:43 2013 +0400 @@ -802,6 +802,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -839,12 +848,13 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 2230cd11d9a5 -r 3d0b72d4c0f9 src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Thu Feb 07 09:41:47 2013 -0800 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Thu Feb 21 11:25:43 2013 +0400 @@ -99,50 +99,75 @@ int offset; Object dataArray; - private LCMSImageLayout(int np, int pixelType, int pixelSize) { + private int dataArrayLength; /* in bytes */ + + private LCMSImageLayout(int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; width = np; height = 1; - nextRowOffset = np*pixelSize; + nextRowOffset = safeMult(pixelSize, np); offset = 0; } private LCMSImageLayout(int width, int height, int pixelType, - int pixelSize) { + int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; this.width = width; this.height = height; - nextRowOffset = width*pixelSize; + nextRowOffset = safeMult(pixelSize, width); offset = 0; } - public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_BYTE; dataArray = data; + dataArrayLength = data.length; + + verify(); } - public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_SHORT; dataArray = data; + dataArrayLength = 2 * data.length; + + verify(); } - public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_INT; dataArray = data; + dataArrayLength = 4 * data.length; + + verify(); } public LCMSImageLayout(double[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException { this(np, pixelType, pixelSize); dataType = DT_DOUBLE; dataArray = data; + dataArrayLength = 8 * data.length; + + verify(); } - public LCMSImageLayout(BufferedImage image) { + public LCMSImageLayout(BufferedImage image) throws ImageLayoutException { ShortComponentRaster shortRaster; IntegerComponentRaster intRaster; ByteComponentRaster byteRaster; @@ -186,9 +211,13 @@ case BufferedImage.TYPE_INT_ARGB: case BufferedImage.TYPE_INT_BGR: intRaster = (IntegerComponentRaster)image.getRaster(); - nextRowOffset = intRaster.getScanlineStride()*4; - offset = intRaster.getDataOffset(0)*4; + + nextRowOffset = safeMult(4, intRaster.getScanlineStride()); + + offset = safeMult(4, intRaster.getDataOffset(0)); + dataArray = intRaster.getDataStorage(); + dataArrayLength = 4 * intRaster.getDataStorage().length; dataType = DT_INT; break; @@ -196,8 +225,10 @@ case BufferedImage.TYPE_4BYTE_ABGR: byteRaster = (ByteComponentRaster)image.getRaster(); nextRowOffset = byteRaster.getScanlineStride(); - offset = byteRaster.getDataOffset(0); + int firstBand = image.getSampleModel().getNumBands() - 1; + offset = byteRaster.getDataOffset(firstBand); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; @@ -206,17 +237,20 @@ nextRowOffset = byteRaster.getScanlineStride(); offset = byteRaster.getDataOffset(0); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; case BufferedImage.TYPE_USHORT_GRAY: shortRaster = (ShortComponentRaster)image.getRaster(); - nextRowOffset = shortRaster.getScanlineStride()*2; - offset = shortRaster.getDataOffset(0) * 2; + nextRowOffset = safeMult(2, shortRaster.getScanlineStride()); + offset = safeMult(2, shortRaster.getDataOffset(0)); dataArray = shortRaster.getDataStorage(); + dataArrayLength = 2 * shortRaster.getDataStorage().length; dataType = DT_SHORT; break; } + verify(); } public static boolean isSupported(BufferedImage image) { @@ -232,4 +266,45 @@ } return false; } + + private void verify() throws ImageLayoutException { + + if (offset < 0 || offset >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + + int lastPixelOffset = safeMult(nextRowOffset, (height - 1)); + + lastPixelOffset = safeAdd(lastPixelOffset, (width - 1)); + + int off = safeAdd(offset, lastPixelOffset); + + if (off < 0 || off >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + } + + static int safeAdd(int a, int b) throws ImageLayoutException { + long res = a; + res += b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + static int safeMult(int a, int b) throws ImageLayoutException { + long res = a; + res *= b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + public static class ImageLayoutException extends Exception { + public ImageLayoutException(String message) { + super(message); + } + } } diff -r 2230cd11d9a5 -r 3d0b72d4c0f9 src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Thu Feb 07 09:41:47 2013 -0800 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Thu Feb 21 11:25:43 2013 +0400 @@ -51,6 +51,7 @@ import java.awt.image.ComponentSampleModel; import sun.java2d.cmm.*; import sun.java2d.cmm.lcms.*; +import static sun.java2d.cmm.lcms.LCMSImageLayout.ImageLayoutException; public class LCMSTransform implements ColorTransform { @@ -157,8 +158,12 @@ if (LCMSImageLayout.isSupported(src) && LCMSImageLayout.isSupported(dst)) { - doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); - return; + try { + doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); + return; + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } } LCMSImageLayout srcIL, dstIL; Raster srcRas = src.getRaster(); @@ -216,14 +221,18 @@ } int idx; // TODO check for src npixels = dst npixels - srcIL = new LCMSImageLayout( - srcLine, srcLine.length/getNumInComponents(), - LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumInComponents()); - dstIL = new LCMSImageLayout( - dstLine, dstLine.length/getNumOutComponents(), - LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + try { + srcIL = new LCMSImageLayout( + srcLine, srcLine.length/getNumInComponents(), + LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumInComponents()); + dstIL = new LCMSImageLayout( + dstLine, dstLine.length/getNumOutComponents(), + LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } // process each scanline for (int y = 0; y < h; y++) { // convert src scanline @@ -272,16 +281,19 @@ alpha = new float[w]; } int idx; - srcIL = new LCMSImageLayout( - srcLine, srcLine.length/getNumInComponents(), - LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | - LCMSImageLayout.BYTES_SH(2), getNumInComponents()*2); + try { From stefan at complang.tuwien.ac.at Mon Mar 4 23:45:22 2013 From: stefan at complang.tuwien.ac.at (Stefan Ring) Date: Tue, 5 Mar 2013 08:45:22 +0100 Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: <513526D8.7070407@redhat.com> References: <513526D8.7070407@redhat.com> Message-ID: > I am on Fedora 17. I can still build icedtea6-1.11 using the ecj/gcj > that's part of Fedora and I have been using that to build icedtea6-1.12. You are right. This does indeed work for me as well. Thanks! From ptisnovs at icedtea.classpath.org Tue Mar 5 02:39:59 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 05 Mar 2013 10:39:59 +0000 Subject: /hg/rhino-tests: Added two new tests into the ScriptEngineClassT... Message-ID: changeset 793835c40f7d in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=793835c40f7d author: Pavel Tisnovsky date: Tue Mar 05 11:43:02 2013 +0100 Added two new tests into the ScriptEngineClassTest: testMethod() and getDeclaredMethod(). diffstat: ChangeLog | 6 + src/org/RhinoTests/ScriptEngineClassTest.java | 116 ++++++++++++++++++++++++++ 2 files changed, 122 insertions(+), 0 deletions(-) diffs (139 lines): diff -r 4c9480106120 -r 793835c40f7d ChangeLog --- a/ChangeLog Mon Mar 04 09:54:38 2013 +0100 +++ b/ChangeLog Tue Mar 05 11:43:02 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-05 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptEngineClassTest.java: + Added two new tests into the ScriptEngineClassTest: + testMethod() and getDeclaredMethod(). + 2013-03-04 Pavel Tisnovsky * src/org/RhinoTests/ScriptEngineClassTest.java: diff -r 4c9480106120 -r 793835c40f7d src/org/RhinoTests/ScriptEngineClassTest.java --- a/src/org/RhinoTests/ScriptEngineClassTest.java Mon Mar 04 09:54:38 2013 +0100 +++ b/src/org/RhinoTests/ScriptEngineClassTest.java Tue Mar 05 11:43:02 2013 +0100 @@ -657,6 +657,122 @@ } /** + * Test for method javax.script.ScriptEngine.getClass().getMethod() + */ + protected void testGetMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("get", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk6.put("put", new Class[] {java.lang.String.class, java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("getFactory", new Class[] {}); + methodsThatShouldExist_jdk6.put("getContext", new Class[] {}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.lang.String.class, javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.io.Reader.class, javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.io.Reader.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.lang.String.class, javax.script.Bindings.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.io.Reader.class, javax.script.Bindings.class}); + methodsThatShouldExist_jdk6.put("setBindings", new Class[] {javax.script.Bindings.class, int.class}); + methodsThatShouldExist_jdk6.put("getBindings", new Class[] {int.class}); + methodsThatShouldExist_jdk6.put("createBindings", new Class[] {}); + methodsThatShouldExist_jdk6.put("setContext", new Class[] {javax.script.ScriptContext.class}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("get", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk7.put("put", new Class[] {java.lang.String.class, java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("getFactory", new Class[] {}); + methodsThatShouldExist_jdk7.put("getContext", new Class[] {}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.io.Reader.class, javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.lang.String.class, javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.io.Reader.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.lang.String.class, javax.script.Bindings.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.io.Reader.class, javax.script.Bindings.class}); + methodsThatShouldExist_jdk7.put("getBindings", new Class[] {int.class}); + methodsThatShouldExist_jdk7.put("setBindings", new Class[] {javax.script.Bindings.class, int.class}); + methodsThatShouldExist_jdk7.put("createBindings", new Class[] {}); + methodsThatShouldExist_jdk7.put("setContext", new Class[] {javax.script.ScriptContext.class}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.scriptEngineClass.getMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.ScriptEngine.getClass().getDeclaredMethod() + */ + protected void testGetDeclaredMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("get", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk6.put("put", new Class[] {java.lang.String.class, java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("getFactory", new Class[] {}); + methodsThatShouldExist_jdk6.put("getContext", new Class[] {}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.lang.String.class, javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.io.Reader.class, javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.io.Reader.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.lang.String.class, javax.script.Bindings.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {java.io.Reader.class, javax.script.Bindings.class}); + methodsThatShouldExist_jdk6.put("setBindings", new Class[] {javax.script.Bindings.class, int.class}); + methodsThatShouldExist_jdk6.put("getBindings", new Class[] {int.class}); + methodsThatShouldExist_jdk6.put("createBindings", new Class[] {}); + methodsThatShouldExist_jdk6.put("setContext", new Class[] {javax.script.ScriptContext.class}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("get", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk7.put("put", new Class[] {java.lang.String.class, java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("getFactory", new Class[] {}); + methodsThatShouldExist_jdk7.put("getContext", new Class[] {}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.io.Reader.class, javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.lang.String.class, javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.io.Reader.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.lang.String.class, javax.script.Bindings.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {java.io.Reader.class, javax.script.Bindings.class}); + methodsThatShouldExist_jdk7.put("getBindings", new Class[] {int.class}); + methodsThatShouldExist_jdk7.put("setBindings", new Class[] {javax.script.Bindings.class, int.class}); + methodsThatShouldExist_jdk7.put("createBindings", new Class[] {}); + methodsThatShouldExist_jdk7.put("setContext", new Class[] {javax.script.ScriptContext.class}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.scriptEngineClass.getDeclaredMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.ScriptEngine.getClass().getAnnotations() */ protected void testGetAnnotations() { From ptisnovs at icedtea.classpath.org Tue Mar 5 02:48:52 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 05 Mar 2013 10:48:52 +0000 Subject: /hg/gfx-test: Eight new tests added into the test suite BitBltUs... Message-ID: changeset f261a134ee1e in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=f261a134ee1e author: Pavel Tisnovsky date: Tue Mar 05 11:51:57 2013 +0100 Eight new tests added into the test suite BitBltUsingBgColor. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltUsingBgColor.java | 120 +++++++++++++++++++++ 2 files changed, 125 insertions(+), 0 deletions(-) diffs (142 lines): diff -r 20e676c3a1a2 -r f261a134ee1e ChangeLog --- a/ChangeLog Mon Mar 04 10:10:58 2013 +0100 +++ b/ChangeLog Tue Mar 05 11:51:57 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-05 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltUsingBgColor.java: + Eight new tests added into the test suite BitBltUsingBgColor. + 2013-03-04 Pavel Tisnovsky * src/org/gfxtest/testsuites/PrintTestBitBltUsingBgColorAlpha.java: diff -r 20e676c3a1a2 -r f261a134ee1e src/org/gfxtest/testsuites/BitBltUsingBgColor.java --- a/src/org/gfxtest/testsuites/BitBltUsingBgColor.java Mon Mar 04 10:10:58 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltUsingBgColor.java Tue Mar 05 11:51:57 2013 +0100 @@ -1366,6 +1366,126 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Background color is set to Color.black. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort555RGBBackgroundBlack(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort555RGB(image, graphics2d, Color.black); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Background color is set to Color.blue. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort555RGBBackgroundBlue(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort555RGB(image, graphics2d, Color.blue); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Background color is set to Color.green. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort555RGBBackgroundGreen(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort555RGB(image, graphics2d, Color.green); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Background color is set to Color.cyan. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort555RGBBackgroundCyan(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort555RGB(image, graphics2d, Color.cyan); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Background color is set to Color.red. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort555RGBBackgroundRed(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort555RGB(image, graphics2d, Color.red); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Background color is set to Color.magenta. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort555RGBBackgroundMagenta(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort555RGB(image, graphics2d, Color.magenta); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Background color is set to Color.yellow. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort555RGBBackgroundYellow(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort555RGB(image, graphics2d, Color.yellow); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Background color is set to Color.white. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort555RGBBackgroundWhite(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort555RGB(image, graphics2d, Color.white); + } + + /** * Entry point to the test suite. * * @param args not used in this case From adomurad at redhat.com Tue Mar 5 12:47:11 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 05 Mar 2013 15:47:11 -0500 Subject: [icedtea-web][rfc] Move stream closing utility in JNLPClassLoader to StreamUtils Message-ID: <513659CF.9000707@redhat.com> What it says on the tin Changelog: 2013-03-05 Adam Domurad * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader: move closeStream to StreamUtils.closeSilently, update usages. * netx/net/sourceforge/jnlp/util/StreamUtils: New method closeSilently, closes stream, catching IOException. Happy hacking, -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: remove-close-stream.patch Type: text/x-patch Size: 2539 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130305/3412d639/remove-close-stream.patch From jvanalte at redhat.com Tue Mar 5 12:50:41 2013 From: jvanalte at redhat.com (Jon VanAlten) Date: Tue, 5 Mar 2013 15:50:41 -0500 (EST) Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: <513461DB.4000603@ubuntu.com> Message-ID: <1085496988.2894239.1362516641905.JavaMail.root@redhat.com> ----- Original Message ----- > From: "Matthias Klose" > To: "Stefan Ring" > Cc: "GCJ-patches" , "distro-pkg-dev" > Sent: Monday, March 4, 2013 3:56:59 AM > Subject: Re: icedtea6 fails to bootstrap on Fedora 17/18 > > Am 03.03.2013 17:14, schrieb Stefan Ring: > > ecj is much more recent on Fedora apparently: > > > > Ubuntu quantal $ ecj -version: > > Eclipse Java Compiler 0.972_R35x, 3.5.1 release, Copyright IBM Corp > > 2000, 2009. All rights reserved. > > Fedora 17 $ ecj -version > > Eclipse Compiler for Java(TM) v20120814-155456, 3.8.2, Copyright > > IBM > > Corp 2000, 2012. All rights reserved. > > Debian and Ubuntu use the same sources to provide both ecj and ecj1. > ftp://sourceware.org/pub/java/ still has 3.5 as the latest version > available. > If Fedora ships an updated ecj1, then it would be nice to see this > "upstream" as > well. > > Matthias > > Hi, Fedora uses eclipse as upstream for ecj, not the source bundles at that ftp site. But, you've reminded me of something. The ecj package does add an alternative entry point (used by gcc/gcj). This comes from the sourceware.org:/cvs/rhug repository. I had to patch the newest[1] sources there a tiny bit due to ecj change: diff -u -r org/eclipse/jdt/internal/compiler/batch/GCCMain.java org/eclipse/jdt/internal/compiler/batch/GCCMain.java --- a/org/eclipse/jdt/internal/compiler/batch/GCCMain.java 2008-08-13 13:46:30.000000000 -0400 +++ b/org/eclipse/jdt/internal/compiler/batch/GCCMain.java 2012-04-26 13:36:21.268642702 -0400 @@ -29,6 +29,7 @@ import org.eclipse.jdt.internal.compiler.env.AccessRule; import org.eclipse.jdt.internal.compiler.env.AccessRuleSet; import org.eclipse.jdt.internal.compiler.impl.CompilerOptions; +import org.eclipse.jdt.internal.compiler.problem.ProblemSeverities; import org.eclipse.jdt.internal.compiler.util.Messages; import org.eclipse.jdt.internal.compiler.util.SuffixConstants; @@ -463,7 +464,7 @@ } if (inhibitAllWarnings) - disableWarnings(); + disableAll(ProblemSeverities.Warning); if (treatWarningsAsErrors) turnWarningsToErrors(); I really meant to follow up to upstream this, what is the right way to do that? (I am totally fine with someone committing this on my behalf, by the way, but in general I would like to know better if there is some mailing list where changes should go). thanks, jon [1] Either that, or my (admittedly lacking) cvs-foo failed me. From jvanalte at redhat.com Tue Mar 5 12:57:06 2013 From: jvanalte at redhat.com (Jon VanAlten) Date: Tue, 5 Mar 2013 15:57:06 -0500 (EST) Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: Message-ID: <1926255158.2897679.1362517025998.JavaMail.root@redhat.com> ----- Original Message ----- > From: "Stefan Ring" > To: "distro-pkg-dev" > Sent: Monday, March 4, 2013 4:58:12 PM > Subject: Re: icedtea6 fails to bootstrap on Fedora 17/18 > > > Debian and Ubuntu use the same sources to provide both ecj and > > ecj1. > > ftp://sourceware.org/pub/java/ still has 3.5 as the latest version > > available. > > If Fedora ships an updated ecj1, then it would be nice to see this > > "upstream" as > > well. > > Interestingly, the package has been updated only rather recently (Oct > 2012, long after the F17 release): > . > The build works just fine with the previous version. > Hi Stefan, Ugh, sorry this causes you pain! In case you are wondering, this update was largely driven by demand: https://bugzilla.redhat.com/show_bug.cgi?id=813352 I see you've been pointed at a workaround, but do you mind filing this as a bug? I can't promise to look at it right away, but it would be great if it was tracked. thanks, jon From omajid at redhat.com Tue Mar 5 13:04:38 2013 From: omajid at redhat.com (Omair Majid) Date: Tue, 05 Mar 2013 16:04:38 -0500 Subject: [icedtea-web][rfc] Move stream closing utility in JNLPClassLoader to StreamUtils In-Reply-To: <513659CF.9000707@redhat.com> References: <513659CF.9000707@redhat.com> Message-ID: <51365DE6.2060102@redhat.com> Hi Adam, On 03/05/2013 03:47 PM, Adam Domurad wrote: > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader: move closeStream > to StreamUtils.closeSilently, update usages. > * netx/net/sourceforge/jnlp/util/StreamUtils: New method closeSilently, > closes stream, catching IOException. Something like this is better style: * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java (closeStream): Remove. (verifySignedJNLP): Make use of StreamUtils instead. * netx/net/sourceforge/jnlp/utils/StreamUtils.java (closeSilently): New method. > + /*** > + * Closes a stream, without throwing an exception Please add a note saying that exceptions will be printed and not just ignored. Otherwise looks fine to me. Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From adomurad at redhat.com Tue Mar 5 13:20:11 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 05 Mar 2013 16:20:11 -0500 Subject: [icedtea-web][rfc] Extract native code caching from JNLPClassLoader into a small class Message-ID: <5136618B.70505@redhat.com> This is an incremental part of the effort to reduce the responsibilities of JNLPClassLoader. 2013-03-05 Adam Domurad * netx/net/sourceforge/jnlp/cache/NativeLibraryStorage.java: New, stores and searches for native library files that are loaded from jars. * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: Move code that handled native jar caching to NativeLibraryStorage. Happy hacking, -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: extract-class-for-native-libs.patch Type: text/x-patch Size: 13344 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130305/de69ca33/extract-class-for-native-libs.patch From adomurad at redhat.com Tue Mar 5 13:27:06 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 05 Mar 2013 16:27:06 -0500 Subject: [icedtea-web][rfc] Move stream closing utility in JNLPClassLoader to StreamUtils In-Reply-To: <51365DE6.2060102@redhat.com> References: <513659CF.9000707@redhat.com> <51365DE6.2060102@redhat.com> Message-ID: <5136632A.5070301@redhat.com> On 03/05/2013 04:04 PM, Omair Majid wrote: > Hi Adam, > > On 03/05/2013 03:47 PM, Adam Domurad wrote: >> * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader: move closeStream >> to StreamUtils.closeSilently, update usages. >> * netx/net/sourceforge/jnlp/util/StreamUtils: New method closeSilently, >> closes stream, catching IOException. > Something like this is better style: > > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > (closeStream): Remove. > (verifySignedJNLP): Make use of StreamUtils instead. > * netx/net/sourceforge/jnlp/utils/StreamUtils.java > (closeSilently): New method. Thanks, I'll use that and take note for next time. > >> + /*** >> + * Closes a stream, without throwing an exception > Please add a note saying that exceptions will be printed and not just > ignored. Added. Also adjusted to only catch IOException, which is better on second thought. > > Otherwise looks fine to me. OK to push ? > > Cheers, > Omair > -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: remove-close-stream2.patch Type: text/x-patch Size: 2614 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130305/a9dfdb56/remove-close-stream2.patch From omajid at redhat.com Tue Mar 5 13:28:46 2013 From: omajid at redhat.com (Omair Majid) Date: Tue, 05 Mar 2013 16:28:46 -0500 Subject: [icedtea-web][rfc] Move stream closing utility in JNLPClassLoader to StreamUtils In-Reply-To: <5136632A.5070301@redhat.com> References: <513659CF.9000707@redhat.com> <51365DE6.2060102@redhat.com> <5136632A.5070301@redhat.com> Message-ID: <5136638E.7040201@redhat.com> On 03/05/2013 04:27 PM, Adam Domurad wrote: > OK to push ? Yup. Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From adomurad at icedtea.classpath.org Tue Mar 5 13:35:45 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Tue, 05 Mar 2013 21:35:45 +0000 Subject: /hg/icedtea-web: Move stream closing utility in JNLPClassLoader ... Message-ID: changeset e19fe33c82df in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=e19fe33c82df author: Adam Domurad date: Tue Mar 05 16:35:40 2013 -0500 Move stream closing utility in JNLPClassLoader to StreamUtils diffstat: ChangeLog | 8 ++++++ netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java | 23 +++-------------- netx/net/sourceforge/jnlp/util/StreamUtils.java | 18 +++++++++++++- 3 files changed, 30 insertions(+), 19 deletions(-) diffs (94 lines): diff -r 555397961654 -r e19fe33c82df ChangeLog --- a/ChangeLog Thu Feb 28 16:03:39 2013 +0100 +++ b/ChangeLog Tue Mar 05 16:35:40 2013 -0500 @@ -1,3 +1,11 @@ +2013-03-05 Adam Domurad + + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java + (closeStream): Remove. + (verifySignedJNLP): Make use of StreamUtils instead. + * netx/net/sourceforge/jnlp/utils/StreamUtils.java + (closeSilently): New method. + 2013-02-28 Jiri Vanek * netx/net/sourceforge/jnlp/config/SecurityValueValidator.java: modifed diff -r 555397961654 -r e19fe33c82df netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java --- a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Thu Feb 28 16:03:39 2013 +0100 +++ b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Tue Mar 05 16:35:40 2013 -0500 @@ -89,6 +89,7 @@ import net.sourceforge.jnlp.security.SecurityDialogs; import net.sourceforge.jnlp.tools.JarCertVerifier; import net.sourceforge.jnlp.util.FileUtils; +import net.sourceforge.jnlp.util.StreamUtils; import sun.misc.JarIndex; /** @@ -1022,30 +1023,16 @@ } finally { //Close all streams - closeStream(inStream); - closeStream(inputReader); - closeStream(fr); - closeStream(jnlpReader); + StreamUtils.closeSilently(inStream); + StreamUtils.closeSilently(inputReader); + StreamUtils.closeSilently(fr); + StreamUtils.closeSilently(jnlpReader); } if (JNLPRuntime.isDebug()) System.err.println("Ending check for signed JNLP file..."); } - /*** - * Closes a stream - * - * @param stream the stream that will be closed - */ - private void closeStream (Closeable stream) { - if (stream != null) - try { - stream.close(); - } catch (Exception e) { - e.printStackTrace(System.err); - } - } - /** * Prompt the user for trust on all the signers that require approval. * @throws LaunchException if the user does not approve every dialog prompt. diff -r 555397961654 -r e19fe33c82df netx/net/sourceforge/jnlp/util/StreamUtils.java --- a/netx/net/sourceforge/jnlp/util/StreamUtils.java Thu Feb 28 16:03:39 2013 +0100 +++ b/netx/net/sourceforge/jnlp/util/StreamUtils.java Tue Mar 05 16:35:40 2013 -0500 @@ -37,6 +37,7 @@ package net.sourceforge.jnlp.util; +import java.io.Closeable; import java.io.IOException; import java.io.InputStream; @@ -55,4 +56,19 @@ in.close(); } -} \ No newline at end of file + /*** + * Closes a stream, without throwing IOException. + * In case of IOException, prints the stack trace to System.err. + * + * @param stream the stream that will be closed + */ + public static void closeSilently (Closeable stream) { + if (stream != null) { + try { + stream.close(); + } catch (IOException e) { + e.printStackTrace(System.err); + } + } + } +} From bugzilla-daemon at icedtea.classpath.org Tue Mar 5 18:05:53 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 06 Mar 2013 02:05:53 +0000 Subject: [Bug 1332] New: Error running Netbeans 7.3 on Debian 6.0.7 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1332 Bug ID: 1332 Summary: Error running Netbeans 7.3 on Debian 6.0.7 Classification: Unclassified Product: IcedTea Version: unspecified Hardware: x86_64 OS: Linux Status: NEW Severity: critical Priority: P3 Component: JamVM Assignee: xerxes at zafena.se Reporter: mmantaras at gmail.com CC: unassigned at icedtea.classpath.org Created attachment 839 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=839&action=edit file generated by netbeans 7.3 This file generates on user directory when trying to running netbeans 7.3 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/70601caa/attachment.html From ptisnovs at icedtea.classpath.org Wed Mar 6 01:46:06 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 06 Mar 2013 09:46:06 +0000 Subject: /hg/rhino-tests: Added new tests into the SimpleBindingsClassTest: Message-ID: changeset 1069faa2ed62 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=1069faa2ed62 author: Pavel Tisnovsky date: Wed Mar 06 10:49:08 2013 +0100 Added new tests into the SimpleBindingsClassTest: testGetClasses(), testGetDeclaredClasses(), testGetDeclaringClass(), testGetEnclosingClass(), testGetEnclosingConstructor() and testGetEnclosingMethod(). diffstat: ChangeLog | 7 +++ src/org/RhinoTests/SimpleBindingsClassTest.java | 50 +++++++++++++++++++++++++ 2 files changed, 57 insertions(+), 0 deletions(-) diffs (74 lines): diff -r 793835c40f7d -r 1069faa2ed62 ChangeLog --- a/ChangeLog Tue Mar 05 11:43:02 2013 +0100 +++ b/ChangeLog Wed Mar 06 10:49:08 2013 +0100 @@ -1,3 +1,10 @@ +2013-03-06 Pavel Tisnovsky + + * src/org/RhinoTests/SimpleBindingsClassTest.java: + Added new tests into the SimpleBindingsClassTest: + testGetClasses(), testGetDeclaredClasses(), testGetDeclaringClass(), + testGetEnclosingClass(), testGetEnclosingConstructor() and testGetEnclosingMethod(). + 2013-03-05 Pavel Tisnovsky * src/org/RhinoTests/ScriptEngineClassTest.java: diff -r 793835c40f7d -r 1069faa2ed62 src/org/RhinoTests/SimpleBindingsClassTest.java --- a/src/org/RhinoTests/SimpleBindingsClassTest.java Tue Mar 05 11:43:02 2013 +0100 +++ b/src/org/RhinoTests/SimpleBindingsClassTest.java Wed Mar 06 10:49:08 2013 +0100 @@ -706,6 +706,56 @@ } /** + * Test for method javax.script.SimpleBindings.getClass().getClasses() + */ + protected void testGetClasses() { + Class[] cls = this.simpleBindingsClass.getClasses(); + assertNotNull(cls, "getClasses() returns null"); + assertEquals(cls.length, 0, "getClasses() returns wrong value!"); + } + + /** + * Test for method javax.script.SimpleBindings.getClass().getDeclaredClasses() + */ + protected void testGetDeclaredClasses() { + Class[] cls = this.simpleBindingsClass.getDeclaredClasses(); + assertNotNull(cls, "getDeclaredClasses() returns null"); + assertEquals(cls.length, 0, "getDeclaredClasses() returns wrong value!"); + } + + /** + * Test for method javax.script.SimpleBindings.getClass().getDeclaringClass() + */ + protected void testGetDeclaringClass() { + Class cls = this.simpleBindingsClass.getDeclaringClass(); + assertNull(cls, "getDeclaringClass() does not return null"); + } + + /** + * Test for method javax.script.SimpleBindings.getClass().getEnclosingClass() + */ + protected void testGetEnclosingClass() { + Class cls = this.simpleBindingsClass.getEnclosingClass(); + assertNull(cls, "getEnclosingClass() does not return null"); + } + + /** + * Test for method javax.script.SimpleBindings.getClass().getEnclosingConstructor() + */ + protected void testGetEnclosingConstructor() { + Constructor cons = this.simpleBindingsClass.getEnclosingConstructor(); + assertNull(cons, "getEnclosingConstructor() does not return null"); + } + + /** + * Test for method javax.script.SimpleBindings.getClass().getEnclosingMethod() + */ + protected void testGetEnclosingMethod() { + Method m = this.simpleBindingsClass.getEnclosingMethod(); + assertNull(m, "getEnclosingMethod() does not return null"); + } + + /** * Test for instanceof operator applied to a class javax.script.SimpleBindings */ @SuppressWarnings("cast") From ptisnovs at icedtea.classpath.org Wed Mar 6 01:55:56 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 06 Mar 2013 09:55:56 +0000 Subject: /hg/gfx-test: Five new tests added into the test suite BitBltUsi... Message-ID: changeset 1aa1b200b9d7 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=1aa1b200b9d7 author: Pavel Tisnovsky date: Wed Mar 06 10:58:59 2013 +0100 Five new tests added into the test suite BitBltUsingBgColorAlpha. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java | 74 +++++++++++++++++ 2 files changed, 79 insertions(+), 0 deletions(-) diffs (96 lines): diff -r f261a134ee1e -r 1aa1b200b9d7 ChangeLog --- a/ChangeLog Tue Mar 05 11:51:57 2013 +0100 +++ b/ChangeLog Wed Mar 06 10:58:59 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-06 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java: + Five new tests added into the test suite BitBltUsingBgColorAlpha. + 2013-03-05 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltUsingBgColor.java: diff -r f261a134ee1e -r 1aa1b200b9d7 src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java --- a/src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java Tue Mar 05 11:51:57 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java Wed Mar 06 10:58:59 2013 +0100 @@ -663,6 +663,80 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRPreBackgroundBlackAlpha000(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGRPre(image, graphics2d, Color.black, 0.0f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRPreBackgroundBlackAlpha025(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGRPre(image, graphics2d, Color.black, 0.25f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRPreBackgroundBlackAlpha050(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGRPre(image, graphics2d, Color.black, 0.5f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRPreBackgroundBlackAlpha075(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGRPre(image, graphics2d, Color.black, 0.75f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRPreBackgroundBlackAlpha100(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGRPre(image, graphics2d, Color.black, 1.00f); + } + /** * Entry point to the test suite. * * @param args not used in this case From gnu.andrew at redhat.com Wed Mar 6 06:58:22 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 6 Mar 2013 09:58:22 -0500 (EST) Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: Message-ID: <380458287.13838980.1362581902129.JavaMail.root@redhat.com> ----- Original Message ----- > compile: > [javac] Compiling 2545 source files to > /home/sr/staging/staging-build/icedtea6/openjdk.build-ecj/jaxws/build/classes > [javac] ---------- > [javac] 1. ERROR in > /xfs/staging/staging-build/icedtea6/openjdk-ecj/jdk/src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java > (at line 112) > [javac] params.setSSLParameters > (getSSLContext().getDefaultSSLParameters()); > [javac] > ^^^^^^^^^^^^^^^^^^^^^^^ > [javac] The method getDefaultSSLParameters() is undefined for the > type SSLContext > [javac] ---------- > [javac] ---------- > [javac] 2. ERROR in > /xfs/staging/staging-build/icedtea6/openjdk-ecj/jdk/src/share/classes/sun/net/httpserver/SSLStreams.java > (at line 82) > [javac] engine.setSSLParameters (sslParams); > [javac] ^^^^^^^^^^^^^^^^ > [javac] The method setSSLParameters(SSLParameters) is undefined > for the type SSLEngine > [javac] ---------- > [javac] 2 problems (2 errors) > > BUILD FAILED > /xfs/staging/staging-build/icedtea6/openjdk-ecj/jaxws/build.xml:136: > Compile failed; see the compiler error output for details. > > Total time: 52 seconds > make[4]: *** [all] Error 1 > make[4]: Leaving directory > `/xfs/staging/staging-build/icedtea6/openjdk-ecj/jaxws/make' > make[3]: *** [jaxws-build] Error 2 > make[3]: Leaving directory > `/xfs/staging/staging-build/icedtea6/openjdk-ecj' > make[2]: *** [build_product_image] Error 2 > make[2]: Leaving directory > `/xfs/staging/staging-build/icedtea6/openjdk-ecj' > make[1]: *** [jdk_only] Error 2 > make[1]: Leaving directory > `/xfs/staging/staging-build/icedtea6/openjdk-ecj' > make: *** [stamps/icedtea-ecj.stamp] Error 2 > > Has anyone ever investigated what causes this? I cannot find the > error > message on google. The same build works on Ubuntu quantal whose > system > Java is also no longer Java 6. No exotic configure switches used: > > --disable-docs --with-jdk-home=/usr/lib/jvm/java-1.5.0/gcj > > There shouldn't be a significant difference between these two: > > Ubuntu quantal: > $ /usr/lib/jvm/java-1.5.0-gcj/bin/java -version > java version "1.5.0" > gij (GNU libgcj) version 4.7.2 > > Fedora 17: > $ /usr/lib/jvm/java-1.5.0-gcj/bin/java -version > java version "1.5.0" > gij (GNU libgcj) version 4.7.2 20120921 (Red Hat 4.7.2-2) > > ecj is much more recent on Fedora apparently: > > Ubuntu quantal $ ecj -version: > Eclipse Java Compiler 0.972_R35x, 3.5.1 release, Copyright IBM Corp > 2000, 2009. All rights reserved. > Fedora 17 $ ecj -version > Eclipse Compiler for Java(TM) v20120814-155456, 3.8.2, Copyright IBM > Corp 2000, 2012. All rights reserved. > > The only way I was able to get icedtea6 to build on Fedora 17 was to > copy a binary j2sdk-image over from CentOS 6 and use that as > jdk-home. > These methods are indeed missing from gcj / GNU Classpath at present: http://fuseyism.com/japi/icedtea6-classpath.html#err_missing_javax_net_ssl Two pieces of information you didn't provide: 1. What version of IcedTea are you trying to build (if Mercurial, which repository+changeset)? 2. Output of configure (config.log). My guess is that the newer ecj in Fedora is not building SSLEngine/SSLContext from OpenJDK during the rt-class-files.stamp stage, whereas the older one is. We can fix this by explicitly checking if the method is missing and building SSLContext/SSLEngine if so. Thanks, -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From gnu.andrew at redhat.com Wed Mar 6 07:04:22 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 6 Mar 2013 10:04:22 -0500 (EST) Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: <513461DB.4000603@ubuntu.com> Message-ID: <247591252.13844085.1362582262417.JavaMail.root@redhat.com> ----- Original Message ----- > Am 03.03.2013 17:14, schrieb Stefan Ring: > > ecj is much more recent on Fedora apparently: > > > > Ubuntu quantal $ ecj -version: > > Eclipse Java Compiler 0.972_R35x, 3.5.1 release, Copyright IBM Corp > > 2000, 2009. All rights reserved. > > Fedora 17 $ ecj -version > > Eclipse Compiler for Java(TM) v20120814-155456, 3.8.2, Copyright > > IBM > > Corp 2000, 2012. All rights reserved. > > Debian and Ubuntu use the same sources to provide both ecj and ecj1. > ftp://sourceware.org/pub/java/ still has 3.5 as the latest version > available. > If Fedora ships an updated ecj1, then it would be nice to see this > "upstream" as > well. I'll second that. I'm surprised 3.8.2 works with the current gcj actually, as when I tried it, it complained about missing javax.lang.model code which is now in GNU Classpath but not yet in gcj. Do you know the process for updating the copy used by gcj? > > Matthias > > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From gnu.andrew at redhat.com Wed Mar 6 07:08:11 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 6 Mar 2013 10:08:11 -0500 (EST) Subject: [SECURITY] IcedTea6 1.11.9 and 1.12.4 Released! In-Reply-To: Message-ID: <1506354660.13849197.1362582491861.JavaMail.root@redhat.com> ----- Original Message ----- > Your announcements are already rather long, but it would help if they > included the locations of the mercurial repositories in addition to > the tarballs. It seems the repositories should be listed here: > > > http://icedtea.classpath.org/wiki/DeveloperQuickStart > > > but that page is outdated. > > > The IcedTea project doesn't mention anywhere I could find that all > mercurial repos can be found via: > > > http://icedtea.classpath.org/hg/ > I don't think it's really appropriate for a release announcement. The tarballs are what have been tested for the release and what we prefer to be used where possible. I do agree the wiki needs updating though. I didn't realise there was no link to the main repository page on there. > > Thanks. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From gnu.andrew at redhat.com Wed Mar 6 07:26:24 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 6 Mar 2013 10:26:24 -0500 (EST) Subject: IcedTea Package Size In-Reply-To: Message-ID: <1492962913.13871946.1362583584372.JavaMail.root@redhat.com> ----- Original Message ----- > > Hi, > I've been building JDK6 & 7 the past week with IcedTea and am having > trouble reducing the size of final JDK. In particular, I care about > the openjdk.build/j2sdk-image directory. > > > When I build the OpenJDK from source using the old build system (i.e. > http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html > ), I get a JDK that results in ~40mb tarballs (excluding doc, > sample, src.zip, and man from the tarball). I've noticed that the > major difference is jre/lib/amd64/server/libjvm.so. When I compile > using the old build system, it results in a ~12mb (uncompressed) > libjvm.so. When I compile with IcedTea, it's ~150mb (uncompressed). > > > I suspect this is related to static/dynamic linking. But, I've gone > through all the flags in IcedTea's `configure` and I don't see > anything obvious about linkage that could be causing the size > difference. In addition, my system JDK is the same version > (JDK6u27), was built with IcedTea, and has a 12mb libjvm.so. > > > For the old build system, I have the following set: > > export HOTSPOT_BUILD_JOBS=`cat /proc/cpuinfo | grep processor | wc > -l` > export PARALLEL_COMPILE_JOBS=`cat /proc/cpuinfo | grep processor | wc > -l` > export BUILD_NUMBER=b20 > > export LANG=C > export ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk > export ALLOW_DOWNLOADS=true > > export > ALT_CACERTS_FILE=/usr/lib/jvm/java-6-openjdk/jre/lib/security/cacerts > export MILESTONE=u27 > > export NO_DOCS=true > > export DEBUG_BINARIES=false > export DEBUG_CLASSFILES=true > > export FULL_DEBUG_SYMBOLS=0 > export ENABLE_FULL_DEBUG_SYMBOLS=0 > export ALT_OBJCOPY=/dev/null > > > > For IcedTea builds, I've been using the following `configure`: > ./configure --disable-tests --disable-hotspot-tests --disable-docs > --with-parallel-jobs=2 > > > > I also tried using the old build system's environment along with the > IcedTea build system. None of which had any effect on file size. > > > I'm building with Ubuntu 10.04 LTS, gcc 4.4.3, make 3.81. > > > Thanks for the help. IcedTea's libraries are always built with debug information. You can remove this with strip or better still do: $ objcopy --only-keep-debug libjvm.so libjvm.so.debug $ objcopy --strip-debug libjvm.so $ objcopy --add-gnu-debuglink=libjvm.so.debug libjvm.so to separate the two. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From stefan at complang.tuwien.ac.at Wed Mar 6 07:30:26 2013 From: stefan at complang.tuwien.ac.at (Stefan Ring) Date: Wed, 6 Mar 2013 16:30:26 +0100 Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: <380458287.13838980.1362581902129.JavaMail.root@redhat.com> References: <380458287.13838980.1362581902129.JavaMail.root@redhat.com> Message-ID: > Two pieces of information you didn't provide: > > 1. What version of IcedTea are you trying to build (if Mercurial, which repository+changeset)? Sorry. I always use hg default. In this case: http://icedtea.classpath.org/hg/icedtea6/rev/9b60104392f1 > 2. Output of configure (config.log). No problem: This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by icedtea6 configure 1.13.0pre, which was generated by GNU Autoconf 2.68. Invocation command line was $ ./configure --with-parallel-jobs=8 --disable-docs --with-jdk-home=/usr/lib/jvm/java-1.5.0-gcj ## --------- ## ## Platform. ## ## --------- ## hostname = f17 uname -m = x86_64 uname -r = 3.6.6-1.fc17.x86_64 uname -s = Linux uname -v = #1 SMP Mon Nov 5 21:59:35 UTC 2012 /usr/bin/uname -p = x86_64 /bin/uname -X = unknown /bin/arch = x86_64 /usr/bin/arch -k = unknown /usr/convex/getsysinfo = unknown /usr/bin/hostinfo = unknown /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown PATH: /usr/lib64/ccache PATH: /usr/local/bin PATH: /usr/bin PATH: /usr/local/sbin PATH: /usr/sbin PATH: /home/sr/.local/bin PATH: /home/sr/bin ## ----------- ## ## Core tests. ## ## ----------- ## configure:2819: checking for a BSD-compatible install configure:2887: result: /usr/bin/install -c configure:2898: checking whether build environment is sane configure:2948: result: yes configure:3089: checking for a thread-safe mkdir -p configure:3128: result: /usr/bin/mkdir -p configure:3141: checking for gawk configure:3157: found /usr/bin/gawk configure:3168: result: gawk configure:3179: checking whether make sets $(MAKE) configure:3201: result: yes configure:3276: checking how to create a pax tar archive configure:3289: tar --version tar (GNU tar) 1.26 Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by John Gilmore and Jay Fenlason. configure:3292: $? = 0 configure:3332: tardir=conftest.dir && eval tar --format=posix -chf - "$tardir" >conftest.tar configure:3335: $? = 0 configure:3339: tar -xf - &5 gcc (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) Copyright (C) 2012 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. configure:3772: $? = 0 configure:3761: gcc -v >&5 Using built-in specs. COLLECT_GCC=/usr/bin/gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.7.2/lto-wrapper Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --disable-build-with-cxx --disable-build-poststage1-with-cxx --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux Thread model: posix gcc version 4.7.2 20120921 (Red Hat 4.7.2-2) (GCC) configure:3772: $? = 0 configure:3761: gcc -V >&5 gcc: error: unrecognized command line option '-V' gcc: fatal error: no input files compilation terminated. configure:3772: $? = 4 configure:3761: gcc -qversion >&5 gcc: error: unrecognized command line option '-qversion' gcc: fatal error: no input files compilation terminated. configure:3772: $? = 4 configure:3792: checking whether the C compiler works configure:3814: gcc conftest.c >&5 configure:3818: $? = 0 configure:3866: result: yes configure:3869: checking for C compiler default output file name configure:3871: result: a.out configure:3877: checking for suffix of executables configure:3884: gcc -o conftest conftest.c >&5 configure:3888: $? = 0 configure:3910: result: configure:3932: checking whether we are cross compiling configure:3940: gcc -o conftest conftest.c >&5 configure:3944: $? = 0 configure:3951: ./conftest configure:3955: $? = 0 configure:3970: result: no configure:3975: checking for suffix of object files configure:3997: gcc -c conftest.c >&5 configure:4001: $? = 0 configure:4022: result: o configure:4026: checking whether we are using the GNU C compiler configure:4045: gcc -c conftest.c >&5 configure:4045: $? = 0 configure:4054: result: yes configure:4063: checking whether gcc accepts -g configure:4083: gcc -c -g conftest.c >&5 configure:4083: $? = 0 configure:4124: result: yes configure:4141: checking for gcc option to accept ISO C89 configure:4205: gcc -c -g -O2 conftest.c >&5 configure:4205: $? = 0 configure:4218: result: none needed configure:4249: checking for style of include used by make configure:4277: result: GNU configure:4303: checking dependency style of gcc configure:4414: result: none configure:4487: checking for g++ configure:4503: found /usr/lib64/ccache/g++ configure:4514: result: g++ configure:4541: checking for C++ compiler version configure:4550: g++ --version >&5 g++ (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) Copyright (C) 2012 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. configure:4561: $? = 0 configure:4550: g++ -v >&5 Using built-in specs. COLLECT_GCC=/usr/bin/g++ COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.7.2/lto-wrapper Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --disable-build-with-cxx --disable-build-poststage1-with-cxx --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux Thread model: posix gcc version 4.7.2 20120921 (Red Hat 4.7.2-2) (GCC) configure:4561: $? = 0 configure:4550: g++ -V >&5 g++: error: unrecognized command line option '-V' g++: fatal error: no input files compilation terminated. configure:4561: $? = 4 configure:4550: g++ -qversion >&5 g++: error: unrecognized command line option '-qversion' g++: fatal error: no input files compilation terminated. configure:4561: $? = 4 configure:4565: checking whether we are using the GNU C++ compiler configure:4584: g++ -c conftest.cpp >&5 configure:4584: $? = 0 configure:4593: result: yes configure:4602: checking whether g++ accepts -g configure:4622: g++ -c -g conftest.cpp >&5 configure:4622: $? = 0 configure:4663: result: yes configure:4688: checking dependency style of g++ configure:4799: result: none configure:4861: checking for make configure:4879: found /usr/bin/make configure:4891: result: /usr/bin/make configure:4964: checking for gzip configure:4982: found /usr/bin/gzip configure:4994: result: /usr/bin/gzip configure:5067: checking for ant configure:5085: found /usr/bin/ant configure:5097: result: /usr/bin/ant configure:5170: checking for find configure:5188: found /usr/bin/find configure:5200: result: /usr/bin/find configure:5273: checking for patch configure:5291: found /usr/bin/patch configure:5303: result: /usr/bin/patch configure:5376: checking for tar configure:5394: found /usr/bin/tar configure:5406: result: /usr/bin/tar configure:5479: checking for chmod configure:5497: found /usr/bin/chmod configure:5509: result: /usr/bin/chmod configure:5582: checking for sha256sum configure:5600: found /usr/bin/sha256sum configure:5612: result: /usr/bin/sha256sum configure:5685: checking for wget configure:5703: found /usr/bin/wget configure:5715: result: /usr/bin/wget configure:5788: checking for zip configure:5806: found /usr/bin/zip configure:5818: result: /usr/bin/zip configure:5891: checking for unzip configure:5909: found /usr/bin/unzip configure:5921: result: /usr/bin/unzip configure:5994: checking for cpio configure:6012: found /usr/bin/cpio configure:6024: result: /usr/bin/cpio configure:6097: checking for file configure:6115: found /usr/bin/file configure:6127: result: /usr/bin/file configure:6203: checking for fastjar configure:6219: found /usr/bin/fastjar configure:6230: result: fastjar configure:6301: checking for ldd configure:6317: found /usr/bin/ldd configure:6328: result: ldd configure:6396: checking for gawk configure:6414: found /usr/bin/gawk configure:6426: result: /usr/bin/gawk configure:6500: checking for hg configure:6518: found /usr/bin/hg configure:6530: result: /usr/bin/hg configure:6556: checking for an OpenJDK source directory configure:6572: result: /xfs/staging/staging-build-hs/icedtea6/openjdk /usr/bin/hg configure:6624: checking for IcedTea Mercurial revision ID configure:6629: result: r9b60104392f1 configure:6632: checking for JDK Mercurial revision ID configure:6637: result: none configure:6640: checking for HotSpot Mercurial revision ID configure:6645: result: none configure:6720: checking for lsb_release configure:6753: result: no configure:6773: checking whether to compile ecj natively configure:6787: result: no configure:6998: checking whether to use CACAO as VM configure:7012: result: no configure:7027: checking whether to use JamVM as VM configure:7041: result: no configure:7056: checking whether to use the Shark JIT configure:7077: result: no configure:7095: checking how to run the C preprocessor configure:7126: gcc -E conftest.c configure:7126: $? = 0 configure:7140: gcc -E conftest.c conftest.c:11:28: fatal error: ac_nonexistent.h: No such file or directory compilation terminated. configure:7140: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "icedtea6" | #define PACKAGE_TARNAME "icedtea6" | #define PACKAGE_VERSION "1.13.0pre" | #define PACKAGE_STRING "icedtea6 1.13.0pre" | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" | #define PACKAGE_URL "" | #define PACKAGE "icedtea6" | #define VERSION "1.13.0pre" | /* end confdefs.h. */ | #include configure:7165: result: gcc -E configure:7185: gcc -E conftest.c configure:7185: $? = 0 configure:7199: gcc -E conftest.c conftest.c:11:28: fatal error: ac_nonexistent.h: No such file or directory compilation terminated. configure:7199: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "icedtea6" | #define PACKAGE_TARNAME "icedtea6" | #define PACKAGE_VERSION "1.13.0pre" | #define PACKAGE_STRING "icedtea6 1.13.0pre" | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" | #define PACKAGE_URL "" | #define PACKAGE "icedtea6" | #define VERSION "1.13.0pre" | /* end confdefs.h. */ | #include configure:7228: checking for grep that handles long lines and -e configure:7286: result: /usr/bin/grep configure:7291: checking for egrep configure:7353: result: /usr/bin/grep -E configure:7358: checking for ANSI C header files configure:7378: gcc -c -g -O2 conftest.c >&5 configure:7378: $? = 0 configure:7451: gcc -o conftest -g -O2 conftest.c >&5 configure:7451: $? = 0 configure:7451: ./conftest configure:7451: $? = 0 configure:7462: result: yes configure:7475: checking for sys/types.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7475: checking for sys/stat.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7475: checking for stdlib.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7475: checking for string.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7475: checking for memory.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7475: checking for strings.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7475: checking for inttypes.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7475: checking for stdint.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7475: checking for unistd.h configure:7475: gcc -c -g -O2 conftest.c >&5 configure:7475: $? = 0 configure:7475: result: yes configure:7492: checking whether to use the zero-assembler port configure:7529: result: no configure:7584: checking whether byte ordering is bigendian configure:7599: gcc -c -g -O2 conftest.c >&5 conftest.c:22:9: error: unknown type name 'not' conftest.c:22:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'universal' conftest.c:22:15: error: unknown type name 'universal' configure:7599: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "icedtea6" | #define PACKAGE_TARNAME "icedtea6" | #define PACKAGE_VERSION "1.13.0pre" | #define PACKAGE_STRING "icedtea6 1.13.0pre" | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" | #define PACKAGE_URL "" | #define PACKAGE "icedtea6" | #define VERSION "1.13.0pre" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | #ifndef __APPLE_CC__ | not a universal capable compiler | #endif | typedef int dummy; | configure:7644: gcc -c -g -O2 conftest.c >&5 configure:7644: $? = 0 configure:7662: gcc -c -g -O2 conftest.c >&5 conftest.c: In function 'main': conftest.c:28:4: error: unknown type name 'not' conftest.c:28:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'endian' configure:7662: $? = 1 configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "icedtea6" | #define PACKAGE_TARNAME "icedtea6" | #define PACKAGE_VERSION "1.13.0pre" | #define PACKAGE_STRING "icedtea6 1.13.0pre" | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" | #define PACKAGE_URL "" | #define PACKAGE "icedtea6" | #define VERSION "1.13.0pre" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | /* end confdefs.h. */ | #include | #include | | int | main () | { | #if BYTE_ORDER != BIG_ENDIAN | not big endian | #endif | | ; | return 0; | } configure:7790: result: no configure:7841: checking which HotSpot build to use configure:7860: result: hs23 configure:7923: checking for linux32 configure:7941: found /usr/bin/linux32 configure:7953: result: /usr/bin/linux32 configure:7976: checking version of GCC configure:7989: result: 4.7.2 (major version 4, minor version 7) configure:8039: checking for getconf configure:8057: found /usr/bin/getconf configure:8069: result: /usr/bin/getconf configure:8096: checking the number of online processors configure:8109: result: 8 configure:8115: checking how many parallel build jobs to execute configure:8135: result: 8 configure:8140: checking if cp supports --reflink configure:8155: result: yes configure:8167: checking if we can hard link rather than copy from /xfs/staging/staging-build-hs/icedtea6 configure:8181: result: yes configure:8193: checking for system library directory configure:8223: result: configure:8281: checking for pkg-config configure:8299: found /usr/bin/pkg-config configure:8311: result: /usr/bin/pkg-config configure:8336: checking pkg-config is at least version 0.9.0 configure:8339: result: yes configure:8351: checking for NSS configure:8358: $PKG_CONFIG --exists --print-errors "nss" Package nss was not found in the pkg-config search path. Perhaps you should add the directory containing `nss.pc' to the PKG_CONFIG_PATH environment variable No package 'nss' found configure:8361: $? = 1 configure:8374: $PKG_CONFIG --exists --print-errors "nss" Package nss was not found in the pkg-config search path. Perhaps you should add the directory containing `nss.pc' to the PKG_CONFIG_PATH environment variable No package 'nss' found configure:8377: $? = 1 configure:8390: result: no No package 'nss' found configure:8424: WARNING: Could not find NSS; using as its location. configure:8436: checking whether to disable the execution of the JTReg tests configure:8456: result: no configure:8468: checking whether to disable the execution of the HotSpot JTReg tests configure:8488: result: no configure:8500: checking whether to disable the execution of the langtools JTReg tests configure:8520: result: no configure:8532: checking whether to disable the execution of the JDK JTReg tests configure:8552: result: no configure:8566: checking for a JDK home directory configure:8601: result: /usr/lib/jvm/java-1.5.0-gcj configure:8611: checking if a java binary was specified configure:8629: result: no configure:8634: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/java is a valid executable file configure:8637: result: yes configure:8776: checking if a javac binary was specified configure:8794: result: no configure:8799: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javac is a valid executable file configure:8802: result: yes configure:8853: checking if an ecj binary was specified configure:8871: result: no configure:8876: checking if /usr/bin/ecj is a valid executable file configure:8879: result: yes configure:9106: checking if we are using ecj as javac Eclipse Compiler for Java(TM) v20120814-155456, 3.8.2, Copyright IBM Corp 2000, 2012. All rights reserved. configure:9119: result: yes configure:9131: checking if the VM and compiler work together Hello World! configure:9168: result: yes configure:9173: checking if javax.swing.plaf.basic.BasicDirectoryModel.addPropertyChangeListener(PropertyChangeListener) is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 22) javax.swing.plaf.basic.BasicDirectoryModel model = new javax.swing.plaf.basic.BasicDirectoryModel(new javax.swing.JFileChooser()); model.addPropertyChangeListener(model) ^^^^^^^^^^^^^^^^^^^^^^^^^ The method addPropertyChangeListener(BasicDirectoryModel) is undefined for the type BasicDirectoryModel ---------- 1 problem (1 error)configure:9223: result: yes configure:9241: checking if com.sun.corba.se.impl.logging.ORBUtilSystemException is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 6) System.err.println("Class found: " + com.sun.corba.se.impl.logging.ORBUtilSystemException.class); ^^^ com cannot be resolved to a type ---------- 1 problem (1 error)configure:9273: result: yes configure:9289: checking if com.sun.corba.se.impl.logging.ORBUtilSystemException.ioExceptionOnClose(Throwable) is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 8) Class cl = com.sun.corba.se.impl.logging.ORBUtilSystemException.class; ^^^ com cannot be resolved to a type ---------- 2. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 22) new com.sun.corba.se.impl.logging.ORBUtilSystemException(null).ioExceptionOnClose(new InternalError()) ^^^ com cannot be resolved to a type ---------- 2 problems (2 errors)configure:9339: result: yes configure:9357: checking if javax.management.StandardMBean(Class.class,Boolean.TYPE) is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 24) super(Object.class, true); ^^^^^^^^^^^^^^^^^^^^^^^^^^ The constructor StandardMBean(Class, boolean) is undefined ---------- 1 problem (1 error)configure:9410: result: yes configure:9426: checking if javax.management.StandardMBean(Object.class,Class.class,Boolean.TYPE) is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 24) super(new Object(), Object.class, true); ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The constructor StandardMBean(Object, Class, boolean) is undefined ---------- 1 problem (1 error)configure:9479: result: yes configure:9497: checking if java.security.cert.X509CRLSelector.addIssuer(X500Principal) is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 22) new java.security.cert.X509CRLSelector().addIssuer(null) ^^^^^^^^^ The method addIssuer(null) is undefined for the type X509CRLSelector ---------- 1 problem (1 error)configure:9547: result: yes configure:9563: checking if java.security.cert.X509CertSelector.setSubject(X500Principal) is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 22) new java.security.cert.X509CertSelector().setSubject(new javax.security.auth.x500.X500Principal("")) ^^^^^^^^^^ The method setSubject(byte[]) in the type X509CertSelector is not applicable for the arguments (X500Principal) ---------- 1 problem (1 error)configure:9613: result: yes configure:9629: checking if java.security.cert.X509CertSelector.getSubject() is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 22) new java.security.cert.X509CertSelector().getSubject() ^^^^^^^^^^ The method getSubject() is undefined for the type X509CertSelector ---------- 1 problem (1 error)configure:9679: result: yes configure:9695: checking if java.security.cert.X509CertSelector.setIssuer(X500Principal) is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 22) new java.security.cert.X509CertSelector().setIssuer(new javax.security.auth.x500.X500Principal("")) ^^^^^^^^^ The method setIssuer(byte[]) in the type X509CertSelector is not applicable for the arguments (X500Principal) ---------- 1 problem (1 error)configure:9745: result: yes configure:9761: checking if java.security.cert.X509CRLSelector.setIssuers(Collection) is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 22) new java.security.cert.X509CRLSelector().setIssuers(new java.util.ArrayList()) ^^^^^^^^^^ The method setIssuers(ArrayList) is undefined for the type X509CRLSelector ---------- 1 problem (1 error)configure:9811: result: yes configure:9827: checking if javax.security.auth.kerberos.KerberosTicket.getSessionKeyType() is missing Method found: public final int javax.security.auth.kerberos.KerberosTicket.getSessionKeyType() configure:9877: result: no configure:9895: checking if javax.security.sasl.Sasl.CREDENTIALS is missing ---------- 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java (at line 13) System.err.println("Field value: " + javax.security.sasl.Sasl.CREDENTIALS); ^^^^^^^^^^^ CREDENTIALS cannot be resolved or is not a field ---------- 1 problem (1 error)configure:9940: result: yes configure:9958: checking for xvfb-run configure:9988: result: no configure:9995: checking for an Ant home directory configure:10015: result: /usr/share/ant configure:10018: checking whether to include PulseAudio support configure:10035: result: no configure:10038: checking whether to build documentation configure:10055: result: no configure:10059: checking whether to enable experimental OpenJDK cross-compilation support configure:10076: result: no configure:10079: checking whether to include the XRender pipeline configure:10096: result: yes configure:10099: checking whether to include SystemTap tracing support configure:10116: result: no configure:10119: checking whether to include the NSS-based security provider configure:10141: result: disabled by default (edit java.security to enable) configure:10146: checking for distribution package version configure:10160: result: none configure:10174: checking build identification configure:10188: result: Custom build (Wed Mar 6 16:21:45 CET 2013) configure:10325: checking whether to build a bootstrap version first configure:10345: result: yes configure:10357: checking whether to download tarballs configure:10377: result: yes configure:10394: checking if a javah binary was specified configure:10412: result: no configure:10417: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah is a valid executable file configure:10420: result: yes configure:10517: checking if a jar binary was specified configure:10535: result: no configure:10540: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/jar is a valid executable file configure:10543: result: yes configure:10635: checking whether jar supports @ argument configure:10643: result: yes configure:10650: checking whether jar supports stdin file arguments configure:10654: result: yes configure:10662: checking whether jar supports -J options at the end configure:10666: result: yes configure:10682: checking if a rmic binary was specified configure:10700: result: no configure:10705: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/rmic is a valid executable file configure:10708: result: yes configure:10805: checking if a native2ascii binary was specified configure:10823: result: no configure:10828: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/native2ascii is a valid executable file configure:10834: result: no configure:10839: checking for native2ascii configure:10872: result: no configure:10880: checking for gnative2ascii configure:10898: found /usr/bin/gnative2ascii configure:10910: result: /usr/bin/gnative2ascii configure:10927: checking for an ecj JAR file configure:10958: result: /usr/share/java/eclipse-ecj.jar configure:11011: checking for xsltproc configure:11029: found /usr/bin/xsltproc configure:11041: result: /usr/bin/xsltproc configure:11071: checking if we are using CACAO as the build VM configure:11084: result: no configure:11103: checking whether to include Javascript support via Rhino configure:11147: result: /usr/share/java/rhino.jar configure:11163: checking for an OpenJDK source zip configure:11190: result: not specified configure:11195: checking for a HotSpot source zip configure:11222: result: not specified configure:11227: checking for an alternate jar command configure:11257: result: not specified configure:11262: checking for a JAXP drop zip configure:11289: result: not specified configure:11294: checking for a JAF drop zip configure:11321: result: not specified configure:11326: checking for a JAXWS drop zip configure:11353: result: not specified configure:11360: checking for a CACAO home directory configure:11397: result: $(abs_top_builddir)/cacao/install configure:11402: checking for a CACAO source zip configure:11429: result: not specified configure:11434: checking for a CACAO source directory configure:11464: result: not specified configure:11471: checking for a JamVM source zip configure:11498: result: not specified configure:11504: checking whether to disable optimizations and build with -O0 -g configure:11524: result: no configure:11538: checking for additional virtual machines to build configure:11562: result: none configure:11634: checking whether to retrieve the source code from Mercurial configure:11654: result: no configure:11666: checking which Mercurial revision to use configure:11679: result: tip configure:11696: checking which Java timezone data directory to use configure:11723: result: /usr/share/javazi configure:11740: checking if javax.xml.stream.events.Attribute.getDTDType() wrongly returns a QName configure:11815: result: no configure:11828: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah exhibits Classpath bug 39408 #undef Test_POTATO #define Test_POTATO 0L configure:11875: result: no configure:11877: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah exhibits Classpath bug 40188 configure:11892: result: yes configure:11916: checking for pax utility to use configure:11967: result: not specified configure:11978: checking cups/cups.h usability configure:11978: gcc -c -g -O2 conftest.c >&5 configure:11978: $? = 0 configure:11978: result: yes configure:11978: checking cups/cups.h presence configure:11978: gcc -E conftest.c configure:11978: $? = 0 configure:11978: result: yes configure:11978: checking for cups/cups.h configure:11978: result: yes configure:11978: checking cups/ppd.h usability configure:11978: gcc -c -g -O2 conftest.c >&5 configure:11978: $? = 0 configure:11978: result: yes configure:11978: checking cups/ppd.h presence configure:11978: gcc -E conftest.c configure:11978: $? = 0 configure:11978: result: yes configure:11978: checking for cups/ppd.h configure:11978: result: yes configure:11994: checking X11/X.h usability configure:11994: gcc -c -g -O2 conftest.c >&5 configure:11994: $? = 0 configure:11994: result: yes configure:11994: checking X11/X.h presence configure:11994: gcc -E conftest.c configure:11994: $? = 0 configure:11994: result: yes configure:11994: checking for X11/X.h configure:11994: result: yes configure:12008: checking for main in -ljpeg configure:12027: gcc -o conftest -g -O2 conftest.c -ljpeg >&5 configure:12027: $? = 0 configure:12036: result: yes configure:12049: checking for main in -lgif configure:12068: gcc -o conftest -g -O2 conftest.c -lgif -ljpeg >&5 configure:12068: $? = 0 configure:12077: result: yes configure:12090: checking for main in -lz configure:12109: gcc -o conftest -g -O2 conftest.c -lz -lgif -ljpeg >&5 configure:12109: $? = 0 configure:12118: result: yes configure:12134: checking for XPROTO configure:12141: $PKG_CONFIG --exists --print-errors "xproto" configure:12144: $? = 0 configure:12157: $PKG_CONFIG --exists --print-errors "xproto" configure:12160: $? = 0 configure:12197: result: yes configure:12211: checking for XT configure:12218: $PKG_CONFIG --exists --print-errors "xt" configure:12221: $? = 0 configure:12234: $PKG_CONFIG --exists --print-errors "xt" configure:12237: $? = 0 configure:12274: result: yes configure:12288: checking for XP configure:12295: $PKG_CONFIG --exists --print-errors "xp" configure:12298: $? = 0 configure:12311: $PKG_CONFIG --exists --print-errors "xp" configure:12314: $? = 0 configure:12351: result: yes configure:12365: checking for X11 configure:12372: $PKG_CONFIG --exists --print-errors "x11" configure:12375: $? = 0 configure:12388: $PKG_CONFIG --exists --print-errors "x11" configure:12391: $? = 0 configure:12428: result: yes configure:12442: checking for XINERAMA configure:12449: $PKG_CONFIG --exists --print-errors "xinerama" configure:12452: $? = 0 configure:12465: $PKG_CONFIG --exists --print-errors "xinerama" configure:12468: $? = 0 configure:12505: result: yes configure:12522: checking for XRENDER configure:12529: $PKG_CONFIG --exists --print-errors "xrender" configure:12532: $? = 0 configure:12545: $PKG_CONFIG --exists --print-errors "xrender" configure:12548: $? = 0 configure:12585: result: yes configure:12596: checking for absolute java home install dir configure:12610: result: /xfs/staging/staging-build-hs/icedtea6/openjdk.build/j2sdk-image configure:12711: checking for LIBPNG configure:12718: $PKG_CONFIG --exists --print-errors "libpng" configure:12721: $? = 0 configure:12734: $PKG_CONFIG --exists --print-errors "libpng" configure:12737: $? = 0 configure:12774: result: yes configure:12789: checking for XTST configure:12796: $PKG_CONFIG --exists --print-errors "xtst" configure:12799: $? = 0 configure:12812: $PKG_CONFIG --exists --print-errors "xtst" configure:12815: $? = 0 configure:12852: result: yes configure:12866: checking for FREETYPE2 configure:12873: $PKG_CONFIG --exists --print-errors "freetype2" configure:12876: $? = 0 configure:12889: $PKG_CONFIG --exists --print-errors "freetype2" configure:12892: $? = 0 configure:12929: result: yes configure:12946: checking for ALSA configure:12953: $PKG_CONFIG --exists --print-errors "alsa" configure:12956: $? = 0 configure:12969: $PKG_CONFIG --exists --print-errors "alsa" configure:12972: $? = 0 configure:13009: result: yes configure:13904: creating ./config.status ## ---------------------- ## ## Running config.status. ## ## ---------------------- ## This file was extended by icedtea6 config.status 1.13.0pre, which was generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = CONFIG_HEADERS = CONFIG_LINKS = CONFIG_COMMANDS = $ ./config.status on f17 config.status:1062: creating Makefile config.status:1062: creating jvm.cacao.cfg config.status:1062: creating jvm.jamvm.cfg config.status:1062: creating jvm.cfg config.status:1062: creating ergo.c config.status:1062: creating nss.cfg config.status:1062: creating javac config.status:1062: creating javap config.status:1062: creating tz.properties config.status:1062: creating pax-mark-vm config.status:1062: creating jconsole.desktop config.status:1062: creating policytool.desktop config.status:1234: executing depfiles commands ## ---------------- ## ## Cache variables. ## ## ---------------- ## ac_cv_build=x86_64-unknown-linux-gnu ac_cv_c_bigendian=no ac_cv_c_compiler_gnu=yes ac_cv_cxx_compiler_gnu=yes ac_cv_env_ALSA_CFLAGS_set= ac_cv_env_ALSA_CFLAGS_value= ac_cv_env_ALSA_LIBS_set= ac_cv_env_ALSA_LIBS_value= ac_cv_env_CCC_set= ac_cv_env_CCC_value= ac_cv_env_CC_set= ac_cv_env_CC_value= ac_cv_env_CFLAGS_set= ac_cv_env_CFLAGS_value= ac_cv_env_CPPFLAGS_set= ac_cv_env_CPPFLAGS_value= ac_cv_env_CPP_set= ac_cv_env_CPP_value= ac_cv_env_CXXFLAGS_set= ac_cv_env_CXXFLAGS_value= ac_cv_env_CXX_set= ac_cv_env_CXX_value= ac_cv_env_FREETYPE2_CFLAGS_set= ac_cv_env_FREETYPE2_CFLAGS_value= ac_cv_env_FREETYPE2_LIBS_set= ac_cv_env_FREETYPE2_LIBS_value= ac_cv_env_LDFLAGS_set= ac_cv_env_LDFLAGS_value= ac_cv_env_LIBFFI_CFLAGS_set= ac_cv_env_LIBFFI_CFLAGS_value= ac_cv_env_LIBFFI_LIBS_set= ac_cv_env_LIBFFI_LIBS_value= ac_cv_env_LIBPNG_CFLAGS_set= ac_cv_env_LIBPNG_CFLAGS_value= ac_cv_env_LIBPNG_LIBS_set= ac_cv_env_LIBPNG_LIBS_value= ac_cv_env_LIBPULSE_CFLAGS_set= ac_cv_env_LIBPULSE_CFLAGS_value= ac_cv_env_LIBPULSE_LIBS_set= ac_cv_env_LIBPULSE_LIBS_value= ac_cv_env_LIBS_set= ac_cv_env_LIBS_value= ac_cv_env_NSS_CFLAGS_set= ac_cv_env_NSS_CFLAGS_value= ac_cv_env_NSS_LIBS_set= ac_cv_env_NSS_LIBS_value= ac_cv_env_PKG_CONFIG_LIBDIR_set= ac_cv_env_PKG_CONFIG_LIBDIR_value= ac_cv_env_PKG_CONFIG_PATH_set= ac_cv_env_PKG_CONFIG_PATH_value= ac_cv_env_PKG_CONFIG_set= ac_cv_env_PKG_CONFIG_value= ac_cv_env_X11_CFLAGS_set= ac_cv_env_X11_CFLAGS_value= ac_cv_env_X11_LIBS_set= ac_cv_env_X11_LIBS_value= ac_cv_env_XINERAMA_CFLAGS_set= ac_cv_env_XINERAMA_CFLAGS_value= ac_cv_env_XINERAMA_LIBS_set= ac_cv_env_XINERAMA_LIBS_value= ac_cv_env_XPROTO_CFLAGS_set= ac_cv_env_XPROTO_CFLAGS_value= ac_cv_env_XPROTO_LIBS_set= ac_cv_env_XPROTO_LIBS_value= ac_cv_env_XP_CFLAGS_set= ac_cv_env_XP_CFLAGS_value= ac_cv_env_XP_LIBS_set= ac_cv_env_XP_LIBS_value= ac_cv_env_XRENDER_CFLAGS_set= ac_cv_env_XRENDER_CFLAGS_value= ac_cv_env_XRENDER_LIBS_set= ac_cv_env_XRENDER_LIBS_value= ac_cv_env_XTST_CFLAGS_set= ac_cv_env_XTST_CFLAGS_value= ac_cv_env_XTST_LIBS_set= ac_cv_env_XTST_LIBS_value= ac_cv_env_XT_CFLAGS_set= ac_cv_env_XT_CFLAGS_value= ac_cv_env_XT_LIBS_set= ac_cv_env_XT_LIBS_value= ac_cv_env_build_alias_set= ac_cv_env_build_alias_value= ac_cv_env_host_alias_set= ac_cv_env_host_alias_value= ac_cv_env_target_alias_set= ac_cv_env_target_alias_value= ac_cv_header_X11_X_h=yes ac_cv_header_cups_cups_h=yes ac_cv_header_cups_ppd_h=yes ac_cv_header_inttypes_h=yes ac_cv_header_memory_h=yes ac_cv_header_stdc=yes ac_cv_header_stdint_h=yes ac_cv_header_stdlib_h=yes ac_cv_header_string_h=yes ac_cv_header_strings_h=yes ac_cv_header_sys_stat_h=yes ac_cv_header_sys_types_h=yes ac_cv_header_unistd_h=yes ac_cv_host=x86_64-unknown-linux-gnu ac_cv_lib_gif_main=yes ac_cv_lib_jpeg_main=yes ac_cv_lib_z_main=yes ac_cv_objext=o ac_cv_path_EGREP='/usr/bin/grep -E' ac_cv_path_GREP=/usr/bin/grep ac_cv_path_NATIVE2ASCII=/usr/bin/gnative2ascii ac_cv_path_ac_pt_ANT=/usr/bin/ant ac_cv_path_ac_pt_CHMOD=/usr/bin/chmod ac_cv_path_ac_pt_CPIO=/usr/bin/cpio ac_cv_path_ac_pt_FILE=/usr/bin/file ac_cv_path_ac_pt_FIND=/usr/bin/find ac_cv_path_ac_pt_GAWK=/usr/bin/gawk ac_cv_path_ac_pt_GETCONF=/usr/bin/getconf ac_cv_path_ac_pt_GZIP=/usr/bin/gzip ac_cv_path_ac_pt_HG=/usr/bin/hg ac_cv_path_ac_pt_LINUX32=/usr/bin/linux32 ac_cv_path_ac_pt_MAKE=/usr/bin/make ac_cv_path_ac_pt_PATCH=/usr/bin/patch ac_cv_path_ac_pt_PKG_CONFIG=/usr/bin/pkg-config ac_cv_path_ac_pt_SHA256SUM=/usr/bin/sha256sum ac_cv_path_ac_pt_TAR=/usr/bin/tar ac_cv_path_ac_pt_UNZIP=/usr/bin/unzip ac_cv_path_ac_pt_WGET=/usr/bin/wget ac_cv_path_ac_pt_XSLTPROC=/usr/bin/xsltproc ac_cv_path_ac_pt_ZIP=/usr/bin/zip ac_cv_path_install='/usr/bin/install -c' ac_cv_path_mkdir=/usr/bin/mkdir ac_cv_prog_AWK=gawk ac_cv_prog_CPP='gcc -E' ac_cv_prog_ac_ct_CC=gcc ac_cv_prog_ac_ct_CXX=g++ ac_cv_prog_ac_ct_FASTJAR=fastjar ac_cv_prog_ac_ct_LDD=ldd ac_cv_prog_cc_c89= ac_cv_prog_cc_g=yes ac_cv_prog_cxx_g=yes ac_cv_prog_make_make_set=yes am_cv_CC_dependencies_compiler_type=none am_cv_CXX_dependencies_compiler_type=none am_cv_prog_tar_pax=gnutar it_cv_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG=yes it_cv_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG=yes it_cv_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE=no it_cv_JAVAX_SECURITY_SASL_SASL_CREDENTIALS=yes it_cv_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER=yes it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT=yes it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER=yes it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT=yes it_cv_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER=yes it_cv_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS=yes it_cv_ORBUTILSYSTEMEXCEPTION=yes it_cv_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE=yes it_cv_cacao=no it_cv_cp39408_javah=no it_cv_cp40188_javah=yes it_cv_dtdtype=no it_cv_ecj=yes it_cv_hardlink_src=yes it_cv_jdk_works=yes it_cv_proc=8 it_cv_reflink=yes pkg_cv_ALSA_CFLAGS='-I/usr/include/alsa ' pkg_cv_ALSA_LIBS='-lasound ' pkg_cv_FREETYPE2_CFLAGS='-I/usr/include/freetype2 ' pkg_cv_FREETYPE2_LIBS='-lfreetype ' pkg_cv_LIBPNG_CFLAGS='-I/usr/include/libpng15 ' pkg_cv_LIBPNG_LIBS='-lpng15 ' pkg_cv_X11_CFLAGS=' ' pkg_cv_X11_LIBS='-lX11 ' pkg_cv_XINERAMA_CFLAGS=' ' pkg_cv_XINERAMA_LIBS='-lXinerama ' pkg_cv_XPROTO_CFLAGS=' ' pkg_cv_XPROTO_LIBS=' ' pkg_cv_XP_CFLAGS=' ' pkg_cv_XP_LIBS='-lXp -lXau ' pkg_cv_XRENDER_CFLAGS=' ' pkg_cv_XRENDER_LIBS='-lXrender -lX11 ' pkg_cv_XTST_CFLAGS=' ' pkg_cv_XTST_LIBS='-lXtst ' pkg_cv_XT_CFLAGS=' ' pkg_cv_XT_LIBS='-lXt -lX11 ' ## ----------------- ## ## Output variables. ## ## ----------------- ## ABS_CLIENT_LIBJVM_SO='' ABS_JAVA_HOME_DIR='/xfs/staging/staging-build-hs/icedtea6/openjdk.build/j2sdk-image' ABS_SERVER_LIBJVM_SO='' ACLOCAL='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing --run aclocal-1.11' ADD_CACAO_BUILD_FALSE='' ADD_CACAO_BUILD_TRUE='#' ADD_JAMVM_BUILD_FALSE='' ADD_JAMVM_BUILD_TRUE='#' ADD_SHARK_BUILD_FALSE='' ADD_SHARK_BUILD_TRUE='#' ADD_ZERO_BUILD_FALSE='' ADD_ZERO_BUILD_TRUE='#' ALSA_CFLAGS='-I/usr/include/alsa ' ALSA_LIBS='-lasound ' ALT_CACAO_SRC_DIR='not specified' ALT_CACAO_SRC_ZIP='not specified' ALT_HOTSPOT_SRC_ZIP='not specified' ALT_JAF_DROP_ZIP='not specified' ALT_JAMVM_SRC_ZIP='not specified' ALT_JAR_CMD='not specified' ALT_JAXP_DROP_ZIP='not specified' ALT_JAXWS_DROP_ZIP='not specified' ALT_OPENJDK_SRC_ZIP='not specified' AMDEPBACKSLASH='\' AMDEP_FALSE='#' AMDEP_TRUE='' AMTAR='$${TAR-tar}' ANT='/usr/bin/ant' ARCHFLAG='-m64' ARCH_PREFIX='' AUTOCONF='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing --run autoconf' AUTOHEADER='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing --run autoheader' AUTOMAKE='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing --run automake-1.11' AWK='gawk' BOOTSTRAPPING_FALSE='#' BOOTSTRAPPING_TRUE='' BUILD_ARCH_DIR='amd64' BUILD_CACAO_FALSE='' BUILD_CACAO_TRUE='#' BUILD_JAMVM_FALSE='' BUILD_JAMVM_TRUE='#' BUILD_OS_DIR='linux' CACAO_IMPORT_PATH='$(abs_top_builddir)/cacao/install' CC='gcc' CCDEPMODE='depmode=none' CFLAGS='-g -O2' CHMOD='/usr/bin/chmod' CONFIGURE_ARGS=' '\''--with-parallel-jobs=8'\'' '\''--disable-docs'\'' '\''--with-jdk-home=/usr/lib/jvm/java-1.5.0-gcj'\''' CP39408_JAVAH_FALSE='' CP39408_JAVAH_TRUE='#' CP40188_JAVAH_FALSE='#' CP40188_JAVAH_TRUE='' CPIO='/usr/bin/cpio' CPP='gcc -E' CPPFLAGS='' CP_SUPPORTS_REFLINK_FALSE='#' CP_SUPPORTS_REFLINK_TRUE='' CROSS_TARGET_ARCH='x86_64' CXX='g++' CXXDEPMODE='depmode=none' CXXFLAGS='-g -O2' CYGPATH_W='echo' DEFAULT_LIBDIR='' DEFS='-DPACKAGE_NAME=\"icedtea6\" -DPACKAGE_TARNAME=\"icedtea6\" -DPACKAGE_VERSION=\"1.13.0pre\" -DPACKAGE_STRING=\"icedtea6\ 1.13.0pre\" -DPACKAGE_BUGREPORT=\"distro-pkg-dev at openjdk.java.net\" -DPACKAGE_URL=\"\" -DPACKAGE=\"icedtea6\" -DVERSION=\"1.13.0pre\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_CUPS_CUPS_H=1 -DHAVE_CUPS_PPD_H=1 -DHAVE_X11_X_H=1 -DHAVE_LIBJPEG=1 -DHAVE_LIBGIF=1 -DHAVE_LIBZ=1' DEPDIR='.deps' DISABLE_HOTSPOT_TESTS_FALSE='' DISABLE_HOTSPOT_TESTS_TRUE='#' DISABLE_JDK_TESTS_FALSE='' DISABLE_JDK_TESTS_TRUE='#' DISABLE_LANGTOOLS_TESTS_FALSE='' DISABLE_LANGTOOLS_TESTS_TRUE='#' DISABLE_OPTIMIZATIONS_FALSE='' DISABLE_OPTIMIZATIONS_TRUE='#' DISABLE_TESTS_FALSE='' DISABLE_TESTS_TRUE='#' DIST_ID='Custom build (Wed Mar 6 16:21:45 CET 2013)' DIST_NAME='linux-gnu' DOWNLOADING_FALSE='#' DOWNLOADING_TRUE='' DTDTYPE_QNAME_FALSE='' DTDTYPE_QNAME_TRUE='#' ECHO_C='' ECHO_N='-n' ECHO_T='' ECJ='/usr/bin/ecj' ECJ_JAR='/usr/share/java/eclipse-ecj.jar' EGREP='/usr/bin/grep -E' ENABLE_CACAO='no' ENABLE_CACAO_FALSE='' ENABLE_CACAO_TRUE='#' ENABLE_CROSS_COMPILATION_FALSE='' ENABLE_CROSS_COMPILATION_TRUE='#' ENABLE_DOCS_FALSE='' ENABLE_DOCS_TRUE='#' ENABLE_JAMVM='no' ENABLE_JAMVM_FALSE='' ENABLE_JAMVM_TRUE='#' ENABLE_NSS_FALSE='' ENABLE_NSS_TRUE='#' ENABLE_PULSE_JAVA_FALSE='' ENABLE_PULSE_JAVA_TRUE='#' ENABLE_SYSTEMTAP_FALSE='' ENABLE_SYSTEMTAP_TRUE='#' ENABLE_XRENDER_FALSE='#' ENABLE_XRENDER_TRUE='' EXEEXT='' FASTJAR='fastjar' FILE='/usr/bin/file' FIND='/usr/bin/find' FREETYPE2_CFLAGS='-I/usr/include/freetype2 ' FREETYPE2_LIBS='-lfreetype ' GAWK='/usr/bin/gawk' GCC_OLD_FALSE='' GCC_OLD_TRUE='#' GCJ='no' GETCONF='/usr/bin/getconf' GREP='/usr/bin/grep' GZIP='/usr/bin/gzip' HAS_HOTSPOT_REVISION_FALSE='' HAS_HOTSPOT_REVISION_TRUE='#' HAS_ICEDTEA_REVISION_FALSE='#' HAS_ICEDTEA_REVISION_TRUE='' HAS_JDK_REVISION_FALSE='' HAS_JDK_REVISION_TRUE='#' HAS_PKGVERSION_FALSE='' HAS_PKGVERSION_TRUE='#' HG='/usr/bin/hg' HGREV='' HOTSPOT_REVISION='none' HSBUILD='hs23' ICEDTEA_REVISION='r9b60104392f1' INSTALL_ARCH_DIR='amd64' INSTALL_DATA='${INSTALL} -m 644' INSTALL_PROGRAM='${INSTALL}' INSTALL_SCRIPT='${INSTALL}' INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' JAR='/usr/lib/jvm/java-1.5.0-gcj/bin/jar' JAR_ACCEPTS_STDIN_LIST='1' JAR_KNOWS_ATFILE='1' JAR_KNOWS_J_OPTIONS='1' JAVA='/usr/lib/jvm/java-1.5.0-gcj/bin/java' JAVAC='/usr/lib/jvm/java-1.5.0-gcj/bin/javac' JAVAH='/usr/lib/jvm/java-1.5.0-gcj/bin/javah' JDK_REVISION='none' JRE_ARCH_DIR='amd64' LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG_FALSE='#' LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG_TRUE='' LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG_FALSE='#' LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG_TRUE='' LACKS_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE_FALSE='' LACKS_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE_TRUE='#' LACKS_JAVAX_SECURITY_SASL_SASL_CREDENTIALS_FALSE='#' LACKS_JAVAX_SECURITY_SASL_SASL_CREDENTIALS_TRUE='' LACKS_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER_FALSE='#' LACKS_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER_TRUE='' LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT_FALSE='#' LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT_TRUE='' LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER_FALSE='#' LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER_TRUE='' LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT_FALSE='#' LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT_TRUE='' LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER_FALSE='#' LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER_TRUE='' LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS_FALSE='#' LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS_TRUE='' LACKS_ORBUTILSYSTEMEXCEPTION_FALSE='#' LACKS_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE_FALSE='#' LACKS_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE_TRUE='' LACKS_ORBUTILSYSTEMEXCEPTION_TRUE='' LDD='ldd' LDFLAGS='' LIBFFI_CFLAGS='' LIBFFI_LIBS='' LIBOBJS='' LIBPNG_CFLAGS='-I/usr/include/libpng15 ' LIBPNG_LIBS='-lpng15 ' LIBPULSE_CFLAGS='' LIBPULSE_LIBS='' LIBS='-lz -lgif -ljpeg ' LINUX32='/usr/bin/linux32' LLVM_CFLAGS='' LLVM_CONFIG='' LLVM_LDFLAGS='' LLVM_LIBS='' LSB_RELEASE='' LTLIBOBJS='' MAKE='/usr/bin/make' MAKEINFO='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing --run makeinfo' MKDIR_P='/usr/bin/mkdir -p' NATIVE2ASCII='/usr/bin/gnative2ascii' NSS_CFLAGS='' NSS_LIBDIR='' NSS_LIBS='' OBJEXT='o' OPENJDK_BUILD_DIR='openjdk.build' OPENJDK_SRC_DIR='/xfs/staging/staging-build-hs/icedtea6/openjdk' OPENJDK_SRC_DIR_FOUND_FALSE='' OPENJDK_SRC_DIR_FOUND_TRUE='#' OPENJDK_SRC_DIR_HARDLINKABLE_FALSE='' OPENJDK_SRC_DIR_HARDLINKABLE_TRUE='#' OS_PATH='' PACKAGE='icedtea6' PACKAGE_BUGREPORT='distro-pkg-dev at openjdk.java.net' PACKAGE_NAME='icedtea6' PACKAGE_STRING='icedtea6 1.13.0pre' PACKAGE_TARNAME='icedtea6' PACKAGE_URL='' PACKAGE_VERSION='1.13.0pre' PARALLEL_JOBS='8' PATCH='/usr/bin/patch' PATH_SEPARATOR=':' PAX_COMMAND='not specified' PAX_COMMAND_ARGS='not specified' PKGVERSION='none' PKG_CONFIG='/usr/bin/pkg-config' PKG_CONFIG_LIBDIR='' PKG_CONFIG_PATH='' RHINO_JAR='/usr/share/java/rhino.jar' RMIC='/usr/lib/jvm/java-1.5.0-gcj/bin/rmic' SET_MAKE='' SHA256SUM='/usr/bin/sha256sum' SHARK_BUILD_FALSE='' SHARK_BUILD_TRUE='#' SHELL='/bin/sh' SRC_DIR_HARDLINKABLE_FALSE='#' SRC_DIR_HARDLINKABLE_TRUE='' STRIP='' SYSTEM_ANT_DIR='/usr/share/ant' SYSTEM_JDK_DIR='/usr/lib/jvm/java-1.5.0-gcj' TAR='/usr/bin/tar' TZDATA_DIR='/usr/share/javazi' UNZIP='/usr/bin/unzip' USE_ALT_CACAO_SRC_DIR_FALSE='' USE_ALT_CACAO_SRC_DIR_TRUE='#' USE_ALT_CACAO_SRC_ZIP_FALSE='' USE_ALT_CACAO_SRC_ZIP_TRUE='#' USE_ALT_HOTSPOT_SRC_ZIP_FALSE='' USE_ALT_HOTSPOT_SRC_ZIP_TRUE='#' USE_ALT_JAF_DROP_ZIP_FALSE='' USE_ALT_JAF_DROP_ZIP_TRUE='#' USE_ALT_JAMVM_SRC_ZIP_FALSE='' USE_ALT_JAMVM_SRC_ZIP_TRUE='#' USE_ALT_JAR_FALSE='' USE_ALT_JAR_TRUE='#' USE_ALT_JAXP_DROP_ZIP_FALSE='' USE_ALT_JAXP_DROP_ZIP_TRUE='#' USE_ALT_JAXWS_DROP_ZIP_FALSE='' USE_ALT_JAXWS_DROP_ZIP_TRUE='#' USE_ALT_OPENJDK_SRC_ZIP_FALSE='' USE_ALT_OPENJDK_SRC_ZIP_TRUE='#' USE_HG_FALSE='' USE_HG_TRUE='#' USE_SYSTEM_CACAO_FALSE='' USE_SYSTEM_CACAO_TRUE='#' USING_CACAO='no' USING_CACAO_FALSE='' USING_CACAO_TRUE='#' USING_ECJ='yes' VERSION='1.13.0pre' WGET='/usr/bin/wget' WITH_ALT_HSBUILD_FALSE='#' WITH_ALT_HSBUILD_TRUE='' WITH_HGREV_FALSE='' WITH_HGREV_TRUE='#' WITH_PAX_FALSE='' WITH_PAX_TRUE='#' WITH_RHINO_FALSE='#' WITH_RHINO_TRUE='' WITH_TZDATA_DIR_FALSE='#' WITH_TZDATA_DIR_TRUE='' X11_CFLAGS=' ' X11_LIBS='-lX11 ' XINERAMA_CFLAGS=' ' XINERAMA_LIBS='-lXinerama ' XPROTO_CFLAGS=' ' XPROTO_LIBS=' ' XP_CFLAGS=' ' XP_LIBS='-lXp -lXau ' XRENDER_CFLAGS=' ' XRENDER_LIBS='-lXrender -lX11 ' XSLTPROC='/usr/bin/xsltproc' XTST_CFLAGS=' ' XTST_LIBS='-lXtst ' XT_CFLAGS=' ' XT_LIBS='-lXt -lX11 ' XVFB_RUN_CMD='' ZERO_ARCHDEF='AMD64' ZERO_BITSPERWORD='64' ZERO_BUILD_FALSE='' ZERO_BUILD_TRUE='#' ZERO_ENDIANNESS='little' ZERO_LIBARCH='amd64' ZIP='/usr/bin/zip' abs_top_builddir='/xfs/staging/staging-build-hs/icedtea6' abs_top_srcdir='/xfs/staging/staging-build-hs/icedtea6' ac_ct_CC='gcc' ac_ct_CXX='g++' ac_ct_FASTJAR='fastjar' am__EXEEXT_FALSE='' am__EXEEXT_TRUE='#' am__fastdepCC_FALSE='' am__fastdepCC_TRUE='#' am__fastdepCXX_FALSE='' am__fastdepCXX_TRUE='#' am__include='include' am__isrc='' am__leading_dot='.' am__nodep='_no' am__quote='' am__tar='tar --format=posix -chf - "$$tardir"' am__untar='tar -xf -' bindir='${exec_prefix}/bin' build='x86_64-unknown-linux-gnu' build_alias='' build_cpu='x86_64' build_os='linux-gnu' build_vendor='unknown' datadir='${datarootdir}' datarootdir='${prefix}/share' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' dvidir='${docdir}' enable_downloading='yes' exec_prefix='${prefix}' host='x86_64-unknown-linux-gnu' host_alias='' host_cpu='x86_64' host_os='linux-gnu' host_vendor='unknown' htmldir='${docdir}' includedir='${prefix}/include' infodir='${datarootdir}/info' install_sh='${SHELL} /xfs/staging/staging-build-hs/icedtea6/install-sh' libdir='${exec_prefix}/lib' libexecdir='${exec_prefix}/libexec' localedir='${datarootdir}/locale' localstatedir='${prefix}/var' mandir='${datarootdir}/man' mkdir_p='/usr/bin/mkdir -p' oldincludedir='/usr/include' pdfdir='${docdir}' prefix='bootstrap' program_transform_name='s,x,x,' psdir='${docdir}' sbindir='${exec_prefix}/sbin' sharedstatedir='${prefix}/com' sysconfdir='${prefix}/etc' target_alias='' ## ----------- ## ## confdefs.h. ## ## ----------- ## /* confdefs.h */ #define PACKAGE_NAME "icedtea6" #define PACKAGE_TARNAME "icedtea6" #define PACKAGE_VERSION "1.13.0pre" #define PACKAGE_STRING "icedtea6 1.13.0pre" #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" #define PACKAGE_URL "" #define PACKAGE "icedtea6" #define VERSION "1.13.0pre" #define STDC_HEADERS 1 #define HAVE_SYS_TYPES_H 1 #define HAVE_SYS_STAT_H 1 #define HAVE_STDLIB_H 1 #define HAVE_STRING_H 1 #define HAVE_MEMORY_H 1 #define HAVE_STRINGS_H 1 #define HAVE_INTTYPES_H 1 #define HAVE_STDINT_H 1 #define HAVE_UNISTD_H 1 #define HAVE_CUPS_CUPS_H 1 #define HAVE_CUPS_PPD_H 1 #define HAVE_X11_X_H 1 #define HAVE_LIBJPEG 1 #define HAVE_LIBGIF 1 #define HAVE_LIBZ 1 configure: exit 0 From gnu.andrew at redhat.com Wed Mar 6 07:31:19 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 6 Mar 2013 10:31:19 -0500 (EST) Subject: [patch] libxp-dev isn't needed anymore In-Reply-To: <51249C13.1050708@ubuntu.com> Message-ID: <1288319501.13879475.1362583878996.JavaMail.root@redhat.com> ----- Original Message ----- > this is in 7, but should go to all 6 branches too. libxp-dev isn't > needed > anymore by any icedtea6 branch. > > Matthias > > > Do you know why this is the case? -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From gnu.andrew at redhat.com Wed Mar 6 07:31:56 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 6 Mar 2013 10:31:56 -0500 (EST) Subject: [rfc] simply the rhino class rewriter In-Reply-To: <51249CD7.4090302@ubuntu.com> Message-ID: <2077241871.13879892.1362583916428.JavaMail.root@redhat.com> ----- Original Message ----- > I have seen early build failures in rewriting the rhino jar file on > architectures like sh, mips, s390, sometimes on sparc64 too. I don't > think it's > essential to stress the stage1 VM with concurrent features, so > simplifying it > should make the bootstrap more robust. Currently applying at least > this for > distro builds. This, or something simpler, should go to all open > branches. > > Matthias > > I saw it fail with gcj for the first time last month, so I see your point. I'll get this in. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From jfabriko at redhat.com Wed Mar 6 07:35:05 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Wed, 06 Mar 2013 16:35:05 +0100 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "get" tests Message-ID: <51376229.1000706@redhat.com> Hello, please see the attached patch of new reproducer for J->JS "reading JS variables from J". Several of the testcases in the patch have commented annotations KnownToFailInBrowser, (which i have implemented but is not included yet.) thanks for any comments, Jana 2013-03-06 Jana Fabrikova * /tests/reproducers/simple/JToJSGet/testcases/JToJSGetTest.java: adding 8 testcases based on the interactive Liveconnect JS->Java overloaded function resolution tests * /tests/reproducers/simple/JToJSGet/srcs/JToJSGet.java: the applet that reads variables from JS * /tests/reproducers/simple/JToJSGet/resources/JToJS_Get.js: auxiliary JavaScript code * /tests/reproducers/simple/JToJSGet/resources/jtojs-get.jnlp: jnlp file for displaying applet in the html page * /tests/reproducers/simple/JToJSGet/resources/JToJSGet.html: the html page where the applet reading JS variables is embedded -------------- next part -------------- A non-text attachment was scrubbed... Name: adding_JToJSGet_reproducer.patch Type: text/x-patch Size: 11206 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/57f3e79f/adding_JToJSGet_reproducer.patch From jfabriko at redhat.com Wed Mar 6 07:41:31 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Wed, 06 Mar 2013 16:41:31 +0100 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "set" tests Message-ID: <513763AB.3020000@redhat.com> Hello, please see the attached patch of new reproducer for J->JS "writing values to JS variables from Java". thanks for any comments, Jana 2013-03-06 Jana Fabrikova * /tests/reproducers/simple/JToJSSet/testcases/JToJSSetTest.java: adding 21 testcases based on the interactive Liveconnect JS->Java set tests * /tests/reproducers/simple/JToJSGet/srcs/JToJSGet.java: the applet that writes variables to JS * /tests/reproducers/simple/JToJSGet/resources/JToJS_Get.js: auxiliary JavaScript code * /tests/reproducers/simple/JToJSGet/resources/jtojs-get.jnlp: jnlp file for displaying applet in the html page * /tests/reproducers/simple/JToJSGet/resources/JToJSGet.html: the html page where the applet setting JS variables is embedded -------------- next part -------------- A non-text attachment was scrubbed... Name: adding_JToJSSet_reproducer.patch Type: text/x-patch Size: 14644 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/c91f2f85/adding_JToJSSet_reproducer.patch From jfabriko at redhat.com Wed Mar 6 07:48:54 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Wed, 06 Mar 2013 16:48:54 +0100 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "function parameters" tests Message-ID: <51376566.2040202@redhat.com> Hello, please see the attached patch of new reproducer for J->JS "calling JS function with various parameters from J". Several of the testcases in the patch have commented annotations KnownToFailInBrowser, (which i have implemented but is not included yet.) thanks for any comments, Jana 2013-03-06 Jana Fabrikova * /tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java: adding 19 testcases based on the interactive Liveconnect JS->Java function parameters tests * /tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java: the applet that calls JS function * /tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js: auxiliary JavaScript code * /tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp: jnlp file for displaying applet in the html page * /tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html: the html page where the applet calling JS function is embedded -------------- next part -------------- A non-text attachment was scrubbed... Name: adding_JToJSFuncParam_reproducer.patch Type: text/x-patch Size: 15529 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/bb12ae48/adding_JToJSFuncParam_reproducer.patch From jfabriko at redhat.com Wed Mar 6 07:54:01 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Wed, 06 Mar 2013 16:54:01 +0100 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "function return values" tests Message-ID: <51376699.1060907@redhat.com> Hello, please see the attached patch of new reproducer for J->JS "getting the right value by applet that calls JS functions with different return types". thanks for any comments, Jana 2013-03-06 Jana Fabrikova * /tests/reproducers/simple/JToJSFuncReturn/testcases/JToJSFuncReturnTest.java: adding 5 testcases based on the interactive Liveconnect JS->Java function return type tests * /tests/reproducers/simple/JToJSFuncReturn/srcs/JToJSFuncReturn.java: the applet that calls JS functions * /tests/reproducers/simple/JToJSFuncReturn/resources/JToJS_FuncReturn.js: auxiliary JavaScript code * /tests/reproducers/simple/JToJSFuncReturn/resources/jtojs-funcreturn.jnlp: jnlp file for displaying applet in the html page * /tests/reproducers/simple/JToJSFuncReturn/resources/JToJSFuncReturn.html: the html page where the applet calling JS functions is embedded -------------- next part -------------- A non-text attachment was scrubbed... Name: adding_JToJSFuncReturn_reproducer.patch Type: text/x-patch Size: 9241 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/973d5da9/adding_JToJSFuncReturn_reproducer.patch From jfabriko at redhat.com Wed Mar 6 07:58:43 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Wed, 06 Mar 2013 16:58:43 +0100 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "get" tests Message-ID: <513767B3.3010904@redhat.com> Hello, please see the attached patch of new reproducer for J->JS "evaluating by calling JS eval from J". Several of the testcases in the patch have commented annotations KnownToFailInBrowser, (which i have implemented but is not included yet.) thanks for any comments, Jana 2013-03-06 Jana Fabrikova * /tests/reproducers/simple/JToJSEval/testcases/JToJSEvalTest.java: adding 3 testcases based on the interactive Liveconnect JS->Java eval tests * /tests/reproducers/simple/JToJSEval/srcs/JToJSEval.java: the applet that evaluates the strings via calling eval from JS * /tests/reproducers/simple/JToJSEval/resources/JToJS_Eval.js: auxiliary JavaScript code * /tests/reproducers/simple/JToJSEval/resources/jtojs-eval.jnlp: jnlp file for displaying applet in the html page * /tests/reproducers/simple/JToJSEval/resources/JToJSEval.html: the html page where the applet calling eval is embedded -------------- next part -------------- A non-text attachment was scrubbed... Name: adding_JToJSEval_reproducer.patch Type: text/x-patch Size: 8368 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/cd4a042f/adding_JToJSEval_reproducer.patch From adomurad at redhat.com Wed Mar 6 09:50:19 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 06 Mar 2013 12:50:19 -0500 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "get" tests In-Reply-To: <513767B3.3010904@redhat.com> References: <513767B3.3010904@redhat.com> Message-ID: <513781DB.30309@redhat.com> This isn't what your subject line says it is :-) On 03/06/2013 10:58 AM, Jana Fabrikova wrote: > Hello, > > please see the attached patch of new reproducer for J->JS "evaluating > by calling JS eval from J". The patch itself looks good, but what was the motivation for this ? IMHO we do not need more than one reproducer that tests eval, which we already have (JSObjectFromEval). From our point-of-view it's sending a string to the javascript engine. All the specific object conversion stuff should be handled with unit tests (this may require a bit of refactoring to support, but should be do-able). Are you working on all these patches concurrently ? If not it'd be better to post them to list for feedback as you finish them, instead of all at once. Not a huge deal, though. > [..snip..] Happy hacking, -Adam From gnu.andrew at redhat.com Wed Mar 6 10:02:42 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 6 Mar 2013 13:02:42 -0500 (EST) Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: Message-ID: <223879234.13974336.1362592962647.JavaMail.root@redhat.com> ----- Original Message ----- > > Two pieces of information you didn't provide: > > > > 1. What version of IcedTea are you trying to build (if Mercurial, > > which repository+changeset)? > > Sorry. I always use hg default. In this case: > http://icedtea.classpath.org/hg/icedtea6/rev/9b60104392f1 > > > 2. Output of configure (config.log). > > No problem: > > This file contains any messages produced by compilers while > running configure, to aid debugging if configure makes a mistake. > > It was created by icedtea6 configure 1.13.0pre, which was > generated by GNU Autoconf 2.68. Invocation command line was > > $ ./configure --with-parallel-jobs=8 --disable-docs > --with-jdk-home=/usr/lib/jvm/java-1.5.0-gcj > > ## --------- ## > ## Platform. ## > ## --------- ## > > hostname = f17 > uname -m = x86_64 > uname -r = 3.6.6-1.fc17.x86_64 > uname -s = Linux > uname -v = #1 SMP Mon Nov 5 21:59:35 UTC 2012 > > /usr/bin/uname -p = x86_64 > /bin/uname -X = unknown > > /bin/arch = x86_64 > /usr/bin/arch -k = unknown > /usr/convex/getsysinfo = unknown > /usr/bin/hostinfo = unknown > /bin/machine = unknown > /usr/bin/oslevel = unknown > /bin/universe = unknown > > PATH: /usr/lib64/ccache > PATH: /usr/local/bin > PATH: /usr/bin > PATH: /usr/local/sbin > PATH: /usr/sbin > PATH: /home/sr/.local/bin > PATH: /home/sr/bin > > > ## ----------- ## > ## Core tests. ## > ## ----------- ## > > configure:2819: checking for a BSD-compatible install > configure:2887: result: /usr/bin/install -c > configure:2898: checking whether build environment is sane > configure:2948: result: yes > configure:3089: checking for a thread-safe mkdir -p > configure:3128: result: /usr/bin/mkdir -p > configure:3141: checking for gawk > configure:3157: found /usr/bin/gawk > configure:3168: result: gawk > configure:3179: checking whether make sets $(MAKE) > configure:3201: result: yes > configure:3276: checking how to create a pax tar archive > configure:3289: tar --version > tar (GNU tar) 1.26 > Copyright (C) 2011 Free Software Foundation, Inc. > License GPLv3+: GNU GPL version 3 or later > . > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. > > Written by John Gilmore and Jay Fenlason. > configure:3292: $? = 0 > configure:3332: tardir=conftest.dir && eval tar --format=posix -chf - > "$tardir" >conftest.tar > configure:3335: $? = 0 > configure:3339: tar -xf - configure:3342: $? = 0 > configure:3355: result: gnutar > configure:3378: checking build system type > configure:3392: result: x86_64-unknown-linux-gnu > configure:3412: checking host system type > configure:3425: result: x86_64-unknown-linux-gnu > configure:3496: checking for gcc > configure:3512: found /usr/lib64/ccache/gcc > configure:3523: result: gcc > configure:3752: checking for C compiler version > configure:3761: gcc --version >&5 > gcc (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) > Copyright (C) 2012 Free Software Foundation, Inc. > This is free software; see the source for copying conditions. There > is NO > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR > PURPOSE. > > configure:3772: $? = 0 > configure:3761: gcc -v >&5 > Using built-in specs. > COLLECT_GCC=/usr/bin/gcc > COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.7.2/lto-wrapper > Target: x86_64-redhat-linux > Configured with: ../configure --prefix=/usr --mandir=/usr/share/man > --infodir=/usr/share/info > --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap > --enable-shared --enable-threads=posix --enable-checking=release > --disable-build-with-cxx --disable-build-poststage1-with-cxx > --with-system-zlib --enable-__cxa_atexit > --disable-libunwind-exceptions --enable-gnu-unique-object > --enable-linker-build-id --with-linker-hash-style=gnu > --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto > --enable-plugin --enable-initfini-array --enable-java-awt=gtk > --disable-dssi > --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre > --enable-libgcj-multifile --enable-java-maintainer-mode > --with-ecj-jar=/usr/share/java/eclipse-ecj.jar > --disable-libjava-multilib --with-ppl --with-cloog > --with-tune=generic > --with-arch_32=i686 --build=x86_64-redhat-linux > Thread model: posix > gcc version 4.7.2 20120921 (Red Hat 4.7.2-2) (GCC) > configure:3772: $? = 0 > configure:3761: gcc -V >&5 > gcc: error: unrecognized command line option '-V' > gcc: fatal error: no input files > compilation terminated. > configure:3772: $? = 4 > configure:3761: gcc -qversion >&5 > gcc: error: unrecognized command line option '-qversion' > gcc: fatal error: no input files > compilation terminated. > configure:3772: $? = 4 > configure:3792: checking whether the C compiler works > configure:3814: gcc conftest.c >&5 > configure:3818: $? = 0 > configure:3866: result: yes > configure:3869: checking for C compiler default output file name > configure:3871: result: a.out > configure:3877: checking for suffix of executables > configure:3884: gcc -o conftest conftest.c >&5 > configure:3888: $? = 0 > configure:3910: result: > configure:3932: checking whether we are cross compiling > configure:3940: gcc -o conftest conftest.c >&5 > configure:3944: $? = 0 > configure:3951: ./conftest > configure:3955: $? = 0 > configure:3970: result: no > configure:3975: checking for suffix of object files > configure:3997: gcc -c conftest.c >&5 > configure:4001: $? = 0 > configure:4022: result: o > configure:4026: checking whether we are using the GNU C compiler > configure:4045: gcc -c conftest.c >&5 > configure:4045: $? = 0 > configure:4054: result: yes > configure:4063: checking whether gcc accepts -g > configure:4083: gcc -c -g conftest.c >&5 > configure:4083: $? = 0 > configure:4124: result: yes > configure:4141: checking for gcc option to accept ISO C89 > configure:4205: gcc -c -g -O2 conftest.c >&5 > configure:4205: $? = 0 > configure:4218: result: none needed > configure:4249: checking for style of include used by make > configure:4277: result: GNU > configure:4303: checking dependency style of gcc > configure:4414: result: none > configure:4487: checking for g++ > configure:4503: found /usr/lib64/ccache/g++ > configure:4514: result: g++ > configure:4541: checking for C++ compiler version > configure:4550: g++ --version >&5 > g++ (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) > Copyright (C) 2012 Free Software Foundation, Inc. > This is free software; see the source for copying conditions. There > is NO > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR > PURPOSE. > > configure:4561: $? = 0 > configure:4550: g++ -v >&5 > Using built-in specs. > COLLECT_GCC=/usr/bin/g++ > COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.7.2/lto-wrapper > Target: x86_64-redhat-linux > Configured with: ../configure --prefix=/usr --mandir=/usr/share/man > --infodir=/usr/share/info > --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap > --enable-shared --enable-threads=posix --enable-checking=release > --disable-build-with-cxx --disable-build-poststage1-with-cxx > --with-system-zlib --enable-__cxa_atexit > --disable-libunwind-exceptions --enable-gnu-unique-object > --enable-linker-build-id --with-linker-hash-style=gnu > --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto > --enable-plugin --enable-initfini-array --enable-java-awt=gtk > --disable-dssi > --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre > --enable-libgcj-multifile --enable-java-maintainer-mode > --with-ecj-jar=/usr/share/java/eclipse-ecj.jar > --disable-libjava-multilib --with-ppl --with-cloog > --with-tune=generic > --with-arch_32=i686 --build=x86_64-redhat-linux > Thread model: posix > gcc version 4.7.2 20120921 (Red Hat 4.7.2-2) (GCC) > configure:4561: $? = 0 > configure:4550: g++ -V >&5 > g++: error: unrecognized command line option '-V' > g++: fatal error: no input files > compilation terminated. > configure:4561: $? = 4 > configure:4550: g++ -qversion >&5 > g++: error: unrecognized command line option '-qversion' > g++: fatal error: no input files > compilation terminated. > configure:4561: $? = 4 > configure:4565: checking whether we are using the GNU C++ compiler > configure:4584: g++ -c conftest.cpp >&5 > configure:4584: $? = 0 > configure:4593: result: yes > configure:4602: checking whether g++ accepts -g > configure:4622: g++ -c -g conftest.cpp >&5 > configure:4622: $? = 0 > configure:4663: result: yes > configure:4688: checking dependency style of g++ > configure:4799: result: none > configure:4861: checking for make > configure:4879: found /usr/bin/make > configure:4891: result: /usr/bin/make > configure:4964: checking for gzip > configure:4982: found /usr/bin/gzip > configure:4994: result: /usr/bin/gzip > configure:5067: checking for ant > configure:5085: found /usr/bin/ant > configure:5097: result: /usr/bin/ant > configure:5170: checking for find > configure:5188: found /usr/bin/find > configure:5200: result: /usr/bin/find > configure:5273: checking for patch > configure:5291: found /usr/bin/patch > configure:5303: result: /usr/bin/patch > configure:5376: checking for tar > configure:5394: found /usr/bin/tar > configure:5406: result: /usr/bin/tar > configure:5479: checking for chmod > configure:5497: found /usr/bin/chmod > configure:5509: result: /usr/bin/chmod > configure:5582: checking for sha256sum > configure:5600: found /usr/bin/sha256sum > configure:5612: result: /usr/bin/sha256sum > configure:5685: checking for wget > configure:5703: found /usr/bin/wget > configure:5715: result: /usr/bin/wget > configure:5788: checking for zip > configure:5806: found /usr/bin/zip > configure:5818: result: /usr/bin/zip > configure:5891: checking for unzip > configure:5909: found /usr/bin/unzip > configure:5921: result: /usr/bin/unzip > configure:5994: checking for cpio > configure:6012: found /usr/bin/cpio > configure:6024: result: /usr/bin/cpio > configure:6097: checking for file > configure:6115: found /usr/bin/file > configure:6127: result: /usr/bin/file > configure:6203: checking for fastjar > configure:6219: found /usr/bin/fastjar > configure:6230: result: fastjar > configure:6301: checking for ldd > configure:6317: found /usr/bin/ldd > configure:6328: result: ldd > configure:6396: checking for gawk > configure:6414: found /usr/bin/gawk > configure:6426: result: /usr/bin/gawk > configure:6500: checking for hg > configure:6518: found /usr/bin/hg > configure:6530: result: /usr/bin/hg > configure:6556: checking for an OpenJDK source directory > configure:6572: result: > /xfs/staging/staging-build-hs/icedtea6/openjdk > /usr/bin/hg > configure:6624: checking for IcedTea Mercurial revision ID > configure:6629: result: r9b60104392f1 > configure:6632: checking for JDK Mercurial revision ID > configure:6637: result: none > configure:6640: checking for HotSpot Mercurial revision ID > configure:6645: result: none > configure:6720: checking for lsb_release > configure:6753: result: no > configure:6773: checking whether to compile ecj natively > configure:6787: result: no > configure:6998: checking whether to use CACAO as VM > configure:7012: result: no > configure:7027: checking whether to use JamVM as VM > configure:7041: result: no > configure:7056: checking whether to use the Shark JIT > configure:7077: result: no > configure:7095: checking how to run the C preprocessor > configure:7126: gcc -E conftest.c > configure:7126: $? = 0 > configure:7140: gcc -E conftest.c > conftest.c:11:28: fatal error: ac_nonexistent.h: No such file or > directory > compilation terminated. > configure:7140: $? = 1 > configure: failed program was: > | /* confdefs.h */ > | #define PACKAGE_NAME "icedtea6" > | #define PACKAGE_TARNAME "icedtea6" > | #define PACKAGE_VERSION "1.13.0pre" > | #define PACKAGE_STRING "icedtea6 1.13.0pre" > | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > | #define PACKAGE_URL "" > | #define PACKAGE "icedtea6" > | #define VERSION "1.13.0pre" > | /* end confdefs.h. */ > | #include > configure:7165: result: gcc -E > configure:7185: gcc -E conftest.c > configure:7185: $? = 0 > configure:7199: gcc -E conftest.c > conftest.c:11:28: fatal error: ac_nonexistent.h: No such file or > directory > compilation terminated. > configure:7199: $? = 1 > configure: failed program was: > | /* confdefs.h */ > | #define PACKAGE_NAME "icedtea6" > | #define PACKAGE_TARNAME "icedtea6" > | #define PACKAGE_VERSION "1.13.0pre" > | #define PACKAGE_STRING "icedtea6 1.13.0pre" > | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > | #define PACKAGE_URL "" > | #define PACKAGE "icedtea6" > | #define VERSION "1.13.0pre" > | /* end confdefs.h. */ > | #include > configure:7228: checking for grep that handles long lines and -e > configure:7286: result: /usr/bin/grep > configure:7291: checking for egrep > configure:7353: result: /usr/bin/grep -E > configure:7358: checking for ANSI C header files > configure:7378: gcc -c -g -O2 conftest.c >&5 > configure:7378: $? = 0 > configure:7451: gcc -o conftest -g -O2 conftest.c >&5 > configure:7451: $? = 0 > configure:7451: ./conftest > configure:7451: $? = 0 > configure:7462: result: yes > configure:7475: checking for sys/types.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7475: checking for sys/stat.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7475: checking for stdlib.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7475: checking for string.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7475: checking for memory.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7475: checking for strings.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7475: checking for inttypes.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7475: checking for stdint.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7475: checking for unistd.h > configure:7475: gcc -c -g -O2 conftest.c >&5 > configure:7475: $? = 0 > configure:7475: result: yes > configure:7492: checking whether to use the zero-assembler port > configure:7529: result: no > configure:7584: checking whether byte ordering is bigendian > configure:7599: gcc -c -g -O2 conftest.c >&5 > conftest.c:22:9: error: unknown type name 'not' > conftest.c:22:15: error: expected '=', ',', ';', 'asm' or > '__attribute__' before 'universal' > conftest.c:22:15: error: unknown type name 'universal' > configure:7599: $? = 1 > configure: failed program was: > | /* confdefs.h */ > | #define PACKAGE_NAME "icedtea6" > | #define PACKAGE_TARNAME "icedtea6" > | #define PACKAGE_VERSION "1.13.0pre" > | #define PACKAGE_STRING "icedtea6 1.13.0pre" > | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > | #define PACKAGE_URL "" > | #define PACKAGE "icedtea6" > | #define VERSION "1.13.0pre" > | #define STDC_HEADERS 1 > | #define HAVE_SYS_TYPES_H 1 > | #define HAVE_SYS_STAT_H 1 > | #define HAVE_STDLIB_H 1 > | #define HAVE_STRING_H 1 > | #define HAVE_MEMORY_H 1 > | #define HAVE_STRINGS_H 1 > | #define HAVE_INTTYPES_H 1 > | #define HAVE_STDINT_H 1 > | #define HAVE_UNISTD_H 1 > | /* end confdefs.h. */ > | #ifndef __APPLE_CC__ > | not a universal capable compiler > | #endif > | typedef int dummy; > | > configure:7644: gcc -c -g -O2 conftest.c >&5 > configure:7644: $? = 0 > configure:7662: gcc -c -g -O2 conftest.c >&5 > conftest.c: In function 'main': > conftest.c:28:4: error: unknown type name 'not' > conftest.c:28:12: error: expected '=', ',', ';', 'asm' or > '__attribute__' before 'endian' > configure:7662: $? = 1 > configure: failed program was: > | /* confdefs.h */ > | #define PACKAGE_NAME "icedtea6" > | #define PACKAGE_TARNAME "icedtea6" > | #define PACKAGE_VERSION "1.13.0pre" > | #define PACKAGE_STRING "icedtea6 1.13.0pre" > | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > | #define PACKAGE_URL "" > | #define PACKAGE "icedtea6" > | #define VERSION "1.13.0pre" > | #define STDC_HEADERS 1 > | #define HAVE_SYS_TYPES_H 1 > | #define HAVE_SYS_STAT_H 1 > | #define HAVE_STDLIB_H 1 > | #define HAVE_STRING_H 1 > | #define HAVE_MEMORY_H 1 > | #define HAVE_STRINGS_H 1 > | #define HAVE_INTTYPES_H 1 > | #define HAVE_STDINT_H 1 > | #define HAVE_UNISTD_H 1 > | /* end confdefs.h. */ > | #include > | #include > | > | int > | main () > | { > | #if BYTE_ORDER != BIG_ENDIAN > | not big endian > | #endif > | > | ; > | return 0; > | } > configure:7790: result: no > configure:7841: checking which HotSpot build to use > configure:7860: result: hs23 > configure:7923: checking for linux32 > configure:7941: found /usr/bin/linux32 > configure:7953: result: /usr/bin/linux32 > configure:7976: checking version of GCC > configure:7989: result: 4.7.2 (major version 4, minor version 7) > configure:8039: checking for getconf > configure:8057: found /usr/bin/getconf > configure:8069: result: /usr/bin/getconf > configure:8096: checking the number of online processors > configure:8109: result: 8 > configure:8115: checking how many parallel build jobs to execute > configure:8135: result: 8 > configure:8140: checking if cp supports --reflink > configure:8155: result: yes > configure:8167: checking if we can hard link rather than copy from > /xfs/staging/staging-build-hs/icedtea6 > configure:8181: result: yes > configure:8193: checking for system library directory > configure:8223: result: > configure:8281: checking for pkg-config > configure:8299: found /usr/bin/pkg-config > configure:8311: result: /usr/bin/pkg-config > configure:8336: checking pkg-config is at least version 0.9.0 > configure:8339: result: yes > configure:8351: checking for NSS > configure:8358: $PKG_CONFIG --exists --print-errors "nss" > Package nss was not found in the pkg-config search path. > Perhaps you should add the directory containing `nss.pc' > to the PKG_CONFIG_PATH environment variable > No package 'nss' found > configure:8361: $? = 1 > configure:8374: $PKG_CONFIG --exists --print-errors "nss" > Package nss was not found in the pkg-config search path. > Perhaps you should add the directory containing `nss.pc' > to the PKG_CONFIG_PATH environment variable > No package 'nss' found > configure:8377: $? = 1 > configure:8390: result: no > No package 'nss' found > configure:8424: WARNING: Could not find NSS; using as its location. > configure:8436: checking whether to disable the execution of the > JTReg tests > configure:8456: result: no > configure:8468: checking whether to disable the execution of the > HotSpot JTReg tests > configure:8488: result: no > configure:8500: checking whether to disable the execution of the > langtools JTReg tests > configure:8520: result: no > configure:8532: checking whether to disable the execution of the JDK > JTReg tests > configure:8552: result: no > configure:8566: checking for a JDK home directory > configure:8601: result: /usr/lib/jvm/java-1.5.0-gcj > configure:8611: checking if a java binary was specified > configure:8629: result: no > configure:8634: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/java is a > valid executable file > configure:8637: result: yes > configure:8776: checking if a javac binary was specified > configure:8794: result: no > configure:8799: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javac is > a > valid executable file > configure:8802: result: yes > configure:8853: checking if an ecj binary was specified > configure:8871: result: no > configure:8876: checking if /usr/bin/ecj is a valid executable file > configure:8879: result: yes > configure:9106: checking if we are using ecj as javac > Eclipse Compiler for Java(TM) v20120814-155456, 3.8.2, Copyright IBM > Corp 2000, 2012. All rights reserved. > configure:9119: result: yes > configure:9131: checking if the VM and compiler work together > Hello World! > configure:9168: result: yes > configure:9173: checking if > javax.swing.plaf.basic.BasicDirectoryModel.addPropertyChangeListener(PropertyChangeListener) > is missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 22) > javax.swing.plaf.basic.BasicDirectoryModel model = new > javax.swing.plaf.basic.BasicDirectoryModel(new > javax.swing.JFileChooser()); model.addPropertyChangeListener(model) > > > ^^^^^^^^^^^^^^^^^^^^^^^^^ > The method addPropertyChangeListener(BasicDirectoryModel) is > undefined > for the type BasicDirectoryModel > ---------- > 1 problem (1 error)configure:9223: result: yes > configure:9241: checking if > com.sun.corba.se.impl.logging.ORBUtilSystemException is missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 6) > System.err.println("Class found: " + > com.sun.corba.se.impl.logging.ORBUtilSystemException.class); > ^^^ > com cannot be resolved to a type > ---------- > 1 problem (1 error)configure:9273: result: yes > configure:9289: checking if > com.sun.corba.se.impl.logging.ORBUtilSystemException.ioExceptionOnClose(Throwable) > is missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 8) > Class cl = > com.sun.corba.se.impl.logging.ORBUtilSystemException.class; > ^^^ > com cannot be resolved to a type > ---------- > 2. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 22) > new > com.sun.corba.se.impl.logging.ORBUtilSystemException(null).ioExceptionOnClose(new > InternalError()) > ^^^ > com cannot be resolved to a type > ---------- > 2 problems (2 errors)configure:9339: result: yes > configure:9357: checking if > javax.management.StandardMBean(Class.class,Boolean.TYPE) is missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 24) > super(Object.class, true); > ^^^^^^^^^^^^^^^^^^^^^^^^^^ > The constructor StandardMBean(Class, boolean) is undefined > ---------- > 1 problem (1 error)configure:9410: result: yes > configure:9426: checking if > javax.management.StandardMBean(Object.class,Class.class,Boolean.TYPE) > is missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 24) > super(new Object(), Object.class, true); > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > The constructor StandardMBean(Object, Class, boolean) is > undefined > ---------- > 1 problem (1 error)configure:9479: result: yes > configure:9497: checking if > java.security.cert.X509CRLSelector.addIssuer(X500Principal) is > missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 22) > new java.security.cert.X509CRLSelector().addIssuer(null) > ^^^^^^^^^ > The method addIssuer(null) is undefined for the type X509CRLSelector > ---------- > 1 problem (1 error)configure:9547: result: yes > configure:9563: checking if > java.security.cert.X509CertSelector.setSubject(X500Principal) is > missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 22) > new java.security.cert.X509CertSelector().setSubject(new > javax.security.auth.x500.X500Principal("")) > ^^^^^^^^^^ > The method setSubject(byte[]) in the type X509CertSelector is not > applicable for the arguments (X500Principal) > ---------- > 1 problem (1 error)configure:9613: result: yes > configure:9629: checking if > java.security.cert.X509CertSelector.getSubject() is missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 22) > new java.security.cert.X509CertSelector().getSubject() > ^^^^^^^^^^ > The method getSubject() is undefined for the type X509CertSelector > ---------- > 1 problem (1 error)configure:9679: result: yes > configure:9695: checking if > java.security.cert.X509CertSelector.setIssuer(X500Principal) is > missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 22) > new java.security.cert.X509CertSelector().setIssuer(new > javax.security.auth.x500.X500Principal("")) > ^^^^^^^^^ > The method setIssuer(byte[]) in the type X509CertSelector is not > applicable for the arguments (X500Principal) > ---------- > 1 problem (1 error)configure:9745: result: yes > configure:9761: checking if > java.security.cert.X509CRLSelector.setIssuers(Collection) > is missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 22) > new java.security.cert.X509CRLSelector().setIssuers(new > java.util.ArrayList()) > ^^^^^^^^^^ > The method setIssuers(ArrayList) is undefined for the > type X509CRLSelector > ---------- > 1 problem (1 error)configure:9811: result: yes > configure:9827: checking if > javax.security.auth.kerberos.KerberosTicket.getSessionKeyType() is > missing > Method found: public final int > javax.security.auth.kerberos.KerberosTicket.getSessionKeyType() > configure:9877: result: no > configure:9895: checking if javax.security.sasl.Sasl.CREDENTIALS is > missing > ---------- > 1. ERROR in /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > (at line 13) > System.err.println("Field value: " + > javax.security.sasl.Sasl.CREDENTIALS); > ^^^^^^^^^^^ > CREDENTIALS cannot be resolved or is not a field > ---------- > 1 problem (1 error)configure:9940: result: yes > configure:9958: checking for xvfb-run > configure:9988: result: no > configure:9995: checking for an Ant home directory > configure:10015: result: /usr/share/ant > configure:10018: checking whether to include PulseAudio support > configure:10035: result: no > configure:10038: checking whether to build documentation > configure:10055: result: no > configure:10059: checking whether to enable experimental OpenJDK > cross-compilation support > configure:10076: result: no > configure:10079: checking whether to include the XRender pipeline > configure:10096: result: yes > configure:10099: checking whether to include SystemTap tracing > support > configure:10116: result: no > configure:10119: checking whether to include the NSS-based security > provider > configure:10141: result: disabled by default (edit java.security to > enable) > configure:10146: checking for distribution package version > configure:10160: result: none > configure:10174: checking build identification > configure:10188: result: Custom build (Wed Mar 6 16:21:45 CET 2013) > configure:10325: checking whether to build a bootstrap version first > configure:10345: result: yes > configure:10357: checking whether to download tarballs > configure:10377: result: yes > configure:10394: checking if a javah binary was specified > configure:10412: result: no > configure:10417: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah is > a valid executable file > configure:10420: result: yes > configure:10517: checking if a jar binary was specified > configure:10535: result: no > configure:10540: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/jar is a > valid executable file > configure:10543: result: yes > configure:10635: checking whether jar supports @ argument > configure:10643: result: yes > configure:10650: checking whether jar supports stdin file arguments > configure:10654: result: yes > configure:10662: checking whether jar supports -J options at the end > configure:10666: result: yes > configure:10682: checking if a rmic binary was specified > configure:10700: result: no > configure:10705: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/rmic is > a > valid executable file > configure:10708: result: yes > configure:10805: checking if a native2ascii binary was specified > configure:10823: result: no > configure:10828: checking if > /usr/lib/jvm/java-1.5.0-gcj/bin/native2ascii is a valid executable > file > configure:10834: result: no > configure:10839: checking for native2ascii > configure:10872: result: no > configure:10880: checking for gnative2ascii > configure:10898: found /usr/bin/gnative2ascii > configure:10910: result: /usr/bin/gnative2ascii > configure:10927: checking for an ecj JAR file > configure:10958: result: /usr/share/java/eclipse-ecj.jar > configure:11011: checking for xsltproc > configure:11029: found /usr/bin/xsltproc > configure:11041: result: /usr/bin/xsltproc > configure:11071: checking if we are using CACAO as the build VM > configure:11084: result: no > configure:11103: checking whether to include Javascript support via > Rhino > configure:11147: result: /usr/share/java/rhino.jar > configure:11163: checking for an OpenJDK source zip > configure:11190: result: not specified > configure:11195: checking for a HotSpot source zip > configure:11222: result: not specified > configure:11227: checking for an alternate jar command > configure:11257: result: not specified > configure:11262: checking for a JAXP drop zip > configure:11289: result: not specified > configure:11294: checking for a JAF drop zip > configure:11321: result: not specified > configure:11326: checking for a JAXWS drop zip > configure:11353: result: not specified > configure:11360: checking for a CACAO home directory > configure:11397: result: $(abs_top_builddir)/cacao/install > configure:11402: checking for a CACAO source zip > configure:11429: result: not specified > configure:11434: checking for a CACAO source directory > configure:11464: result: not specified > configure:11471: checking for a JamVM source zip > configure:11498: result: not specified > configure:11504: checking whether to disable optimizations and build > with -O0 -g > configure:11524: result: no > configure:11538: checking for additional virtual machines to build > configure:11562: result: none > configure:11634: checking whether to retrieve the source code from > Mercurial > configure:11654: result: no > configure:11666: checking which Mercurial revision to use > configure:11679: result: tip > configure:11696: checking which Java timezone data directory to use > configure:11723: result: /usr/share/javazi > configure:11740: checking if > javax.xml.stream.events.Attribute.getDTDType() wrongly returns a > QName > configure:11815: result: no > configure:11828: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah > exhibits Classpath bug 39408 > #undef Test_POTATO > #define Test_POTATO 0L > configure:11875: result: no > configure:11877: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah > exhibits Classpath bug 40188 > configure:11892: result: yes > configure:11916: checking for pax utility to use > configure:11967: result: not specified > configure:11978: checking cups/cups.h usability > configure:11978: gcc -c -g -O2 conftest.c >&5 > configure:11978: $? = 0 > configure:11978: result: yes > configure:11978: checking cups/cups.h presence > configure:11978: gcc -E conftest.c > configure:11978: $? = 0 > configure:11978: result: yes > configure:11978: checking for cups/cups.h > configure:11978: result: yes > configure:11978: checking cups/ppd.h usability > configure:11978: gcc -c -g -O2 conftest.c >&5 > configure:11978: $? = 0 > configure:11978: result: yes > configure:11978: checking cups/ppd.h presence > configure:11978: gcc -E conftest.c > configure:11978: $? = 0 > configure:11978: result: yes > configure:11978: checking for cups/ppd.h > configure:11978: result: yes > configure:11994: checking X11/X.h usability > configure:11994: gcc -c -g -O2 conftest.c >&5 > configure:11994: $? = 0 > configure:11994: result: yes > configure:11994: checking X11/X.h presence > configure:11994: gcc -E conftest.c > configure:11994: $? = 0 > configure:11994: result: yes > configure:11994: checking for X11/X.h > configure:11994: result: yes > configure:12008: checking for main in -ljpeg > configure:12027: gcc -o conftest -g -O2 conftest.c -ljpeg >&5 > configure:12027: $? = 0 > configure:12036: result: yes > configure:12049: checking for main in -lgif > configure:12068: gcc -o conftest -g -O2 conftest.c -lgif -ljpeg > >&5 > configure:12068: $? = 0 > configure:12077: result: yes > configure:12090: checking for main in -lz > configure:12109: gcc -o conftest -g -O2 conftest.c -lz -lgif > -ljpeg >&5 > configure:12109: $? = 0 > configure:12118: result: yes > configure:12134: checking for XPROTO > configure:12141: $PKG_CONFIG --exists --print-errors "xproto" > configure:12144: $? = 0 > configure:12157: $PKG_CONFIG --exists --print-errors "xproto" > configure:12160: $? = 0 > configure:12197: result: yes > configure:12211: checking for XT > configure:12218: $PKG_CONFIG --exists --print-errors "xt" > configure:12221: $? = 0 > configure:12234: $PKG_CONFIG --exists --print-errors "xt" > configure:12237: $? = 0 > configure:12274: result: yes > configure:12288: checking for XP > configure:12295: $PKG_CONFIG --exists --print-errors "xp" > configure:12298: $? = 0 > configure:12311: $PKG_CONFIG --exists --print-errors "xp" > configure:12314: $? = 0 > configure:12351: result: yes > configure:12365: checking for X11 > configure:12372: $PKG_CONFIG --exists --print-errors "x11" > configure:12375: $? = 0 > configure:12388: $PKG_CONFIG --exists --print-errors "x11" > configure:12391: $? = 0 > configure:12428: result: yes > configure:12442: checking for XINERAMA > configure:12449: $PKG_CONFIG --exists --print-errors "xinerama" > configure:12452: $? = 0 > configure:12465: $PKG_CONFIG --exists --print-errors "xinerama" > configure:12468: $? = 0 > configure:12505: result: yes > configure:12522: checking for XRENDER > configure:12529: $PKG_CONFIG --exists --print-errors "xrender" > configure:12532: $? = 0 > configure:12545: $PKG_CONFIG --exists --print-errors "xrender" > configure:12548: $? = 0 > configure:12585: result: yes > configure:12596: checking for absolute java home install dir > configure:12610: result: > /xfs/staging/staging-build-hs/icedtea6/openjdk.build/j2sdk-image > configure:12711: checking for LIBPNG > configure:12718: $PKG_CONFIG --exists --print-errors "libpng" > configure:12721: $? = 0 > configure:12734: $PKG_CONFIG --exists --print-errors "libpng" > configure:12737: $? = 0 > configure:12774: result: yes > configure:12789: checking for XTST > configure:12796: $PKG_CONFIG --exists --print-errors "xtst" > configure:12799: $? = 0 > configure:12812: $PKG_CONFIG --exists --print-errors "xtst" > configure:12815: $? = 0 > configure:12852: result: yes > configure:12866: checking for FREETYPE2 > configure:12873: $PKG_CONFIG --exists --print-errors "freetype2" > configure:12876: $? = 0 > configure:12889: $PKG_CONFIG --exists --print-errors "freetype2" > configure:12892: $? = 0 > configure:12929: result: yes > configure:12946: checking for ALSA > configure:12953: $PKG_CONFIG --exists --print-errors "alsa" > configure:12956: $? = 0 > configure:12969: $PKG_CONFIG --exists --print-errors "alsa" > configure:12972: $? = 0 > configure:13009: result: yes > configure:13904: creating ./config.status > > ## ---------------------- ## > ## Running config.status. ## > ## ---------------------- ## > > This file was extended by icedtea6 config.status 1.13.0pre, which was > generated by GNU Autoconf 2.68. Invocation command line was > > CONFIG_FILES = > CONFIG_HEADERS = > CONFIG_LINKS = > CONFIG_COMMANDS = > $ ./config.status > > on f17 > > config.status:1062: creating Makefile > config.status:1062: creating jvm.cacao.cfg > config.status:1062: creating jvm.jamvm.cfg > config.status:1062: creating jvm.cfg > config.status:1062: creating ergo.c > config.status:1062: creating nss.cfg > config.status:1062: creating javac > config.status:1062: creating javap > config.status:1062: creating tz.properties > config.status:1062: creating pax-mark-vm > config.status:1062: creating jconsole.desktop > config.status:1062: creating policytool.desktop > config.status:1234: executing depfiles commands > > ## ---------------- ## > ## Cache variables. ## > ## ---------------- ## > > ac_cv_build=x86_64-unknown-linux-gnu > ac_cv_c_bigendian=no > ac_cv_c_compiler_gnu=yes > ac_cv_cxx_compiler_gnu=yes > ac_cv_env_ALSA_CFLAGS_set= > ac_cv_env_ALSA_CFLAGS_value= > ac_cv_env_ALSA_LIBS_set= > ac_cv_env_ALSA_LIBS_value= > ac_cv_env_CCC_set= > ac_cv_env_CCC_value= > ac_cv_env_CC_set= > ac_cv_env_CC_value= > ac_cv_env_CFLAGS_set= > ac_cv_env_CFLAGS_value= > ac_cv_env_CPPFLAGS_set= > ac_cv_env_CPPFLAGS_value= > ac_cv_env_CPP_set= > ac_cv_env_CPP_value= > ac_cv_env_CXXFLAGS_set= > ac_cv_env_CXXFLAGS_value= > ac_cv_env_CXX_set= > ac_cv_env_CXX_value= > ac_cv_env_FREETYPE2_CFLAGS_set= > ac_cv_env_FREETYPE2_CFLAGS_value= > ac_cv_env_FREETYPE2_LIBS_set= > ac_cv_env_FREETYPE2_LIBS_value= > ac_cv_env_LDFLAGS_set= > ac_cv_env_LDFLAGS_value= > ac_cv_env_LIBFFI_CFLAGS_set= > ac_cv_env_LIBFFI_CFLAGS_value= > ac_cv_env_LIBFFI_LIBS_set= > ac_cv_env_LIBFFI_LIBS_value= > ac_cv_env_LIBPNG_CFLAGS_set= > ac_cv_env_LIBPNG_CFLAGS_value= > ac_cv_env_LIBPNG_LIBS_set= > ac_cv_env_LIBPNG_LIBS_value= > ac_cv_env_LIBPULSE_CFLAGS_set= > ac_cv_env_LIBPULSE_CFLAGS_value= > ac_cv_env_LIBPULSE_LIBS_set= > ac_cv_env_LIBPULSE_LIBS_value= > ac_cv_env_LIBS_set= > ac_cv_env_LIBS_value= > ac_cv_env_NSS_CFLAGS_set= > ac_cv_env_NSS_CFLAGS_value= > ac_cv_env_NSS_LIBS_set= > ac_cv_env_NSS_LIBS_value= > ac_cv_env_PKG_CONFIG_LIBDIR_set= > ac_cv_env_PKG_CONFIG_LIBDIR_value= > ac_cv_env_PKG_CONFIG_PATH_set= > ac_cv_env_PKG_CONFIG_PATH_value= > ac_cv_env_PKG_CONFIG_set= > ac_cv_env_PKG_CONFIG_value= > ac_cv_env_X11_CFLAGS_set= > ac_cv_env_X11_CFLAGS_value= > ac_cv_env_X11_LIBS_set= > ac_cv_env_X11_LIBS_value= > ac_cv_env_XINERAMA_CFLAGS_set= > ac_cv_env_XINERAMA_CFLAGS_value= > ac_cv_env_XINERAMA_LIBS_set= > ac_cv_env_XINERAMA_LIBS_value= > ac_cv_env_XPROTO_CFLAGS_set= > ac_cv_env_XPROTO_CFLAGS_value= > ac_cv_env_XPROTO_LIBS_set= > ac_cv_env_XPROTO_LIBS_value= > ac_cv_env_XP_CFLAGS_set= > ac_cv_env_XP_CFLAGS_value= > ac_cv_env_XP_LIBS_set= > ac_cv_env_XP_LIBS_value= > ac_cv_env_XRENDER_CFLAGS_set= > ac_cv_env_XRENDER_CFLAGS_value= > ac_cv_env_XRENDER_LIBS_set= > ac_cv_env_XRENDER_LIBS_value= > ac_cv_env_XTST_CFLAGS_set= > ac_cv_env_XTST_CFLAGS_value= > ac_cv_env_XTST_LIBS_set= > ac_cv_env_XTST_LIBS_value= > ac_cv_env_XT_CFLAGS_set= > ac_cv_env_XT_CFLAGS_value= > ac_cv_env_XT_LIBS_set= > ac_cv_env_XT_LIBS_value= > ac_cv_env_build_alias_set= > ac_cv_env_build_alias_value= > ac_cv_env_host_alias_set= > ac_cv_env_host_alias_value= > ac_cv_env_target_alias_set= > ac_cv_env_target_alias_value= > ac_cv_header_X11_X_h=yes > ac_cv_header_cups_cups_h=yes > ac_cv_header_cups_ppd_h=yes > ac_cv_header_inttypes_h=yes > ac_cv_header_memory_h=yes > ac_cv_header_stdc=yes > ac_cv_header_stdint_h=yes > ac_cv_header_stdlib_h=yes > ac_cv_header_string_h=yes > ac_cv_header_strings_h=yes > ac_cv_header_sys_stat_h=yes > ac_cv_header_sys_types_h=yes > ac_cv_header_unistd_h=yes > ac_cv_host=x86_64-unknown-linux-gnu > ac_cv_lib_gif_main=yes > ac_cv_lib_jpeg_main=yes > ac_cv_lib_z_main=yes > ac_cv_objext=o > ac_cv_path_EGREP='/usr/bin/grep -E' > ac_cv_path_GREP=/usr/bin/grep > ac_cv_path_NATIVE2ASCII=/usr/bin/gnative2ascii > ac_cv_path_ac_pt_ANT=/usr/bin/ant > ac_cv_path_ac_pt_CHMOD=/usr/bin/chmod > ac_cv_path_ac_pt_CPIO=/usr/bin/cpio > ac_cv_path_ac_pt_FILE=/usr/bin/file > ac_cv_path_ac_pt_FIND=/usr/bin/find > ac_cv_path_ac_pt_GAWK=/usr/bin/gawk > ac_cv_path_ac_pt_GETCONF=/usr/bin/getconf > ac_cv_path_ac_pt_GZIP=/usr/bin/gzip > ac_cv_path_ac_pt_HG=/usr/bin/hg > ac_cv_path_ac_pt_LINUX32=/usr/bin/linux32 > ac_cv_path_ac_pt_MAKE=/usr/bin/make > ac_cv_path_ac_pt_PATCH=/usr/bin/patch > ac_cv_path_ac_pt_PKG_CONFIG=/usr/bin/pkg-config > ac_cv_path_ac_pt_SHA256SUM=/usr/bin/sha256sum > ac_cv_path_ac_pt_TAR=/usr/bin/tar > ac_cv_path_ac_pt_UNZIP=/usr/bin/unzip > ac_cv_path_ac_pt_WGET=/usr/bin/wget > ac_cv_path_ac_pt_XSLTPROC=/usr/bin/xsltproc > ac_cv_path_ac_pt_ZIP=/usr/bin/zip > ac_cv_path_install='/usr/bin/install -c' > ac_cv_path_mkdir=/usr/bin/mkdir > ac_cv_prog_AWK=gawk > ac_cv_prog_CPP='gcc -E' > ac_cv_prog_ac_ct_CC=gcc > ac_cv_prog_ac_ct_CXX=g++ > ac_cv_prog_ac_ct_FASTJAR=fastjar > ac_cv_prog_ac_ct_LDD=ldd > ac_cv_prog_cc_c89= > ac_cv_prog_cc_g=yes > ac_cv_prog_cxx_g=yes > ac_cv_prog_make_make_set=yes > am_cv_CC_dependencies_compiler_type=none > am_cv_CXX_dependencies_compiler_type=none > am_cv_prog_tar_pax=gnutar > it_cv_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG=yes > it_cv_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG=yes > it_cv_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE=no > it_cv_JAVAX_SECURITY_SASL_SASL_CREDENTIALS=yes > it_cv_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER=yes > it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT=yes > it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER=yes > it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT=yes > it_cv_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER=yes > it_cv_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS=yes > it_cv_ORBUTILSYSTEMEXCEPTION=yes > it_cv_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE=yes > it_cv_cacao=no > it_cv_cp39408_javah=no > it_cv_cp40188_javah=yes > it_cv_dtdtype=no > it_cv_ecj=yes > it_cv_hardlink_src=yes > it_cv_jdk_works=yes > it_cv_proc=8 > it_cv_reflink=yes > pkg_cv_ALSA_CFLAGS='-I/usr/include/alsa ' > pkg_cv_ALSA_LIBS='-lasound ' > pkg_cv_FREETYPE2_CFLAGS='-I/usr/include/freetype2 ' > pkg_cv_FREETYPE2_LIBS='-lfreetype ' > pkg_cv_LIBPNG_CFLAGS='-I/usr/include/libpng15 ' > pkg_cv_LIBPNG_LIBS='-lpng15 ' > pkg_cv_X11_CFLAGS=' ' > pkg_cv_X11_LIBS='-lX11 ' > pkg_cv_XINERAMA_CFLAGS=' ' > pkg_cv_XINERAMA_LIBS='-lXinerama ' > pkg_cv_XPROTO_CFLAGS=' ' > pkg_cv_XPROTO_LIBS=' ' > pkg_cv_XP_CFLAGS=' ' > pkg_cv_XP_LIBS='-lXp -lXau ' > pkg_cv_XRENDER_CFLAGS=' ' > pkg_cv_XRENDER_LIBS='-lXrender -lX11 ' > pkg_cv_XTST_CFLAGS=' ' > pkg_cv_XTST_LIBS='-lXtst ' > pkg_cv_XT_CFLAGS=' ' > pkg_cv_XT_LIBS='-lXt -lX11 ' > > ## ----------------- ## > ## Output variables. ## > ## ----------------- ## > > ABS_CLIENT_LIBJVM_SO='' > ABS_JAVA_HOME_DIR='/xfs/staging/staging-build-hs/icedtea6/openjdk.build/j2sdk-image' > ABS_SERVER_LIBJVM_SO='' > ACLOCAL='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > --run > aclocal-1.11' > ADD_CACAO_BUILD_FALSE='' > ADD_CACAO_BUILD_TRUE='#' > ADD_JAMVM_BUILD_FALSE='' > ADD_JAMVM_BUILD_TRUE='#' > ADD_SHARK_BUILD_FALSE='' > ADD_SHARK_BUILD_TRUE='#' > ADD_ZERO_BUILD_FALSE='' > ADD_ZERO_BUILD_TRUE='#' > ALSA_CFLAGS='-I/usr/include/alsa ' > ALSA_LIBS='-lasound ' > ALT_CACAO_SRC_DIR='not specified' > ALT_CACAO_SRC_ZIP='not specified' > ALT_HOTSPOT_SRC_ZIP='not specified' > ALT_JAF_DROP_ZIP='not specified' > ALT_JAMVM_SRC_ZIP='not specified' > ALT_JAR_CMD='not specified' > ALT_JAXP_DROP_ZIP='not specified' > ALT_JAXWS_DROP_ZIP='not specified' > ALT_OPENJDK_SRC_ZIP='not specified' > AMDEPBACKSLASH='\' > AMDEP_FALSE='#' > AMDEP_TRUE='' > AMTAR='$${TAR-tar}' > ANT='/usr/bin/ant' > ARCHFLAG='-m64' > ARCH_PREFIX='' > AUTOCONF='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > --run autoconf' > AUTOHEADER='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > --run autoheader' > AUTOMAKE='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > --run automake-1.11' > AWK='gawk' > BOOTSTRAPPING_FALSE='#' > BOOTSTRAPPING_TRUE='' > BUILD_ARCH_DIR='amd64' > BUILD_CACAO_FALSE='' > BUILD_CACAO_TRUE='#' > BUILD_JAMVM_FALSE='' > BUILD_JAMVM_TRUE='#' > BUILD_OS_DIR='linux' > CACAO_IMPORT_PATH='$(abs_top_builddir)/cacao/install' > CC='gcc' > CCDEPMODE='depmode=none' > CFLAGS='-g -O2' > CHMOD='/usr/bin/chmod' > CONFIGURE_ARGS=' '\''--with-parallel-jobs=8'\'' > '\''--disable-docs'\'' > '\''--with-jdk-home=/usr/lib/jvm/java-1.5.0-gcj'\''' > CP39408_JAVAH_FALSE='' > CP39408_JAVAH_TRUE='#' > CP40188_JAVAH_FALSE='#' > CP40188_JAVAH_TRUE='' > CPIO='/usr/bin/cpio' > CPP='gcc -E' > CPPFLAGS='' > CP_SUPPORTS_REFLINK_FALSE='#' > CP_SUPPORTS_REFLINK_TRUE='' > CROSS_TARGET_ARCH='x86_64' > CXX='g++' > CXXDEPMODE='depmode=none' > CXXFLAGS='-g -O2' > CYGPATH_W='echo' > DEFAULT_LIBDIR='' > DEFS='-DPACKAGE_NAME=\"icedtea6\" -DPACKAGE_TARNAME=\"icedtea6\" > -DPACKAGE_VERSION=\"1.13.0pre\" -DPACKAGE_STRING=\"icedtea6\ > 1.13.0pre\" -DPACKAGE_BUGREPORT=\"distro-pkg-dev at openjdk.java.net\" > -DPACKAGE_URL=\"\" -DPACKAGE=\"icedtea6\" -DVERSION=\"1.13.0pre\" > -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 > -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 > -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 > -DHAVE_UNISTD_H=1 -DHAVE_CUPS_CUPS_H=1 -DHAVE_CUPS_PPD_H=1 > -DHAVE_X11_X_H=1 -DHAVE_LIBJPEG=1 -DHAVE_LIBGIF=1 -DHAVE_LIBZ=1' > DEPDIR='.deps' > DISABLE_HOTSPOT_TESTS_FALSE='' > DISABLE_HOTSPOT_TESTS_TRUE='#' > DISABLE_JDK_TESTS_FALSE='' > DISABLE_JDK_TESTS_TRUE='#' > DISABLE_LANGTOOLS_TESTS_FALSE='' > DISABLE_LANGTOOLS_TESTS_TRUE='#' > DISABLE_OPTIMIZATIONS_FALSE='' > DISABLE_OPTIMIZATIONS_TRUE='#' > DISABLE_TESTS_FALSE='' > DISABLE_TESTS_TRUE='#' > DIST_ID='Custom build (Wed Mar 6 16:21:45 CET 2013)' > DIST_NAME='linux-gnu' > DOWNLOADING_FALSE='#' > DOWNLOADING_TRUE='' > DTDTYPE_QNAME_FALSE='' > DTDTYPE_QNAME_TRUE='#' > ECHO_C='' > ECHO_N='-n' > ECHO_T='' > ECJ='/usr/bin/ecj' > ECJ_JAR='/usr/share/java/eclipse-ecj.jar' > EGREP='/usr/bin/grep -E' > ENABLE_CACAO='no' > ENABLE_CACAO_FALSE='' > ENABLE_CACAO_TRUE='#' > ENABLE_CROSS_COMPILATION_FALSE='' > ENABLE_CROSS_COMPILATION_TRUE='#' > ENABLE_DOCS_FALSE='' > ENABLE_DOCS_TRUE='#' > ENABLE_JAMVM='no' > ENABLE_JAMVM_FALSE='' > ENABLE_JAMVM_TRUE='#' > ENABLE_NSS_FALSE='' > ENABLE_NSS_TRUE='#' > ENABLE_PULSE_JAVA_FALSE='' > ENABLE_PULSE_JAVA_TRUE='#' > ENABLE_SYSTEMTAP_FALSE='' > ENABLE_SYSTEMTAP_TRUE='#' > ENABLE_XRENDER_FALSE='#' > ENABLE_XRENDER_TRUE='' > EXEEXT='' > FASTJAR='fastjar' > FILE='/usr/bin/file' > FIND='/usr/bin/find' > FREETYPE2_CFLAGS='-I/usr/include/freetype2 ' > FREETYPE2_LIBS='-lfreetype ' > GAWK='/usr/bin/gawk' > GCC_OLD_FALSE='' > GCC_OLD_TRUE='#' > GCJ='no' > GETCONF='/usr/bin/getconf' > GREP='/usr/bin/grep' > GZIP='/usr/bin/gzip' > HAS_HOTSPOT_REVISION_FALSE='' > HAS_HOTSPOT_REVISION_TRUE='#' > HAS_ICEDTEA_REVISION_FALSE='#' > HAS_ICEDTEA_REVISION_TRUE='' > HAS_JDK_REVISION_FALSE='' > HAS_JDK_REVISION_TRUE='#' > HAS_PKGVERSION_FALSE='' > HAS_PKGVERSION_TRUE='#' > HG='/usr/bin/hg' > HGREV='' > HOTSPOT_REVISION='none' > HSBUILD='hs23' > ICEDTEA_REVISION='r9b60104392f1' > INSTALL_ARCH_DIR='amd64' > INSTALL_DATA='${INSTALL} -m 644' > INSTALL_PROGRAM='${INSTALL}' > INSTALL_SCRIPT='${INSTALL}' > INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' > JAR='/usr/lib/jvm/java-1.5.0-gcj/bin/jar' > JAR_ACCEPTS_STDIN_LIST='1' > JAR_KNOWS_ATFILE='1' > JAR_KNOWS_J_OPTIONS='1' > JAVA='/usr/lib/jvm/java-1.5.0-gcj/bin/java' > JAVAC='/usr/lib/jvm/java-1.5.0-gcj/bin/javac' > JAVAH='/usr/lib/jvm/java-1.5.0-gcj/bin/javah' > JDK_REVISION='none' > JRE_ARCH_DIR='amd64' > LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG_FALSE='#' > LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG_TRUE='' > LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG_FALSE='#' > LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG_TRUE='' > LACKS_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE_FALSE='' > LACKS_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE_TRUE='#' > LACKS_JAVAX_SECURITY_SASL_SASL_CREDENTIALS_FALSE='#' > LACKS_JAVAX_SECURITY_SASL_SASL_CREDENTIALS_TRUE='' > LACKS_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER_FALSE='#' > LACKS_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER_TRUE='' > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT_FALSE='#' > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT_TRUE='' > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER_FALSE='#' > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER_TRUE='' > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT_FALSE='#' > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT_TRUE='' > LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER_FALSE='#' > LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER_TRUE='' > LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS_FALSE='#' > LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS_TRUE='' > LACKS_ORBUTILSYSTEMEXCEPTION_FALSE='#' > LACKS_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE_FALSE='#' > LACKS_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE_TRUE='' > LACKS_ORBUTILSYSTEMEXCEPTION_TRUE='' > LDD='ldd' > LDFLAGS='' > LIBFFI_CFLAGS='' > LIBFFI_LIBS='' > LIBOBJS='' > LIBPNG_CFLAGS='-I/usr/include/libpng15 ' > LIBPNG_LIBS='-lpng15 ' > LIBPULSE_CFLAGS='' > LIBPULSE_LIBS='' > LIBS='-lz -lgif -ljpeg ' > LINUX32='/usr/bin/linux32' > LLVM_CFLAGS='' > LLVM_CONFIG='' > LLVM_LDFLAGS='' > LLVM_LIBS='' > LSB_RELEASE='' > LTLIBOBJS='' > MAKE='/usr/bin/make' > MAKEINFO='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > --run makeinfo' > MKDIR_P='/usr/bin/mkdir -p' > NATIVE2ASCII='/usr/bin/gnative2ascii' > NSS_CFLAGS='' > NSS_LIBDIR='' > NSS_LIBS='' > OBJEXT='o' > OPENJDK_BUILD_DIR='openjdk.build' > OPENJDK_SRC_DIR='/xfs/staging/staging-build-hs/icedtea6/openjdk' > OPENJDK_SRC_DIR_FOUND_FALSE='' > OPENJDK_SRC_DIR_FOUND_TRUE='#' > OPENJDK_SRC_DIR_HARDLINKABLE_FALSE='' > OPENJDK_SRC_DIR_HARDLINKABLE_TRUE='#' > OS_PATH='' > PACKAGE='icedtea6' > PACKAGE_BUGREPORT='distro-pkg-dev at openjdk.java.net' > PACKAGE_NAME='icedtea6' > PACKAGE_STRING='icedtea6 1.13.0pre' > PACKAGE_TARNAME='icedtea6' > PACKAGE_URL='' > PACKAGE_VERSION='1.13.0pre' > PARALLEL_JOBS='8' > PATCH='/usr/bin/patch' > PATH_SEPARATOR=':' > PAX_COMMAND='not specified' > PAX_COMMAND_ARGS='not specified' > PKGVERSION='none' > PKG_CONFIG='/usr/bin/pkg-config' > PKG_CONFIG_LIBDIR='' > PKG_CONFIG_PATH='' > RHINO_JAR='/usr/share/java/rhino.jar' > RMIC='/usr/lib/jvm/java-1.5.0-gcj/bin/rmic' > SET_MAKE='' > SHA256SUM='/usr/bin/sha256sum' > SHARK_BUILD_FALSE='' > SHARK_BUILD_TRUE='#' > SHELL='/bin/sh' > SRC_DIR_HARDLINKABLE_FALSE='#' > SRC_DIR_HARDLINKABLE_TRUE='' > STRIP='' > SYSTEM_ANT_DIR='/usr/share/ant' > SYSTEM_JDK_DIR='/usr/lib/jvm/java-1.5.0-gcj' > TAR='/usr/bin/tar' > TZDATA_DIR='/usr/share/javazi' > UNZIP='/usr/bin/unzip' > USE_ALT_CACAO_SRC_DIR_FALSE='' > USE_ALT_CACAO_SRC_DIR_TRUE='#' > USE_ALT_CACAO_SRC_ZIP_FALSE='' > USE_ALT_CACAO_SRC_ZIP_TRUE='#' > USE_ALT_HOTSPOT_SRC_ZIP_FALSE='' > USE_ALT_HOTSPOT_SRC_ZIP_TRUE='#' > USE_ALT_JAF_DROP_ZIP_FALSE='' > USE_ALT_JAF_DROP_ZIP_TRUE='#' > USE_ALT_JAMVM_SRC_ZIP_FALSE='' > USE_ALT_JAMVM_SRC_ZIP_TRUE='#' > USE_ALT_JAR_FALSE='' > USE_ALT_JAR_TRUE='#' > USE_ALT_JAXP_DROP_ZIP_FALSE='' > USE_ALT_JAXP_DROP_ZIP_TRUE='#' > USE_ALT_JAXWS_DROP_ZIP_FALSE='' > USE_ALT_JAXWS_DROP_ZIP_TRUE='#' > USE_ALT_OPENJDK_SRC_ZIP_FALSE='' > USE_ALT_OPENJDK_SRC_ZIP_TRUE='#' > USE_HG_FALSE='' > USE_HG_TRUE='#' > USE_SYSTEM_CACAO_FALSE='' > USE_SYSTEM_CACAO_TRUE='#' > USING_CACAO='no' > USING_CACAO_FALSE='' > USING_CACAO_TRUE='#' > USING_ECJ='yes' > VERSION='1.13.0pre' > WGET='/usr/bin/wget' > WITH_ALT_HSBUILD_FALSE='#' > WITH_ALT_HSBUILD_TRUE='' > WITH_HGREV_FALSE='' > WITH_HGREV_TRUE='#' > WITH_PAX_FALSE='' > WITH_PAX_TRUE='#' > WITH_RHINO_FALSE='#' > WITH_RHINO_TRUE='' > WITH_TZDATA_DIR_FALSE='#' > WITH_TZDATA_DIR_TRUE='' > X11_CFLAGS=' ' > X11_LIBS='-lX11 ' > XINERAMA_CFLAGS=' ' > XINERAMA_LIBS='-lXinerama ' > XPROTO_CFLAGS=' ' > XPROTO_LIBS=' ' > XP_CFLAGS=' ' > XP_LIBS='-lXp -lXau ' > XRENDER_CFLAGS=' ' > XRENDER_LIBS='-lXrender -lX11 ' > XSLTPROC='/usr/bin/xsltproc' > XTST_CFLAGS=' ' > XTST_LIBS='-lXtst ' > XT_CFLAGS=' ' > XT_LIBS='-lXt -lX11 ' > XVFB_RUN_CMD='' > ZERO_ARCHDEF='AMD64' > ZERO_BITSPERWORD='64' > ZERO_BUILD_FALSE='' > ZERO_BUILD_TRUE='#' > ZERO_ENDIANNESS='little' > ZERO_LIBARCH='amd64' > ZIP='/usr/bin/zip' > abs_top_builddir='/xfs/staging/staging-build-hs/icedtea6' > abs_top_srcdir='/xfs/staging/staging-build-hs/icedtea6' > ac_ct_CC='gcc' > ac_ct_CXX='g++' > ac_ct_FASTJAR='fastjar' > am__EXEEXT_FALSE='' > am__EXEEXT_TRUE='#' > am__fastdepCC_FALSE='' > am__fastdepCC_TRUE='#' > am__fastdepCXX_FALSE='' > am__fastdepCXX_TRUE='#' > am__include='include' > am__isrc='' > am__leading_dot='.' > am__nodep='_no' > am__quote='' > am__tar='tar --format=posix -chf - "$$tardir"' > am__untar='tar -xf -' > bindir='${exec_prefix}/bin' > build='x86_64-unknown-linux-gnu' > build_alias='' > build_cpu='x86_64' > build_os='linux-gnu' > build_vendor='unknown' > datadir='${datarootdir}' > datarootdir='${prefix}/share' > docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' > dvidir='${docdir}' > enable_downloading='yes' > exec_prefix='${prefix}' > host='x86_64-unknown-linux-gnu' > host_alias='' > host_cpu='x86_64' > host_os='linux-gnu' > host_vendor='unknown' > htmldir='${docdir}' > includedir='${prefix}/include' > infodir='${datarootdir}/info' > install_sh='${SHELL} > /xfs/staging/staging-build-hs/icedtea6/install-sh' > libdir='${exec_prefix}/lib' > libexecdir='${exec_prefix}/libexec' > localedir='${datarootdir}/locale' > localstatedir='${prefix}/var' > mandir='${datarootdir}/man' > mkdir_p='/usr/bin/mkdir -p' > oldincludedir='/usr/include' > pdfdir='${docdir}' > prefix='bootstrap' > program_transform_name='s,x,x,' > psdir='${docdir}' > sbindir='${exec_prefix}/sbin' > sharedstatedir='${prefix}/com' > sysconfdir='${prefix}/etc' > target_alias='' > > ## ----------- ## > ## confdefs.h. ## > ## ----------- ## > > /* confdefs.h */ > #define PACKAGE_NAME "icedtea6" > #define PACKAGE_TARNAME "icedtea6" > #define PACKAGE_VERSION "1.13.0pre" > #define PACKAGE_STRING "icedtea6 1.13.0pre" > #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > #define PACKAGE_URL "" > #define PACKAGE "icedtea6" > #define VERSION "1.13.0pre" > #define STDC_HEADERS 1 > #define HAVE_SYS_TYPES_H 1 > #define HAVE_SYS_STAT_H 1 > #define HAVE_STDLIB_H 1 > #define HAVE_STRING_H 1 > #define HAVE_MEMORY_H 1 > #define HAVE_STRINGS_H 1 > #define HAVE_INTTYPES_H 1 > #define HAVE_STDINT_H 1 > #define HAVE_UNISTD_H 1 > #define HAVE_CUPS_CUPS_H 1 > #define HAVE_CUPS_PPD_H 1 > #define HAVE_X11_X_H 1 > #define HAVE_LIBJPEG 1 > #define HAVE_LIBGIF 1 > #define HAVE_LIBZ 1 > > configure: exit 0 > Thanks Stefan. I can't see anything obviously wrong in the method detection, so it probably is just a case of ecj no longer dragging in that file. I'll add an explicit check and you can let me know if it fixes things :-) Thanks, -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From bugzilla-daemon at icedtea.classpath.org Wed Mar 6 10:41:50 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 06 Mar 2013 18:41:50 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #9 from Andrew John Hughes --- Yeah, I've noticed that when fixing other applications that use giflib. I'll put a fix in the next release. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/3d686c25/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 6 10:50:16 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 06 Mar 2013 18:50:16 +0000 Subject: [Bug 1336] New: [IcedTea6] Bootstrap failure on Fedora 17/18 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1336 Bug ID: 1336 Summary: [IcedTea6] Bootstrap failure on Fedora 17/18 Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: x86_64 OS: Linux Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org compile: [javac] Compiling 2545 source files to /home/sr/staging/staging-build/icedtea6/openjdk.build-ecj/jaxws/build/classes [javac] ---------- [javac] 1. ERROR in /xfs/staging/staging-build/icedtea6/openjdk-ecj/jdk/src/share/classes/com/sun/net/httpserver/HttpsConfigurator.java (at line 112) [javac] params.setSSLParameters (getSSLContext().getDefaultSSLParameters()); [javac] ^^^^^^^^^^^^^^^^^^^^^^^ [javac] The method getDefaultSSLParameters() is undefined for the type SSLContext [javac] ---------- [javac] ---------- [javac] 2. ERROR in /xfs/staging/staging-build/icedtea6/openjdk-ecj/jdk/src/share/classes/sun/net/httpserver/SSLStreams.java (at line 82) [javac] engine.setSSLParameters (sslParams); [javac] ^^^^^^^^^^^^^^^^ [javac] The method setSSLParameters(SSLParameters) is undefined for the type SSLEngine [javac] ---------- [javac] 2 problems (2 errors) BUILD FAILED /xfs/staging/staging-build/icedtea6/openjdk-ecj/jaxws/build.xml:136: Compile failed; see the compiler error output for details. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/3585af77/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 6 10:51:50 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 06 Mar 2013 18:51:50 +0000 Subject: [Bug 1336] [IcedTea6] Bootstrap failure on Fedora 17/18 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1336 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Hardware|x86_64 |all OS|Linux |All --- Comment #1 from Andrew John Hughes --- http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-March/022128.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/8e28ff48/attachment.html From andrew at icedtea.classpath.org Wed Mar 6 11:22:56 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 06 Mar 2013 19:22:56 +0000 Subject: /hg/icedtea6: 2 new changesets Message-ID: changeset ed710bbd6305 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ed710bbd6305 author: Andrew John Hughes date: Wed Feb 20 13:11:53 2013 +1100 Add release notes for 1.11.8 & 1.12.3. 2013-02-20 Andrew John Hughes * NEWS: Add 1.11.8 & 1.12.3 release notes. changeset 9389cc43b7b8 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=9389cc43b7b8 author: Andrew John Hughes date: Wed Mar 06 19:22:19 2013 +0000 Add 2013/02/19 security patches. 2013-02-15 Andrew John Hughes * Makefile.am: (SECURITY_PATCHES): Add latest security patches. * patches/security/20130219/8006446.patch, * patches/security/20130219/8006777.patch, * patches/security/20130219/8007688.patch: New patches for next security update. diffstat: ChangeLog | 14 + Makefile.am | 5 +- NEWS | 25 + patches/security/20130219/8006446.patch | 395 +++++++++++ patches/security/20130219/8006777.patch | 1036 +++++++++++++++++++++++++++++++ patches/security/20130219/8007688.patch | 130 +++ 6 files changed, 1604 insertions(+), 1 deletions(-) diffs (truncated from 1644 to 500 lines): diff -r 9b60104392f1 -r 9389cc43b7b8 ChangeLog --- a/ChangeLog Sun Feb 17 16:27:54 2013 +0000 +++ b/ChangeLog Wed Mar 06 19:22:19 2013 +0000 @@ -1,3 +1,17 @@ +2013-02-15 Andrew John Hughes + + * Makefile.am: + (SECURITY_PATCHES): Add latest security patches. + * patches/security/20130219/8006446.patch, + * patches/security/20130219/8006777.patch, + * patches/security/20130219/8007688.patch: + New patches for next security update. + +2013-02-20 Andrew John Hughes + + * NEWS: + Add 1.11.8 & 1.12.3 release notes. + 2013-02-17 Andrew John Hughes * .hgignore: Fix so the cacao patches directory diff -r 9b60104392f1 -r 9389cc43b7b8 Makefile.am --- a/Makefile.am Sun Feb 17 16:27:54 2013 +0000 +++ b/Makefile.am Wed Mar 06 19:22:19 2013 +0000 @@ -273,7 +273,10 @@ patches/security/20130201/8001242.patch \ patches/security/20130201/8001972.patch \ patches/security/20130201/8002325.patch \ - patches/security/20130201/8001235.patch + patches/security/20130201/8001235.patch \ + patches/security/20130219/8006446.patch \ + patches/security/20130219/8006777.patch \ + patches/security/20130219/8007688.patch if !WITH_ALT_HSBUILD SECURITY_PATCHES += \ diff -r 9b60104392f1 -r 9389cc43b7b8 NEWS --- a/NEWS Sun Feb 17 16:27:54 2013 +0000 +++ b/NEWS Wed Mar 06 19:22:19 2013 +0000 @@ -17,6 +17,31 @@ * Bug fixes - PR1318: Fix automatic enabling of the Zero build on non-JIT architectures which don't use CACAO or JamVM. +New in release 1.12.3 (2013-02-19): + +* Security fixes + - S8006446, CVE-2013-1486: Restrict MBeanServer access + - S8006777, CVE-2013-0169: Improve TLS handling of invalid messages + - S8007688: Blacklist known bad certificate +* Backports + - S8007393: Possible race condition after JDK-6664509 + - S8007611: logging behavior in applet changed +* Bug fixes + - PR1319: Support GIF lib v5. + +New in release 1.11.8 (2013-02-19): + +* Security fixes + - S8006446, CVE-2013-1486: Restrict MBeanServer access + - S8006777, CVE-2013-0169: Improve TLS handling of invalid messages + - S8007688: Blacklist known bad certificate +* Backports + - S7123519: problems with certification path + - S8007393: Possible race condition after JDK-6664509 + - S8007611: logging behavior in applet changed +* Bug fixes + - PR1319: Support GIF lib v5. + New in release 1.12.2 (2013-02-11): * Backports diff -r 9b60104392f1 -r 9389cc43b7b8 patches/security/20130219/8006446.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/security/20130219/8006446.patch Wed Mar 06 19:22:19 2013 +0000 @@ -0,0 +1,395 @@ +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport.java openjdk/jdk/src/share/classes/com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport.java +--- openjdk.orig/jdk/src/share/classes/com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport.java 2011-11-14 22:11:44.000000000 +0000 ++++ openjdk/jdk/src/share/classes/com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport.java 2013-02-15 03:40:40.511587149 +0000 +@@ -36,6 +36,7 @@ + + import javax.management.ObjectName; + import javax.management.loading.PrivateClassLoader; ++import sun.reflect.misc.ReflectUtil; + + /** + * This class keeps the list of Class Loaders registered in the MBean Server. +@@ -192,6 +193,7 @@ + final ClassLoader without, + final ClassLoader stop) + throws ClassNotFoundException { ++ ReflectUtil.checkPackageAccess(className); + final int size = list.length; + for(int i=0; i findConstructor(Class c, Class[] params) { + try { +- return c.getConstructor(params); ++ return ConstructorUtil.getConstructor(c, params); + } catch (Exception e) { + return null; + } +@@ -716,4 +728,18 @@ + char.class, boolean.class}) + primitiveClasses.put(c.getName(), c); + } ++ ++ private static void checkMBeanPermission(Class clazz, ++ String member, ++ ObjectName objectName, ++ String actions) { ++ SecurityManager sm = System.getSecurityManager(); ++ if (clazz != null && sm != null) { ++ Permission perm = new MBeanPermission(clazz.getName(), ++ member, ++ objectName, ++ actions); ++ sm.checkPermission(perm); ++ } ++ } + } +diff -Nru openjdk.orig/jdk/src/share/classes/com/sun/jmx/mbeanserver/MBeanSupport.java openjdk/jdk/src/share/classes/com/sun/jmx/mbeanserver/MBeanSupport.java +--- openjdk.orig/jdk/src/share/classes/com/sun/jmx/mbeanserver/MBeanSupport.java 2011-11-14 22:11:44.000000000 +0000 ++++ openjdk/jdk/src/share/classes/com/sun/jmx/mbeanserver/MBeanSupport.java 2013-02-15 03:40:40.511587149 +0000 +@@ -38,6 +38,7 @@ + import javax.management.NotCompliantMBeanException; + import javax.management.ObjectName; + import javax.management.ReflectionException; ++import sun.reflect.misc.ReflectUtil; + + /** + * Base class for MBeans. There is one instance of this class for +@@ -131,6 +132,7 @@ + " is not an instance of " + mbeanInterface.getName(); + throw new NotCompliantMBeanException(msg); + } ++ ReflectUtil.checkPackageAccess(mbeanInterface); + this.resource = resource; + MBeanIntrospector introspector = getMBeanIntrospector(); + this.perInterface = introspector.getPerInterface(mbeanInterface); +diff -Nru openjdk.orig/jdk/src/share/classes/sun/management/LockDataConverter.java openjdk/jdk/src/share/classes/sun/management/LockDataConverter.java +--- openjdk.orig/jdk/src/share/classes/sun/management/LockDataConverter.java 2011-11-14 22:12:00.000000000 +0000 ++++ openjdk/jdk/src/share/classes/sun/management/LockDataConverter.java 2013-02-15 03:40:40.511587149 +0000 +@@ -27,6 +27,8 @@ + + import java.lang.management.LockInfo; + import java.lang.management.ThreadInfo; ++import java.security.AccessController; ++import java.security.PrivilegedAction; + import javax.management.Attribute; + import javax.management.StandardMBean; + import javax.management.openmbean.CompositeData; +@@ -40,13 +42,13 @@ + private LockInfo lockInfo; + private LockInfo[] lockedSyncs; + +- LockDataConverter() { ++ private LockDataConverter() { + super(LockDataConverterMXBean.class, true); + this.lockInfo = null; + this.lockedSyncs = null; + } + +- LockDataConverter(ThreadInfo ti) { ++ private LockDataConverter(ThreadInfo ti) { + super(LockDataConverterMXBean.class, true); + this.lockInfo = ti.getLockInfo(); + this.lockedSyncs = ti.getLockedSynchronizers(); +@@ -104,8 +106,24 @@ + } + + static CompositeData toLockInfoCompositeData(LockInfo l) { +- LockDataConverter ldc = new LockDataConverter(); ++ LockDataConverter ldc = newLockDataConverter(); + ldc.setLockInfo(l); + return ldc.toLockInfoCompositeData(); + } ++ ++ static LockDataConverter newLockDataConverter() { ++ return AccessController.doPrivileged(new PrivilegedAction() { ++ public LockDataConverter run() { ++ return new LockDataConverter(); ++ } ++ }); ++ } ++ ++ static LockDataConverter newLockDataConverter(final ThreadInfo ti) { ++ LockDataConverter result = newLockDataConverter(); ++ result.lockInfo = ti.getLockInfo(); ++ result.lockedSyncs = ti.getLockedSynchronizers(); ++ return result; ++ } + } ++ +diff -Nru openjdk.orig/jdk/src/share/classes/sun/management/ThreadInfoCompositeData.java openjdk/jdk/src/share/classes/sun/management/ThreadInfoCompositeData.java +--- openjdk.orig/jdk/src/share/classes/sun/management/ThreadInfoCompositeData.java 2011-11-14 22:12:01.000000000 +0000 ++++ openjdk/jdk/src/share/classes/sun/management/ThreadInfoCompositeData.java 2013-02-15 03:40:40.511587149 +0000 +@@ -85,7 +85,7 @@ + } + + // Convert MonitorInfo[] and LockInfo[] to CompositeData[] +- LockDataConverter converter = new LockDataConverter(threadInfo); ++ LockDataConverter converter = LockDataConverter.newLockDataConverter(threadInfo); + CompositeData lockInfoData = converter.toLockInfoCompositeData(); + CompositeData[] lockedSyncsData = converter.toLockedSynchronizersCompositeData(); + +@@ -315,7 +315,7 @@ + + // 6.0 new attributes + public LockInfo lockInfo() { +- LockDataConverter converter = new LockDataConverter(); ++ LockDataConverter converter = LockDataConverter.newLockDataConverter(); + CompositeData lockInfoData = (CompositeData) cdata.get(LOCK_INFO); + return converter.toLockInfo(lockInfoData); + } +@@ -336,7 +336,7 @@ + } + + public LockInfo[] lockedSynchronizers() { +- LockDataConverter converter = new LockDataConverter(); ++ LockDataConverter converter = LockDataConverter.newLockDataConverter(); + CompositeData[] lockedSyncsData = + (CompositeData[]) cdata.get(LOCKED_SYNCS); + +diff -Nru openjdk.orig/jdk/src/share/lib/security/java.security openjdk/jdk/src/share/lib/security/java.security +--- openjdk.orig/jdk/src/share/lib/security/java.security 2013-02-15 03:39:56.922892783 +0000 ++++ openjdk/jdk/src/share/lib/security/java.security 2013-02-15 03:40:40.511587149 +0000 +@@ -131,8 +131,7 @@ + com.sun.xml.internal.,\ + com.sun.imageio.,\ + com.sun.istack.internal.,\ +- com.sun.jmx.defaults.,\ +- com.sun.jmx.remote.util. ++ com.sun.jmx. + + # + # List of comma-separated packages that start with or equal this string +@@ -148,8 +147,7 @@ + com.sun.xml.internal.,\ + com.sun.imageio.,\ + com.sun.istack.internal.,\ +- com.sun.jmx.defaults.,\ +- com.sun.jmx.remote.util. ++ com.sun.jmx. + + # + # Determines whether this properties file can be appended to +diff -Nru openjdk.orig/jdk/src/share/lib/security/java.security-solaris openjdk/jdk/src/share/lib/security/java.security-solaris +--- openjdk.orig/jdk/src/share/lib/security/java.security-solaris 2013-02-15 03:39:56.902892466 +0000 ++++ openjdk/jdk/src/share/lib/security/java.security-solaris 2013-02-15 03:41:36.996489851 +0000 +@@ -131,6 +131,8 @@ + package.access=sun.,\ + com.sun.xml.internal.,\ + com.sun.imageio. ++ com.sun.istack.internal.,\ ++ com.sun.jmx. + + # + # List of comma-separated packages that start with or equal this string +@@ -145,6 +147,8 @@ + package.definition=sun.,\ + com.sun.xml.internal.,\ + com.sun.imageio. ++ com.sun.istack.internal.,\ ++ com.sun.jmx. + + # + # Determines whether this properties file can be appended to +diff -Nru openjdk.orig/jdk/src/share/lib/security/java.security-windows openjdk/jdk/src/share/lib/security/java.security-windows +--- openjdk.orig/jdk/src/share/lib/security/java.security-windows 2013-02-15 03:39:56.902892466 +0000 ++++ openjdk/jdk/src/share/lib/security/java.security-windows 2013-02-15 03:42:05.304943135 +0000 +@@ -131,6 +131,8 @@ + package.access=sun.,\ + com.sun.xml.internal.,\ + com.sun.imageio. ++ com.sun.istack.internal.,\ ++ com.sun.jmx. + + # + # List of comma-separated packages that start with or equal this string +@@ -145,6 +147,8 @@ + package.definition=sun.,\ + com.sun.xml.internal.,\ + com.sun.imageio. ++ com.sun.istack.internal.,\ ++ com.sun.jmx. + + # + # Determines whether this properties file can be appended to +diff -Nru openjdk.orig/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation2Test.java openjdk/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation2Test.java +--- openjdk.orig/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation2Test.java 2011-11-14 22:12:28.000000000 +0000 ++++ openjdk/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation2Test.java 2013-02-15 03:40:40.511587149 +0000 +@@ -119,9 +119,6 @@ + System.out.println("Create SimpleStandard MBean"); + SimpleStandard s = new SimpleStandard("monitorRole"); + mbs.registerMBean(s, new ObjectName("MBeans:type=SimpleStandard")); +- // Set Security Manager +- // +- System.setSecurityManager(new SecurityManager()); + // Create Properties containing the username/password entries + // + Properties props = new Properties(); +@@ -132,6 +129,9 @@ + HashMap env = new HashMap(); + env.put("jmx.remote.authenticator", + new JMXPluggableAuthenticator(props)); ++ // Set Security Manager ++ // ++ System.setSecurityManager(new SecurityManager()); + // Create an RMI connector server + // + System.out.println("Create an RMI connector server"); +diff -Nru openjdk.orig/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation3Test.java openjdk/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation3Test.java +--- openjdk.orig/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation3Test.java 2011-11-14 22:12:28.000000000 +0000 ++++ openjdk/jdk/test/javax/management/remote/mandatory/subjectDelegation/SubjectDelegation3Test.java 2013-02-15 03:40:40.511587149 +0000 +@@ -120,9 +120,6 @@ + System.out.println("Create SimpleStandard MBean"); + SimpleStandard s = new SimpleStandard("delegate"); + mbs.registerMBean(s, new ObjectName("MBeans:type=SimpleStandard")); +- // Set Security Manager +- // +- System.setSecurityManager(new SecurityManager()); + // Create Properties containing the username/password entries + // + Properties props = new Properties(); +@@ -133,6 +130,9 @@ + HashMap env = new HashMap(); + env.put("jmx.remote.authenticator", + new JMXPluggableAuthenticator(props)); ++ // Set Security Manager ++ // ++ System.setSecurityManager(new SecurityManager()); + // Create an RMI connector server + // + System.out.println("Create an RMI connector server"); diff -r 9b60104392f1 -r 9389cc43b7b8 patches/security/20130219/8006777.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/security/20130219/8006777.patch Wed Mar 06 19:22:19 2013 +0000 @@ -0,0 +1,1036 @@ +# HG changeset patch +# User coffeys +# Date 1360882104 0 +# Node ID 85b3b034fdecdc94f082efa8d74e014366502deb +# Parent 617e68a3948824283f15c36fcd8cf264c1dd0a99 +8006777: Improve TLS handling of invalid messages +Reviewed-by: wetmore + +diff --git a/src/share/classes/sun/security/ssl/CipherBox.java b/src/share/classes/sun/security/ssl/CipherBox.java +--- openjdk/jdk/src/share/classes/sun/security/ssl/CipherBox.java ++++ openjdk/jdk/src/share/classes/sun/security/ssl/CipherBox.java +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1996, 2011, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1996, 2013, 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 +@@ -244,7 +244,8 @@ final class CipherBox { + * Decrypts a block of data, returning the size of the + * resulting block if padding was required. + */ +- int decrypt(byte[] buf, int offset, int len) throws BadPaddingException { ++ int decrypt(byte[] buf, int offset, int len, ++ int tagLen) throws BadPaddingException { + if (cipher == null) { From adomurad at redhat.com Wed Mar 6 12:35:15 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 06 Mar 2013 15:35:15 -0500 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "function parameters" tests In-Reply-To: <51376566.2040202@redhat.com> References: <51376566.2040202@redhat.com> Message-ID: <5137A883.504@redhat.com> On 03/06/2013 10:48 AM, Jana Fabrikova wrote: > Hello, > > please see the attached patch of new reproducer for J->JS "calling JS > function with various parameters from J". > > Several of the testcases in the patch have commented annotations > KnownToFailInBrowser, (which i have implemented but is not included yet.) Can you send a summary of the test failures to the mailing list please ? The differing output would be useful. Thank you! > > thanks for any comments, > Jana > > 2013-03-06 Jana Fabrikova > > * > /tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java: > adding 19 testcases based on the interactive Liveconnect JS->Java > function parameters tests > > * /tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java: > the applet that calls JS function > > * > /tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js: > auxiliary JavaScript code > > * > /tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp: > jnlp file for displaying applet in the html page > > * > /tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html: > the html page where the applet calling JS function is embedded This could definitely use a clearer name ... I had a long pause where I didn't notice the different between 'JSToJ' and 'JToJS'. I was quite confused, thinking you rewrote an already OK'd patch. Perhaps just JavascriptFunctionParam is better? > diff --git > a/tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html b/tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html > @@ -0,0 +1,27 @@ > + > + > + > + Java JavaScript LiveConnect - Function Parameters > + > + > + > + > + > + > + > +

The JToJSFuncParam html page

> + > + id="jtojsFuncParamApplet" MAYSCRIPT> > + > + > + > + > + > + > + > diff --git > a/tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js > b/tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js > new file mode 100644 > --- /dev/null > +++ b/tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js > @@ -0,0 +1,19 @@ > +function JJSParameterTypeFunc(type_parameter,callid) { IMO we don't need callid, we only need to have something like: function test_types(obj, string_representation) { applet.printOut( typeof(obj) + " type from Java object" ); var eval_obj = eval(string_representation); applet.printOut( typeof(eval_obj) + " type from Javascript eval object" ); } And then all the strings can be passed from Java as such: private void passToJavascript(Object obj, String repr){ window.call(jsFunctionName, new Object[]{ obj, repr }); } private void passToJavascript(Object obj){ passToJavascript(obj, obj.toString()); } > + var str = "Call with "+type_parameter.toString() + ":" + > typeof(type_parameter) + " from " + callid; > + applet.printOut(str); > +} > + > +function doJJSFuncParamTests(){ > + > + var urlArgs = document.URL.split("?"); > + var testParams = urlArgs[1].split(";"); > + var func = testParams[0]; > + var value = eval(decodeURIComponent(testParams[1])); > + > + eval('applet.'+func+'()'); Would applet[func]() work, not needing eval ? (not entirely sure) > + > + JJSParameterTypeFunc(value,"JS"); > + > + applet.printOut("afterTests"); > +} > + > diff --git > a/tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp > b/tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp > @@ -0,0 +1,23 @@ > + > + > + > + > + Java to JavaScript LiveConnect - FuncParam > + IcedTea > + href="http://icedtea.classpath.org/wiki/IcedTea-Web#Testing_IcedTea-Web"/> > + LiveConnect - tests for parameter conversion > between Java and JavaScript. > + > + > + > + + href="http://java.sun.com/products/autodl/j2se"/> > + > + > + > + + name="J to JS FuncParam" > + main-class="JToJSFuncParam" > + width="1000" > + height="100"> > + > + > diff --git > a/tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java > b/tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java > new file mode 100644 > --- /dev/null > +++ b/tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java > @@ -0,0 +1,137 @@ > +import java.applet.Applet; > +import netscape.javascript.JSObject; > + > +public class JToJSFuncParam extends Applet { > + > + public DummyObject dummyObject = new DummyObject("DummyObject1"); > + private JSObject window; > + > + private final String jsFunctionName = "JJSParameterTypeFunc"; > + > + public void init() { > + window = JSObject.getWindow(this); > + String initStr = "JToJSFuncParam applet initialized."; > + System.out.println(initStr); > + } > + > + //methods for testing calling JavaScript function with different > parameters > + public void jjsCallintParam(){ > + int i = 1; > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + public void jjsCalldoubleParam(){ > + double d = 1.1; > + window.call(jsFunctionName, new Object[]{ d, "J" }); > + } > + > + public void jjsCallfloatParam(){ > + float f = 1.5f; > + window.call(jsFunctionName, new Object[]{ f, "J" }); > + } > + > + public void jjsCalllongParam(){ > + long l = 10000; > + window.call(jsFunctionName, new Object[]{ l, "J" }); > + } > + > + public void jjsCallshortParam(){ > + short s = 1; > + window.call(jsFunctionName, new Object[]{ s, "J" }); > + } > + > + public void jjsCallbyteParam(){ > + byte b = 1; > + window.call(jsFunctionName, new Object[]{ b, "J" }); > + } > + > + public void jjsCallcharParam(){ > + char c = 'a'; > + window.call(jsFunctionName, new Object[]{ c, "J" }); > + } > + > + public void jjsCallbooleanParam(){ > + boolean b = true; > + window.call(jsFunctionName, new Object[]{ b, "J" }); > + } > + > + public void jjsCallIntegerParam(){ > + Integer i = new Integer(1); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallDoubleParam(){ > + Double i = new Double(1.5); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallFloatParam(){ > + Float i = new Float(1.5); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallLongParam(){ > + Long i = new Long(10000); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallShortParam(){ > + Short i = new Short((short)1); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallByteParam(){ > + Byte i = new Byte((byte)1); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallBooleanParam(){ > + Boolean i = new Boolean(true); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallCharacterParam(){ > + Character i = new Character('a'); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallStringParam(){ > + String i = "teststring"; > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallDummyObjectParam(){ > + DummyObject i = new DummyObject("dummy1"); > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + public void jjsCallJSObjectParam(){ > + JSObject i = window; > + window.call(jsFunctionName, new Object[]{ i, "J" }); > + } > + > + // auxiliary methods and class: > + public void printOut(String s) { > + System.out.println(s); > + } > + > + public class DummyObject { > + private String str; > + > + public DummyObject(String s) { > + this.str = s; > + } > + > + public void setStr(String s) { > + this.str = s; > + } > + > + public String toString() { > + return str; > + } > + } > + > + public DummyObject getNewDummyObject(String s){ > + return new DummyObject(s); > + } > + > +} > diff --git > a/tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java > b/tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java > @@ -0,0 +1,225 @@ > +/* JToJSFuncParamTest.java > +Copyright (C) 2012 Red Hat, Inc. > + > +This file is part of IcedTea. > + > +IcedTea is free software; you can redistribute it and/or > +modify it under the terms of the GNU General Public License as > published by > +the Free Software Foundation, version 2. > + > +IcedTea is distributed in the hope that it will be useful, > +but WITHOUT ANY WARRANTY; without even the implied warranty of > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +General Public License for more details. > + > +You should have received a copy of the GNU General Public License > +along with IcedTea; see the file COPYING. If not, write to > +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > +02110-1301 USA. > + > +Linking this library statically or dynamically with other modules is > +making a combined work based on this library. Thus, the terms and > +conditions of the GNU General Public License cover the whole > +combination. > + > +As a special exception, the copyright holders of this library give you > +permission to link this library with independent modules to produce an > +executable, regardless of the license terms of these independent > +modules, and to copy and distribute the resulting executable under > +terms of your choice, provided that you also meet, for each linked > +independent module, the terms and conditions of the license of that > +module. An independent module is a module which is not derived from > +or based on this library. If you modify this library, you may extend > +this exception to your version of the library, but you are not > +obligated to do so. If you do not wish to do so, delete this > +exception statement from your version. > + */ > + > +import net.sourceforge.jnlp.ProcessResult; > +import net.sourceforge.jnlp.ServerAccess; > +import net.sourceforge.jnlp.browsertesting.BrowserTest; > +import net.sourceforge.jnlp.browsertesting.Browsers; > +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; > +import net.sourceforge.jnlp.annotations.NeedsDisplay; > +import net.sourceforge.jnlp.annotations.TestInBrowsers; > +//import net.sourceforge.jnlp.annotations.KnownToFailInBrowsers; > +import org.junit.Assert; > + > +import org.junit.Test; > + > +public class JToJSFuncParamTest extends BrowserTest { > + > + private final String initStr = "JToJSFuncParam applet initialized."; > + private final String afterStr = "afterTests"; > + private final String globStart = "Call with "; > + private final String globEnd = " from JS"; > + private final String jEnd = " from J"; > + > + private class CountingClosingListenerImpl extends > CountingClosingListener { > + > + @Override > + protected boolean isAlowedToFinish(String s) { > + return (s.contains(initStr) && s.contains(afterStr)); > + } > + } > + > + private void evaluateStdoutContents(ProcessResult pr) { > + // Assert that the applet was initialized. > + Assert.assertTrue("JToJSFuncParamTest stdout should contain " > + initStr + " but it didnt.", pr.stdout.contains(initStr)); > + > + // Assert that the results of two calls of js func are the same > + > + int gs = pr.stdout.indexOf(globStart); > + int ge = pr.stdout.indexOf(globEnd); > + int je = pr.stdout.indexOf(jEnd); > + int jss = je + jEnd.length() + 1; > + > + String javaOutput = pr.stdout.substring(gs, je); > + String jsOutput = pr.stdout.substring(jss, ge); > + > + Assert.assertTrue("JToJSFuncParam: the J and JS outputs are > not equal!", javaOutput.equals(jsOutput)); > + } > + > + private void javaToJSFuncParamTest(String funcStr, String > valueStr) throws Exception { > + > + String strURL = "/JToJSFuncParam.html?" + funcStr + ";" + > valueStr; > + ProcessResult pr = server.executeBrowser(strURL, new > CountingClosingListenerImpl(), new CountingClosingListenerImpl()); > + evaluateStdoutContents(pr); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_int_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallintParam", "1"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_double_Test() throws Exception { > + javaToJSFuncParamTest("jjsCalldoubleParam", "1.1"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_float_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallfloatParam", "1.5"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_long_Test() throws Exception { > + javaToJSFuncParamTest("jjsCalllongParam", "10000"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_short_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallshortParam", "1"); > + } > + > > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_byte_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallbyteParam", "1"); > + } > + > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_char_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallcharParam", "97"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_boolean_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallbooleanParam", "true"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_Integer_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallIntegerParam", "1"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_Double_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallDoubleParam", "1.5"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_Float_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallFloatParam", "1.5"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_Long_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallLongParam", "10000"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_Short_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallShortParam", "1"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_Byte_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallByteParam", "1"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_Boolean_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallBooleanParam", "true"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_Character_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallCharacterParam", "97"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_String_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallStringParam", "\"teststring\""); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncParam_DummyObject_Test() throws > Exception { > + javaToJSFuncParamTest("jjsCallDummyObjectParam", > "applet.getNewDummyObject(\"dummy1\")"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + //@KnownToFailInBrowsers(failsIn={Browsers.googleChrome, > Browsers.chromiumBrowser}) > + public void AppletJToJSFuncParam_JSObject_Test() throws Exception { > + javaToJSFuncParamTest("jjsCallJSObjectParam", "window"); I would say this more tests if we pass the window > + } > + > +} Looks good overall! Happy hacking, -Adam From bugzilla-daemon at icedtea.classpath.org Wed Mar 6 14:04:52 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 06 Mar 2013 22:04:52 +0000 Subject: [Bug 1337] New: Java/javac crash with SIGFPE Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1337 Bug ID: 1337 Summary: Java/javac crash with SIGFPE Classification: Unclassified Product: IcedTea Version: unspecified Hardware: x86_64 OS: Linux Status: NEW Severity: blocker Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: lcdadmin at lcd.uregina.ca CC: unassigned at icedtea.classpath.org Created attachment 840 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=840&action=edit Log file Any attempt to invoke java or javac results in an immediate failure with SIGFPE and the following message: entropy[374]$ java -version # # A fatal error has been detected by the Java Runtime Environment: # # SIGFPE (0x8) at pc=0x00007fb2020b9c76, pid=10281, tid=140402505881920 # # JRE version: 7.0_09 # Java VM: OpenJDK 64-Bit Server VM (23.7-b01 mixed mode linux-amd64 compressed oops) # Problematic frame: # V [libjvm.so+0x8e7c76] JVM_handle_linux_signal+0x161746 # # Core dump written. Default location: /root/core or core.10281 # # An error report file with more information is saved as: # /root/hs_err_pid10281.log # # If you would like to submit a bug report, please include # instructions on how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # Abort (core dumped) The log is attached. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130306/129bd4c9/attachment.html From ptisnovs at icedtea.classpath.org Thu Mar 7 01:01:22 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 07 Mar 2013 09:01:22 +0000 Subject: /hg/gfx-test: Added new Rescale operators and two new tests into... Message-ID: changeset ff7895f8ac1a in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=ff7895f8ac1a author: Pavel Tisnovsky date: Thu Mar 07 10:04:26 2013 +0100 Added new Rescale operators and two new tests into the test suite BitBltRescaleOp. diffstat: ChangeLog | 6 ++ src/org/gfxtest/testsuites/BitBltRescaleOp.java | 59 ++++++++++++++++++++---- 2 files changed, 55 insertions(+), 10 deletions(-) diffs (121 lines): diff -r 1aa1b200b9d7 -r ff7895f8ac1a ChangeLog --- a/ChangeLog Wed Mar 06 10:58:59 2013 +0100 +++ b/ChangeLog Thu Mar 07 10:04:26 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-07 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltRescaleOp.java: + Added new Rescale operators and two new tests into the test suite + BitBltRescaleOp. + 2013-03-06 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java: diff -r 1aa1b200b9d7 -r ff7895f8ac1a src/org/gfxtest/testsuites/BitBltRescaleOp.java --- a/src/org/gfxtest/testsuites/BitBltRescaleOp.java Wed Mar 06 10:58:59 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltRescaleOp.java Thu Mar 07 10:04:26 2013 +0100 @@ -72,6 +72,10 @@ public class BitBltRescaleOp extends GfxTest { private static final float NoFilterScale = 1.0f; + private static final float BlackImageScale = 0.0f; + private static final float DarkenScale = 0.5f; + private static final float LightenScale = 2.0f; + private static final float ZeroOffset = 0.0f; private static final float DarkeningOffset = -128; private static final float LighteningOffset = 127f; @@ -80,8 +84,15 @@ private static final float BlackImageOffset = -255f; private static final RescaleOp noOpROP = new RescaleOp(NoFilterScale, ZeroOffset, null); - private static final RescaleOp darkenROP = new RescaleOp(NoFilterScale, DarkeningOffset, null); - private static final RescaleOp lightenROP = new RescaleOp(NoFilterScale, LighteningOffset, null); + + private static final RescaleOp darkenOffsetROP = new RescaleOp(NoFilterScale, DarkeningOffset, null); + private static final RescaleOp lightenOffsetROP = new RescaleOp(NoFilterScale, LighteningOffset, null); + private static final RescaleOp whiteImageOffsetROP = new RescaleOp(NoFilterScale, WhiteImageOffset, null); + private static final RescaleOp blackImageOffsetROP = new RescaleOp(NoFilterScale, BlackImageOffset, null); + + private static final RescaleOp darkenScaleROP = new RescaleOp(DarkenScale, ZeroOffset, null); + private static final RescaleOp lightenScaleROP = new RescaleOp(LightenScale, ZeroOffset, null); + private static final RescaleOp blackImageScaleROP = new RescaleOp(BlackImageScale, ZeroOffset, null); /** * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR @@ -141,9 +152,9 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundDarkenROP(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundDarkenOffsetROP(TestImage image, Graphics2D graphics2d) { - return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, darkenROP); + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, darkenOffsetROP); } /** @@ -155,9 +166,37 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundLightenROP(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundLightenOffsetROP(TestImage image, Graphics2D graphics2d) { - return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, lightenROP); + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, lightenOffsetROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundWhiteImageOffsetROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, whiteImageOffsetROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundBlackImageOffsetROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, blackImageOffsetROP); } /** @@ -183,9 +222,9 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundDarkenROP(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundDarkenOffsetROP(TestImage image, Graphics2D graphics2d) { - return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, darkenROP); + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, darkenOffsetROP); } /** @@ -197,9 +236,9 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundLightenROP(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundLightenOffsetROP(TestImage image, Graphics2D graphics2d) { - return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, lightenROP); + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, lightenOffsetROP); } /** From ptisnovs at icedtea.classpath.org Thu Mar 7 01:17:01 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 07 Mar 2013 09:17:01 +0000 Subject: /hg/rhino-tests: Added four tests into the InvocableClassTest: Message-ID: changeset 8560ae27455f in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=8560ae27455f author: Pavel Tisnovsky date: Thu Mar 07 10:20:03 2013 +0100 Added four tests into the InvocableClassTest: testGetDeclaringClass(), testGetEnclosingClass() testGetEnclosingConstructor() and testGetEnclosingMethod(). diffstat: ChangeLog | 7 + src/org/RhinoTests/BindingsTest.java | 184 ----------------------------- src/org/RhinoTests/InvocableClassTest.java | 32 +++++ 3 files changed, 39 insertions(+), 184 deletions(-) diffs (244 lines): diff -r 1069faa2ed62 -r 8560ae27455f ChangeLog --- a/ChangeLog Wed Mar 06 10:49:08 2013 +0100 +++ b/ChangeLog Thu Mar 07 10:20:03 2013 +0100 @@ -1,3 +1,10 @@ +2013-03-07 Pavel Tisnovsky + + * src/org/RhinoTests/InvocableClassTest.java: + Added four tests into the InvocableClassTest: + testGetDeclaringClass(), testGetEnclosingClass() + testGetEnclosingConstructor() and testGetEnclosingMethod(). + 2013-03-06 Pavel Tisnovsky * src/org/RhinoTests/SimpleBindingsClassTest.java: diff -r 1069faa2ed62 -r 8560ae27455f src/org/RhinoTests/BindingsTest.java --- a/src/org/RhinoTests/BindingsTest.java Wed Mar 06 10:49:08 2013 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,184 +0,0 @@ -/* - Rhino test framework - - Copyright (C) 2011, 2012 Red Hat - -This file is part of IcedTea. - -IcedTea is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -IcedTea is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with IcedTea; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. -*/ - -package org.RhinoTests; - -import java.util.HashMap; -import java.util.Map; -import java.util.TreeMap; - -import javax.script.SimpleBindings; -import javax.script.Bindings; - -/** - * @author Pavel Tisnovsky - * - */ -public class BindingsTest extends BaseRhinoTest { - - @Override - protected void setUp(String[] args) { - // this block could be empty - return; - } - - @Override - protected void tearDown() { - // this block could be empty - return; - } - - protected void testConstructor1() { - Bindings bindings = new SimpleBindings(); - assertNotNull(bindings, "new SimpleBindings() failed"); - assertTrue(bindings.isEmpty(), "bindings should be empty"); - assertTrue(bindings.size() == 0, "bindings should be empty"); - } - - protected void testConstructor2() { - Bindings bindings = new SimpleBindings(new HashMap()); - assertNotNull(bindings, "new SimpleBindings() failed"); - assertTrue(bindings.isEmpty(), "bindings should be empty"); - assertTrue(bindings.size() == 0, "bindings should be empty"); - } - - protected void testConstructor3() { - Bindings bindings = new SimpleBindings(new TreeMap()); - assertNotNull(bindings, "new SimpleBindings() failed"); - assertTrue(bindings.isEmpty(), "bindings should be empty"); - assertTrue(bindings.size() == 0, "bindings should be empty"); - } - - protected void testConstructor4() { - Map map = new HashMap(); - map.put("key", "value"); - Bindings bindings = new SimpleBindings(map); - assertNotNull(bindings, "new SimpleBindings() failed"); - assertTrue(!bindings.isEmpty(), "bindings should not be empty"); - assertTrue(bindings.size() == 1, "bindings should not be empty"); - assertNotNull(bindings.get("key"), "this object should be stored in bindings"); - assertEquals(bindings.get("key"), "value", "wrong value returned"); - } - - protected void testConstructor5() { - Map map = new TreeMap(); - map.put("key", "value"); - Bindings bindings = new SimpleBindings(map); - assertNotNull(bindings, "new SimpleBindings() failed"); - assertTrue(!bindings.isEmpty(), "bindings should not be empty"); - assertTrue(bindings.size() == 1, "bindings should not be empty"); - assertNotNull(bindings.get("key"), "this object should be stored in bindings"); - assertEquals(bindings.get("key"), "value", "wrong value returned"); - } - - protected void testConstructor6() { - Map map = new HashMap(); - map.put("key", null); - Bindings bindings = new SimpleBindings(map); - assertNotNull(bindings, "new SimpleBindings() failed"); - assertTrue(!bindings.isEmpty(), "bindings should not be empty"); - assertTrue(bindings.size() == 1, "bindings should not be empty"); - assertNull(bindings.get("key"), "this object should be stored in bindings"); - } - - protected void testConstructor7() { - Map map = new HashMap(); - map.put("key", null); - Bindings bindings = new SimpleBindings(map); - assertNotNull(bindings, "new SimpleBindings() failed"); - assertTrue(!bindings.isEmpty(), "bindings should not be empty"); - assertTrue(bindings.size() == 1, "bindings should not be empty"); - assertNull(bindings.get("key"), "this object should be stored in bindings"); - } - - protected void testContainsKey1() { - Bindings bindings = new SimpleBindings(); - assertFalse(bindings.containsKey("key"), "Bingings.containsKey() failed"); - } - - protected void testContainsKey2() { - Bindings bindings = new SimpleBindings(); - bindings.put("key", "value"); - assertTrue(bindings.containsKey("key"), "Bingings.containsKey() failed"); - } - - protected void testContainsKeyNegative1() throws Exception { - Bindings bindings = new SimpleBindings(); - try { - bindings.containsKey(null); - } - catch (NullPointerException e) { - return; - } - throw new Exception("NPE did not thrown as expected"); - } - - protected void testContainsKeyNegative2() throws Exception { - Bindings bindings = new SimpleBindings(); - try { - bindings.containsKey(""); - } - catch (IllegalArgumentException e) { - return; - } - throw new Exception("IllegalArgumentException did not thrown as expected"); - } - - protected void testContainsKeyNegative3() throws Exception { - Bindings bindings = new SimpleBindings(); - try { - bindings.containsKey(new Integer(42)); - } - catch (ClassCastException e) { - return; - } - throw new Exception("ClassCastException did not thrown as expected"); - } - - /** - * Entry point to this test case. - * - * @param args parameters passed from command line - */ - public static void main(String[] args) { - new BindingsTest().doTests(args); - } - -} diff -r 1069faa2ed62 -r 8560ae27455f src/org/RhinoTests/InvocableClassTest.java --- a/src/org/RhinoTests/InvocableClassTest.java Wed Mar 06 10:49:08 2013 +0100 +++ b/src/org/RhinoTests/InvocableClassTest.java Thu Mar 07 10:20:03 2013 +0100 @@ -738,6 +738,38 @@ } /** + * Test for method javax.script.Invocable.getClass().getDeclaringClass() + */ + protected void testGetDeclaringClass() { + Class cls = this.invocableClass.getDeclaringClass(); + assertNull(cls, "getDeclaringClass() does not return null"); + } + + /** + * Test for method javax.script.Invocable.getClass().getEnclosingClass() + */ + protected void testGetEnclosingClass() { + Class cls = this.invocableClass.getEnclosingClass(); + assertNull(cls, "getEnclosingClass() does not return null"); + } + + /** + * Test for method javax.script.Invocable.getClass().getEnclosingConstructor() + */ + protected void testGetEnclosingConstructor() { + Constructor cons = this.invocableClass.getEnclosingConstructor(); + assertNull(cons, "getEnclosingConstructor() does not return null"); + } + + /** + * Test for method javax.script.Invocable.getClass().getEnclosingMethod() + */ + protected void testGetEnclosingMethod() { + Method m = this.invocableClass.getEnclosingMethod(); + assertNull(m, "getEnclosingMethod() does not return null"); + } + + /** * Test for instanceof operator applied to a class javax.script.Invocable */ @SuppressWarnings("cast") From ptisnovs at icedtea.classpath.org Thu Mar 7 01:19:17 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 07 Mar 2013 09:19:17 +0000 Subject: /hg/rhino-tests: Added test class deleted by a mistake. Message-ID: changeset 7668089de997 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=7668089de997 author: Pavel Tisnovsky date: Thu Mar 07 10:22:22 2013 +0100 Added test class deleted by a mistake. diffstat: ChangeLog | 5 + src/org/RhinoTests/BindingsTest.java | 197 +++++++++++++++++++++++++++++++++++ 2 files changed, 202 insertions(+), 0 deletions(-) diffs (213 lines): diff -r 8560ae27455f -r 7668089de997 ChangeLog --- a/ChangeLog Thu Mar 07 10:20:03 2013 +0100 +++ b/ChangeLog Thu Mar 07 10:22:22 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-08 Pavel Tisnovsky + + * src/org/RhinoTests/BindingsTest.java: + Added test class deleted by a mistake. + 2013-03-07 Pavel Tisnovsky * src/org/RhinoTests/InvocableClassTest.java: diff -r 8560ae27455f -r 7668089de997 src/org/RhinoTests/BindingsTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/RhinoTests/BindingsTest.java Thu Mar 07 10:22:22 2013 +0100 @@ -0,0 +1,197 @@ +/* + Rhino test framework + + Copyright (C) 2011, 2012 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.RhinoTests; + +import java.util.HashMap; +import java.util.Map; +import java.util.TreeMap; + +import javax.script.SimpleBindings; +import javax.script.Bindings; + +/** + * @author Pavel Tisnovsky + * + */ +public class BindingsTest extends BaseRhinoTest { + + @Override + protected void setUp(String[] args) { + // this block could be empty + return; + } + + @Override + protected void tearDown() { + // this block could be empty + return; + } + + protected void testConstructor1() { + Bindings bindings = new SimpleBindings(); + assertNotNull(bindings, "new SimpleBindings() failed"); + assertTrue(bindings.isEmpty(), "bindings should be empty"); + assertTrue(bindings.size() == 0, "bindings should be empty"); + } + + protected void testConstructor2() { + Bindings bindings = new SimpleBindings(new HashMap()); + assertNotNull(bindings, "new SimpleBindings() failed"); + assertTrue(bindings.isEmpty(), "bindings should be empty"); + assertTrue(bindings.size() == 0, "bindings should be empty"); + } + + protected void testConstructor3() { + Bindings bindings = new SimpleBindings(new TreeMap()); + assertNotNull(bindings, "new SimpleBindings() failed"); + assertTrue(bindings.isEmpty(), "bindings should be empty"); + assertTrue(bindings.size() == 0, "bindings should be empty"); + } + + protected void testConstructor4() { + Map map = new HashMap(); + map.put("key", "value"); + Bindings bindings = new SimpleBindings(map); + assertNotNull(bindings, "new SimpleBindings() failed"); + assertTrue(!bindings.isEmpty(), "bindings should not be empty"); + assertTrue(bindings.size() == 1, "bindings should not be empty"); + assertNotNull(bindings.get("key"), "this object should be stored in bindings"); + assertEquals(bindings.get("key"), "value", "wrong value returned"); + } + + protected void testConstructor5() { + Map map = new TreeMap(); + map.put("key", "value"); + Bindings bindings = new SimpleBindings(map); + assertNotNull(bindings, "new SimpleBindings() failed"); + assertTrue(!bindings.isEmpty(), "bindings should not be empty"); + assertTrue(bindings.size() == 1, "bindings should not be empty"); + assertNotNull(bindings.get("key"), "this object should be stored in bindings"); + assertEquals(bindings.get("key"), "value", "wrong value returned"); + } + + protected void testConstructor6() { + Map map = new HashMap(); + map.put("key", null); + Bindings bindings = new SimpleBindings(map); + assertNotNull(bindings, "new SimpleBindings() failed"); + assertTrue(!bindings.isEmpty(), "bindings should not be empty"); + assertTrue(bindings.size() == 1, "bindings should not be empty"); + assertNull(bindings.get("key"), "this object should be stored in bindings"); + } + + protected void testConstructor7() { + Map map = new HashMap(); + map.put("key", null); + Bindings bindings = new SimpleBindings(map); + assertNotNull(bindings, "new SimpleBindings() failed"); + assertTrue(!bindings.isEmpty(), "bindings should not be empty"); + assertTrue(bindings.size() == 1, "bindings should not be empty"); + assertNull(bindings.get("key"), "this object should be stored in bindings"); + } + + protected void testContainsKey1() { + Bindings bindings = new SimpleBindings(); + assertFalse(bindings.containsKey("key"), "Bingings.containsKey() failed"); + } + + protected void testContainsKey2() { + Bindings bindings = new SimpleBindings(); + bindings.put("key", "value"); + assertTrue(bindings.containsKey("key"), "Bingings.containsKey() failed"); + } + + protected void testContainsKeyNegative1() throws Exception { + Bindings bindings = new SimpleBindings(); + try { + bindings.containsKey(null); + } + catch (NullPointerException e) { + return; + } + throw new Exception("NPE did not thrown as expected"); + } + + protected void testContainsKeyNegative2() throws Exception { + Bindings bindings = new SimpleBindings(); + try { + bindings.containsKey(""); + } + catch (IllegalArgumentException e) { + return; + } + throw new Exception("IllegalArgumentException did not thrown as expected"); + } + + protected void testContainsKeyNegative3() throws Exception { + Bindings bindings = new SimpleBindings(); + try { + bindings.containsKey(new Integer(42)); + } + catch (ClassCastException e) { + return; + } + throw new Exception("ClassCastException did not thrown as expected"); + } + + /** + * Entry point to this test case. + * + * @param args parameters passed from command line + */ + public static void main(String[] args) { + new BindingsTest().doTests(args); + } + +} + +/* + boolean containsKey(Object key) + Returns true if this map contains a mapping for the specified key. + Object get(Object key) + Returns the value to which this map maps the specified key. + Object put(String name, Object value) + Set a named value. + void putAll(Map toMerge) + Adds all the mappings in a given Map to this Bindings. + Object remove(Object key) + Removes the mapping for this key from this map if it is present (optional operation). + */ From helpcrypto at gmail.com Thu Mar 7 04:17:03 2013 From: helpcrypto at gmail.com (helpcrypto helpcrypto) Date: Thu, 7 Mar 2013 13:17:03 +0100 Subject: [rfc][icedtea-web] Reproducer for PR1198: JSObject#eval creates invalid JS object In-Reply-To: <50A0E733.90100@redhat.com> References: <509D58CD.7050409@redhat.com> <50A0E733.90100@redhat.com> Message-ID: Hi. Today i updated/upgraded an Ubuntu 12.04 and checked dpkg --list: ii icedtea-6-jre-cacao 6b27-1.12.3-0ubuntu1~12.04.1 Alternative JVM for OpenJDK, using Cacao ii icedtea-6-jre-jamvm 6b27-1.12.3-0ubuntu1~12.04.1 Alternative JVM for OpenJDK, using JamVM ii icedtea-6-plugin 1.2-2ubuntu1.3 web browser plugin based on OpenJDK and IcedTea to execute Java applets ii icedtea-netx 1.2-2ubuntu1.3 NetX - implementation of the Java Network Launching Protocol (JNLP) ii icedtea-netx-common 1.2-2ubuntu1.3 NetX - implementation of the Java Network Launching Protocol (JNLP) ii icedtea-plugin 1.2-2ubuntu1.3 web browser plugin to execute Java applets (dependency package) IIRC, this bug is solved on icedtea 1.4 and beyond, so wont be fixed on my Ubuntu 12.04/previous Java versions. Am i right? Is there any chance this bugfix to be backported (thats the correct isnt it?) to ubuntu 1.3? Thanks! > http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1198 From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:17:27 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:17:27 +0000 Subject: [Bug 1336] [IcedTea6] Bootstrap failure on Fedora 17/18 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1336 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- URL| |http://gcc.gnu.org/bugzilla | |/show_bug.cgi?id=56553 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/7f959ff7/attachment.html From gnu.andrew at redhat.com Thu Mar 7 04:23:25 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 7 Mar 2013 07:23:25 -0500 (EST) Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: <223879234.13974336.1362592962647.JavaMail.root@redhat.com> Message-ID: <1429727193.14424948.1362659004990.JavaMail.root@redhat.com> ----- Original Message ----- > ----- Original Message ----- > > > Two pieces of information you didn't provide: > > > > > > 1. What version of IcedTea are you trying to build (if > > > Mercurial, > > > which repository+changeset)? > > > > Sorry. I always use hg default. In this case: > > http://icedtea.classpath.org/hg/icedtea6/rev/9b60104392f1 > > > > > 2. Output of configure (config.log). > > > > No problem: > > > > This file contains any messages produced by compilers while > > running configure, to aid debugging if configure makes a mistake. > > > > It was created by icedtea6 configure 1.13.0pre, which was > > generated by GNU Autoconf 2.68. Invocation command line was > > > > $ ./configure --with-parallel-jobs=8 --disable-docs > > --with-jdk-home=/usr/lib/jvm/java-1.5.0-gcj > > > > ## --------- ## > > ## Platform. ## > > ## --------- ## > > > > hostname = f17 > > uname -m = x86_64 > > uname -r = 3.6.6-1.fc17.x86_64 > > uname -s = Linux > > uname -v = #1 SMP Mon Nov 5 21:59:35 UTC 2012 > > > > /usr/bin/uname -p = x86_64 > > /bin/uname -X = unknown > > > > /bin/arch = x86_64 > > /usr/bin/arch -k = unknown > > /usr/convex/getsysinfo = unknown > > /usr/bin/hostinfo = unknown > > /bin/machine = unknown > > /usr/bin/oslevel = unknown > > /bin/universe = unknown > > > > PATH: /usr/lib64/ccache > > PATH: /usr/local/bin > > PATH: /usr/bin > > PATH: /usr/local/sbin > > PATH: /usr/sbin > > PATH: /home/sr/.local/bin > > PATH: /home/sr/bin > > > > > > ## ----------- ## > > ## Core tests. ## > > ## ----------- ## > > > > configure:2819: checking for a BSD-compatible install > > configure:2887: result: /usr/bin/install -c > > configure:2898: checking whether build environment is sane > > configure:2948: result: yes > > configure:3089: checking for a thread-safe mkdir -p > > configure:3128: result: /usr/bin/mkdir -p > > configure:3141: checking for gawk > > configure:3157: found /usr/bin/gawk > > configure:3168: result: gawk > > configure:3179: checking whether make sets $(MAKE) > > configure:3201: result: yes > > configure:3276: checking how to create a pax tar archive > > configure:3289: tar --version > > tar (GNU tar) 1.26 > > Copyright (C) 2011 Free Software Foundation, Inc. > > License GPLv3+: GNU GPL version 3 or later > > . > > This is free software: you are free to change and redistribute it. > > There is NO WARRANTY, to the extent permitted by law. > > > > Written by John Gilmore and Jay Fenlason. > > configure:3292: $? = 0 > > configure:3332: tardir=conftest.dir && eval tar --format=posix -chf > > - > > "$tardir" >conftest.tar > > configure:3335: $? = 0 > > configure:3339: tar -xf - > configure:3342: $? = 0 > > configure:3355: result: gnutar > > configure:3378: checking build system type > > configure:3392: result: x86_64-unknown-linux-gnu > > configure:3412: checking host system type > > configure:3425: result: x86_64-unknown-linux-gnu > > configure:3496: checking for gcc > > configure:3512: found /usr/lib64/ccache/gcc > > configure:3523: result: gcc > > configure:3752: checking for C compiler version > > configure:3761: gcc --version >&5 > > gcc (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) > > Copyright (C) 2012 Free Software Foundation, Inc. > > This is free software; see the source for copying conditions. > > There > > is NO > > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR > > PURPOSE. > > > > configure:3772: $? = 0 > > configure:3761: gcc -v >&5 > > Using built-in specs. > > COLLECT_GCC=/usr/bin/gcc > > COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.7.2/lto-wrapper > > Target: x86_64-redhat-linux > > Configured with: ../configure --prefix=/usr --mandir=/usr/share/man > > --infodir=/usr/share/info > > --with-bugurl=http://bugzilla.redhat.com/bugzilla > > --enable-bootstrap > > --enable-shared --enable-threads=posix --enable-checking=release > > --disable-build-with-cxx --disable-build-poststage1-with-cxx > > --with-system-zlib --enable-__cxa_atexit > > --disable-libunwind-exceptions --enable-gnu-unique-object > > --enable-linker-build-id --with-linker-hash-style=gnu > > --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto > > --enable-plugin --enable-initfini-array --enable-java-awt=gtk > > --disable-dssi > > --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre > > --enable-libgcj-multifile --enable-java-maintainer-mode > > --with-ecj-jar=/usr/share/java/eclipse-ecj.jar > > --disable-libjava-multilib --with-ppl --with-cloog > > --with-tune=generic > > --with-arch_32=i686 --build=x86_64-redhat-linux > > Thread model: posix > > gcc version 4.7.2 20120921 (Red Hat 4.7.2-2) (GCC) > > configure:3772: $? = 0 > > configure:3761: gcc -V >&5 > > gcc: error: unrecognized command line option '-V' > > gcc: fatal error: no input files > > compilation terminated. > > configure:3772: $? = 4 > > configure:3761: gcc -qversion >&5 > > gcc: error: unrecognized command line option '-qversion' > > gcc: fatal error: no input files > > compilation terminated. > > configure:3772: $? = 4 > > configure:3792: checking whether the C compiler works > > configure:3814: gcc conftest.c >&5 > > configure:3818: $? = 0 > > configure:3866: result: yes > > configure:3869: checking for C compiler default output file name > > configure:3871: result: a.out > > configure:3877: checking for suffix of executables > > configure:3884: gcc -o conftest conftest.c >&5 > > configure:3888: $? = 0 > > configure:3910: result: > > configure:3932: checking whether we are cross compiling > > configure:3940: gcc -o conftest conftest.c >&5 > > configure:3944: $? = 0 > > configure:3951: ./conftest > > configure:3955: $? = 0 > > configure:3970: result: no > > configure:3975: checking for suffix of object files > > configure:3997: gcc -c conftest.c >&5 > > configure:4001: $? = 0 > > configure:4022: result: o > > configure:4026: checking whether we are using the GNU C compiler > > configure:4045: gcc -c conftest.c >&5 > > configure:4045: $? = 0 > > configure:4054: result: yes > > configure:4063: checking whether gcc accepts -g > > configure:4083: gcc -c -g conftest.c >&5 > > configure:4083: $? = 0 > > configure:4124: result: yes > > configure:4141: checking for gcc option to accept ISO C89 > > configure:4205: gcc -c -g -O2 conftest.c >&5 > > configure:4205: $? = 0 > > configure:4218: result: none needed > > configure:4249: checking for style of include used by make > > configure:4277: result: GNU > > configure:4303: checking dependency style of gcc > > configure:4414: result: none > > configure:4487: checking for g++ > > configure:4503: found /usr/lib64/ccache/g++ > > configure:4514: result: g++ > > configure:4541: checking for C++ compiler version > > configure:4550: g++ --version >&5 > > g++ (GCC) 4.7.2 20120921 (Red Hat 4.7.2-2) > > Copyright (C) 2012 Free Software Foundation, Inc. > > This is free software; see the source for copying conditions. > > There > > is NO > > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR > > PURPOSE. > > > > configure:4561: $? = 0 > > configure:4550: g++ -v >&5 > > Using built-in specs. > > COLLECT_GCC=/usr/bin/g++ > > COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.7.2/lto-wrapper > > Target: x86_64-redhat-linux > > Configured with: ../configure --prefix=/usr --mandir=/usr/share/man > > --infodir=/usr/share/info > > --with-bugurl=http://bugzilla.redhat.com/bugzilla > > --enable-bootstrap > > --enable-shared --enable-threads=posix --enable-checking=release > > --disable-build-with-cxx --disable-build-poststage1-with-cxx > > --with-system-zlib --enable-__cxa_atexit > > --disable-libunwind-exceptions --enable-gnu-unique-object > > --enable-linker-build-id --with-linker-hash-style=gnu > > --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto > > --enable-plugin --enable-initfini-array --enable-java-awt=gtk > > --disable-dssi > > --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre > > --enable-libgcj-multifile --enable-java-maintainer-mode > > --with-ecj-jar=/usr/share/java/eclipse-ecj.jar > > --disable-libjava-multilib --with-ppl --with-cloog > > --with-tune=generic > > --with-arch_32=i686 --build=x86_64-redhat-linux > > Thread model: posix > > gcc version 4.7.2 20120921 (Red Hat 4.7.2-2) (GCC) > > configure:4561: $? = 0 > > configure:4550: g++ -V >&5 > > g++: error: unrecognized command line option '-V' > > g++: fatal error: no input files > > compilation terminated. > > configure:4561: $? = 4 > > configure:4550: g++ -qversion >&5 > > g++: error: unrecognized command line option '-qversion' > > g++: fatal error: no input files > > compilation terminated. > > configure:4561: $? = 4 > > configure:4565: checking whether we are using the GNU C++ compiler > > configure:4584: g++ -c conftest.cpp >&5 > > configure:4584: $? = 0 > > configure:4593: result: yes > > configure:4602: checking whether g++ accepts -g > > configure:4622: g++ -c -g conftest.cpp >&5 > > configure:4622: $? = 0 > > configure:4663: result: yes > > configure:4688: checking dependency style of g++ > > configure:4799: result: none > > configure:4861: checking for make > > configure:4879: found /usr/bin/make > > configure:4891: result: /usr/bin/make > > configure:4964: checking for gzip > > configure:4982: found /usr/bin/gzip > > configure:4994: result: /usr/bin/gzip > > configure:5067: checking for ant > > configure:5085: found /usr/bin/ant > > configure:5097: result: /usr/bin/ant > > configure:5170: checking for find > > configure:5188: found /usr/bin/find > > configure:5200: result: /usr/bin/find > > configure:5273: checking for patch > > configure:5291: found /usr/bin/patch > > configure:5303: result: /usr/bin/patch > > configure:5376: checking for tar > > configure:5394: found /usr/bin/tar > > configure:5406: result: /usr/bin/tar > > configure:5479: checking for chmod > > configure:5497: found /usr/bin/chmod > > configure:5509: result: /usr/bin/chmod > > configure:5582: checking for sha256sum > > configure:5600: found /usr/bin/sha256sum > > configure:5612: result: /usr/bin/sha256sum > > configure:5685: checking for wget > > configure:5703: found /usr/bin/wget > > configure:5715: result: /usr/bin/wget > > configure:5788: checking for zip > > configure:5806: found /usr/bin/zip > > configure:5818: result: /usr/bin/zip > > configure:5891: checking for unzip > > configure:5909: found /usr/bin/unzip > > configure:5921: result: /usr/bin/unzip > > configure:5994: checking for cpio > > configure:6012: found /usr/bin/cpio > > configure:6024: result: /usr/bin/cpio > > configure:6097: checking for file > > configure:6115: found /usr/bin/file > > configure:6127: result: /usr/bin/file > > configure:6203: checking for fastjar > > configure:6219: found /usr/bin/fastjar > > configure:6230: result: fastjar > > configure:6301: checking for ldd > > configure:6317: found /usr/bin/ldd > > configure:6328: result: ldd > > configure:6396: checking for gawk > > configure:6414: found /usr/bin/gawk > > configure:6426: result: /usr/bin/gawk > > configure:6500: checking for hg > > configure:6518: found /usr/bin/hg > > configure:6530: result: /usr/bin/hg > > configure:6556: checking for an OpenJDK source directory > > configure:6572: result: > > /xfs/staging/staging-build-hs/icedtea6/openjdk > > /usr/bin/hg > > configure:6624: checking for IcedTea Mercurial revision ID > > configure:6629: result: r9b60104392f1 > > configure:6632: checking for JDK Mercurial revision ID > > configure:6637: result: none > > configure:6640: checking for HotSpot Mercurial revision ID > > configure:6645: result: none > > configure:6720: checking for lsb_release > > configure:6753: result: no > > configure:6773: checking whether to compile ecj natively > > configure:6787: result: no > > configure:6998: checking whether to use CACAO as VM > > configure:7012: result: no > > configure:7027: checking whether to use JamVM as VM > > configure:7041: result: no > > configure:7056: checking whether to use the Shark JIT > > configure:7077: result: no > > configure:7095: checking how to run the C preprocessor > > configure:7126: gcc -E conftest.c > > configure:7126: $? = 0 > > configure:7140: gcc -E conftest.c > > conftest.c:11:28: fatal error: ac_nonexistent.h: No such file or > > directory > > compilation terminated. > > configure:7140: $? = 1 > > configure: failed program was: > > | /* confdefs.h */ > > | #define PACKAGE_NAME "icedtea6" > > | #define PACKAGE_TARNAME "icedtea6" > > | #define PACKAGE_VERSION "1.13.0pre" > > | #define PACKAGE_STRING "icedtea6 1.13.0pre" > > | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > > | #define PACKAGE_URL "" > > | #define PACKAGE "icedtea6" > > | #define VERSION "1.13.0pre" > > | /* end confdefs.h. */ > > | #include > > configure:7165: result: gcc -E > > configure:7185: gcc -E conftest.c > > configure:7185: $? = 0 > > configure:7199: gcc -E conftest.c > > conftest.c:11:28: fatal error: ac_nonexistent.h: No such file or > > directory > > compilation terminated. > > configure:7199: $? = 1 > > configure: failed program was: > > | /* confdefs.h */ > > | #define PACKAGE_NAME "icedtea6" > > | #define PACKAGE_TARNAME "icedtea6" > > | #define PACKAGE_VERSION "1.13.0pre" > > | #define PACKAGE_STRING "icedtea6 1.13.0pre" > > | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > > | #define PACKAGE_URL "" > > | #define PACKAGE "icedtea6" > > | #define VERSION "1.13.0pre" > > | /* end confdefs.h. */ > > | #include > > configure:7228: checking for grep that handles long lines and -e > > configure:7286: result: /usr/bin/grep > > configure:7291: checking for egrep > > configure:7353: result: /usr/bin/grep -E > > configure:7358: checking for ANSI C header files > > configure:7378: gcc -c -g -O2 conftest.c >&5 > > configure:7378: $? = 0 > > configure:7451: gcc -o conftest -g -O2 conftest.c >&5 > > configure:7451: $? = 0 > > configure:7451: ./conftest > > configure:7451: $? = 0 > > configure:7462: result: yes > > configure:7475: checking for sys/types.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7475: checking for sys/stat.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7475: checking for stdlib.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7475: checking for string.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7475: checking for memory.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7475: checking for strings.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7475: checking for inttypes.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7475: checking for stdint.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7475: checking for unistd.h > > configure:7475: gcc -c -g -O2 conftest.c >&5 > > configure:7475: $? = 0 > > configure:7475: result: yes > > configure:7492: checking whether to use the zero-assembler port > > configure:7529: result: no > > configure:7584: checking whether byte ordering is bigendian > > configure:7599: gcc -c -g -O2 conftest.c >&5 > > conftest.c:22:9: error: unknown type name 'not' > > conftest.c:22:15: error: expected '=', ',', ';', 'asm' or > > '__attribute__' before 'universal' > > conftest.c:22:15: error: unknown type name 'universal' > > configure:7599: $? = 1 > > configure: failed program was: > > | /* confdefs.h */ > > | #define PACKAGE_NAME "icedtea6" > > | #define PACKAGE_TARNAME "icedtea6" > > | #define PACKAGE_VERSION "1.13.0pre" > > | #define PACKAGE_STRING "icedtea6 1.13.0pre" > > | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > > | #define PACKAGE_URL "" > > | #define PACKAGE "icedtea6" > > | #define VERSION "1.13.0pre" > > | #define STDC_HEADERS 1 > > | #define HAVE_SYS_TYPES_H 1 > > | #define HAVE_SYS_STAT_H 1 > > | #define HAVE_STDLIB_H 1 > > | #define HAVE_STRING_H 1 > > | #define HAVE_MEMORY_H 1 > > | #define HAVE_STRINGS_H 1 > > | #define HAVE_INTTYPES_H 1 > > | #define HAVE_STDINT_H 1 > > | #define HAVE_UNISTD_H 1 > > | /* end confdefs.h. */ > > | #ifndef __APPLE_CC__ > > | not a universal capable compiler > > | #endif > > | typedef int dummy; > > | > > configure:7644: gcc -c -g -O2 conftest.c >&5 > > configure:7644: $? = 0 > > configure:7662: gcc -c -g -O2 conftest.c >&5 > > conftest.c: In function 'main': > > conftest.c:28:4: error: unknown type name 'not' > > conftest.c:28:12: error: expected '=', ',', ';', 'asm' or > > '__attribute__' before 'endian' > > configure:7662: $? = 1 > > configure: failed program was: > > | /* confdefs.h */ > > | #define PACKAGE_NAME "icedtea6" > > | #define PACKAGE_TARNAME "icedtea6" > > | #define PACKAGE_VERSION "1.13.0pre" > > | #define PACKAGE_STRING "icedtea6 1.13.0pre" > > | #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > > | #define PACKAGE_URL "" > > | #define PACKAGE "icedtea6" > > | #define VERSION "1.13.0pre" > > | #define STDC_HEADERS 1 > > | #define HAVE_SYS_TYPES_H 1 > > | #define HAVE_SYS_STAT_H 1 > > | #define HAVE_STDLIB_H 1 > > | #define HAVE_STRING_H 1 > > | #define HAVE_MEMORY_H 1 > > | #define HAVE_STRINGS_H 1 > > | #define HAVE_INTTYPES_H 1 > > | #define HAVE_STDINT_H 1 > > | #define HAVE_UNISTD_H 1 > > | /* end confdefs.h. */ > > | #include > > | #include > > | > > | int > > | main () > > | { > > | #if BYTE_ORDER != BIG_ENDIAN > > | not big endian > > | #endif > > | > > | ; > > | return 0; > > | } > > configure:7790: result: no > > configure:7841: checking which HotSpot build to use > > configure:7860: result: hs23 > > configure:7923: checking for linux32 > > configure:7941: found /usr/bin/linux32 > > configure:7953: result: /usr/bin/linux32 > > configure:7976: checking version of GCC > > configure:7989: result: 4.7.2 (major version 4, minor version 7) > > configure:8039: checking for getconf > > configure:8057: found /usr/bin/getconf > > configure:8069: result: /usr/bin/getconf > > configure:8096: checking the number of online processors > > configure:8109: result: 8 > > configure:8115: checking how many parallel build jobs to execute > > configure:8135: result: 8 > > configure:8140: checking if cp supports --reflink > > configure:8155: result: yes > > configure:8167: checking if we can hard link rather than copy from > > /xfs/staging/staging-build-hs/icedtea6 > > configure:8181: result: yes > > configure:8193: checking for system library directory > > configure:8223: result: > > configure:8281: checking for pkg-config > > configure:8299: found /usr/bin/pkg-config > > configure:8311: result: /usr/bin/pkg-config > > configure:8336: checking pkg-config is at least version 0.9.0 > > configure:8339: result: yes > > configure:8351: checking for NSS > > configure:8358: $PKG_CONFIG --exists --print-errors "nss" > > Package nss was not found in the pkg-config search path. > > Perhaps you should add the directory containing `nss.pc' > > to the PKG_CONFIG_PATH environment variable > > No package 'nss' found > > configure:8361: $? = 1 > > configure:8374: $PKG_CONFIG --exists --print-errors "nss" > > Package nss was not found in the pkg-config search path. > > Perhaps you should add the directory containing `nss.pc' > > to the PKG_CONFIG_PATH environment variable > > No package 'nss' found > > configure:8377: $? = 1 > > configure:8390: result: no > > No package 'nss' found > > configure:8424: WARNING: Could not find NSS; using as its > > location. > > configure:8436: checking whether to disable the execution of the > > JTReg tests > > configure:8456: result: no > > configure:8468: checking whether to disable the execution of the > > HotSpot JTReg tests > > configure:8488: result: no > > configure:8500: checking whether to disable the execution of the > > langtools JTReg tests > > configure:8520: result: no > > configure:8532: checking whether to disable the execution of the > > JDK > > JTReg tests > > configure:8552: result: no > > configure:8566: checking for a JDK home directory > > configure:8601: result: /usr/lib/jvm/java-1.5.0-gcj > > configure:8611: checking if a java binary was specified > > configure:8629: result: no > > configure:8634: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/java is > > a > > valid executable file > > configure:8637: result: yes > > configure:8776: checking if a javac binary was specified > > configure:8794: result: no > > configure:8799: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javac > > is > > a > > valid executable file > > configure:8802: result: yes > > configure:8853: checking if an ecj binary was specified > > configure:8871: result: no > > configure:8876: checking if /usr/bin/ecj is a valid executable file > > configure:8879: result: yes > > configure:9106: checking if we are using ecj as javac > > Eclipse Compiler for Java(TM) v20120814-155456, 3.8.2, Copyright > > IBM > > Corp 2000, 2012. All rights reserved. > > configure:9119: result: yes > > configure:9131: checking if the VM and compiler work together > > Hello World! > > configure:9168: result: yes > > configure:9173: checking if > > javax.swing.plaf.basic.BasicDirectoryModel.addPropertyChangeListener(PropertyChangeListener) > > is missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 22) > > javax.swing.plaf.basic.BasicDirectoryModel model = new > > javax.swing.plaf.basic.BasicDirectoryModel(new > > javax.swing.JFileChooser()); model.addPropertyChangeListener(model) > > > > > > ^^^^^^^^^^^^^^^^^^^^^^^^^ > > The method addPropertyChangeListener(BasicDirectoryModel) is > > undefined > > for the type BasicDirectoryModel > > ---------- > > 1 problem (1 error)configure:9223: result: yes > > configure:9241: checking if > > com.sun.corba.se.impl.logging.ORBUtilSystemException is missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 6) > > System.err.println("Class found: " + > > com.sun.corba.se.impl.logging.ORBUtilSystemException.class); > > ^^^ > > com cannot be resolved to a type > > ---------- > > 1 problem (1 error)configure:9273: result: yes > > configure:9289: checking if > > com.sun.corba.se.impl.logging.ORBUtilSystemException.ioExceptionOnClose(Throwable) > > is missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 8) > > Class cl = > > com.sun.corba.se.impl.logging.ORBUtilSystemException.class; > > ^^^ > > com cannot be resolved to a type > > ---------- > > 2. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 22) > > new > > com.sun.corba.se.impl.logging.ORBUtilSystemException(null).ioExceptionOnClose(new > > InternalError()) > > ^^^ > > com cannot be resolved to a type > > ---------- > > 2 problems (2 errors)configure:9339: result: yes > > configure:9357: checking if > > javax.management.StandardMBean(Class.class,Boolean.TYPE) is missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 24) > > super(Object.class, true); > > ^^^^^^^^^^^^^^^^^^^^^^^^^^ > > The constructor StandardMBean(Class, boolean) is undefined > > ---------- > > 1 problem (1 error)configure:9410: result: yes > > configure:9426: checking if > > javax.management.StandardMBean(Object.class,Class.class,Boolean.TYPE) > > is missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 24) > > super(new Object(), Object.class, true); > > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > > The constructor StandardMBean(Object, Class, boolean) is > > undefined > > ---------- > > 1 problem (1 error)configure:9479: result: yes > > configure:9497: checking if > > java.security.cert.X509CRLSelector.addIssuer(X500Principal) is > > missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 22) > > new java.security.cert.X509CRLSelector().addIssuer(null) > > ^^^^^^^^^ > > The method addIssuer(null) is undefined for the type > > X509CRLSelector > > ---------- > > 1 problem (1 error)configure:9547: result: yes > > configure:9563: checking if > > java.security.cert.X509CertSelector.setSubject(X500Principal) is > > missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 22) > > new java.security.cert.X509CertSelector().setSubject(new > > javax.security.auth.x500.X500Principal("")) > > ^^^^^^^^^^ > > The method setSubject(byte[]) in the type X509CertSelector is not > > applicable for the arguments (X500Principal) > > ---------- > > 1 problem (1 error)configure:9613: result: yes > > configure:9629: checking if > > java.security.cert.X509CertSelector.getSubject() is missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 22) > > new java.security.cert.X509CertSelector().getSubject() > > ^^^^^^^^^^ > > The method getSubject() is undefined for the type X509CertSelector > > ---------- > > 1 problem (1 error)configure:9679: result: yes > > configure:9695: checking if > > java.security.cert.X509CertSelector.setIssuer(X500Principal) is > > missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 22) > > new java.security.cert.X509CertSelector().setIssuer(new > > javax.security.auth.x500.X500Principal("")) > > ^^^^^^^^^ > > The method setIssuer(byte[]) in the type X509CertSelector is not > > applicable for the arguments (X500Principal) > > ---------- > > 1 problem (1 error)configure:9745: result: yes > > configure:9761: checking if > > java.security.cert.X509CRLSelector.setIssuers(Collection) > > is missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 22) > > new java.security.cert.X509CRLSelector().setIssuers(new > > java.util.ArrayList()) > > ^^^^^^^^^^ > > The method setIssuers(ArrayList) is undefined for > > the > > type X509CRLSelector > > ---------- > > 1 problem (1 error)configure:9811: result: yes > > configure:9827: checking if > > javax.security.auth.kerberos.KerberosTicket.getSessionKeyType() is > > missing > > Method found: public final int > > javax.security.auth.kerberos.KerberosTicket.getSessionKeyType() > > configure:9877: result: no > > configure:9895: checking if javax.security.sasl.Sasl.CREDENTIALS is > > missing > > ---------- > > 1. ERROR in > > /xfs/staging/staging-build-hs/icedtea6/tmp.1553/Test.java > > (at line 13) > > System.err.println("Field value: " + > > javax.security.sasl.Sasl.CREDENTIALS); > > ^^^^^^^^^^^ > > CREDENTIALS cannot be resolved or is not a field > > ---------- > > 1 problem (1 error)configure:9940: result: yes > > configure:9958: checking for xvfb-run > > configure:9988: result: no > > configure:9995: checking for an Ant home directory > > configure:10015: result: /usr/share/ant > > configure:10018: checking whether to include PulseAudio support > > configure:10035: result: no > > configure:10038: checking whether to build documentation > > configure:10055: result: no > > configure:10059: checking whether to enable experimental OpenJDK > > cross-compilation support > > configure:10076: result: no > > configure:10079: checking whether to include the XRender pipeline > > configure:10096: result: yes > > configure:10099: checking whether to include SystemTap tracing > > support > > configure:10116: result: no > > configure:10119: checking whether to include the NSS-based security > > provider > > configure:10141: result: disabled by default (edit java.security to > > enable) > > configure:10146: checking for distribution package version > > configure:10160: result: none > > configure:10174: checking build identification > > configure:10188: result: Custom build (Wed Mar 6 16:21:45 CET > > 2013) > > configure:10325: checking whether to build a bootstrap version > > first > > configure:10345: result: yes > > configure:10357: checking whether to download tarballs > > configure:10377: result: yes > > configure:10394: checking if a javah binary was specified > > configure:10412: result: no > > configure:10417: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah > > is > > a valid executable file > > configure:10420: result: yes > > configure:10517: checking if a jar binary was specified > > configure:10535: result: no > > configure:10540: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/jar is > > a > > valid executable file > > configure:10543: result: yes > > configure:10635: checking whether jar supports @ argument > > configure:10643: result: yes > > configure:10650: checking whether jar supports stdin file arguments > > configure:10654: result: yes > > configure:10662: checking whether jar supports -J options at the > > end > > configure:10666: result: yes > > configure:10682: checking if a rmic binary was specified > > configure:10700: result: no > > configure:10705: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/rmic > > is > > a > > valid executable file > > configure:10708: result: yes > > configure:10805: checking if a native2ascii binary was specified > > configure:10823: result: no > > configure:10828: checking if > > /usr/lib/jvm/java-1.5.0-gcj/bin/native2ascii is a valid executable > > file > > configure:10834: result: no > > configure:10839: checking for native2ascii > > configure:10872: result: no > > configure:10880: checking for gnative2ascii > > configure:10898: found /usr/bin/gnative2ascii > > configure:10910: result: /usr/bin/gnative2ascii > > configure:10927: checking for an ecj JAR file > > configure:10958: result: /usr/share/java/eclipse-ecj.jar > > configure:11011: checking for xsltproc > > configure:11029: found /usr/bin/xsltproc > > configure:11041: result: /usr/bin/xsltproc > > configure:11071: checking if we are using CACAO as the build VM > > configure:11084: result: no > > configure:11103: checking whether to include Javascript support via > > Rhino > > configure:11147: result: /usr/share/java/rhino.jar > > configure:11163: checking for an OpenJDK source zip > > configure:11190: result: not specified > > configure:11195: checking for a HotSpot source zip > > configure:11222: result: not specified > > configure:11227: checking for an alternate jar command > > configure:11257: result: not specified > > configure:11262: checking for a JAXP drop zip > > configure:11289: result: not specified > > configure:11294: checking for a JAF drop zip > > configure:11321: result: not specified > > configure:11326: checking for a JAXWS drop zip > > configure:11353: result: not specified > > configure:11360: checking for a CACAO home directory > > configure:11397: result: $(abs_top_builddir)/cacao/install > > configure:11402: checking for a CACAO source zip > > configure:11429: result: not specified > > configure:11434: checking for a CACAO source directory > > configure:11464: result: not specified > > configure:11471: checking for a JamVM source zip > > configure:11498: result: not specified > > configure:11504: checking whether to disable optimizations and > > build > > with -O0 -g > > configure:11524: result: no > > configure:11538: checking for additional virtual machines to build > > configure:11562: result: none > > configure:11634: checking whether to retrieve the source code from > > Mercurial > > configure:11654: result: no > > configure:11666: checking which Mercurial revision to use > > configure:11679: result: tip > > configure:11696: checking which Java timezone data directory to use > > configure:11723: result: /usr/share/javazi > > configure:11740: checking if > > javax.xml.stream.events.Attribute.getDTDType() wrongly returns a > > QName > > configure:11815: result: no > > configure:11828: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah > > exhibits Classpath bug 39408 > > #undef Test_POTATO > > #define Test_POTATO 0L > > configure:11875: result: no > > configure:11877: checking if /usr/lib/jvm/java-1.5.0-gcj/bin/javah > > exhibits Classpath bug 40188 > > configure:11892: result: yes > > configure:11916: checking for pax utility to use > > configure:11967: result: not specified > > configure:11978: checking cups/cups.h usability > > configure:11978: gcc -c -g -O2 conftest.c >&5 > > configure:11978: $? = 0 > > configure:11978: result: yes > > configure:11978: checking cups/cups.h presence > > configure:11978: gcc -E conftest.c > > configure:11978: $? = 0 > > configure:11978: result: yes > > configure:11978: checking for cups/cups.h > > configure:11978: result: yes > > configure:11978: checking cups/ppd.h usability > > configure:11978: gcc -c -g -O2 conftest.c >&5 > > configure:11978: $? = 0 > > configure:11978: result: yes > > configure:11978: checking cups/ppd.h presence > > configure:11978: gcc -E conftest.c > > configure:11978: $? = 0 > > configure:11978: result: yes > > configure:11978: checking for cups/ppd.h > > configure:11978: result: yes > > configure:11994: checking X11/X.h usability > > configure:11994: gcc -c -g -O2 conftest.c >&5 > > configure:11994: $? = 0 > > configure:11994: result: yes > > configure:11994: checking X11/X.h presence > > configure:11994: gcc -E conftest.c > > configure:11994: $? = 0 > > configure:11994: result: yes > > configure:11994: checking for X11/X.h > > configure:11994: result: yes > > configure:12008: checking for main in -ljpeg > > configure:12027: gcc -o conftest -g -O2 conftest.c -ljpeg >&5 > > configure:12027: $? = 0 > > configure:12036: result: yes > > configure:12049: checking for main in -lgif > > configure:12068: gcc -o conftest -g -O2 conftest.c -lgif -ljpeg > > >&5 > > configure:12068: $? = 0 > > configure:12077: result: yes > > configure:12090: checking for main in -lz > > configure:12109: gcc -o conftest -g -O2 conftest.c -lz -lgif > > -ljpeg >&5 > > configure:12109: $? = 0 > > configure:12118: result: yes > > configure:12134: checking for XPROTO > > configure:12141: $PKG_CONFIG --exists --print-errors "xproto" > > configure:12144: $? = 0 > > configure:12157: $PKG_CONFIG --exists --print-errors "xproto" > > configure:12160: $? = 0 > > configure:12197: result: yes > > configure:12211: checking for XT > > configure:12218: $PKG_CONFIG --exists --print-errors "xt" > > configure:12221: $? = 0 > > configure:12234: $PKG_CONFIG --exists --print-errors "xt" > > configure:12237: $? = 0 > > configure:12274: result: yes > > configure:12288: checking for XP > > configure:12295: $PKG_CONFIG --exists --print-errors "xp" > > configure:12298: $? = 0 > > configure:12311: $PKG_CONFIG --exists --print-errors "xp" > > configure:12314: $? = 0 > > configure:12351: result: yes > > configure:12365: checking for X11 > > configure:12372: $PKG_CONFIG --exists --print-errors "x11" > > configure:12375: $? = 0 > > configure:12388: $PKG_CONFIG --exists --print-errors "x11" > > configure:12391: $? = 0 > > configure:12428: result: yes > > configure:12442: checking for XINERAMA > > configure:12449: $PKG_CONFIG --exists --print-errors "xinerama" > > configure:12452: $? = 0 > > configure:12465: $PKG_CONFIG --exists --print-errors "xinerama" > > configure:12468: $? = 0 > > configure:12505: result: yes > > configure:12522: checking for XRENDER > > configure:12529: $PKG_CONFIG --exists --print-errors "xrender" > > configure:12532: $? = 0 > > configure:12545: $PKG_CONFIG --exists --print-errors "xrender" > > configure:12548: $? = 0 > > configure:12585: result: yes > > configure:12596: checking for absolute java home install dir > > configure:12610: result: > > /xfs/staging/staging-build-hs/icedtea6/openjdk.build/j2sdk-image > > configure:12711: checking for LIBPNG > > configure:12718: $PKG_CONFIG --exists --print-errors "libpng" > > configure:12721: $? = 0 > > configure:12734: $PKG_CONFIG --exists --print-errors "libpng" > > configure:12737: $? = 0 > > configure:12774: result: yes > > configure:12789: checking for XTST > > configure:12796: $PKG_CONFIG --exists --print-errors "xtst" > > configure:12799: $? = 0 > > configure:12812: $PKG_CONFIG --exists --print-errors "xtst" > > configure:12815: $? = 0 > > configure:12852: result: yes > > configure:12866: checking for FREETYPE2 > > configure:12873: $PKG_CONFIG --exists --print-errors "freetype2" > > configure:12876: $? = 0 > > configure:12889: $PKG_CONFIG --exists --print-errors "freetype2" > > configure:12892: $? = 0 > > configure:12929: result: yes > > configure:12946: checking for ALSA > > configure:12953: $PKG_CONFIG --exists --print-errors "alsa" > > configure:12956: $? = 0 > > configure:12969: $PKG_CONFIG --exists --print-errors "alsa" > > configure:12972: $? = 0 > > configure:13009: result: yes > > configure:13904: creating ./config.status > > > > ## ---------------------- ## > > ## Running config.status. ## > > ## ---------------------- ## > > > > This file was extended by icedtea6 config.status 1.13.0pre, which > > was > > generated by GNU Autoconf 2.68. Invocation command line was > > > > CONFIG_FILES = > > CONFIG_HEADERS = > > CONFIG_LINKS = > > CONFIG_COMMANDS = > > $ ./config.status > > > > on f17 > > > > config.status:1062: creating Makefile > > config.status:1062: creating jvm.cacao.cfg > > config.status:1062: creating jvm.jamvm.cfg > > config.status:1062: creating jvm.cfg > > config.status:1062: creating ergo.c > > config.status:1062: creating nss.cfg > > config.status:1062: creating javac > > config.status:1062: creating javap > > config.status:1062: creating tz.properties > > config.status:1062: creating pax-mark-vm > > config.status:1062: creating jconsole.desktop > > config.status:1062: creating policytool.desktop > > config.status:1234: executing depfiles commands > > > > ## ---------------- ## > > ## Cache variables. ## > > ## ---------------- ## > > > > ac_cv_build=x86_64-unknown-linux-gnu > > ac_cv_c_bigendian=no > > ac_cv_c_compiler_gnu=yes > > ac_cv_cxx_compiler_gnu=yes > > ac_cv_env_ALSA_CFLAGS_set= > > ac_cv_env_ALSA_CFLAGS_value= > > ac_cv_env_ALSA_LIBS_set= > > ac_cv_env_ALSA_LIBS_value= > > ac_cv_env_CCC_set= > > ac_cv_env_CCC_value= > > ac_cv_env_CC_set= > > ac_cv_env_CC_value= > > ac_cv_env_CFLAGS_set= > > ac_cv_env_CFLAGS_value= > > ac_cv_env_CPPFLAGS_set= > > ac_cv_env_CPPFLAGS_value= > > ac_cv_env_CPP_set= > > ac_cv_env_CPP_value= > > ac_cv_env_CXXFLAGS_set= > > ac_cv_env_CXXFLAGS_value= > > ac_cv_env_CXX_set= > > ac_cv_env_CXX_value= > > ac_cv_env_FREETYPE2_CFLAGS_set= > > ac_cv_env_FREETYPE2_CFLAGS_value= > > ac_cv_env_FREETYPE2_LIBS_set= > > ac_cv_env_FREETYPE2_LIBS_value= > > ac_cv_env_LDFLAGS_set= > > ac_cv_env_LDFLAGS_value= > > ac_cv_env_LIBFFI_CFLAGS_set= > > ac_cv_env_LIBFFI_CFLAGS_value= > > ac_cv_env_LIBFFI_LIBS_set= > > ac_cv_env_LIBFFI_LIBS_value= > > ac_cv_env_LIBPNG_CFLAGS_set= > > ac_cv_env_LIBPNG_CFLAGS_value= > > ac_cv_env_LIBPNG_LIBS_set= > > ac_cv_env_LIBPNG_LIBS_value= > > ac_cv_env_LIBPULSE_CFLAGS_set= > > ac_cv_env_LIBPULSE_CFLAGS_value= > > ac_cv_env_LIBPULSE_LIBS_set= > > ac_cv_env_LIBPULSE_LIBS_value= > > ac_cv_env_LIBS_set= > > ac_cv_env_LIBS_value= > > ac_cv_env_NSS_CFLAGS_set= > > ac_cv_env_NSS_CFLAGS_value= > > ac_cv_env_NSS_LIBS_set= > > ac_cv_env_NSS_LIBS_value= > > ac_cv_env_PKG_CONFIG_LIBDIR_set= > > ac_cv_env_PKG_CONFIG_LIBDIR_value= > > ac_cv_env_PKG_CONFIG_PATH_set= > > ac_cv_env_PKG_CONFIG_PATH_value= > > ac_cv_env_PKG_CONFIG_set= > > ac_cv_env_PKG_CONFIG_value= > > ac_cv_env_X11_CFLAGS_set= > > ac_cv_env_X11_CFLAGS_value= > > ac_cv_env_X11_LIBS_set= > > ac_cv_env_X11_LIBS_value= > > ac_cv_env_XINERAMA_CFLAGS_set= > > ac_cv_env_XINERAMA_CFLAGS_value= > > ac_cv_env_XINERAMA_LIBS_set= > > ac_cv_env_XINERAMA_LIBS_value= > > ac_cv_env_XPROTO_CFLAGS_set= > > ac_cv_env_XPROTO_CFLAGS_value= > > ac_cv_env_XPROTO_LIBS_set= > > ac_cv_env_XPROTO_LIBS_value= > > ac_cv_env_XP_CFLAGS_set= > > ac_cv_env_XP_CFLAGS_value= > > ac_cv_env_XP_LIBS_set= > > ac_cv_env_XP_LIBS_value= > > ac_cv_env_XRENDER_CFLAGS_set= > > ac_cv_env_XRENDER_CFLAGS_value= > > ac_cv_env_XRENDER_LIBS_set= > > ac_cv_env_XRENDER_LIBS_value= > > ac_cv_env_XTST_CFLAGS_set= > > ac_cv_env_XTST_CFLAGS_value= > > ac_cv_env_XTST_LIBS_set= > > ac_cv_env_XTST_LIBS_value= > > ac_cv_env_XT_CFLAGS_set= > > ac_cv_env_XT_CFLAGS_value= > > ac_cv_env_XT_LIBS_set= > > ac_cv_env_XT_LIBS_value= > > ac_cv_env_build_alias_set= > > ac_cv_env_build_alias_value= > > ac_cv_env_host_alias_set= > > ac_cv_env_host_alias_value= > > ac_cv_env_target_alias_set= > > ac_cv_env_target_alias_value= > > ac_cv_header_X11_X_h=yes > > ac_cv_header_cups_cups_h=yes > > ac_cv_header_cups_ppd_h=yes > > ac_cv_header_inttypes_h=yes > > ac_cv_header_memory_h=yes > > ac_cv_header_stdc=yes > > ac_cv_header_stdint_h=yes > > ac_cv_header_stdlib_h=yes > > ac_cv_header_string_h=yes > > ac_cv_header_strings_h=yes > > ac_cv_header_sys_stat_h=yes > > ac_cv_header_sys_types_h=yes > > ac_cv_header_unistd_h=yes > > ac_cv_host=x86_64-unknown-linux-gnu > > ac_cv_lib_gif_main=yes > > ac_cv_lib_jpeg_main=yes > > ac_cv_lib_z_main=yes > > ac_cv_objext=o > > ac_cv_path_EGREP='/usr/bin/grep -E' > > ac_cv_path_GREP=/usr/bin/grep > > ac_cv_path_NATIVE2ASCII=/usr/bin/gnative2ascii > > ac_cv_path_ac_pt_ANT=/usr/bin/ant > > ac_cv_path_ac_pt_CHMOD=/usr/bin/chmod > > ac_cv_path_ac_pt_CPIO=/usr/bin/cpio > > ac_cv_path_ac_pt_FILE=/usr/bin/file > > ac_cv_path_ac_pt_FIND=/usr/bin/find > > ac_cv_path_ac_pt_GAWK=/usr/bin/gawk > > ac_cv_path_ac_pt_GETCONF=/usr/bin/getconf > > ac_cv_path_ac_pt_GZIP=/usr/bin/gzip > > ac_cv_path_ac_pt_HG=/usr/bin/hg > > ac_cv_path_ac_pt_LINUX32=/usr/bin/linux32 > > ac_cv_path_ac_pt_MAKE=/usr/bin/make > > ac_cv_path_ac_pt_PATCH=/usr/bin/patch > > ac_cv_path_ac_pt_PKG_CONFIG=/usr/bin/pkg-config > > ac_cv_path_ac_pt_SHA256SUM=/usr/bin/sha256sum > > ac_cv_path_ac_pt_TAR=/usr/bin/tar > > ac_cv_path_ac_pt_UNZIP=/usr/bin/unzip > > ac_cv_path_ac_pt_WGET=/usr/bin/wget > > ac_cv_path_ac_pt_XSLTPROC=/usr/bin/xsltproc > > ac_cv_path_ac_pt_ZIP=/usr/bin/zip > > ac_cv_path_install='/usr/bin/install -c' > > ac_cv_path_mkdir=/usr/bin/mkdir > > ac_cv_prog_AWK=gawk > > ac_cv_prog_CPP='gcc -E' > > ac_cv_prog_ac_ct_CC=gcc > > ac_cv_prog_ac_ct_CXX=g++ > > ac_cv_prog_ac_ct_FASTJAR=fastjar > > ac_cv_prog_ac_ct_LDD=ldd > > ac_cv_prog_cc_c89= > > ac_cv_prog_cc_g=yes > > ac_cv_prog_cxx_g=yes > > ac_cv_prog_make_make_set=yes > > am_cv_CC_dependencies_compiler_type=none > > am_cv_CXX_dependencies_compiler_type=none > > am_cv_prog_tar_pax=gnutar > > it_cv_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG=yes > > it_cv_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG=yes > > it_cv_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE=no > > it_cv_JAVAX_SECURITY_SASL_SASL_CREDENTIALS=yes > > it_cv_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER=yes > > it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT=yes > > it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER=yes > > it_cv_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT=yes > > it_cv_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER=yes > > it_cv_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS=yes > > it_cv_ORBUTILSYSTEMEXCEPTION=yes > > it_cv_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE=yes > > it_cv_cacao=no > > it_cv_cp39408_javah=no > > it_cv_cp40188_javah=yes > > it_cv_dtdtype=no > > it_cv_ecj=yes > > it_cv_hardlink_src=yes > > it_cv_jdk_works=yes > > it_cv_proc=8 > > it_cv_reflink=yes > > pkg_cv_ALSA_CFLAGS='-I/usr/include/alsa ' > > pkg_cv_ALSA_LIBS='-lasound ' > > pkg_cv_FREETYPE2_CFLAGS='-I/usr/include/freetype2 ' > > pkg_cv_FREETYPE2_LIBS='-lfreetype ' > > pkg_cv_LIBPNG_CFLAGS='-I/usr/include/libpng15 ' > > pkg_cv_LIBPNG_LIBS='-lpng15 ' > > pkg_cv_X11_CFLAGS=' ' > > pkg_cv_X11_LIBS='-lX11 ' > > pkg_cv_XINERAMA_CFLAGS=' ' > > pkg_cv_XINERAMA_LIBS='-lXinerama ' > > pkg_cv_XPROTO_CFLAGS=' ' > > pkg_cv_XPROTO_LIBS=' ' > > pkg_cv_XP_CFLAGS=' ' > > pkg_cv_XP_LIBS='-lXp -lXau ' > > pkg_cv_XRENDER_CFLAGS=' ' > > pkg_cv_XRENDER_LIBS='-lXrender -lX11 ' > > pkg_cv_XTST_CFLAGS=' ' > > pkg_cv_XTST_LIBS='-lXtst ' > > pkg_cv_XT_CFLAGS=' ' > > pkg_cv_XT_LIBS='-lXt -lX11 ' > > > > ## ----------------- ## > > ## Output variables. ## > > ## ----------------- ## > > > > ABS_CLIENT_LIBJVM_SO='' > > ABS_JAVA_HOME_DIR='/xfs/staging/staging-build-hs/icedtea6/openjdk.build/j2sdk-image' > > ABS_SERVER_LIBJVM_SO='' > > ACLOCAL='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > > --run > > aclocal-1.11' > > ADD_CACAO_BUILD_FALSE='' > > ADD_CACAO_BUILD_TRUE='#' > > ADD_JAMVM_BUILD_FALSE='' > > ADD_JAMVM_BUILD_TRUE='#' > > ADD_SHARK_BUILD_FALSE='' > > ADD_SHARK_BUILD_TRUE='#' > > ADD_ZERO_BUILD_FALSE='' > > ADD_ZERO_BUILD_TRUE='#' > > ALSA_CFLAGS='-I/usr/include/alsa ' > > ALSA_LIBS='-lasound ' > > ALT_CACAO_SRC_DIR='not specified' > > ALT_CACAO_SRC_ZIP='not specified' > > ALT_HOTSPOT_SRC_ZIP='not specified' > > ALT_JAF_DROP_ZIP='not specified' > > ALT_JAMVM_SRC_ZIP='not specified' > > ALT_JAR_CMD='not specified' > > ALT_JAXP_DROP_ZIP='not specified' > > ALT_JAXWS_DROP_ZIP='not specified' > > ALT_OPENJDK_SRC_ZIP='not specified' > > AMDEPBACKSLASH='\' > > AMDEP_FALSE='#' > > AMDEP_TRUE='' > > AMTAR='$${TAR-tar}' > > ANT='/usr/bin/ant' > > ARCHFLAG='-m64' > > ARCH_PREFIX='' > > AUTOCONF='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > > --run autoconf' > > AUTOHEADER='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > > --run autoheader' > > AUTOMAKE='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > > --run automake-1.11' > > AWK='gawk' > > BOOTSTRAPPING_FALSE='#' > > BOOTSTRAPPING_TRUE='' > > BUILD_ARCH_DIR='amd64' > > BUILD_CACAO_FALSE='' > > BUILD_CACAO_TRUE='#' > > BUILD_JAMVM_FALSE='' > > BUILD_JAMVM_TRUE='#' > > BUILD_OS_DIR='linux' > > CACAO_IMPORT_PATH='$(abs_top_builddir)/cacao/install' > > CC='gcc' > > CCDEPMODE='depmode=none' > > CFLAGS='-g -O2' > > CHMOD='/usr/bin/chmod' > > CONFIGURE_ARGS=' '\''--with-parallel-jobs=8'\'' > > '\''--disable-docs'\'' > > '\''--with-jdk-home=/usr/lib/jvm/java-1.5.0-gcj'\''' > > CP39408_JAVAH_FALSE='' > > CP39408_JAVAH_TRUE='#' > > CP40188_JAVAH_FALSE='#' > > CP40188_JAVAH_TRUE='' > > CPIO='/usr/bin/cpio' > > CPP='gcc -E' > > CPPFLAGS='' > > CP_SUPPORTS_REFLINK_FALSE='#' > > CP_SUPPORTS_REFLINK_TRUE='' > > CROSS_TARGET_ARCH='x86_64' > > CXX='g++' > > CXXDEPMODE='depmode=none' > > CXXFLAGS='-g -O2' > > CYGPATH_W='echo' > > DEFAULT_LIBDIR='' > > DEFS='-DPACKAGE_NAME=\"icedtea6\" -DPACKAGE_TARNAME=\"icedtea6\" > > -DPACKAGE_VERSION=\"1.13.0pre\" -DPACKAGE_STRING=\"icedtea6\ > > 1.13.0pre\" -DPACKAGE_BUGREPORT=\"distro-pkg-dev at openjdk.java.net\" > > -DPACKAGE_URL=\"\" -DPACKAGE=\"icedtea6\" -DVERSION=\"1.13.0pre\" > > -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 > > -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 > > -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 > > -DHAVE_UNISTD_H=1 -DHAVE_CUPS_CUPS_H=1 -DHAVE_CUPS_PPD_H=1 > > -DHAVE_X11_X_H=1 -DHAVE_LIBJPEG=1 -DHAVE_LIBGIF=1 -DHAVE_LIBZ=1' > > DEPDIR='.deps' > > DISABLE_HOTSPOT_TESTS_FALSE='' > > DISABLE_HOTSPOT_TESTS_TRUE='#' > > DISABLE_JDK_TESTS_FALSE='' > > DISABLE_JDK_TESTS_TRUE='#' > > DISABLE_LANGTOOLS_TESTS_FALSE='' > > DISABLE_LANGTOOLS_TESTS_TRUE='#' > > DISABLE_OPTIMIZATIONS_FALSE='' > > DISABLE_OPTIMIZATIONS_TRUE='#' > > DISABLE_TESTS_FALSE='' > > DISABLE_TESTS_TRUE='#' > > DIST_ID='Custom build (Wed Mar 6 16:21:45 CET 2013)' > > DIST_NAME='linux-gnu' > > DOWNLOADING_FALSE='#' > > DOWNLOADING_TRUE='' > > DTDTYPE_QNAME_FALSE='' > > DTDTYPE_QNAME_TRUE='#' > > ECHO_C='' > > ECHO_N='-n' > > ECHO_T='' > > ECJ='/usr/bin/ecj' > > ECJ_JAR='/usr/share/java/eclipse-ecj.jar' > > EGREP='/usr/bin/grep -E' > > ENABLE_CACAO='no' > > ENABLE_CACAO_FALSE='' > > ENABLE_CACAO_TRUE='#' > > ENABLE_CROSS_COMPILATION_FALSE='' > > ENABLE_CROSS_COMPILATION_TRUE='#' > > ENABLE_DOCS_FALSE='' > > ENABLE_DOCS_TRUE='#' > > ENABLE_JAMVM='no' > > ENABLE_JAMVM_FALSE='' > > ENABLE_JAMVM_TRUE='#' > > ENABLE_NSS_FALSE='' > > ENABLE_NSS_TRUE='#' > > ENABLE_PULSE_JAVA_FALSE='' > > ENABLE_PULSE_JAVA_TRUE='#' > > ENABLE_SYSTEMTAP_FALSE='' > > ENABLE_SYSTEMTAP_TRUE='#' > > ENABLE_XRENDER_FALSE='#' > > ENABLE_XRENDER_TRUE='' > > EXEEXT='' > > FASTJAR='fastjar' > > FILE='/usr/bin/file' > > FIND='/usr/bin/find' > > FREETYPE2_CFLAGS='-I/usr/include/freetype2 ' > > FREETYPE2_LIBS='-lfreetype ' > > GAWK='/usr/bin/gawk' > > GCC_OLD_FALSE='' > > GCC_OLD_TRUE='#' > > GCJ='no' > > GETCONF='/usr/bin/getconf' > > GREP='/usr/bin/grep' > > GZIP='/usr/bin/gzip' > > HAS_HOTSPOT_REVISION_FALSE='' > > HAS_HOTSPOT_REVISION_TRUE='#' > > HAS_ICEDTEA_REVISION_FALSE='#' > > HAS_ICEDTEA_REVISION_TRUE='' > > HAS_JDK_REVISION_FALSE='' > > HAS_JDK_REVISION_TRUE='#' > > HAS_PKGVERSION_FALSE='' > > HAS_PKGVERSION_TRUE='#' > > HG='/usr/bin/hg' > > HGREV='' > > HOTSPOT_REVISION='none' > > HSBUILD='hs23' > > ICEDTEA_REVISION='r9b60104392f1' > > INSTALL_ARCH_DIR='amd64' > > INSTALL_DATA='${INSTALL} -m 644' > > INSTALL_PROGRAM='${INSTALL}' > > INSTALL_SCRIPT='${INSTALL}' > > INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' > > JAR='/usr/lib/jvm/java-1.5.0-gcj/bin/jar' > > JAR_ACCEPTS_STDIN_LIST='1' > > JAR_KNOWS_ATFILE='1' > > JAR_KNOWS_J_OPTIONS='1' > > JAVA='/usr/lib/jvm/java-1.5.0-gcj/bin/java' > > JAVAC='/usr/lib/jvm/java-1.5.0-gcj/bin/javac' > > JAVAH='/usr/lib/jvm/java-1.5.0-gcj/bin/javah' > > JDK_REVISION='none' > > JRE_ARCH_DIR='amd64' > > LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG_FALSE='#' > > LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_THREE_ARG_TRUE='' > > LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG_FALSE='#' > > LACKS_JAVAX_MANAGEMENT_STANDARDMBEAN_MXBEAN_TWO_ARG_TRUE='' > > LACKS_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE_FALSE='' > > LACKS_JAVAX_SECURITY_AUTH_KERBEROS_KERBEROSTICKET_GETSESSIONKEYTYPE_TRUE='#' > > LACKS_JAVAX_SECURITY_SASL_SASL_CREDENTIALS_FALSE='#' > > LACKS_JAVAX_SECURITY_SASL_SASL_CREDENTIALS_TRUE='' > > LACKS_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER_FALSE='#' > > LACKS_JAVAX_SWING_PLAF_BASIC_BASICDIRECTORYMODEL_ADDPROPERTYCHANGELISTENER_TRUE='' > > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT_FALSE='#' > > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_GETSUBJECT_TRUE='' > > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER_FALSE='#' > > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETISSUER_TRUE='' > > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT_FALSE='#' > > LACKS_JAVA_SECURITY_CERT_X509CERTSELECTOR_SETSUBJECT_TRUE='' > > LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER_FALSE='#' > > LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_ADDISSUER_TRUE='' > > LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS_FALSE='#' > > LACKS_JAVA_SECURITY_CERT_X509CRLSELECTOR_SETISSUERS_TRUE='' > > LACKS_ORBUTILSYSTEMEXCEPTION_FALSE='#' > > LACKS_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE_FALSE='#' > > LACKS_ORBUTILSYSTEMEXCEPTION_IOEXCEPTIONONCLOSE_THROWABLE_TRUE='' > > LACKS_ORBUTILSYSTEMEXCEPTION_TRUE='' > > LDD='ldd' > > LDFLAGS='' > > LIBFFI_CFLAGS='' > > LIBFFI_LIBS='' > > LIBOBJS='' > > LIBPNG_CFLAGS='-I/usr/include/libpng15 ' > > LIBPNG_LIBS='-lpng15 ' > > LIBPULSE_CFLAGS='' > > LIBPULSE_LIBS='' > > LIBS='-lz -lgif -ljpeg ' > > LINUX32='/usr/bin/linux32' > > LLVM_CFLAGS='' > > LLVM_CONFIG='' > > LLVM_LDFLAGS='' > > LLVM_LIBS='' > > LSB_RELEASE='' > > LTLIBOBJS='' > > MAKE='/usr/bin/make' > > MAKEINFO='${SHELL} /xfs/staging/staging-build-hs/icedtea6/missing > > --run makeinfo' > > MKDIR_P='/usr/bin/mkdir -p' > > NATIVE2ASCII='/usr/bin/gnative2ascii' > > NSS_CFLAGS='' > > NSS_LIBDIR='' > > NSS_LIBS='' > > OBJEXT='o' > > OPENJDK_BUILD_DIR='openjdk.build' > > OPENJDK_SRC_DIR='/xfs/staging/staging-build-hs/icedtea6/openjdk' > > OPENJDK_SRC_DIR_FOUND_FALSE='' > > OPENJDK_SRC_DIR_FOUND_TRUE='#' > > OPENJDK_SRC_DIR_HARDLINKABLE_FALSE='' > > OPENJDK_SRC_DIR_HARDLINKABLE_TRUE='#' > > OS_PATH='' > > PACKAGE='icedtea6' > > PACKAGE_BUGREPORT='distro-pkg-dev at openjdk.java.net' > > PACKAGE_NAME='icedtea6' > > PACKAGE_STRING='icedtea6 1.13.0pre' > > PACKAGE_TARNAME='icedtea6' > > PACKAGE_URL='' > > PACKAGE_VERSION='1.13.0pre' > > PARALLEL_JOBS='8' > > PATCH='/usr/bin/patch' > > PATH_SEPARATOR=':' > > PAX_COMMAND='not specified' > > PAX_COMMAND_ARGS='not specified' > > PKGVERSION='none' > > PKG_CONFIG='/usr/bin/pkg-config' > > PKG_CONFIG_LIBDIR='' > > PKG_CONFIG_PATH='' > > RHINO_JAR='/usr/share/java/rhino.jar' > > RMIC='/usr/lib/jvm/java-1.5.0-gcj/bin/rmic' > > SET_MAKE='' > > SHA256SUM='/usr/bin/sha256sum' > > SHARK_BUILD_FALSE='' > > SHARK_BUILD_TRUE='#' > > SHELL='/bin/sh' > > SRC_DIR_HARDLINKABLE_FALSE='#' > > SRC_DIR_HARDLINKABLE_TRUE='' > > STRIP='' > > SYSTEM_ANT_DIR='/usr/share/ant' > > SYSTEM_JDK_DIR='/usr/lib/jvm/java-1.5.0-gcj' > > TAR='/usr/bin/tar' > > TZDATA_DIR='/usr/share/javazi' > > UNZIP='/usr/bin/unzip' > > USE_ALT_CACAO_SRC_DIR_FALSE='' > > USE_ALT_CACAO_SRC_DIR_TRUE='#' > > USE_ALT_CACAO_SRC_ZIP_FALSE='' > > USE_ALT_CACAO_SRC_ZIP_TRUE='#' > > USE_ALT_HOTSPOT_SRC_ZIP_FALSE='' > > USE_ALT_HOTSPOT_SRC_ZIP_TRUE='#' > > USE_ALT_JAF_DROP_ZIP_FALSE='' > > USE_ALT_JAF_DROP_ZIP_TRUE='#' > > USE_ALT_JAMVM_SRC_ZIP_FALSE='' > > USE_ALT_JAMVM_SRC_ZIP_TRUE='#' > > USE_ALT_JAR_FALSE='' > > USE_ALT_JAR_TRUE='#' > > USE_ALT_JAXP_DROP_ZIP_FALSE='' > > USE_ALT_JAXP_DROP_ZIP_TRUE='#' > > USE_ALT_JAXWS_DROP_ZIP_FALSE='' > > USE_ALT_JAXWS_DROP_ZIP_TRUE='#' > > USE_ALT_OPENJDK_SRC_ZIP_FALSE='' > > USE_ALT_OPENJDK_SRC_ZIP_TRUE='#' > > USE_HG_FALSE='' > > USE_HG_TRUE='#' > > USE_SYSTEM_CACAO_FALSE='' > > USE_SYSTEM_CACAO_TRUE='#' > > USING_CACAO='no' > > USING_CACAO_FALSE='' > > USING_CACAO_TRUE='#' > > USING_ECJ='yes' > > VERSION='1.13.0pre' > > WGET='/usr/bin/wget' > > WITH_ALT_HSBUILD_FALSE='#' > > WITH_ALT_HSBUILD_TRUE='' > > WITH_HGREV_FALSE='' > > WITH_HGREV_TRUE='#' > > WITH_PAX_FALSE='' > > WITH_PAX_TRUE='#' > > WITH_RHINO_FALSE='#' > > WITH_RHINO_TRUE='' > > WITH_TZDATA_DIR_FALSE='#' > > WITH_TZDATA_DIR_TRUE='' > > X11_CFLAGS=' ' > > X11_LIBS='-lX11 ' > > XINERAMA_CFLAGS=' ' > > XINERAMA_LIBS='-lXinerama ' > > XPROTO_CFLAGS=' ' > > XPROTO_LIBS=' ' > > XP_CFLAGS=' ' > > XP_LIBS='-lXp -lXau ' > > XRENDER_CFLAGS=' ' > > XRENDER_LIBS='-lXrender -lX11 ' > > XSLTPROC='/usr/bin/xsltproc' > > XTST_CFLAGS=' ' > > XTST_LIBS='-lXtst ' > > XT_CFLAGS=' ' > > XT_LIBS='-lXt -lX11 ' > > XVFB_RUN_CMD='' > > ZERO_ARCHDEF='AMD64' > > ZERO_BITSPERWORD='64' > > ZERO_BUILD_FALSE='' > > ZERO_BUILD_TRUE='#' > > ZERO_ENDIANNESS='little' > > ZERO_LIBARCH='amd64' > > ZIP='/usr/bin/zip' > > abs_top_builddir='/xfs/staging/staging-build-hs/icedtea6' > > abs_top_srcdir='/xfs/staging/staging-build-hs/icedtea6' > > ac_ct_CC='gcc' > > ac_ct_CXX='g++' > > ac_ct_FASTJAR='fastjar' > > am__EXEEXT_FALSE='' > > am__EXEEXT_TRUE='#' > > am__fastdepCC_FALSE='' > > am__fastdepCC_TRUE='#' > > am__fastdepCXX_FALSE='' > > am__fastdepCXX_TRUE='#' > > am__include='include' > > am__isrc='' > > am__leading_dot='.' > > am__nodep='_no' > > am__quote='' > > am__tar='tar --format=posix -chf - "$$tardir"' > > am__untar='tar -xf -' > > bindir='${exec_prefix}/bin' > > build='x86_64-unknown-linux-gnu' > > build_alias='' > > build_cpu='x86_64' > > build_os='linux-gnu' > > build_vendor='unknown' > > datadir='${datarootdir}' > > datarootdir='${prefix}/share' > > docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' > > dvidir='${docdir}' > > enable_downloading='yes' > > exec_prefix='${prefix}' > > host='x86_64-unknown-linux-gnu' > > host_alias='' > > host_cpu='x86_64' > > host_os='linux-gnu' > > host_vendor='unknown' > > htmldir='${docdir}' > > includedir='${prefix}/include' > > infodir='${datarootdir}/info' > > install_sh='${SHELL} > > /xfs/staging/staging-build-hs/icedtea6/install-sh' > > libdir='${exec_prefix}/lib' > > libexecdir='${exec_prefix}/libexec' > > localedir='${datarootdir}/locale' > > localstatedir='${prefix}/var' > > mandir='${datarootdir}/man' > > mkdir_p='/usr/bin/mkdir -p' > > oldincludedir='/usr/include' > > pdfdir='${docdir}' > > prefix='bootstrap' > > program_transform_name='s,x,x,' > > psdir='${docdir}' > > sbindir='${exec_prefix}/sbin' > > sharedstatedir='${prefix}/com' > > sysconfdir='${prefix}/etc' > > target_alias='' > > > > ## ----------- ## > > ## confdefs.h. ## > > ## ----------- ## > > > > /* confdefs.h */ > > #define PACKAGE_NAME "icedtea6" > > #define PACKAGE_TARNAME "icedtea6" > > #define PACKAGE_VERSION "1.13.0pre" > > #define PACKAGE_STRING "icedtea6 1.13.0pre" > > #define PACKAGE_BUGREPORT "distro-pkg-dev at openjdk.java.net" > > #define PACKAGE_URL "" > > #define PACKAGE "icedtea6" > > #define VERSION "1.13.0pre" > > #define STDC_HEADERS 1 > > #define HAVE_SYS_TYPES_H 1 > > #define HAVE_SYS_STAT_H 1 > > #define HAVE_STDLIB_H 1 > > #define HAVE_STRING_H 1 > > #define HAVE_MEMORY_H 1 > > #define HAVE_STRINGS_H 1 > > #define HAVE_INTTYPES_H 1 > > #define HAVE_STDINT_H 1 > > #define HAVE_UNISTD_H 1 > > #define HAVE_CUPS_CUPS_H 1 > > #define HAVE_CUPS_PPD_H 1 > > #define HAVE_X11_X_H 1 > > #define HAVE_LIBJPEG 1 > > #define HAVE_LIBGIF 1 > > #define HAVE_LIBZ 1 > > > > configure: exit 0 > > > > Thanks Stefan. I can't see anything obviously wrong in the method > detection, so > it probably is just a case of ecj no longer dragging in that file. > I'll add > an explicit check and you can let me know if it fixes things :-) > > Thanks, > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > I've filed a bug for this: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1336 -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:45:52 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:45:52 +0000 Subject: [Bug 1338] New: [IcedTea6] Remove dependence on libXp Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1338 Bug ID: 1338 Summary: [IcedTea6] Remove dependence on libXp Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-February/022037.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/e3ad9027/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:46:21 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:46:21 +0000 Subject: [Bug 1338] [IcedTea6] Remove dependence on libXp In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1338 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED --- Comment #1 from Andrew John Hughes --- Verified that indeed libXp.so is not linked from any of the libraries in an OpenJDK6 build. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/555492fd/attachment.html From gnu.andrew at redhat.com Thu Mar 7 04:47:02 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 7 Mar 2013 07:47:02 -0500 (EST) Subject: [patch] libxp-dev isn't needed anymore In-Reply-To: <1288319501.13879475.1362583878996.JavaMail.root@redhat.com> Message-ID: <716185391.14443235.1362660422351.JavaMail.root@redhat.com> ----- Original Message ----- > ----- Original Message ----- > > this is in 7, but should go to all 6 branches too. libxp-dev isn't > > needed > > anymore by any icedtea6 branch. > > > > Matthias > > > > > > > > Do you know why this is the case? > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > Verified dynamic linking and bug filed: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1338 -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:48:26 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:48:26 +0000 Subject: [Bug 1339] New: [IcedTea6] Simplify the rhino class rewriter to avoid use of concurrency Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1339 Bug ID: 1339 Summary: [IcedTea6] Simplify the rhino class rewriter to avoid use of concurrency Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-February/022038.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/54e695a8/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:48:38 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:48:38 +0000 Subject: [Bug 1339] [IcedTea6] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1339 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/9dbfcaee/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:49:01 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:49:01 +0000 Subject: [Bug 1339] [IcedTea6] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1339 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |6-1.13.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/b78aa002/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:49:18 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:49:18 +0000 Subject: [Bug 1339] [IcedTea6] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1339 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |1272 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/5f28cc09/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:49:18 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:49:18 +0000 Subject: [Bug 1272] [TRACKER] IcedTea6 1.13 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1272 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1339 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/a1ed96ff/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:52:21 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:52:21 +0000 Subject: [Bug 1340] New: [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 Bug ID: 1340 Summary: [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency Classification: Unclassified Product: IcedTea Version: 7-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-February/022038.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/020d3d2d/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:52:45 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:52:45 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1274 Target Milestone|--- |2.4.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/a8a57b82/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:52:45 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:52:45 +0000 Subject: [Bug 1274] [TRACKER] IcedTea 2.4.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1274 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1340 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/e41ccbc5/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:54:07 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:54:07 +0000 Subject: [Bug 1341] New: [IcedTea8] Simplify the rhino class rewriter to avoid use of concurrency Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1341 Bug ID: 1341 Summary: [IcedTea8] Simplify the rhino class rewriter to avoid use of concurrency Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-February/022038.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/108ca4d7/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:54:20 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:54:20 +0000 Subject: [Bug 1341] [IcedTea8] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1341 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/6f9344cc/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:54:20 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:54:20 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1341 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/5e1803f5/attachment.html From gnu.andrew at redhat.com Thu Mar 7 04:54:40 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 7 Mar 2013 07:54:40 -0500 (EST) Subject: [rfc] simply the rhino class rewriter In-Reply-To: <51249CD7.4090302@ubuntu.com> Message-ID: <1802249861.14446368.1362660880804.JavaMail.root@redhat.com> ----- Original Message ----- > I have seen early build failures in rewriting the rhino jar file on > architectures like sh, mips, s390, sometimes on sparc64 too. I don't > think it's > essential to stress the stage1 VM with concurrent features, so > simplifying it > should make the bootstrap more robust. Currently applying at least > this for > distro builds. This, or something simpler, should go to all open > branches. > > Matthias > > Bugs filed: 6: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1339 7: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 8: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1341 Filing a bug would be the easiest way to track such things in future, rather than e-mails which can get lost. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 04:59:46 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 12:59:46 +0000 Subject: [Bug 1321] [IcdeTea6] crash outside the JVM In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1321 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Version|6-1.0 |6-1.10.4 Resolution|--- |WONTFIX Severity|blocker |normal --- Comment #2 from Andrew John Hughes --- No reproducer information and 1.10.4 is no longer supported. Closing. Please reopen against a newer version with sufficient information to reproduce the issue. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/43a09b66/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:00:11 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:00:11 +0000 Subject: [Bug 1322] SIGSEV crashes using pulse explorer In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1322 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #834|application/octet-stream |text/plain mime type| | -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/c8af7205/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:02:35 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:02:35 +0000 Subject: [Bug 1322] SIGSEV crashes using pulse explorer In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1322 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |INVALID --- Comment #2 from Andrew John Hughes --- This is a crash in Gtk+ native code, not the VM. Please report to the Eclipse developers. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/cfd692bf/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:03:31 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:03:31 +0000 Subject: [Bug 1324] I often get a crash like this, located in 'libzip.so' In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1324 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Version|unspecified |6-1.8.13 Resolution|--- |WONTFIX --- Comment #2 from Andrew John Hughes --- 1.8.13 is no longer supported. Please reopen if this can be reproduced with a current version, providing details of how to do so. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/9e629751/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:04:54 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:04:54 +0000 Subject: [Bug 1319] [IcedTea6] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1319 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED |--- --- Comment #4 from Andrew John Hughes --- See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/59efe7b3/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:05:59 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:05:59 +0000 Subject: [Bug 1326] JVM crashes on JavaThread "Java2D Disposer" In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1326 --- Comment #1 from Andrew John Hughes --- What version is being used here? Your crash dump doesn't include the IcedTea version, which suggests this isn't an IcedTea build. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/88f40634/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:07:15 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:07:15 +0000 Subject: [Bug 1330] Fatal error: SIGSEGV In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1330 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Version|unspecified |6-1.8.13 Resolution|--- |WONTFIX --- Comment #1 from Andrew John Hughes --- 1.8.13 is no longer supported. Please reopen if reproducible on a currently supported version with information on how to do so. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/09e1a34b/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:07:38 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:07:38 +0000 Subject: [Bug 1337] Java/javac crash with SIGFPE In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1337 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|blocker |normal -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/8cb12ff6/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:09:46 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:09:46 +0000 Subject: [Bug 1337] Java/javac crash with SIGFPE In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1337 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #840|text/x-log |text/plain mime type| | -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/b89886bb/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:11:30 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:11:30 +0000 Subject: [Bug 1337] Java/javac crash with SIGFPE In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1337 --- Comment #1 from Andrew John Hughes --- This doesn't even look like an IcedTea build and I have no idea how this may be reproduced. What and how did you build this? And why are you running as root? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/a0f92525/attachment.html From bugzilla-daemon at icedtea.classpath.org Thu Mar 7 05:54:10 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 07 Mar 2013 13:54:10 +0000 Subject: [Bug 1337] Java/javac crash with SIGFPE In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1337 --- Comment #2 from LCD Administrator --- I didn't build this, it was part of the Scientific Linux update that I had just done via 'yum'. I have no information about how it was built. The crash identifies IcedTea as the place to report bugs. I was running as root because I had just applied a number of updates via 'yum' and was testing the result. What login I was actually running as doesn't matter. It produces the same result regardless of login. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130307/33069e08/attachment.html From adomurad at redhat.com Thu Mar 7 06:05:58 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 07 Mar 2013 09:05:58 -0500 Subject: [rfc][icedtea-web] Reproducer for PR1198: JSObject#eval creates invalid JS object In-Reply-To: References: <509D58CD.7050409@redhat.com> <50A0E733.90100@redhat.com> Message-ID: <51389EC6.1070305@redhat.com> On 03/07/2013 07:17 AM, helpcrypto helpcrypto wrote: > Hi. > > > Today i updated/upgraded an Ubuntu 12.04 and checked dpkg --list: > ii icedtea-6-jre-cacao > 6b27-1.12.3-0ubuntu1~12.04.1 Alternative JVM for OpenJDK, > using Cacao > ii icedtea-6-jre-jamvm > 6b27-1.12.3-0ubuntu1~12.04.1 Alternative JVM for OpenJDK, > using JamVM > ii icedtea-6-plugin 1.2-2ubuntu1.3 > web browser plugin based on OpenJDK and IcedTea to execute > Java applets > ii icedtea-netx 1.2-2ubuntu1.3 > NetX - implementation of the Java Network Launching > Protocol (JNLP) > ii icedtea-netx-common 1.2-2ubuntu1.3 > NetX - implementation of the Java Network Launching > Protocol (JNLP) > ii icedtea-plugin 1.2-2ubuntu1.3 > web browser plugin to execute Java applets (dependency > package) > > IIRC, this bug is solved on icedtea 1.4 and beyond, so wont be fixed > on my Ubuntu 12.04/previous Java versions. > Am i right? > Is there any chance this bugfix to be backported (thats the correct > isnt it?) to ubuntu 1.3? Hi HC, you do recall correctly. However, while the bug fix could be backported to icedtea-web1.3 if some one prepares the backport and reviews it -- there are more important factors that would stop it from going in this version of Ubuntu. For Ubuntu 12.04, they are only performing security backports. As it stands, this is icedtea-web1.2 *original release*. It does not contain non-security bug fixes we backported. Sorry! But it'll be some time before 1.4 gets around, in the mean-time you'll have to point people upstream. Happy hacking, -Adam > Thanks! > >> http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1198 From xerxes at zafena.se Thu Mar 7 07:12:23 2013 From: xerxes at zafena.se (=?ISO-8859-1?Q?Xerxes_R=E5nby?=) Date: Thu, 07 Mar 2013 16:12:23 +0100 Subject: Call for Compliance of Java(tm) Technology with the 4 Freedoms of Software Message-ID: <5138AE57.8090807@zafena.se> Dear OpenJDK Governing Board, OpenJDK Conformance Group and distribution packagers: "Sven Gothel 2013-03-07 14:22:34 CET Motivation of this discussion are the restrictions of providing and using a virtual machine (VM) runtime environment (RE) 'based on java' to be used on desktop and mobile/embedded devices. It is observed that even though GPLv2 licensed OpenJDK source code is available beside other 'java based' implementations, deployment of its binaries is restricted and controlled by Oracle. Hence compliance w/ the 4 freedoms of Software[0] is violated. +++ JVM - Java Virtual Machine JRE - Java Runtime Environment, including the JVM JDK - Java Development Kid, including JRE Dalvik - Google's free Java VM w/ runtime environment consisting out of Apache's Classpath and Google's additional classes. OpenJDK - Oracle's GPLv2 based source code of JVM, JRE and development kit. Java is a Trademark of Oracle Inc. 'Java Tech' - Any technology based on Java, including JRE, Dalvik, etc. +++ [0] The Free Software Definition [0.1] http://www.gnu.org/philosophy/free-sw.html [0.2] https://en.wikipedia.org/wiki/The_Free_Software_Definition [1] http://en.swpat.org/wiki/Java_and_patents [1.1] http://en.swpat.org/wiki/Java_and_patents#OpenJDK:_the_GPLv2_Java_from_Oracle [2] http://en.swpat.org/wiki/Oracle_v._Google_%282010,_USA%29 [2.1] http://en.swpat.org/wiki/Oracle_v._Google_%282010,_USA%29#Does_the_grant_in_the_Java_Language_Specification_help.3F [3] Oracle's Licensing and Patent documents [3.1] http://openjdk.java.net/groups/conformance/JckAccess/index.html [3.2] http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u21-license-159167.txt [3.3] http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u22-doc-license-176237.txt [3.4] http://openjdk.java.net/faq/ +++ Minor issue: 'Java Namespace': In case [1.1]'s implicit patent grant cannot be supported (see below), [2.1] mentions that all claims need to be met to have the Java Language patent grant, including: (iii) do not add any additional packages, classes, or interfaces to the java.* or javax.* packages or their subpackages; If a vendor likes to include some extension under e.g. javax.media.MyGreatTool, in their release of a JRE, she would cause a violation of (iii). Such extension is not required to be included with the JRE packaging or installed filesystem itself, i.e. it can be deployed as an independent 3rd party package or it can be installed within it's own filesystem location independent to the JRE. Hence (iii) is a no too serious issue, but still renders 'Java Tech' not free since it violates the 4 freedoms of software[0]. +++ Big issue: Patents and License of 'Java Technology' [1.1] claims an implicit patent licence, and hence using OpenJDK and even heavily modified OpenJDK to be 'safe'. Obeying [1.1] would render usage of 'Java Tech' free[0]. However, Oracle, owner of 'Java Tech' related patents, licenses and copyright claims otherwise and hence does not support the implicit patent grant of [1.1]. [2.1] mentions that all claims need to be met to have the Java Language patent grant, including: (iv) pass all test suites (TCK) relating to the most recent published version of the specification of the Java 2 Platform, Standard Edition, that are available from SUN six (6) months prior to any beta release of the clean room implementation or upgrade thereto; [3.1] the TCK license is not freely available, hence no person is able to deploy their free JRE/JDK, if obeying (iv). [3.2] Oracle's binary JDK license excludes the use of it's binaries on non general purpose machines, i.e. 'embedded systems'. The list for the latter is quite explicit and long. This document is listed on the OpenJDK FAQ [3.4] [3.3] Oracle's jdk-6u22 license doc mentions a 'patent grant' the 1st time. It is given for machines and devices of their choice, read: As licensed in [3.2]. [3.2] and [3.3] demonstrates Oracle restricted use of their deployed JRE/JDK including their restricted patent grant. Note that a patent grant always is related to 'using technology' and not source code. The latter is covered by copyright or even copyleft like the GPLv2. However, using technology is covered by an EULA and patents, hence it is mentioned in Oracle's binary releases[3.3] and not within it's OpenJDK source release. [2.1] and (iv) requires parties to conform to Oracle's rules to legally use the 'Java Tech', this alone violates the 4 freedoms of software[0]. (iv) and [3.1] allows Oracle to control deployment of JRE/JDK. The TCK is not freely available and would need to ask a person to allowed to use it for certification and hence deployment. Refusal of the TCK license has been documented with the Apache Harmony project. Obeying this claim renders the OpenJDK source code unusable due to the lack of the capability of deploying results on machines a user desires. Hence OpenJDK violates the three freedoms of software[0]. +++++++++++ Conclusion: It is more than desired to have a legal and easy to read statement from Oracle that they will grant everybody sufficient rights to make their 'Java Tech' comply with the 4 freedoms of software[0]. This would require them to make a general patent grant on 'Java Tech' for at least any somewhat OpenJDK derived product without restrictions. Of course, such action would render them 'out of control' of deploying 'Java Tech'. Neither Red Hat, nor Canonical would be required to act as a middlemen for GNU/Linux 'Java Tech' deployment . It seems that this is not what Oracle desires, hence - No clear statements given. - No 'emancipated' 'Java Tech' available to be freely used - No free 'Java Tech' development possible w/o obeying Oracle's ruling .. given that you are not a big company like Google :) It would be great if this could be settled in a lawsuit w/o a settlement, but a clear decision that 'Java Tech' is free including: - API - JVM technology (HotSpot and DalvikVM) - Impl. of runtime classes You may vote here :)" Quoted from: https://jogamp.org/bugzilla/show_bug.cgi?id=698 - JogAmp Bug 698 - Call for Compliance of Java Technology with the 4 Freedoms of Software http://jausoft.com/blog/2013/03/07/call-for-compliance-of-javatm-technology-with-the-4-freedoms-of-software/ Cheers, on behalf of the JogAmp community. Xerxes From andrew at icedtea.classpath.org Thu Mar 7 07:50:17 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 07 Mar 2013 15:50:17 +0000 Subject: /hg/icedtea6: 5 new changesets Message-ID: changeset 076acbb953a5 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=076acbb953a5 author: Andrew John Hughes date: Wed Mar 06 19:28:09 2013 +0000 Add LogManager regression fixes. 2013-02-17 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patches. * patches/openjdk/8007393.patch, * patches/openjdk/8007611.patch: Regression fixes for LogManager. changeset 1ecedefb66fa in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=1ecedefb66fa author: Andrew John Hughes date: Thu Mar 07 13:16:01 2013 +0000 Add 2013/03/04 security patches. 2013-03-07 Andrew John Hughes * Makefile.am: (SECURITY_PATCHES): List new patches. * patches/security/20130304/8007014.patch, * patches/security/20130304/8007675.patch: Patches from upstream. * patches/security/20130304/declaration_correction.patch: Correct bad code added to LCMSTransform.java which fails with ecj. changeset 7088315fb75f in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=7088315fb75f author: Andrew John Hughes date: Thu Mar 07 13:21:49 2013 +0000 Add 1.11.9 & 1.12.4 release notes. 2013-03-07 Andrew John Hughes * NEWS: Add 1.11.9 & 1.12.4 release notes. changeset 0f212e1c6cb4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=0f212e1c6cb4 author: Andrew John Hughes date: Thu Mar 07 15:48:35 2013 +0000 S8009641: OpenJDK 6 build broken via 8007675 fix 2013-03-07 Andrew John Hughes * patches/security/20130304/declaration_correction.patch: Remove local patch... * Makefile.am: Swap patches. * NEWS: Updated. * patches/openjdk/8009641-8007675_build_fix.patch: ...replaced by this from upstream. changeset e162a16dad26 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e162a16dad26 author: Andrew John Hughes date: Thu Mar 07 15:49:50 2013 +0000 Sync hs23 build with IcedTea7 2.3. Only changes are release tags. 2013-03-07 Andrew John Hughes * hotspot.map: Sync with IcedTea7 2.3 tree; only changes are new release tags. diffstat: ChangeLog | 38 + Makefile.am | 9 +- NEWS | 14 + hotspot.map | 2 +- patches/openjdk/8007393.patch | 78 +++ patches/openjdk/8007611.patch | 24 + patches/openjdk/8009641-8007675_build_fix.patch | 49 ++ patches/security/20130304/8007014.patch | 477 ++++++++++++++++++++++++ patches/security/20130304/8007675.patch | 416 ++++++++++++++++++++ 9 files changed, 1104 insertions(+), 3 deletions(-) diffs (truncated from 1169 to 500 lines): diff -r 9389cc43b7b8 -r e162a16dad26 ChangeLog --- a/ChangeLog Wed Mar 06 19:22:19 2013 +0000 +++ b/ChangeLog Thu Mar 07 15:49:50 2013 +0000 @@ -1,3 +1,41 @@ +2013-03-07 Andrew John Hughes + + * hotspot.map: Sync with IcedTea7 2.3 tree; + only changes are new release tags. + +2013-03-07 Andrew John Hughes + + * patches/security/20130304/declaration_correction.patch: + Remove local patch... + * Makefile.am: Swap patches. + * NEWS: Updated. + * patches/openjdk/8009641-8007675_build_fix.patch: + ...replaced by this from upstream. + +2013-03-07 Andrew John Hughes + + * NEWS: + Add 1.11.9 & 1.12.4 release notes. + +2013-03-07 Andrew John Hughes + + * Makefile.am: + (SECURITY_PATCHES): List new patches. + * patches/security/20130304/8007014.patch, + * patches/security/20130304/8007675.patch: + Patches from upstream. + * patches/security/20130304/declaration_correction.patch: + Correct bad code added to LCMSTransform.java + which fails with ecj. + +2013-02-17 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patches. + * patches/openjdk/8007393.patch, + * patches/openjdk/8007611.patch: + Regression fixes for LogManager. + 2013-02-15 Andrew John Hughes * Makefile.am: diff -r 9389cc43b7b8 -r e162a16dad26 Makefile.am --- a/Makefile.am Wed Mar 06 19:22:19 2013 +0000 +++ b/Makefile.am Thu Mar 07 15:49:50 2013 +0000 @@ -276,7 +276,10 @@ patches/security/20130201/8001235.patch \ patches/security/20130219/8006446.patch \ patches/security/20130219/8006777.patch \ - patches/security/20130219/8007688.patch + patches/security/20130219/8007688.patch \ + patches/security/20130304/8007014.patch \ + patches/security/20130304/8007675.patch \ + patches/openjdk/8009641-8007675_build_fix.patch if !WITH_ALT_HSBUILD SECURITY_PATCHES += \ @@ -473,7 +476,9 @@ patches/traceable.patch \ patches/openjdk/8005615-failure_to_load_logger_implementation.patch \ patches/openjdk/8004341-jck_dialog_failure.patch \ - patches/pr1319-support_giflib_5.patch + patches/pr1319-support_giflib_5.patch \ + patches/openjdk/8007393.patch \ + patches/openjdk/8007611.patch if WITH_ALT_HSBUILD ICEDTEA_PATCHES += \ diff -r 9389cc43b7b8 -r e162a16dad26 NEWS --- a/NEWS Wed Mar 06 19:22:19 2013 +0000 +++ b/NEWS Thu Mar 07 15:49:50 2013 +0000 @@ -14,9 +14,23 @@ * New features - PR1317: Provide an option to build with a more up-to-date HotSpot +* Backports + - S8009641: OpenJDK 6 build broken via 8007675 fix * Bug fixes - PR1318: Fix automatic enabling of the Zero build on non-JIT architectures which don't use CACAO or JamVM. +New in release 1.12.4 (2013-03-04): + +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion + +New in release 1.11.9 (2013-03-04): + +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion + New in release 1.12.3 (2013-02-19): * Security fixes diff -r 9389cc43b7b8 -r e162a16dad26 hotspot.map --- a/hotspot.map Wed Mar 06 19:22:19 2013 +0000 +++ b/hotspot.map Thu Mar 07 15:49:50 2013 +0000 @@ -1,2 +1,2 @@ # version url changeset sha256sum -hs23 http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot bc0de5a0ece2 4b571c99b9dfdca6e8456a7d0d47eedb1a8e3c4863322cc853f959b1cb4bc068 +hs23 http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot a152dced63a1 eac2313e3012653afa7549257765d56e4348c775363eee0733968d32a7c1eeae diff -r 9389cc43b7b8 -r e162a16dad26 patches/openjdk/8007393.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/8007393.patch Thu Mar 07 15:49:50 2013 +0000 @@ -0,0 +1,78 @@ + +# HG changeset patch +# User coffeys +# Date 1360860659 0 +# Node ID 828b93329939ec20530ed98f42b2966b2ea53048 +# Parent cff0241d217f7b463d58ddcd0add8d41de9eb280 +8007393: Possible race condition after JDK-6664509 +Reviewed-by: mchung + +--- openjdk/jdk/src/share/classes/java/util/logging/LogManager.java Tue Feb 05 23:33:50 2013 +0000 ++++ openjdk/jdk/src/share/classes/java/util/logging/LogManager.java Thu Feb 14 16:50:59 2013 +0000 +@@ -411,7 +411,40 @@ public class LogManager { + } + + Logger demandSystemLogger(String name, String resourceBundleName) { +- return systemContext.demandLogger(name, resourceBundleName); ++ // Add a system logger in the system context's namespace ++ final Logger sysLogger = systemContext.demandLogger(name, resourceBundleName); ++ ++ // Add the system logger to the LogManager's namespace if not exist ++ // so that there is only one single logger of the given name. ++ // System loggers are visible to applications unless a logger of ++ // the same name has been added. ++ Logger logger; ++ do { ++ // First attempt to call addLogger instead of getLogger ++ // This would avoid potential bug in custom LogManager.getLogger ++ // implementation that adds a logger if not exists ++ if (addLogger(sysLogger)) { ++ // successfully added the new system logger ++ logger = sysLogger; ++ } else { ++ logger = getLogger(name); ++ } ++ } while (logger == null); ++ ++ // LogManager will set the sysLogger's handlers via LogManager.addLogger method. ++ if (logger != sysLogger && sysLogger.getHandlers().length == 0) { ++ // if logger already exists but handlers not set ++ final Logger l = logger; ++ AccessController.doPrivileged(new PrivilegedAction() { ++ public Void run() { ++ for (Handler hdl : l.getHandlers()) { ++ sysLogger.addHandler(hdl); ++ } ++ return null; ++ } ++ }); ++ } ++ return sysLogger; + } + + // LoggerContext maintains the logger namespace per context. +@@ -619,22 +652,7 @@ public class LogManager { + } + } while (result == null); + } +- // Add the system logger to the LogManager's namespace if not exists +- // The LogManager will set its handlers via the LogManager.addLogger method. +- if (!manager.addLogger(result) && result.getHandlers().length == 0) { +- // if logger already exists but handlers not set +- final Logger l = manager.getLogger(name); +- final Logger logger = result; +- AccessController.doPrivileged(new PrivilegedAction() { +- public Void run() { +- for (Handler hdl : l.getHandlers()) { +- logger.addHandler(hdl); +- } +- return null; +- } +- }); +- } +- return result; ++ return result; + } + } + + diff -r 9389cc43b7b8 -r e162a16dad26 patches/openjdk/8007611.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/8007611.patch Thu Mar 07 15:49:50 2013 +0000 @@ -0,0 +1,24 @@ + +# HG changeset patch +# User coffeys +# Date 1360861865 0 +# Node ID 25e83b78298b71abb46eb5a337ed7bddef418ca4 +# Parent 828b93329939ec20530ed98f42b2966b2ea53048 +8007611: logging behavior in applet changed +Reviewed-by: mchung + +--- openjdk/jdk/src/share/classes/java/util/logging/LogManager.java Thu Feb 14 16:50:59 2013 +0000 ++++ openjdk/jdk/src/share/classes/java/util/logging/LogManager.java Thu Feb 14 17:11:05 2013 +0000 +@@ -351,7 +351,10 @@ public class LogManager { + context = userContext; + } else { + context = new LoggerContext(); +- context.addLocalLogger(manager.rootLogger); ++ // during initialization, rootLogger is null when ++ // instantiating itself RootLogger ++ if (manager.rootLogger != null) ++ context.addLocalLogger(manager.rootLogger); + } + javaAwtAccess.put(ecx, LoggerContext.class, context); + } + diff -r 9389cc43b7b8 -r e162a16dad26 patches/openjdk/8009641-8007675_build_fix.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/8009641-8007675_build_fix.patch Thu Mar 07 15:49:50 2013 +0000 @@ -0,0 +1,49 @@ +# HG changeset patch +# User bae +# Date 1362669637 -10800 +# Node ID c73944a23b44ead9aa552ffaa4346bda08940ed3 +# Parent 9714f53ef17344fbcb6dc2249a7b238e6292f726 +8009641: OpenJDK 6 build broken via 8007675 fix +Reviewed-by: andrew + +diff --git a/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java b/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java +--- openjdk/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java ++++ openjdk/jdk/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java +@@ -572,14 +572,14 @@ + dst, dst.length/getNumOutComponents(), + LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | + LCMSImageLayout.BYTES_SH(2), getNumOutComponents()*2); ++ ++ synchronized(this) { ++ LCMS.colorConvert(this, srcIL, dstIL); ++ } + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert data"); + } + +- synchronized(this) { +- LCMS.colorConvert(this, srcIL, dstIL); +- } +- + return dst; + } + +@@ -598,14 +598,14 @@ + dst, dst.length/getNumOutComponents(), + LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); ++ ++ synchronized(this) { ++ LCMS.colorConvert(this, srcIL, dstIL); ++ } + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert data"); + } + +- synchronized(this) { +- LCMS.colorConvert(this, srcIL, dstIL); +- } +- + return dst; + } + } diff -r 9389cc43b7b8 -r e162a16dad26 patches/security/20130304/8007014.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/security/20130304/8007014.patch Thu Mar 07 15:49:50 2013 +0000 @@ -0,0 +1,477 @@ +# HG changeset patch +# User bae +# Date 1360857111 -14400 +# Node ID 44c99b68e36c57648829320843fbc77cf2d4c4d1 +# Parent b8b3916e20ed651fa6ad9da6ae96b2548a13f96c +8007014: Improve image handling +Reviewed-by: prr, mschoene, jgodinez + +diff --git a/src/share/classes/sun/awt/image/ByteComponentRaster.java b/src/share/classes/sun/awt/image/ByteComponentRaster.java +--- openjdk/jdk/src/share/classes/sun/awt/image/ByteComponentRaster.java ++++ openjdk/jdk/src/share/classes/sun/awt/image/ByteComponentRaster.java +@@ -868,6 +868,15 @@ + * or if data buffer has not enough capacity. + */ + protected final void verify() { ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ + for (int i = 0; i < dataOffsets.length; i++) { + if (dataOffsets[i] < 0) { + throw new RasterFormatException("Data offsets for band " + i +@@ -905,13 +914,14 @@ + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { +- size = lastPixelOffset + dataOffsets[i]; + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + + } + ++ size = lastPixelOffset + dataOffsets[i]; ++ + if (size > maxSize) { + maxSize = size; + } +diff --git a/src/share/classes/sun/awt/image/BytePackedRaster.java b/src/share/classes/sun/awt/image/BytePackedRaster.java +--- openjdk/jdk/src/share/classes/sun/awt/image/BytePackedRaster.java ++++ openjdk/jdk/src/share/classes/sun/awt/image/BytePackedRaster.java +@@ -1368,11 +1368,35 @@ + throw new RasterFormatException("Data offsets must be >= 0"); + } + ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ ++ ++ /* ++ * pixelBitstride was verified in constructor, so just make ++ * sure that it is safe to multiply it by width. ++ */ ++ if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ ++ if (scanlineStride < 0 || ++ scanlineStride > (Integer.MAX_VALUE / height)) ++ { ++ throw new RasterFormatException("Invalid scanline stride"); ++ } ++ + int lastbit = (dataBitOffset + + (height-1) * scanlineStride * 8 + + (width-1) * pixelBitStride + + pixelBitStride - 1); +- if (lastbit / 8 >= data.length) { ++ if (lastbit < 0 || lastbit / 8 >= data.length) { + throw new RasterFormatException("raster dimensions overflow " + + "array bounds"); + } +diff --git a/src/share/classes/sun/awt/image/IntegerComponentRaster.java b/src/share/classes/sun/awt/image/IntegerComponentRaster.java +--- openjdk/jdk/src/share/classes/sun/awt/image/IntegerComponentRaster.java ++++ openjdk/jdk/src/share/classes/sun/awt/image/IntegerComponentRaster.java +@@ -208,7 +208,7 @@ + " SinglePixelPackedSampleModel"); + } + +- verify(false); ++ verify(); + } + + +@@ -629,16 +629,26 @@ + } + + /** +- * Verify that the layout parameters are consistent with +- * the data. If strictCheck +- * is false, this method will check for ArrayIndexOutOfBounds conditions. If +- * strictCheck is true, this method will check for additional error +- * conditions such as line wraparound (width of a line greater than +- * the scanline stride). +- * @return String Error string, if the layout is incompatible with +- * the data. Otherwise returns null. ++ * Verify that the layout parameters are consistent with the data. ++ * ++ * The method verifies whether scanline stride and pixel stride do not ++ * cause an integer overflow during calculation of a position of the pixel ++ * in data buffer. It also verifies whether the data buffer has enough data ++ * to correspond the raster layout attributes. ++ * ++ * @throws RasterFormatException if an integer overflow is detected, ++ * or if data buffer has not enough capacity. + */ +- private void verify (boolean strictCheck) { ++ protected final void verify() { ++ /* Need to re-verify the dimensions since a sample model may be ++ * specified to the constructor ++ */ ++ if (width <= 0 || height <= 0 || ++ height > (Integer.MAX_VALUE / width)) ++ { ++ throw new RasterFormatException("Invalid raster dimension"); ++ } ++ + if (dataOffsets[0] < 0) { + throw new RasterFormatException("Data offset ("+dataOffsets[0]+ + ") must be >= 0"); +@@ -647,17 +657,46 @@ + int maxSize = 0; + int size; + +- for (int i=0; i < numDataElements; i++) { +- size = (height-1)*scanlineStride + (width-1)*pixelStride + +- dataOffsets[i]; ++ // we can be sure that width and height are greater than 0 ++ if (scanlineStride < 0 || ++ scanlineStride > (Integer.MAX_VALUE / height)) ++ { ++ // integer overflow ++ throw new RasterFormatException("Incorrect scanline stride: " ++ + scanlineStride); ++ } ++ int lastScanOffset = (height - 1) * scanlineStride; ++ ++ if (pixelStride < 0 || ++ pixelStride > (Integer.MAX_VALUE / width)) ++ { ++ // integer overflow ++ throw new RasterFormatException("Incorrect pixel stride: " ++ + pixelStride); ++ } ++ int lastPixelOffset = (width - 1) * pixelStride; ++ ++ if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { ++ // integer overflow ++ throw new RasterFormatException("Incorrect raster attributes"); ++ } ++ lastPixelOffset += lastScanOffset; ++ ++ for (int i = 0; i < numDataElements; i++) { ++ if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { ++ throw new RasterFormatException("Incorrect band offset: " ++ + dataOffsets[i]); ++ } ++ ++ size = lastPixelOffset + dataOffsets[i]; ++ + if (size > maxSize) { + maxSize = size; + } + } + if (data.length < maxSize) { +- throw new RasterFormatException("Data array too small (should be "+ +- maxSize +- +" but is "+data.length+" )"); ++ throw new RasterFormatException("Data array too small (should be " ++ + maxSize + " )"); + } + } + +diff --git a/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java b/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java +--- openjdk/jdk/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java ++++ openjdk/jdk/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java +@@ -151,7 +151,7 @@ + throw new RasterFormatException("IntegerInterleavedRasters must have"+ + " SinglePixelPackedSampleModel"); + } +- verify(false); ++ verify(); + } + + +@@ -540,31 +540,6 @@ + return createCompatibleWritableRaster(width,height); + } + +- /** +- * Verify that the layout parameters are consistent with +- * the data. If strictCheck +- * is false, this method will check for ArrayIndexOutOfBounds conditions. If +- * strictCheck is true, this method will check for additional error +- * conditions such as line wraparound (width of a line greater than +- * the scanline stride). +- * @return String Error string, if the layout is incompatible with +- * the data. Otherwise returns null. +- */ +- private void verify (boolean strictCheck) { +- int maxSize = 0; +- int size; +- +- size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; +- if (size > maxSize) { +- maxSize = size; +- } +- if (data.length < maxSize) { +- throw new RasterFormatException("Data array too small (should be "+ +- maxSize +- +" but is "+data.length+" )"); +- } +- } +- + public String toString() { + return new String ("IntegerInterleavedRaster: width = "+width + +" height = " + height From andrew at icedtea.classpath.org Thu Mar 7 07:58:02 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 07 Mar 2013 15:58:02 +0000 Subject: /hg/release/icedtea7-2.3: Bring in security fixes & backports. Message-ID: changeset 8920ab104396 in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=8920ab104396 author: Andrew John Hughes date: Thu Mar 07 15:57:46 2013 +0000 Bring in security fixes & backports. 2013-03-07 Andrew John Hughes * Makefile.am, (JDK_UPDATE_VERSION): Bump to 15. (OPENJDK_VERSION): Bump to b02. (CORBA_CHANGESET): Update to IcedTea7 2.3 forest head, bringing in security fixes & backports. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (CORBA_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. * hotspot.map: Sync default with 2.3 HEAD as other changes above. * NEWS: Update with security fixes & backports. diffstat: ChangeLog | 22 ++++++++++++++++++++++ Makefile.am | 28 ++++++++++++++-------------- NEWS | 7 +++++++ hotspot.map | 2 +- 4 files changed, 44 insertions(+), 15 deletions(-) diffs (94 lines): diff -r 4333294206f6 -r 8920ab104396 ChangeLog --- a/ChangeLog Thu Feb 21 06:29:57 2013 +1100 +++ b/ChangeLog Thu Mar 07 15:57:46 2013 +0000 @@ -1,3 +1,25 @@ +2013-03-07 Andrew John Hughes + + * Makefile.am, + (JDK_UPDATE_VERSION): Bump to 15. + (OPENJDK_VERSION): Bump to b02. + (CORBA_CHANGESET): Update to IcedTea7 2.3 forest head, + bringing in security fixes & backports. + (JAXP_CHANGESET): Likewise. + (JAXWS_CHANGESET): Likewise. + (JDK_CHANGESET): Likewise. + (LANGTOOLS_CHANGESET): Likewise. + (OPENJDK_CHANGESET): Likewise. + (CORBA_SHA256SUM): Likewise. + (JAXP_SHA256SUM): Likewise. + (JAXWS_SHA256SUM): Likewise. + (JDK_SHA256SUM): Likewise. + (LANGTOOLS_SHA256SUM): Likewise. + (OPENJDK_SHA256SUM): Likewise. + * hotspot.map: Sync default with 2.3 HEAD as other + changes above. + * NEWS: Update with security fixes & backports. + 2013-02-20 Andrew John Hughes * configure.ac: Bump to 2.3.8pre. diff -r 4333294206f6 -r 8920ab104396 Makefile.am --- a/Makefile.am Thu Feb 21 06:29:57 2013 +1100 +++ b/Makefile.am Thu Mar 07 15:57:46 2013 +0000 @@ -1,22 +1,22 @@ # Dependencies -OPENJDK_VERSION = b20 -JDK_UPDATE_VERSION = 15 +OPENJDK_VERSION = b02 +JDK_UPDATE_VERSION = 17 COMBINED_VERSION = $(JDK_UPDATE_VERSION)-$(OPENJDK_VERSION) -CORBA_CHANGESET = 82e58144c3fb -JAXP_CHANGESET = 1d46a56eb51c -JAXWS_CHANGESET = b9590aa972b9 -JDK_CHANGESET = 6a3417030605 -LANGTOOLS_CHANGESET = b5006c3285c6 -OPENJDK_CHANGESET = 506161df1c48 +CORBA_CHANGESET = 516aae5f27cf +JAXP_CHANGESET = 1fbe99283d97 +JAXWS_CHANGESET = 3c7be82314bf +JDK_CHANGESET = deac45dc94f0 +LANGTOOLS_CHANGESET = 41426c72b802 +OPENJDK_CHANGESET = ed02a059ea15 -CORBA_SHA256SUM = c438607d04e04439ca7df3d911f3cf46ac64066a5b21da98bea8070f98abdafe -JAXP_SHA256SUM = fca2c95b3e60533a937e4f8d497a2934382d9f1f95cde874d926f3b4841407ce -JAXWS_SHA256SUM = c6ca4f98b35acdb24a81721de0bee2686bb83917bd84b108775e586c5ae81136 -JDK_SHA256SUM = 2a8afd9ecb53e255e436885e6fe3e9882e8657c70482a90ef39aa33e024e79b0 -LANGTOOLS_SHA256SUM = 44d8bc14b213b7c218465a8859bd551feb6805857077ca6aa68aaa4c1b10b676 -OPENJDK_SHA256SUM = 704bdd40bc328183384272ee282310d8fc3216f3051e504141e7660fe50185a0 +CORBA_SHA256SUM = 181ceb85a4dade1a8d8465e2d69255ee3612dbc5a50699a59a4f21e69be7a1c6 +JAXP_SHA256SUM = ed3a963c4309316fba654f0a60ba4bec21b2d170e64423eddfa2ba635ac76572 +JAXWS_SHA256SUM = 4abe7366900327a0de21caee8a7b0ea5494821507a02bfb07cffc980cebe90ad +JDK_SHA256SUM = 00e3e4cb436f4153434faa2d1063114a9028e9c8a7eacf558873053c47365215 +LANGTOOLS_SHA256SUM = cbef395a2af27673a3611ed50d84a76ae9f9539a7c42ed8e06e171bfc1ac030c +OPENJDK_SHA256SUM = 865030303330856c988e353bf1bc86fc95669179b0958a4072538fc59d9a073b CACAO_VERSION = a567bcb7f589 CACAO_SHA256SUM = d49f79debc131a5694cae6ab3ba2864e7f3249ee8d9dc09aae8afdd4dc6b09f9 diff -r 4333294206f6 -r 8920ab104396 NEWS --- a/NEWS Thu Feb 21 06:29:57 2013 +1100 +++ b/NEWS Thu Mar 07 15:57:46 2013 +0000 @@ -12,6 +12,13 @@ New in release 2.3.8 (2013-04-XX): +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion +* Backports + - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS + - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c + New in release 2.3.7 (2013-02-20): * Security fixes diff -r 4333294206f6 -r 8920ab104396 hotspot.map --- a/hotspot.map Thu Feb 21 06:29:57 2013 +1100 +++ b/hotspot.map Thu Mar 07 15:57:46 2013 +0000 @@ -1,3 +1,3 @@ # version url changeset sha256sum -default http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot 104e2c65892d 203acf2f9737032fe4bb1096e2f81417fa8a92a7016d8220b54a70efd579711a +default http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot a152dced63a1 eac2313e3012653afa7549257765d56e4348c775363eee0733968d32a7c1eeae zero http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot 32569b4d36f4 455be170dcea6edbc9c74f9d67308bb6a1f39dadda0267e7d73ea6af3043f60c From andrew at icedtea.classpath.org Thu Mar 7 08:04:48 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 07 Mar 2013 16:04:48 +0000 Subject: /hg/release/icedtea7-forest-2.2/jdk: 3 new changesets Message-ID: changeset 59cd568088cc in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=59cd568088cc author: weijun date: Mon Nov 19 11:13:08 2012 +0800 8002344: Krb5LoginModule config class does not return proper KDC list from DNS Reviewed-by: weijun Contributed-by: Severin Gehwolf , Wang Weijun changeset 1d4bf44c8e4e in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=1d4bf44c8e4e author: aph date: Tue Dec 04 14:02:08 2012 +0000 8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c Summary: Code does not check for JNU_GetEnv returning NULL. Reviewed-by: anthony changeset d2d1d98eb365 in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=d2d1d98eb365 author: andrew date: Thu Mar 07 16:04:40 2013 +0000 Merge diffstat: .hgtags | 1 + src/share/classes/sun/awt/image/ByteComponentRaster.java | 12 +- src/share/classes/sun/awt/image/BytePackedRaster.java | 26 +- src/share/classes/sun/awt/image/IntegerComponentRaster.java | 71 +++- src/share/classes/sun/awt/image/IntegerInterleavedRaster.java | 27 +- src/share/classes/sun/awt/image/ShortComponentRaster.java | 12 +- src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java | 101 +++++- src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java | 160 +++++---- src/share/classes/sun/security/krb5/Config.java | 19 +- src/share/native/sun/awt/image/awt_parseImage.c | 1 + src/share/native/sun/awt/medialib/awt_ImagingLib.c | 32 +- src/share/native/sun/awt/medialib/mlib_ImageCreate.c | 33 +- src/share/native/sun/awt/medialib/safe_alloc.h | 6 - src/share/native/sun/awt/medialib/safe_math.h | 35 ++ src/solaris/native/sun/xawt/XlibWrapper.c | 12 +- test/sun/security/krb5/config/DNS.java | 38 ++ test/sun/security/krb5/config/NamingManager.java | 60 +++ test/sun/security/krb5/config/dns.sh | 41 ++ 18 files changed, 536 insertions(+), 151 deletions(-) diffs (truncated from 1114 to 500 lines): diff -r 6a419ec930a6 -r d2d1d98eb365 .hgtags --- a/.hgtags Sun Feb 17 20:57:18 2013 +0000 +++ b/.hgtags Thu Mar 07 16:04:40 2013 +0000 @@ -196,3 +196,4 @@ 0000000000000000000000000000000000000000 icedtea-2.2.6 0000000000000000000000000000000000000000 icedtea-2.2.6 87ea64734ee654cb63e9cccba9dd93510cf4c400 icedtea-2.2.6 +40640be5d6a050443c7037ed81a3792e35e07eee icedtea-2.2.7 diff -r 6a419ec930a6 -r d2d1d98eb365 src/share/classes/sun/awt/image/ByteComponentRaster.java --- a/src/share/classes/sun/awt/image/ByteComponentRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/ByteComponentRaster.java Thu Mar 07 16:04:40 2013 +0000 @@ -868,6 +868,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -905,13 +914,14 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 6a419ec930a6 -r d2d1d98eb365 src/share/classes/sun/awt/image/BytePackedRaster.java --- a/src/share/classes/sun/awt/image/BytePackedRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/BytePackedRaster.java Thu Mar 07 16:04:40 2013 +0000 @@ -1368,11 +1368,35 @@ throw new RasterFormatException("Data offsets must be >= 0"); } + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + + + /* + * pixelBitstride was verified in constructor, so just make + * sure that it is safe to multiply it by width. + */ + if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { + throw new RasterFormatException("Invalid raster dimension"); + } + + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + throw new RasterFormatException("Invalid scanline stride"); + } + int lastbit = (dataBitOffset + (height-1) * scanlineStride * 8 + (width-1) * pixelBitStride + pixelBitStride - 1); - if (lastbit / 8 >= data.length) { + if (lastbit < 0 || lastbit / 8 >= data.length) { throw new RasterFormatException("raster dimensions overflow " + "array bounds"); } diff -r 6a419ec930a6 -r d2d1d98eb365 src/share/classes/sun/awt/image/IntegerComponentRaster.java --- a/src/share/classes/sun/awt/image/IntegerComponentRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/IntegerComponentRaster.java Thu Mar 07 16:04:40 2013 +0000 @@ -208,7 +208,7 @@ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -629,16 +629,26 @@ } /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. + * Verify that the layout parameters are consistent with the data. + * + * The method verifies whether scanline stride and pixel stride do not + * cause an integer overflow during calculation of a position of the pixel + * in data buffer. It also verifies whether the data buffer has enough data + * to correspond the raster layout attributes. + * + * @throws RasterFormatException if an integer overflow is detected, + * or if data buffer has not enough capacity. */ - private void verify (boolean strictCheck) { + protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + if (dataOffsets[0] < 0) { throw new RasterFormatException("Data offset ("+dataOffsets[0]+ ") must be >= 0"); @@ -647,17 +657,46 @@ int maxSize = 0; int size; - for (int i=0; i < numDataElements; i++) { - size = (height-1)*scanlineStride + (width-1)*pixelStride + - dataOffsets[i]; + // we can be sure that width and height are greater than 0 + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + // integer overflow + throw new RasterFormatException("Incorrect scanline stride: " + + scanlineStride); + } + int lastScanOffset = (height - 1) * scanlineStride; + + if (pixelStride < 0 || + pixelStride > (Integer.MAX_VALUE / width)) + { + // integer overflow + throw new RasterFormatException("Incorrect pixel stride: " + + pixelStride); + } + int lastPixelOffset = (width - 1) * pixelStride; + + if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { + // integer overflow + throw new RasterFormatException("Incorrect raster attributes"); + } + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + } + + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } } if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); + throw new RasterFormatException("Data array too small (should be " + + maxSize + " )"); } } diff -r 6a419ec930a6 -r d2d1d98eb365 src/share/classes/sun/awt/image/IntegerInterleavedRaster.java --- a/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Thu Mar 07 16:04:40 2013 +0000 @@ -151,7 +151,7 @@ throw new RasterFormatException("IntegerInterleavedRasters must have"+ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -540,31 +540,6 @@ return createCompatibleWritableRaster(width,height); } - /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. - */ - private void verify (boolean strictCheck) { - int maxSize = 0; - int size; - - size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; - if (size > maxSize) { - maxSize = size; - } - if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); - } - } - public String toString() { return new String ("IntegerInterleavedRaster: width = "+width +" height = " + height diff -r 6a419ec930a6 -r d2d1d98eb365 src/share/classes/sun/awt/image/ShortComponentRaster.java --- a/src/share/classes/sun/awt/image/ShortComponentRaster.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/awt/image/ShortComponentRaster.java Thu Mar 07 16:04:40 2013 +0000 @@ -802,6 +802,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -839,12 +848,13 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 6a419ec930a6 -r d2d1d98eb365 src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Thu Mar 07 16:04:40 2013 +0000 @@ -99,50 +99,75 @@ int offset; Object dataArray; - private LCMSImageLayout(int np, int pixelType, int pixelSize) { + private int dataArrayLength; /* in bytes */ + + private LCMSImageLayout(int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; width = np; height = 1; - nextRowOffset = np*pixelSize; + nextRowOffset = safeMult(pixelSize, np); offset = 0; } private LCMSImageLayout(int width, int height, int pixelType, - int pixelSize) { + int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; this.width = width; this.height = height; - nextRowOffset = width*pixelSize; + nextRowOffset = safeMult(pixelSize, width); offset = 0; } - public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_BYTE; dataArray = data; + dataArrayLength = data.length; + + verify(); } - public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_SHORT; dataArray = data; + dataArrayLength = 2 * data.length; + + verify(); } - public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_INT; dataArray = data; + dataArrayLength = 4 * data.length; + + verify(); } public LCMSImageLayout(double[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException { this(np, pixelType, pixelSize); dataType = DT_DOUBLE; dataArray = data; + dataArrayLength = 8 * data.length; + + verify(); } - public LCMSImageLayout(BufferedImage image) { + public LCMSImageLayout(BufferedImage image) throws ImageLayoutException { ShortComponentRaster shortRaster; IntegerComponentRaster intRaster; ByteComponentRaster byteRaster; @@ -186,9 +211,13 @@ case BufferedImage.TYPE_INT_ARGB: case BufferedImage.TYPE_INT_BGR: intRaster = (IntegerComponentRaster)image.getRaster(); - nextRowOffset = intRaster.getScanlineStride()*4; - offset = intRaster.getDataOffset(0)*4; + + nextRowOffset = safeMult(4, intRaster.getScanlineStride()); + + offset = safeMult(4, intRaster.getDataOffset(0)); + dataArray = intRaster.getDataStorage(); + dataArrayLength = 4 * intRaster.getDataStorage().length; dataType = DT_INT; break; @@ -196,8 +225,10 @@ case BufferedImage.TYPE_4BYTE_ABGR: byteRaster = (ByteComponentRaster)image.getRaster(); nextRowOffset = byteRaster.getScanlineStride(); - offset = byteRaster.getDataOffset(0); + int firstBand = image.getSampleModel().getNumBands() - 1; + offset = byteRaster.getDataOffset(firstBand); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; @@ -206,17 +237,20 @@ nextRowOffset = byteRaster.getScanlineStride(); offset = byteRaster.getDataOffset(0); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; case BufferedImage.TYPE_USHORT_GRAY: shortRaster = (ShortComponentRaster)image.getRaster(); - nextRowOffset = shortRaster.getScanlineStride()*2; - offset = shortRaster.getDataOffset(0) * 2; + nextRowOffset = safeMult(2, shortRaster.getScanlineStride()); + offset = safeMult(2, shortRaster.getDataOffset(0)); dataArray = shortRaster.getDataStorage(); + dataArrayLength = 2 * shortRaster.getDataStorage().length; dataType = DT_SHORT; break; } + verify(); } public static boolean isSupported(BufferedImage image) { @@ -232,4 +266,45 @@ } return false; } + + private void verify() throws ImageLayoutException { + + if (offset < 0 || offset >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + + int lastPixelOffset = safeMult(nextRowOffset, (height - 1)); + + lastPixelOffset = safeAdd(lastPixelOffset, (width - 1)); + + int off = safeAdd(offset, lastPixelOffset); + + if (off < 0 || off >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + } + + static int safeAdd(int a, int b) throws ImageLayoutException { + long res = a; + res += b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + static int safeMult(int a, int b) throws ImageLayoutException { + long res = a; + res *= b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + public static class ImageLayoutException extends Exception { + public ImageLayoutException(String message) { + super(message); + } + } } diff -r 6a419ec930a6 -r d2d1d98eb365 src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Sun Feb 17 20:57:18 2013 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Thu Mar 07 16:04:40 2013 +0000 @@ -51,6 +51,7 @@ import java.awt.image.ComponentSampleModel; import sun.java2d.cmm.*; import sun.java2d.cmm.lcms.*; +import static sun.java2d.cmm.lcms.LCMSImageLayout.ImageLayoutException; public class LCMSTransform implements ColorTransform { @@ -157,8 +158,12 @@ if (LCMSImageLayout.isSupported(src) && LCMSImageLayout.isSupported(dst)) { - doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); - return; + try { + doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); + return; + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } } LCMSImageLayout srcIL, dstIL; Raster srcRas = src.getRaster(); @@ -216,14 +221,18 @@ } int idx; // TODO check for src npixels = dst npixels - srcIL = new LCMSImageLayout( - srcLine, srcLine.length/getNumInComponents(), - LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumInComponents()); - dstIL = new LCMSImageLayout( - dstLine, dstLine.length/getNumOutComponents(), - LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + try { + srcIL = new LCMSImageLayout( + srcLine, srcLine.length/getNumInComponents(), + LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumInComponents()); + dstIL = new LCMSImageLayout( + dstLine, dstLine.length/getNumOutComponents(), + LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } // process each scanline for (int y = 0; y < h; y++) { // convert src scanline @@ -272,16 +281,19 @@ From andrew at icedtea.classpath.org Thu Mar 7 08:06:13 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 07 Mar 2013 16:06:13 +0000 Subject: /hg/release/icedtea7-forest-2.1/jdk: 3 new changesets Message-ID: changeset 9dc51cdd7cec in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=9dc51cdd7cec author: weijun date: Mon Nov 19 11:13:08 2012 +0800 8002344: Krb5LoginModule config class does not return proper KDC list from DNS Reviewed-by: weijun Contributed-by: Severin Gehwolf , Wang Weijun changeset 4d5e8509905e in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=4d5e8509905e author: aph date: Tue Dec 04 14:02:08 2012 +0000 8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c Summary: Code does not check for JNU_GetEnv returning NULL. Reviewed-by: anthony changeset 44d9f9e05ca4 in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=44d9f9e05ca4 author: andrew date: Thu Mar 07 16:06:01 2013 +0000 Merge diffstat: .hgtags | 1 + src/share/classes/sun/awt/image/ByteComponentRaster.java | 12 +- src/share/classes/sun/awt/image/BytePackedRaster.java | 26 +- src/share/classes/sun/awt/image/IntegerComponentRaster.java | 71 +++- src/share/classes/sun/awt/image/IntegerInterleavedRaster.java | 27 +- src/share/classes/sun/awt/image/ShortComponentRaster.java | 12 +- src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java | 101 +++++- src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java | 160 +++++---- src/share/classes/sun/security/krb5/Config.java | 19 +- src/share/native/sun/awt/image/awt_parseImage.c | 1 + src/share/native/sun/awt/medialib/awt_ImagingLib.c | 32 +- src/share/native/sun/awt/medialib/mlib_ImageCreate.c | 33 +- src/share/native/sun/awt/medialib/safe_alloc.h | 6 - src/share/native/sun/awt/medialib/safe_math.h | 35 ++ src/solaris/native/sun/xawt/XlibWrapper.c | 12 +- test/sun/security/krb5/config/DNS.java | 38 ++ test/sun/security/krb5/config/NamingManager.java | 60 +++ test/sun/security/krb5/config/dns.sh | 41 ++ 18 files changed, 536 insertions(+), 151 deletions(-) diffs (truncated from 1114 to 500 lines): diff -r 78fbbfe20edb -r 44d9f9e05ca4 .hgtags --- a/.hgtags Sun Feb 17 19:14:29 2013 +0000 +++ b/.hgtags Thu Mar 07 16:06:01 2013 +0000 @@ -165,3 +165,4 @@ 0000000000000000000000000000000000000000 icedtea-2.1.6 0000000000000000000000000000000000000000 icedtea-2.1.6 31e42bc321027abccb9fb8135f13d63bea0fa762 icedtea-2.1.6 +2989f7467d8345a2fc32416223fd6eafe96037f2 icedtea-2.1.7 diff -r 78fbbfe20edb -r 44d9f9e05ca4 src/share/classes/sun/awt/image/ByteComponentRaster.java --- a/src/share/classes/sun/awt/image/ByteComponentRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/ByteComponentRaster.java Thu Mar 07 16:06:01 2013 +0000 @@ -868,6 +868,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -905,13 +914,14 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 78fbbfe20edb -r 44d9f9e05ca4 src/share/classes/sun/awt/image/BytePackedRaster.java --- a/src/share/classes/sun/awt/image/BytePackedRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/BytePackedRaster.java Thu Mar 07 16:06:01 2013 +0000 @@ -1368,11 +1368,35 @@ throw new RasterFormatException("Data offsets must be >= 0"); } + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + + + /* + * pixelBitstride was verified in constructor, so just make + * sure that it is safe to multiply it by width. + */ + if ((width - 1) > Integer.MAX_VALUE / pixelBitStride) { + throw new RasterFormatException("Invalid raster dimension"); + } + + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + throw new RasterFormatException("Invalid scanline stride"); + } + int lastbit = (dataBitOffset + (height-1) * scanlineStride * 8 + (width-1) * pixelBitStride + pixelBitStride - 1); - if (lastbit / 8 >= data.length) { + if (lastbit < 0 || lastbit / 8 >= data.length) { throw new RasterFormatException("raster dimensions overflow " + "array bounds"); } diff -r 78fbbfe20edb -r 44d9f9e05ca4 src/share/classes/sun/awt/image/IntegerComponentRaster.java --- a/src/share/classes/sun/awt/image/IntegerComponentRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/IntegerComponentRaster.java Thu Mar 07 16:06:01 2013 +0000 @@ -208,7 +208,7 @@ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -629,16 +629,26 @@ } /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. + * Verify that the layout parameters are consistent with the data. + * + * The method verifies whether scanline stride and pixel stride do not + * cause an integer overflow during calculation of a position of the pixel + * in data buffer. It also verifies whether the data buffer has enough data + * to correspond the raster layout attributes. + * + * @throws RasterFormatException if an integer overflow is detected, + * or if data buffer has not enough capacity. */ - private void verify (boolean strictCheck) { + protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + if (dataOffsets[0] < 0) { throw new RasterFormatException("Data offset ("+dataOffsets[0]+ ") must be >= 0"); @@ -647,17 +657,46 @@ int maxSize = 0; int size; - for (int i=0; i < numDataElements; i++) { - size = (height-1)*scanlineStride + (width-1)*pixelStride + - dataOffsets[i]; + // we can be sure that width and height are greater than 0 + if (scanlineStride < 0 || + scanlineStride > (Integer.MAX_VALUE / height)) + { + // integer overflow + throw new RasterFormatException("Incorrect scanline stride: " + + scanlineStride); + } + int lastScanOffset = (height - 1) * scanlineStride; + + if (pixelStride < 0 || + pixelStride > (Integer.MAX_VALUE / width)) + { + // integer overflow + throw new RasterFormatException("Incorrect pixel stride: " + + pixelStride); + } + int lastPixelOffset = (width - 1) * pixelStride; + + if (lastPixelOffset > (Integer.MAX_VALUE - lastScanOffset)) { + // integer overflow + throw new RasterFormatException("Incorrect raster attributes"); + } + lastPixelOffset += lastScanOffset; + + for (int i = 0; i < numDataElements; i++) { + if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { + throw new RasterFormatException("Incorrect band offset: " + + dataOffsets[i]); + } + + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } } if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); + throw new RasterFormatException("Data array too small (should be " + + maxSize + " )"); } } diff -r 78fbbfe20edb -r 44d9f9e05ca4 src/share/classes/sun/awt/image/IntegerInterleavedRaster.java --- a/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/IntegerInterleavedRaster.java Thu Mar 07 16:06:01 2013 +0000 @@ -151,7 +151,7 @@ throw new RasterFormatException("IntegerInterleavedRasters must have"+ " SinglePixelPackedSampleModel"); } - verify(false); + verify(); } @@ -540,31 +540,6 @@ return createCompatibleWritableRaster(width,height); } - /** - * Verify that the layout parameters are consistent with - * the data. If strictCheck - * is false, this method will check for ArrayIndexOutOfBounds conditions. If - * strictCheck is true, this method will check for additional error - * conditions such as line wraparound (width of a line greater than - * the scanline stride). - * @return String Error string, if the layout is incompatible with - * the data. Otherwise returns null. - */ - private void verify (boolean strictCheck) { - int maxSize = 0; - int size; - - size = (height-1)*scanlineStride + (width-1) + dataOffsets[0]; - if (size > maxSize) { - maxSize = size; - } - if (data.length < maxSize) { - throw new RasterFormatException("Data array too small (should be "+ - maxSize - +" but is "+data.length+" )"); - } - } - public String toString() { return new String ("IntegerInterleavedRaster: width = "+width +" height = " + height diff -r 78fbbfe20edb -r 44d9f9e05ca4 src/share/classes/sun/awt/image/ShortComponentRaster.java --- a/src/share/classes/sun/awt/image/ShortComponentRaster.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/awt/image/ShortComponentRaster.java Thu Mar 07 16:06:01 2013 +0000 @@ -802,6 +802,15 @@ * or if data buffer has not enough capacity. */ protected final void verify() { + /* Need to re-verify the dimensions since a sample model may be + * specified to the constructor + */ + if (width <= 0 || height <= 0 || + height > (Integer.MAX_VALUE / width)) + { + throw new RasterFormatException("Invalid raster dimension"); + } + for (int i = 0; i < dataOffsets.length; i++) { if (dataOffsets[i] < 0) { throw new RasterFormatException("Data offsets for band " + i @@ -839,12 +848,13 @@ lastPixelOffset += lastScanOffset; for (int i = 0; i < numDataElements; i++) { - size = lastPixelOffset + dataOffsets[i]; if (dataOffsets[i] > (Integer.MAX_VALUE - lastPixelOffset)) { throw new RasterFormatException("Incorrect band offset: " + dataOffsets[i]); } + size = lastPixelOffset + dataOffsets[i]; + if (size > maxSize) { maxSize = size; } diff -r 78fbbfe20edb -r 44d9f9e05ca4 src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSImageLayout.java Thu Mar 07 16:06:01 2013 +0000 @@ -99,50 +99,75 @@ int offset; Object dataArray; - private LCMSImageLayout(int np, int pixelType, int pixelSize) { + private int dataArrayLength; /* in bytes */ + + private LCMSImageLayout(int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; width = np; height = 1; - nextRowOffset = np*pixelSize; + nextRowOffset = safeMult(pixelSize, np); offset = 0; } private LCMSImageLayout(int width, int height, int pixelType, - int pixelSize) { + int pixelSize) + throws ImageLayoutException + { this.pixelType = pixelType; this.width = width; this.height = height; - nextRowOffset = width*pixelSize; + nextRowOffset = safeMult(pixelSize, width); offset = 0; } - public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(byte[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_BYTE; dataArray = data; + dataArrayLength = data.length; + + verify(); } - public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(short[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_SHORT; dataArray = data; + dataArrayLength = 2 * data.length; + + verify(); } - public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) { + public LCMSImageLayout(int[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException + { this(np, pixelType, pixelSize); dataType = DT_INT; dataArray = data; + dataArrayLength = 4 * data.length; + + verify(); } public LCMSImageLayout(double[] data, int np, int pixelType, int pixelSize) + throws ImageLayoutException { this(np, pixelType, pixelSize); dataType = DT_DOUBLE; dataArray = data; + dataArrayLength = 8 * data.length; + + verify(); } - public LCMSImageLayout(BufferedImage image) { + public LCMSImageLayout(BufferedImage image) throws ImageLayoutException { ShortComponentRaster shortRaster; IntegerComponentRaster intRaster; ByteComponentRaster byteRaster; @@ -186,9 +211,13 @@ case BufferedImage.TYPE_INT_ARGB: case BufferedImage.TYPE_INT_BGR: intRaster = (IntegerComponentRaster)image.getRaster(); - nextRowOffset = intRaster.getScanlineStride()*4; - offset = intRaster.getDataOffset(0)*4; + + nextRowOffset = safeMult(4, intRaster.getScanlineStride()); + + offset = safeMult(4, intRaster.getDataOffset(0)); + dataArray = intRaster.getDataStorage(); + dataArrayLength = 4 * intRaster.getDataStorage().length; dataType = DT_INT; break; @@ -196,8 +225,10 @@ case BufferedImage.TYPE_4BYTE_ABGR: byteRaster = (ByteComponentRaster)image.getRaster(); nextRowOffset = byteRaster.getScanlineStride(); - offset = byteRaster.getDataOffset(0); + int firstBand = image.getSampleModel().getNumBands() - 1; + offset = byteRaster.getDataOffset(firstBand); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; @@ -206,17 +237,20 @@ nextRowOffset = byteRaster.getScanlineStride(); offset = byteRaster.getDataOffset(0); dataArray = byteRaster.getDataStorage(); + dataArrayLength = byteRaster.getDataStorage().length; dataType = DT_BYTE; break; case BufferedImage.TYPE_USHORT_GRAY: shortRaster = (ShortComponentRaster)image.getRaster(); - nextRowOffset = shortRaster.getScanlineStride()*2; - offset = shortRaster.getDataOffset(0) * 2; + nextRowOffset = safeMult(2, shortRaster.getScanlineStride()); + offset = safeMult(2, shortRaster.getDataOffset(0)); dataArray = shortRaster.getDataStorage(); + dataArrayLength = 2 * shortRaster.getDataStorage().length; dataType = DT_SHORT; break; } + verify(); } public static boolean isSupported(BufferedImage image) { @@ -232,4 +266,45 @@ } return false; } + + private void verify() throws ImageLayoutException { + + if (offset < 0 || offset >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + + int lastPixelOffset = safeMult(nextRowOffset, (height - 1)); + + lastPixelOffset = safeAdd(lastPixelOffset, (width - 1)); + + int off = safeAdd(offset, lastPixelOffset); + + if (off < 0 || off >= dataArrayLength) { + throw new ImageLayoutException("Invalid image layout"); + } + } + + static int safeAdd(int a, int b) throws ImageLayoutException { + long res = a; + res += b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + static int safeMult(int a, int b) throws ImageLayoutException { + long res = a; + res *= b; + if (res < Integer.MIN_VALUE || res > Integer.MAX_VALUE) { + throw new ImageLayoutException("Invalid image layout"); + } + return (int)res; + } + + public static class ImageLayoutException extends Exception { + public ImageLayoutException(String message) { + super(message); + } + } } diff -r 78fbbfe20edb -r 44d9f9e05ca4 src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java --- a/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Sun Feb 17 19:14:29 2013 +0000 +++ b/src/share/classes/sun/java2d/cmm/lcms/LCMSTransform.java Thu Mar 07 16:06:01 2013 +0000 @@ -51,6 +51,7 @@ import java.awt.image.ComponentSampleModel; import sun.java2d.cmm.*; import sun.java2d.cmm.lcms.*; +import static sun.java2d.cmm.lcms.LCMSImageLayout.ImageLayoutException; public class LCMSTransform implements ColorTransform { @@ -157,8 +158,12 @@ if (LCMSImageLayout.isSupported(src) && LCMSImageLayout.isSupported(dst)) { - doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); - return; + try { + doTransform(new LCMSImageLayout(src), new LCMSImageLayout(dst)); + return; + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } } LCMSImageLayout srcIL, dstIL; Raster srcRas = src.getRaster(); @@ -216,14 +221,18 @@ } int idx; // TODO check for src npixels = dst npixels - srcIL = new LCMSImageLayout( - srcLine, srcLine.length/getNumInComponents(), - LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumInComponents()); - dstIL = new LCMSImageLayout( - dstLine, dstLine.length/getNumOutComponents(), - LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | - LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + try { + srcIL = new LCMSImageLayout( + srcLine, srcLine.length/getNumInComponents(), + LCMSImageLayout.CHANNELS_SH(getNumInComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumInComponents()); + dstIL = new LCMSImageLayout( + dstLine, dstLine.length/getNumOutComponents(), + LCMSImageLayout.CHANNELS_SH(getNumOutComponents()) | + LCMSImageLayout.BYTES_SH(1), getNumOutComponents()); + } catch (ImageLayoutException e) { + throw new CMMException("Unable to convert images"); + } // process each scanline for (int y = 0; y < h; y++) { // convert src scanline @@ -272,16 +281,19 @@ From helpcrypto at gmail.com Thu Mar 7 08:25:10 2013 From: helpcrypto at gmail.com (helpcrypto helpcrypto) Date: Thu, 7 Mar 2013 17:25:10 +0100 Subject: [rfc][icedtea-web] Reproducer for PR1198: JSObject#eval creates invalid JS object In-Reply-To: <51389EC6.1070305@redhat.com> References: <509D58CD.7050409@redhat.com> <50A0E733.90100@redhat.com> <51389EC6.1070305@redhat.com> Message-ID: > Sorry! But it'll be some time before 1.4 gets around, in the mean-time > you'll have to point people upstream. Dont worry Adam, i was just asking (you) for some information. We will happily wait, in the meantime ill report as many bugs as i can ;) Thanks a lot! From ptisnovs at icedtea.classpath.org Fri Mar 8 00:49:21 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 08 Mar 2013 08:49:21 +0000 Subject: /hg/rhino-tests: Added new test into the SimpleScriptContextClas... Message-ID: changeset f037ba60f477 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=f037ba60f477 author: Pavel Tisnovsky date: Fri Mar 08 09:52:25 2013 +0100 Added new test into the SimpleScriptContextClassTest. Updated other two tests to work correctly in JDK6 and JDK7. diffstat: ChangeLog | 6 + src/org/RhinoTests/SimpleScriptContextClassTest.java | 75 +++++++++++++++++-- 2 files changed, 73 insertions(+), 8 deletions(-) diffs (144 lines): diff -r 7668089de997 -r f037ba60f477 ChangeLog --- a/ChangeLog Thu Mar 07 10:22:22 2013 +0100 +++ b/ChangeLog Fri Mar 08 09:52:25 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-09 Pavel Tisnovsky + + * src/org/RhinoTests/SimpleScriptContextClassTest.java: + Added new test into the SimpleScriptContextClassTest. + Updated other two tests to work correctly in JDK6 and JDK7. + 2013-03-08 Pavel Tisnovsky * src/org/RhinoTests/BindingsTest.java: diff -r 7668089de997 -r f037ba60f477 src/org/RhinoTests/SimpleScriptContextClassTest.java --- a/src/org/RhinoTests/SimpleScriptContextClassTest.java Thu Mar 07 10:22:22 2013 +0100 +++ b/src/org/RhinoTests/SimpleScriptContextClassTest.java Fri Mar 08 09:52:25 2013 +0100 @@ -415,7 +415,7 @@ */ protected void testGetFields() { // following fields should exists - final String[] fieldsThatShouldExists = { + final String[] fieldsThatShouldExist = { "public static final int javax.script.ScriptContext.ENGINE_SCOPE", "public static final int javax.script.ScriptContext.GLOBAL_SCOPE", }; @@ -427,7 +427,7 @@ fieldsAsString.add(field.toString()); } // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { + for (String fieldThatShouldExists : fieldsThatShouldExist) { assertTrue(fieldsAsString.contains(fieldThatShouldExists), "field " + fieldThatShouldExists + " not found"); } @@ -438,7 +438,7 @@ */ protected void testGetDeclaredFields() { // following fields should be declared - final String[] fieldsThatShouldExists = { + final String[] declaredFieldsThatShouldExist_jdk6 = { "protected java.io.Writer javax.script.SimpleScriptContext.writer", "protected java.io.Writer javax.script.SimpleScriptContext.errorWriter", "protected java.io.Reader javax.script.SimpleScriptContext.reader", @@ -446,6 +446,19 @@ "protected javax.script.Bindings javax.script.SimpleScriptContext.globalScope", "private static java.util.List javax.script.SimpleScriptContext.scopes", }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + "protected java.io.Writer javax.script.SimpleScriptContext.writer", + "protected java.io.Writer javax.script.SimpleScriptContext.errorWriter", + "protected java.io.Reader javax.script.SimpleScriptContext.reader", + "protected javax.script.Bindings javax.script.SimpleScriptContext.engineScope", + "protected javax.script.Bindings javax.script.SimpleScriptContext.globalScope", + "private static java.util.List javax.script.SimpleScriptContext.scopes", + }; + + // get the right array of field signatures + // following fields should be declared + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + // get all declared fields Field[] declaredFields = this.simpleScriptContextClass.getDeclaredFields(); // and transform the array into a list of field names @@ -454,9 +467,9 @@ declaredFieldsAsString.add(field.toString()); } // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { - assertTrue(declaredFieldsAsString.contains(fieldThatShouldExists), - "field " + fieldThatShouldExists + " not found"); + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + assertTrue(declaredFieldsAsString.contains(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); } } @@ -465,12 +478,19 @@ */ protected void testGetField() { // following fields should exists - final String[] fieldsThatShouldExists = { + final String[] fieldsThatShouldExist_jdk6 = { "ENGINE_SCOPE", "GLOBAL_SCOPE", }; + final String[] fieldsThatShouldExist_jdk7 = { + "ENGINE_SCOPE", + "GLOBAL_SCOPE", + }; + + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { + for (String fieldThatShouldExists : fieldsThatShouldExist) { try { Field field = this.simpleScriptContextClass.getField(fieldThatShouldExists); String fieldName = field.getName(); @@ -485,6 +505,45 @@ } /** + * Test for method javax.script.SimpleScriptContext.getClass().getDeclaredField() + */ + protected void testGetDeclaredField() { + // following declared fields should exists + final String[] declaredFieldsThatShouldExist_jdk6 = { + "writer", + "errorWriter", + "reader", + "engineScope", + "globalScope", + "scopes", + }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + "writer", + "errorWriter", + "reader", + "engineScope", + "globalScope", + "scopes", + }; + + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + + // check if all required declared fields really exists + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + try { + Field field = this.simpleScriptContextClass.getDeclaredField(declaredFieldThatShouldExists); + String fieldName = field.getName(); + assertTrue(fieldName.equals(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.SimpleScriptContext.getClass().getMethods() */ protected void testGetMethods() { From ptisnovs at icedtea.classpath.org Fri Mar 8 01:08:03 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 08 Mar 2013 09:08:03 +0000 Subject: /hg/gfx-test: Added three Convolve operators, two helper methods... Message-ID: changeset e4edaba131e8 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=e4edaba131e8 author: Pavel Tisnovsky date: Fri Mar 08 10:11:09 2013 +0100 Added three Convolve operators, two helper methods and three new tests into the test suite BitBltConvolveOp. diffstat: ChangeLog | 6 + src/org/gfxtest/testsuites/BitBltConvolveOp.java | 116 ++++++++++++++++++++++- 2 files changed, 121 insertions(+), 1 deletions(-) diffs (152 lines): diff -r ff7895f8ac1a -r e4edaba131e8 ChangeLog --- a/ChangeLog Thu Mar 07 10:04:26 2013 +0100 +++ b/ChangeLog Fri Mar 08 10:11:09 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-08 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltConvolveOp.java: + Added three Convolve operators, two helper methods and three new tests + into the test suite BitBltConvolveOp. + 2013-03-07 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltRescaleOp.java: diff -r ff7895f8ac1a -r e4edaba131e8 src/org/gfxtest/testsuites/BitBltConvolveOp.java --- a/src/org/gfxtest/testsuites/BitBltConvolveOp.java Thu Mar 07 10:04:26 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltConvolveOp.java Fri Mar 08 10:11:09 2013 +0100 @@ -1,7 +1,7 @@ /* Java gfx-test framework - Copyright (C) 2012 Red Hat + Copyright (C) 2012, 2013 Red Hat This file is part of IcedTea. @@ -40,12 +40,126 @@ package org.gfxtest.testsuites; +import java.awt.Graphics2D; +import java.awt.image.BufferedImage; +import java.awt.image.BufferedImageOp; +import java.awt.image.ConvolveOp; +import java.awt.image.Kernel; + + + +import org.gfxtest.framework.CommonBitmapOperations; import org.gfxtest.framework.GfxTest; +import org.gfxtest.framework.TestImage; +import org.gfxtest.framework.TestResult; +import org.gfxtest.framework.annotations.BitBltOperation; +import org.gfxtest.framework.annotations.BitBltOperations; +import org.gfxtest.framework.annotations.GraphicsPrimitive; +import org.gfxtest.framework.annotations.GraphicsPrimitives; +import org.gfxtest.framework.annotations.RenderStyle; +import org.gfxtest.framework.annotations.RenderStyles; +import org.gfxtest.framework.annotations.TestType; +import org.gfxtest.framework.annotations.TestTypes; +import org.gfxtest.framework.annotations.Transformation; +import org.gfxtest.framework.annotations.Transformations; +import org.gfxtest.framework.annotations.Zoom; + + + at TestType(TestTypes.RENDER_TEST) + at GraphicsPrimitive(GraphicsPrimitives.COMMON_BITMAP) + at RenderStyle(RenderStyles.NORMAL) + at BitBltOperation(BitBltOperations.BITBLT) + at Transformation(Transformations.NONE) + at Zoom(1) public class BitBltConvolveOp extends GfxTest { + private static final Kernel NoOpKernel = new Kernel(1, 1, new float[] {1}); + private static final Kernel SmoothingKernel1 = new Kernel(2, 2, new float[] {1/4f, 1/4f, 1/4f, 1/4f}); + private static final Kernel SmoothingKernel2 = new Kernel(3, 3, new float[] {1/9f, 1/9f, 1/9f, 1/9f, 1/9f, 1/9f, 1/9f, 1/9f, 1/9f}); + + private static final ConvolveOp noopROP = new ConvolveOp(NoOpKernel); + private static final ConvolveOp smoothingROP1 = new ConvolveOp(SmoothingKernel1); + private static final ConvolveOp smoothingROP2 = new ConvolveOp(SmoothingKernel2); + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param rasterOp + * selected raster operation + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageType3ByteRGB(TestImage image, Graphics2D graphics2d, + BufferedImageOp rasterOp) + { + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR, rasterOp); + } + + /** + * Test basic BitBlt operation for buffered image containing checker pattern + * with type TYPE_3BYTE_BGR + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param rasterOp + * selected raster operation + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltCheckerBufferedImageType3ByteRGB(TestImage image, Graphics2D graphics2d, + BufferedImageOp rasterOp) + { + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR, rasterOp); + } /** + * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundNoOpROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, noopROP); + } + + /** + * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundSmoothingROP1(TestImage image, Graphics2D graphics2d) + { + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, smoothingROP1); + } + + /** + * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundSmoothingROP2(TestImage image, Graphics2D graphics2d) + { + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, smoothingROP2); + } + + /** * Entry point to the test suite. * * @param args not used in this case From bugzilla-daemon at icedtea.classpath.org Fri Mar 8 03:54:50 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 08 Mar 2013 11:54:50 +0000 Subject: [Bug 1326] JVM crashes on JavaThread "Java2D Disposer" In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1326 --- Comment #2 from clemenz at vcrp.de --- It's a build from Redhat, java -version says: java version "1.7.0_09-icedtea" OpenJDK Runtime Environment (rhel-2.3.8.0.el6_4-x86_64) OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode) And at the end of the attached hs_err_pid.log: vm_info: OpenJDK 64-Bit Server VM (23.7-b01) for linux-amd64 JRE (1.7.0_09-icedtea-root_2013_02_20_10_34-b00), built on Feb 20 2013 10:41:21 by "root" with gcc 4.4.6 20120305 (Red Hat 4.4.6-4) -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130308/9a9268d6/attachment.html From andrew at icedtea.classpath.org Fri Mar 8 07:54:00 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 08 Mar 2013 15:54:00 +0000 Subject: /hg/release/icedtea7-forest-2.2/jdk: PR1303: Correct #ifdef to #if Message-ID: changeset 0ba4f6f60db8 in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=0ba4f6f60db8 author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if diffstat: src/share/native/sun/awt/splashscreen/splashscreen_gif.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diffs (12 lines): diff -r d2d1d98eb365 -r 0ba4f6f60db8 src/share/native/sun/awt/splashscreen/splashscreen_gif.c --- a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c Thu Mar 07 16:04:40 2013 +0000 +++ b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c Fri Mar 08 15:53:50 2013 +0000 @@ -316,7 +316,7 @@ int SplashDecodeGifStream(Splash * splash, SplashStream * stream) { -#ifdef GIFLIB_MAJOR >= 5 +#if GIFLIB_MAJOR >= 5 int error = 0; GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); From bugzilla-daemon at icedtea.classpath.org Fri Mar 8 07:54:09 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 08 Mar 2013 15:54:09 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #10 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=0ba4f6f60db8 author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130308/45e8213d/attachment.html From andrew at icedtea.classpath.org Fri Mar 8 08:24:45 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 08 Mar 2013 16:24:45 +0000 Subject: /hg/release/icedtea7-forest-2.3: 12 new changesets Message-ID: changeset e716c92a031d in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=e716c92a031d author: katleman date: Fri Feb 01 10:25:14 2013 -0800 Added tag jdk7u13-b20 for changeset 3b7815df113f changeset 527d3cf769ec in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=527d3cf769ec author: katleman date: Tue Jan 29 14:14:24 2013 -0800 Added tag jdk7u13-b10 for changeset 3b7815df113f changeset aaee40fd1cc9 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=aaee40fd1cc9 author: katleman date: Fri Feb 01 10:31:25 2013 -0800 Added tag jdk7u13-b30 for changeset 527d3cf769ec changeset 0e52db2d9bb8 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=0e52db2d9bb8 author: ewendeli date: Fri Feb 01 23:26:16 2013 +0100 Merge changeset 0324fca94d07 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=0324fca94d07 author: katleman date: Thu Feb 07 14:17:33 2013 -0800 Added tag jdk7u15-b01 for changeset 0e52db2d9bb8 changeset 25a9d44cebf2 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=25a9d44cebf2 author: katleman date: Fri Feb 08 10:46:08 2013 -0800 Added tag jdk7u15-b02 for changeset 0324fca94d07 changeset f37a75bd3959 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=f37a75bd3959 author: katleman date: Wed Feb 13 18:19:15 2013 -0800 Added tag jdk7u15-b30 for changeset 25a9d44cebf2 changeset aa9931279a52 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=aa9931279a52 author: katleman date: Mon Feb 18 12:09:02 2013 -0800 Added tag jdk7u15-b03 for changeset f37a75bd3959 changeset dc6aac68b246 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=dc6aac68b246 author: katleman date: Mon Feb 18 12:28:29 2013 -0800 Added tag jdk7u15-b32 for changeset 2412f7b8551e changeset 0c2b2dae93e7 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=0c2b2dae93e7 author: katleman date: Mon Feb 18 12:42:37 2013 -0800 Merge changeset 8e49ff2feda3 in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=8e49ff2feda3 author: katleman date: Tue Feb 26 12:41:41 2013 -0800 Added tag jdk7u17-b01 for changeset 0c2b2dae93e7 changeset 12b96a57263c in /hg/release/icedtea7-forest-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3?cmd=changeset;node=12b96a57263c author: andrew date: Fri Mar 08 16:04:19 2013 +0000 Merge jdk7u17-b02 diffstat: .hgtags | 29 +++++++++++++++++++++++++++++ make/Defs-internal.gmk | 3 ++- 2 files changed, 31 insertions(+), 1 deletions(-) diffs (105 lines): diff -r 3b7815df113f -r 12b96a57263c .hgtags --- a/.hgtags Tue Jan 15 18:57:06 2013 -0800 +++ b/.hgtags Fri Mar 08 16:04:19 2013 +0000 @@ -50,6 +50,7 @@ 3ac6dcf7823205546fbbc3d4ea59f37358d0b0d4 jdk7-b73 2c88089b6e1c053597418099a14232182c387edc jdk7-b74 d1516b9f23954b29b8e76e6f4efc467c08c78133 jdk7-b75 +f0bfd9bd1a0e674288a8a4d17dcbb9e632b42e6d icedtea7-1.12 c8b63075403d53a208104a8a6ea5072c1cb66aab jdk7-b76 1f17ca8353babb13f4908c1f87d11508232518c8 jdk7-b77 ab4ae8f4514693a9fe17ca2fec0239d8f8450d2c jdk7-b78 @@ -63,6 +64,7 @@ 433a60a9c0bf1b26ee7e65cebaa89c541f497aed jdk7-b86 6b1069f53fbc30663ccef49d78c31bb7d6967bde jdk7-b87 82135c848d5fcddb065e98ae77b81077c858f593 jdk7-b88 +195fcceefddce1963bb26ba32920de67806ed2db icedtea7-1.13 7f1ba4459972bf84b8201dc1cc4f62b1fe1c74f4 jdk7-b89 425ba3efabbfe0b188105c10aaf7c3c8fa8d1a38 jdk7-b90 97d8b6c659c29c8493a8b2b72c2796a021a8cf79 jdk7-b91 @@ -111,6 +113,7 @@ ddc2fcb3682ffd27f44354db666128827be7e3c3 jdk7-b134 783bd02b4ab4596059c74b10a1793d7bd2f1c157 jdk7-b135 2fe76e73adaa5133ac559f0b3c2c0707eca04580 jdk7-b136 +d4aea1a51d625f5601c840714c7c94f1de5bc1af icedtea-1.14 7654afc6a29e43cb0a1343ce7f1287bf690d5e5f jdk7-b137 fc47c97bbbd91b1f774d855c48a7e285eb1a351a jdk7-b138 7ed6d0b9aaa12320832a7ddadb88d6d8d0dda4c1 jdk7-b139 @@ -123,6 +126,7 @@ 2d38c2a79c144c30cd04d143d83ee7ec6af40771 jdk7-b146 3ac30b3852876ccad6bd61697b5f9efa91ca7bc6 jdk7u1-b01 d91364304d7c4ecd34caffdba2b840aeb0d10b51 jdk7-b147 +3defd24c2671eb2e7796b5dc45b98954341d73a7 icedtea-2.0-branchpoint 34451dc0580d5c95d97b95a564e6198f36545d68 jdk7u1-b02 bf735d852f79bdbb3373c777eec3ff27e035e7ba jdk7u1-b03 f66a2bada589f4157789e6f66472954d2f1c114e jdk7u1-b04 @@ -141,6 +145,7 @@ b2deaf5bde5ec455a06786e8e2aea2e673be13aa jdk7u2-b12 c95558e566ac3605c480a3d070b1102088dab07f jdk7u2-b13 e30fd289f0019700575593ee4e1635fbc5c9a484 jdk7u2-b21 +a66b58021165f5a43e3974fe5fb9fead29824098 icedtea-2.1-branchpoint e30fd289f0019700575593ee4e1635fbc5c9a484 jdk7u3-b02 becd013ae6072a6633ba015fc4f5862fca589cee jdk7u3-b03 d64361a28584728aa25dca3781cffbaf4199e088 jdk7u3-b04 @@ -157,6 +162,7 @@ 2b07c262a8a9ff78dc908efb9d7b3bb099df9ac4 jdk7u4-b10 1abfee16e8cc7e3950052befa78dbf14a5ca9cfc jdk7u4-b11 e6f915094dccbba16df6ebeb002e6867392eda40 jdk7u4-b12 +e7886f5ad6cc837092386fa513e670d4a770456c icedtea-2.2-branchpoint 9108e3c2f07ffa218641d93893ac9928e95d213a jdk7u4-b13 d9580838fd08872fc0da648ecfc6782704b4aac1 jdk7u4-b14 008753000680a2008175d14b25373356f531aa07 jdk7u4-b15 @@ -191,6 +197,7 @@ 528f1589f5f2adf18d5d21384ba668b9aa79841e jdk7u6-b15 7b77364eb09faac4c37ce9dd2c2308ca5525f18f jdk7u6-b16 b7c1b441d131c70278de299b5d1e59dce0755dc5 jdk7u6-b17 +0e7b94bd450d4270d4e9bd6c040c94fa4be714a6 icedtea-2.3-branchpoint 9c41f7b1460b106d18676899d24b6ea07de5a369 jdk7u6-b18 56291720b5e578046bc02761dcad2a575f99fd8e jdk7u6-b19 e79fa743fe5a801db4acc7a7daa68f581423e5d3 jdk7u6-b20 @@ -199,6 +206,15 @@ d1c709f1196a73d1df10d04a221b10e30fd2eb48 jdk7u6-b23 e4def733cc8c58e83b7cefa7edd89a3e2b793520 jdk7u6-b24 f5f546dba006778854e7a81141fc1b44acd257a4 jdk7u6-b30 +dda13866dd2855c304ba3801194f7ca3cffc3535 icedtea-2.3 +2783cace584cbfa3ed52774185859faf41569f8e icedtea-2.3.1 +a3fa5d49d528c32ad5d4b49e7241696a672ffe18 icedtea-2.3.2 +acba2d30209d19a87dbc0d2a6e366f09f01a210d icedtea-2.3.3 +301e79a966b4627af0113e30f65409baf9ebf1ce icedtea-2.3.4 +8bd8e70d4a032ea3d3642b247dddc0882850ebe0 icedtea-2.3.5 +02128561d696aaaa1a12b0ebfad2580cbbe04b87 icedtea-2.3.6 +02128561d696aaaa1a12b0ebfad2580cbbe04b87 icedtea-2.3.6 +0000000000000000000000000000000000000000 icedtea-2.3.6 43775eae8df6c874fb3631c86009505cf3821b1f jdk7u7-b10 a380c75873bfb578e605d4362edb18c08698cc3e jdk7u7-b30 d7f2b3949f9c9ff1115ea61c496d3cd4c62e2759 jdk7u7-b11 @@ -231,3 +247,16 @@ 80a3d0bcd3d4c9e83b75416178bdd60a2d23ebbc jdk7u11-b07 e7c55def6796d3c426631b5717084ef122908847 jdk7u11-b08 2412f7b8551ede5296cb6e1d6189f40aad9eeffe jdk7u13-b09 +0000000000000000000000000000000000000000 icedtea-2.3.6 +0e569b50110e197ae20f7b8ef0a26e41f987fee6 icedtea-2.3.6 +dd8d1a8f222f0e93db652cd5127644ab737eef5d icedtea-2.3.7 +506161df1c48a9c9f7f0d8db7108a0b1ab83493b icedtea-2.3.8 +3b7815df113f8044039739276237b964ee8fa015 jdk7u13-b10 +527d3cf769ec073d7348e4c31f97c47c943c96b6 jdk7u13-b30 +3b7815df113f8044039739276237b964ee8fa015 jdk7u13-b20 +0e52db2d9bb8bc789f6c66f2cfb7cd2d3b0b16c6 jdk7u15-b01 +0324fca94d073b3aad77658224f17679f25c18b1 jdk7u15-b02 +25a9d44cebf2a7ac6dd1748c94e00b242403acb1 jdk7u15-b30 +f37a75bd39595ba38bdc53ee957c63bbb3cbb12d jdk7u15-b03 +2412f7b8551ede5296cb6e1d6189f40aad9eeffe jdk7u15-b32 +0c2b2dae93e7a720bbcc2e13a1913a2264335554 jdk7u17-b01 diff -r 3b7815df113f -r 12b96a57263c make/Defs-internal.gmk --- a/make/Defs-internal.gmk Tue Jan 15 18:57:06 2013 -0800 +++ b/make/Defs-internal.gmk Fri Mar 08 16:04:19 2013 +0000 @@ -322,7 +322,8 @@ JDK_MICRO_VERSION=$(JDK_MICRO_VERSION) \ PREVIOUS_MAJOR_VERSION=$(PREVIOUS_MAJOR_VERSION) \ PREVIOUS_MINOR_VERSION=$(PREVIOUS_MINOR_VERSION) \ - PREVIOUS_MICRO_VERSION=$(PREVIOUS_MICRO_VERSION) + PREVIOUS_MICRO_VERSION=$(PREVIOUS_MICRO_VERSION) \ + STATIC_CXX=$(STATIC_CXX) ifdef ARCH_DATA_MODEL COMMON_BUILD_ARGUMENTS += ARCH_DATA_MODEL=$(ARCH_DATA_MODEL) From andrew at icedtea.classpath.org Fri Mar 8 08:24:52 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 08 Mar 2013 16:24:52 +0000 Subject: /hg/release/icedtea7-forest-2.3/corba: 12 new changesets Message-ID: changeset f9a20c477c97 in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=f9a20c477c97 author: katleman date: Fri Feb 01 10:25:16 2013 -0800 Added tag jdk7u13-b20 for changeset b9ab9b203a41 changeset f5ef46204dba in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=f5ef46204dba author: katleman date: Tue Jan 29 14:14:28 2013 -0800 Added tag jdk7u13-b10 for changeset b9ab9b203a41 changeset c3d891ebfc80 in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=c3d891ebfc80 author: katleman date: Fri Feb 01 10:31:27 2013 -0800 Added tag jdk7u13-b30 for changeset f5ef46204dba changeset 622e370c2d1e in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=622e370c2d1e author: ewendeli date: Fri Feb 01 23:26:31 2013 +0100 Merge changeset 301883880483 in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=301883880483 author: katleman date: Thu Feb 07 14:17:39 2013 -0800 Added tag jdk7u15-b01 for changeset 622e370c2d1e changeset 7f0e7ce088ff in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=7f0e7ce088ff author: katleman date: Fri Feb 08 10:46:13 2013 -0800 Added tag jdk7u15-b02 for changeset 301883880483 changeset e5b996dabec6 in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=e5b996dabec6 author: katleman date: Wed Feb 13 18:19:16 2013 -0800 Added tag jdk7u15-b30 for changeset 7f0e7ce088ff changeset 19106da7a087 in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=19106da7a087 author: katleman date: Mon Feb 18 12:09:10 2013 -0800 Added tag jdk7u15-b03 for changeset e5b996dabec6 changeset 5863908fe0e7 in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=5863908fe0e7 author: katleman date: Mon Feb 18 12:28:30 2013 -0800 Added tag jdk7u15-b32 for changeset b192d1487319 changeset 94e8b9b0e0ef in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=94e8b9b0e0ef author: katleman date: Mon Feb 18 12:40:51 2013 -0800 Merge changeset e82d31e1f118 in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=e82d31e1f118 author: katleman date: Tue Feb 26 12:41:43 2013 -0800 Added tag jdk7u17-b01 for changeset 94e8b9b0e0ef changeset 47a6bf94ce11 in /hg/release/icedtea7-forest-2.3/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/corba?cmd=changeset;node=47a6bf94ce11 author: andrew date: Fri Mar 08 16:05:05 2013 +0000 Merge jdk7u17-b02 diffstat: .hgtags | 29 +++++++++++++++++++++++++++++ make/Makefile | 2 +- make/common/shared/Platform.gmk | 9 +++++++++ 3 files changed, 39 insertions(+), 1 deletions(-) diffs (137 lines): diff -r b9ab9b203a41 -r 47a6bf94ce11 .hgtags --- a/.hgtags Tue Jan 15 18:57:12 2013 -0800 +++ b/.hgtags Fri Mar 08 16:05:05 2013 +0000 @@ -50,6 +50,7 @@ b751c528c55560cf2adeaeef24b39ca1f4d1cbf7 jdk7-b73 5d0cf59a3203b9f57aceebc33ae656b884987955 jdk7-b74 0fb137085952c8e47878e240d1cb40f14de463c4 jdk7-b75 +d728db3889da23d9f74e45154b9261a43b4acd8d icedtea7-1.12 937144222e2219939101b0129d26a872a7956b13 jdk7-b76 6881f0383f623394b5ec73f27a5f329ff55d0467 jdk7-b77 a7f7276b48cd74d8eb1baa83fbf3d1ef4a2603c8 jdk7-b78 @@ -63,6 +64,7 @@ 6253e28826d16cf1aecc39ce04c8de1f6bf2df5f jdk7-b86 09a41111a401d327f65e453384d976a10154d9ea jdk7-b87 39e14d2da687c7e592142137517aaf689544820f jdk7-b88 +e805b4155d76f76d40ffae36a74546f79218c539 icedtea7-1.13 bb4424c5e778b842c064a8b1aa902b35f4397654 jdk7-b89 56ce07b0eb47b93a98a72adef0f21e602c460623 jdk7-b90 bcd2fc089227559ac5be927923609fac29f067fa jdk7-b91 @@ -111,6 +113,7 @@ 918003855fa0dba5acf4bf1fe36526d2fc4c1ba8 jdk7-b134 e0b72ae5dc5e824b342801c8d1d336a55eb54e2c jdk7-b135 48ef0c712e7cbf272f47f9224db92a3c6a9e2612 jdk7-b136 +b62418551e20fa19fbf57c49d4378b7096809e60 icedtea-1.14 a66c01d8bf895261715955df0b95545c000ed6a8 jdk7-b137 78d8cf04697e9df54f7f11e195b7da29b8e345a2 jdk7-b138 60b074ec6fcf5cdf9efce22fdfb02326ed8fa2d3 jdk7-b139 @@ -123,6 +126,7 @@ 770227a4087e4e401fe87ccd19738440111c3948 jdk7-b146 36f0efbc66ef8ace3cca8aa8d0c88f3334080f8a jdk7u1-b01 73323cb3396260d93e0ab731fd2d431096ceed0f jdk7-b147 +d034cc90ecc266d78b87d1429c426669431fcc1f icedtea-2.0-branchpoint 9515a2d034b4727c11aeea36354a549fbc469c4f jdk7u1-b02 dd71cb354c573c1addcda269a7dd9144bfce9587 jdk7u1-b03 eaee830124aa453627591d8f9eccb39d7e040876 jdk7u1-b04 @@ -141,6 +145,7 @@ 56b02f8ef70391a67c9fa71157a8faafbdff4b74 jdk7u2-b12 456ff1f14b14ef8cfe47cef95c8094f8443fa092 jdk7u2-b13 62b846b0c3259cae732e75df50a1b180a2541178 jdk7u2-b21 +ecb9fc90dea4720f5c1ba1354364ed610f463e41 icedtea-2.1-branchpoint 1b648adeeefa9b1fb022459e8e4f590b736c0fdd jdk7u3-b02 730fa05af5a9d10a3a7a1626d248b96d09f8069f jdk7u3-b03 7f7a9b1addb4925f4f6e17f6eb5cce986c3b626d jdk7u3-b04 @@ -157,6 +162,7 @@ 23777178e7eb61859be3f7240561aa1034ff9221 jdk7u4-b10 bdc37f3c09b6008667aff77432bb6d31cbae945e jdk7u4-b11 fddc26b35a31884d64315cf7c296570245e9c481 jdk7u4-b12 +9ffa2340e018131c900e9cc12c9f3a10698aa191 icedtea-2.2-branchpoint f7119745898016a98cddab3e69efb41c5a5aaf78 jdk7u4-b13 6a262c36caebb43972cbae5032cff632ce31d2cc jdk7u4-b14 d9bf21b76f093abfe451880d5db29e4932b1e72e jdk7u4-b15 @@ -191,6 +197,7 @@ 8da4015f405b0fa267cca4780d20cd012d0a9cb4 jdk7u6-b15 7674c7ed99a53a8dcf654ab8a6963199ef562a08 jdk7u6-b16 e4a676826cb3fe2f84e19105a027c15c097f98f1 jdk7u6-b17 +68c35d6e9548bc7be9c3ce73774c6d53b0d72d3b icedtea-2.3-branchpoint b3d767dbd67f518168c561e078be5e860bc60cfc jdk7u6-b18 5c046510b9308bf514f078d48fcf0112a376ad41 jdk7u6-b19 f0c51b691d34b4a06c1e22c7960be71e0d0ee84e jdk7u6-b20 @@ -199,6 +206,15 @@ 2a8376123fbb81bc4b2f643ff7cfaf7f87b21c35 jdk7u6-b23 02512f61591f55d84458d1ea4ce84eecb7324f89 jdk7u6-b24 8b20875b3faa01ef56331045de88747df278eaeb jdk7u6-b30 +f621504b45f74a5700c26334b70303f56a49f54c icedtea-2.3 +2b1d2e9aea3270eb30e7a1ac2a02c5584acc404c icedtea-2.3.1 +e9b200124386d2dceba0f2641316e8c6499f9966 icedtea-2.3.2 +7fae6a3a68c71b9b13144e92969b8ad625cf9814 icedtea-2.3.3 +9a95d714d136b6a22bab1e8365ab3bce7a8b1ddf icedtea-2.3.4 +5116fe321210de8e227d4cde0b5e37673afee385 icedtea-2.3.5 +6d7b1e6b004a1d3704cf00d0a639d6f9e177e668 icedtea-2.3.6 +6d7b1e6b004a1d3704cf00d0a639d6f9e177e668 icedtea-2.3.6 +0000000000000000000000000000000000000000 icedtea-2.3.6 d7fe6c13adf9e06d98c061449d171bc06c2ba0a3 jdk7u7-b10 496baf62d0550c704505b0ff6f390279f6a569e0 jdk7u7-b30 e57e4274a3575f278115cc8ef03c5bdf3c43a7ed jdk7u7-b11 @@ -231,3 +247,16 @@ 9d9440d1fa2dd872c2a2b564fc5fa4d3555afab6 jdk7u11-b07 983fac5b27376839142ac5a8770461e4e48c2dc8 jdk7u11-b08 b192d148731916e4b1b47b7a3e6b0a1d7ddf3f14 jdk7u13-b09 +0000000000000000000000000000000000000000 icedtea-2.3.6 +329f1a69c6cfacd24290ae36780c37a6f69ecf62 icedtea-2.3.6 +97a8b625f6e95b8a2b7419fbc20682bd120f7fe2 icedtea-2.3.7 +82e58144c3fb82cdf7147f9475b9fb13a8b0d8c6 icedtea-2.3.8 +b9ab9b203a41469a274419d26be2c04558b57ce8 jdk7u13-b10 +f5ef46204dba19679edd7492b221110fd1a0bd33 jdk7u13-b30 +b9ab9b203a41469a274419d26be2c04558b57ce8 jdk7u13-b20 +622e370c2d1e8c5f48d8f520f486dc6fcc1239c5 jdk7u15-b01 +30188388048333e213a839363329ac2cb0cf0e0d jdk7u15-b02 +7f0e7ce088ff554f64e2c102ae3718ae4d580c34 jdk7u15-b30 +e5b996dabec6ac6aa12705ce678642605ea9d476 jdk7u15-b03 +b192d148731916e4b1b47b7a3e6b0a1d7ddf3f14 jdk7u15-b32 +94e8b9b0e0ef1685e2f2fcc886e08a42a85c8e03 jdk7u17-b01 diff -r b9ab9b203a41 -r 47a6bf94ce11 make/Makefile --- a/make/Makefile Tue Jan 15 18:57:12 2013 -0800 +++ b/make/Makefile Fri Mar 08 16:05:05 2013 +0000 @@ -150,7 +150,7 @@ #----- bin.zip -BIN_ZIP_FILES = $(BUILD_DIR/lib/orb.idl $(BUILD_DIR)/lib/ir.idl +BIN_ZIP_FILES = $(BUILD_DIR)/lib/orb.idl $(BUILD_DIR)/lib/ir.idl BIN_ZIP = $(LIB_DIR)/bin.zip $(BIN_ZIP): $(BIN_ZIP_FILES) diff -r b9ab9b203a41 -r 47a6bf94ce11 make/common/shared/Platform.gmk --- a/make/common/shared/Platform.gmk Tue Jan 15 18:57:12 2013 -0800 +++ b/make/common/shared/Platform.gmk Fri Mar 08 16:05:05 2013 +0000 @@ -153,6 +153,9 @@ OS_VERSION := $(shell uname -r) # Arch and OS name/version mach := $(shell uname -m) + ifneq (,$(wildcard /usr/bin/dpkg-architecture)) + mach := $(shell (dpkg-architecture -qDEB_BUILD_ARCH_CPU 2>/dev/null || echo $(mach)) | sed 's/powerpc$$/ppc/;s/hppa/parisc/') + endif archExpr = case "$(mach)" in \ i[3-9]86) \ echo i586 \ @@ -169,6 +172,9 @@ arm*) \ echo arm \ ;; \ + sh*) \ + echo sh \ + ;; \ *) \ echo $(mach) \ ;; \ @@ -196,6 +202,9 @@ else ARCH_DATA_MODEL=64 endif + ifeq ($(ARCH), sh) + ARCH_DATA_MODEL=32 + endif endif endif From andrew at icedtea.classpath.org Fri Mar 8 08:25:05 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 08 Mar 2013 16:25:05 +0000 Subject: /hg/release/icedtea7-forest-2.3/jaxp: 12 new changesets Message-ID: changeset 596e328459ad in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=596e328459ad author: katleman date: Fri Feb 01 10:25:36 2013 -0800 Added tag jdk7u13-b20 for changeset f9fe0d38b110 changeset 0a6a09e5174a in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=0a6a09e5174a author: katleman date: Tue Jan 29 14:15:05 2013 -0800 Added tag jdk7u13-b10 for changeset f9fe0d38b110 changeset ba14f96944cd in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=ba14f96944cd author: katleman date: Fri Feb 01 10:31:51 2013 -0800 Added tag jdk7u13-b30 for changeset 0a6a09e5174a changeset 99c114990b19 in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=99c114990b19 author: ewendeli date: Fri Feb 01 23:29:16 2013 +0100 Merge changeset edbaa584f09a in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=edbaa584f09a author: katleman date: Thu Feb 07 14:18:07 2013 -0800 Added tag jdk7u15-b01 for changeset 99c114990b19 changeset 14a9b60a2086 in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=14a9b60a2086 author: katleman date: Fri Feb 08 10:46:42 2013 -0800 Added tag jdk7u15-b02 for changeset edbaa584f09a changeset a55f67cfe182 in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=a55f67cfe182 author: katleman date: Wed Feb 13 18:19:32 2013 -0800 Added tag jdk7u15-b30 for changeset 14a9b60a2086 changeset f31f23bc074a in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=f31f23bc074a author: katleman date: Mon Feb 18 12:09:43 2013 -0800 Added tag jdk7u15-b03 for changeset a55f67cfe182 changeset 5d87e5fdd88a in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=5d87e5fdd88a author: katleman date: Mon Feb 18 12:29:15 2013 -0800 Added tag jdk7u15-b32 for changeset eb9d57159e51 changeset 8a9867ee4294 in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=8a9867ee4294 author: katleman date: Mon Feb 18 12:42:24 2013 -0800 Merge changeset 7863a60ae4b4 in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=7863a60ae4b4 author: katleman date: Tue Feb 26 12:42:06 2013 -0800 Added tag jdk7u17-b01 for changeset 8a9867ee4294 changeset a2c49387365b in /hg/release/icedtea7-forest-2.3/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxp?cmd=changeset;node=a2c49387365b author: andrew date: Fri Mar 08 16:04:36 2013 +0000 Merge jdk7u17-b02 diffstat: .hgtags | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+), 0 deletions(-) diffs (92 lines): diff -r f9fe0d38b110 -r a2c49387365b .hgtags --- a/.hgtags Tue Jan 15 18:57:31 2013 -0800 +++ b/.hgtags Fri Mar 08 16:04:36 2013 +0000 @@ -50,6 +50,7 @@ feb05980f9f2964e6bc2b3a8532f9b3054c2289b jdk7-b73 ea7b88c676dd8b269bc858a4a17c14dc96c8aed1 jdk7-b74 555fb78ee4cebed082ca7ddabff46d2e5b4c9026 jdk7-b75 +fb68fd18eb9f9d94bd7f307097b98a5883018da8 icedtea7-1.12 233a4871d3364ec305efd4a58cfd676620a03a90 jdk7-b76 bfadab8c7b1bf806a49d3e1bc19ec919717f057a jdk7-b77 7a12d3789e1b07a560fc79568b991818d617ede2 jdk7-b78 @@ -63,6 +64,7 @@ 81c0f115bbe5d3bcf59864465b5eca5538567c79 jdk7-b86 8b493f1aa136d86de0885fcba15262c4fa2b1412 jdk7-b87 d8ebd15910034f2ba50b2f129f959f86cca01419 jdk7-b88 +826bafcb6c4abbf24887bfc5a78868e13cddd068 icedtea7-1.13 d2818fd2b036f3b3154a9a7de41afcf4ac679c1b jdk7-b89 c5d932ee326d6f7fd4634b11c7185ea82d184df2 jdk7-b90 b89b2c3044a298d542f84a2e9d957202b7d8cdb9 jdk7-b91 @@ -111,6 +113,7 @@ d56b326ae0544fc16c3e0d0285876f3c82054db2 jdk7-b134 4aa9916693dc1078580c1865e6f2584046851e5a jdk7-b135 1759daa85d33800bd578853f9531f9de73f70fc7 jdk7-b136 +1c2f25bf36b1d43920e94fb82a0afdafd29b1735 icedtea-1.14 1d87f7460cde7f8f30af668490f82b52b879bfd8 jdk7-b137 be3758943770a0a3dd4be6a1cb4063507c4d7062 jdk7-b138 28c7c0ed2444607829ba11ad827f8d52197a2830 jdk7-b139 @@ -123,6 +126,7 @@ bcd31fa1e3c6f51b4fdd427ef905188cdac57164 jdk7-b146 067fb18071e3872698f6218724958bd0cebf30a3 jdk7u1-b01 fc268cd1dd5d2e903ccd4b0275e1f9c2461ed30c jdk7-b147 +b8d01501956a0d41f5587ff1bebbfe5a9b8fea5a icedtea-2.0-branchpoint 104ca42e1e7ca66b074a4619ce6420f15d8f454d jdk7u1-b02 64e323faadf65018c1ffc8bb9c97f7b664e87347 jdk7u1-b03 2256c20e66857f80cacda14ffdbc0979c929d7f8 jdk7u1-b04 @@ -141,6 +145,7 @@ 0e61ef309edd2deb71f53f2bdaf6dcff1c80bfb8 jdk7u2-b12 d9ac427e5149d1db12c6f3e4aa4280587c06aed5 jdk7u2-b13 0efaf5c97fba2ee7864240efaa0df651a2635ae5 jdk7u2-b21 +7300d2ab9fb2068250a96ca4afc481c4beb6a42b icedtea-2.1-branchpoint 0efaf5c97fba2ee7864240efaa0df651a2635ae5 jdk7u3-b02 604dd391203960d0028fc95bc70b0ae161e09d99 jdk7u3-b03 551c076358f6691999f613db9b155c83ec9a648d jdk7u3-b04 @@ -157,6 +162,7 @@ 7a37651d304de62b18b343b3ae675ab1b08fc5fe jdk7u4-b10 3fbd87d50fbf4de3987e36ec5f3e8ce1c383ce3d jdk7u4-b11 b4e5df5b18bb75db15ed97da02e5df086d2c7930 jdk7u4-b12 +c51876b27811ba0f6ea3409ba19d357b7400908a icedtea-2.2-branchpoint 7d18bccaec3781f3d4f2d71879f91e257db2f0f7 jdk7u4-b13 82c5b3166b3194e7348b2a9d146b6760c9a77128 jdk7u4-b14 36490d49683f7be9d8fbbe1f8eefa1fe9fe550fa jdk7u5-b01 @@ -191,6 +197,7 @@ 94474d6f28284a1ef492984dd6d6f66f8787de80 jdk7u6-b15 0b329a8d325b6a58d89c6042dac62ce5852380ab jdk7u6-b16 5eb867cdd08ca299fe03b31760acd57aac2b5673 jdk7u6-b17 +445dd0b578fc2ed12c539eb6f9a71cbd40bed4f6 icedtea-2.3-branchpoint 1c4b9671de5c7ed5713f55509cb2ada38b36dffe jdk7u6-b18 3ba4c395d2cf973c8c603b2aedc846bd4ae54656 jdk7u6-b19 4f7b77cc3b252098f52a8f30a74f603783a2e0f1 jdk7u6-b20 @@ -199,6 +206,15 @@ 8824bcbfd7cd8059ededf70f1e7f2b06f02cb33f jdk7u6-b23 378f719cfb9491b766cd9f7cd47ad7fa3503e141 jdk7u6-b24 5f1b80e8baec46fc28826a3a6ab8e1913c872f4c jdk7u6-b30 +1d3e59049a8998841ec63bc119adb1ea3f4c7116 icedtea-2.3 +20e3c00ca7ae9649a40b385223a6c3b0d1155b93 icedtea-2.3.1 +9bd1d8e8b802a8e22637c8a2e0acad9c9cb4a114 icedtea-2.3.2 +ee4bd94136ece0fed96b7b8d18f4d99f74fbd326 icedtea-2.3.3 +f45296ac69be649f775ac878387e96fd16504b81 icedtea-2.3.4 +91fcc41a0b4b27db954f1bb44b1b6ebe1780b7bb icedtea-2.3.5 +dce7523618e418ebd4505dc574a9f3772c15758c icedtea-2.3.6 +dce7523618e418ebd4505dc574a9f3772c15758c icedtea-2.3.6 +0000000000000000000000000000000000000000 icedtea-2.3.6 2eafa8a6fd8fdb54b10045e247d1a57f9817f473 jdk7u7-b10 c4aa15da8529451cc678d5747e7b82e9cc38627e jdk7u7-b30 f6e11679b12e1548f407b78a940c568401dd2a19 jdk7u7-b11 @@ -231,3 +247,16 @@ 225aa78c36e9b776c87e585329bbb7ee0e3259a3 jdk7u11-b07 48491f5a58172f0fbdf9b774842c2ec1a42f609a jdk7u11-b08 eb9d57159e5126cf4316c9571ac39324a8b442a8 jdk7u13-b09 +0000000000000000000000000000000000000000 icedtea-2.3.6 +387d46be7c40696fcadd9f15c5538e8517af79d1 icedtea-2.3.6 +d7feafb8427bd47a4b9239ff529999d65b0936ac icedtea-2.3.7 +1d46a56eb51c0efa3ef68a8aab67b3d992e36645 icedtea-2.3.8 +f9fe0d38b1103cb33073538c959d982e28ed7b11 jdk7u13-b10 +0a6a09e5174a4c15632ff7e06d6b215164e3fa15 jdk7u13-b30 +f9fe0d38b1103cb33073538c959d982e28ed7b11 jdk7u13-b20 +99c114990b191f32e72c6158072033aec5816aaf jdk7u15-b01 +edbaa584f09a78d0ad3c73389faf20409a552e46 jdk7u15-b02 +14a9b60a2086f4e2f6ec43bee3375042946f6510 jdk7u15-b30 +a55f67cfe182dc42a86aae836674eb8ba5b79891 jdk7u15-b03 +eb9d57159e5126cf4316c9571ac39324a8b442a8 jdk7u15-b32 +8a9867ee429440b657eb5852c4dae5f029356022 jdk7u17-b01 From andrew at icedtea.classpath.org Fri Mar 8 08:25:19 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 08 Mar 2013 16:25:19 +0000 Subject: /hg/release/icedtea7-forest-2.3/jaxws: 12 new changesets Message-ID: changeset 7e55d4bdff8b in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=7e55d4bdff8b author: katleman date: Fri Feb 01 10:25:39 2013 -0800 Added tag jdk7u13-b20 for changeset 1d2eb88cadaf changeset 21dbdd72a46a in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=21dbdd72a46a author: katleman date: Tue Jan 29 14:15:08 2013 -0800 Added tag jdk7u13-b10 for changeset 1d2eb88cadaf changeset 2e6341e42bef in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=2e6341e42bef author: katleman date: Fri Feb 01 10:31:54 2013 -0800 Added tag jdk7u13-b30 for changeset 21dbdd72a46a changeset abcaebcead60 in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=abcaebcead60 author: ewendeli date: Fri Feb 01 23:29:29 2013 +0100 Merge changeset 62f9e7f5eb64 in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=62f9e7f5eb64 author: katleman date: Thu Feb 07 14:18:10 2013 -0800 Added tag jdk7u15-b01 for changeset abcaebcead60 changeset ed9f270009f2 in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=ed9f270009f2 author: katleman date: Fri Feb 08 10:46:48 2013 -0800 Added tag jdk7u15-b02 for changeset 62f9e7f5eb64 changeset eaf9b2990670 in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=eaf9b2990670 author: katleman date: Wed Feb 13 18:19:35 2013 -0800 Added tag jdk7u15-b30 for changeset ed9f270009f2 changeset 3af2a68c85d1 in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=3af2a68c85d1 author: katleman date: Mon Feb 18 12:09:48 2013 -0800 Added tag jdk7u15-b03 for changeset eaf9b2990670 changeset 892b6c71045f in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=892b6c71045f author: katleman date: Mon Feb 18 12:29:22 2013 -0800 Added tag jdk7u15-b32 for changeset c7ea4220ad61 changeset b8496d1dc005 in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=b8496d1dc005 author: katleman date: Mon Feb 18 12:42:27 2013 -0800 Merge changeset defde3ef0360 in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=defde3ef0360 author: katleman date: Tue Feb 26 12:42:10 2013 -0800 Added tag jdk7u17-b01 for changeset b8496d1dc005 changeset 8eb0bc947ad4 in /hg/release/icedtea7-forest-2.3/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jaxws?cmd=changeset;node=8eb0bc947ad4 author: andrew date: Fri Mar 08 16:04:54 2013 +0000 Merge jdk7u17-b02 diffstat: .hgtags | 29 +++++++++++++++++++++++++++++ patches/jaxws_src/xjc.patch | 17 +++++++++++++++++ 2 files changed, 46 insertions(+), 0 deletions(-) diffs (113 lines): diff -r 1d2eb88cadaf -r 8eb0bc947ad4 .hgtags --- a/.hgtags Tue Jan 15 18:57:34 2013 -0800 +++ b/.hgtags Fri Mar 08 16:04:54 2013 +0000 @@ -50,6 +50,7 @@ 558985e26fe16f5a6ebb2edb9180a42e1c8e8202 jdk7-b73 f4466e1b608088c90e11beaa4b600f102608c6a1 jdk7-b74 fcf2b8b5d606641659419f247fcee4b284c45e6e jdk7-b75 +0dc08d528c998ca993e759b311e7b54c98e0ef28 icedtea7-1.12 765d2077d1e652e234d27fe85ba58a986b488503 jdk7-b76 5b4968c110476085225d3a71c4210fad2c1116c1 jdk7-b77 fc1c72d1dfbb17db7d46bba8db9afc39cbbb9299 jdk7-b78 @@ -63,6 +64,7 @@ 512b0e924a5ae0c0b7ad326182cae0dc0e4d1aa8 jdk7-b86 3febd6fab2ac8ffddbaf7bed00d11290262af153 jdk7-b87 8c666f8f3565974e301ccb58b7538912551a6e26 jdk7-b88 +1661166c82dc2102f3f0364e28d1e4211f25a4cf icedtea7-1.13 bf3675aa7f20fc6f241ce95760005aef2a30ff41 jdk7-b89 ead7c4566a0017bcb44b468b3ac03b60dc5333ce jdk7-b90 cf4686bf35abd1e573f09fa43cbec66403160ae9 jdk7-b91 @@ -111,6 +113,7 @@ 545de8303fec939db3892f7c324dd7df197e8f09 jdk7-b134 d5fc61f18043765705ef22b57a68c924ab2f1a5b jdk7-b135 c81d289c9a532d6e94af3c09d856a2a20529040f jdk7-b136 +339c2d381d80dbf9b74604e6ba43ead276b8024e icedtea-1.14 ccea3282991ce8b678e188cf32a8239f76ff3bfa jdk7-b137 cc956c8a8255583535597e9a63db23c510e9a063 jdk7-b138 c025078c8362076503bb83b8e4da14ba7b347940 jdk7-b139 @@ -123,6 +126,7 @@ 05469dd4c3662c454f8a019e492543add60795cc jdk7-b146 c01bfd68d0528bc88348813c4d75d7f5c62bc4e2 jdk7u1-b01 d13b1f877bb5ed8dceb2f7ec10365d1db5f70b2d jdk7-b147 +e6cd09c7ef22bbabe31c9f2a32c7e13cfa713fd3 icedtea-2.0-branchpoint 4c24f7019ce939a452154a83151294ad7da66a9d jdk7u1-b02 272778f529d11081f548f37fcd6a7aec0b11a8dd jdk7u1-b03 48b06a6e6f46e5bcd610f4bed57cd5067cf31f8c jdk7u1-b04 @@ -141,6 +145,7 @@ 21131044a61353ac20e360bce52d8f480e08d7a2 jdk7u2-b12 9728fd833e01faa5e51484aeaf3c51d32d1175fb jdk7u2-b13 d6db86a7ca32e6d97844f633badc0d516e55694f jdk7u2-b21 +d26ff33070cb75a0a7349d965ec4f0930ded418d icedtea-2.1-branchpoint d6db86a7ca32e6d97844f633badc0d516e55694f jdk7u3-b02 44e824502fa24440f907205ccdc3959d01bd8109 jdk7u3-b03 6e1cc321aacea944691aa06558f2bbad89baf5b3 jdk7u3-b04 @@ -157,6 +162,7 @@ 3891fe529057431278394c6341cfabaacd5061f5 jdk7u4-b10 2df5cd83fab91f050c4bac54aa06e174ecee38f4 jdk7u4-b11 4d3a9fe44f7531642bc739ec3c8efb2e6d9e08c7 jdk7u4-b12 +1854d8e2547cb18ebcf84db13c22d0987c49c274 icedtea-2.2-branchpoint c3b6659aa169b3f249246497a8d5a87baa1e798a jdk7u4-b13 0f8963feaefda21e72f84b8ea49834a289d537f3 jdk7u4-b14 61516652b59ec411678b38a232a84413652a4172 jdk7u5-b01 @@ -191,6 +197,7 @@ f1dba7ebe6a50c22ffcaf85b14b31462ce008556 jdk7u6-b15 e1d2afbb63d27600dd8c8a021eadff84a901a73c jdk7u6-b16 401bdbbf89c9187b51dc8906c0e2700ef0ffc8a3 jdk7u6-b17 +8888d2790217c31edbf13ea81d9ac06210092ad2 icedtea-2.3-branchpoint a1daf7097c61181216233e4850ef6ec56b0fe6b6 jdk7u6-b18 58c1c6ecf8f1e59db9b575ae57b2894d0152d319 jdk7u6-b19 6d17242f12edc643ecab4263e656003a1ca44c03 jdk7u6-b20 @@ -199,6 +206,15 @@ afb6d773328fa76cea65dc024a448cd931d111f2 jdk7u6-b23 b8b85e62d2c5347df8cf2e825e51e3de178508ea jdk7u6-b24 fb03d08f73e98f0dd67cb81632eb9b685de49b7e jdk7u6-b30 +973648e4cf9bafe4e0c489a7a5711a9047262f88 icedtea-2.3 +410de4b438cf005c78611209ffa0799d89be1e19 icedtea-2.3.1 +9a744f20cfc52e19f66956e5d406c23910ed4cb4 icedtea-2.3.2 +c89c6ac953e7f30780e74b4bc153fee4dd330179 icedtea-2.3.3 +03f54ef339144764e218c6548c237e06d54d5ac7 icedtea-2.3.4 +7182233cc27e9f1ee8435dbcf6c3948379ec35b0 icedtea-2.3.5 +8064f322e58d24f7ced21b73eccff37ee06a33ea icedtea-2.3.6 +8064f322e58d24f7ced21b73eccff37ee06a33ea icedtea-2.3.6 +0000000000000000000000000000000000000000 icedtea-2.3.6 739ffa9dffad4cc2febe66ca1c2d86496e80741a jdk7u7-b10 e9a5a78329d0518efafd9f6f6149f359a7db4e2e jdk7u7-b30 ed6262e7bb0db4cd116c31f3c88cbd7c0288de40 jdk7u7-b11 @@ -231,3 +247,16 @@ 66786f9d73c479ce70a306e14dd7f653f5b3a4f9 jdk7u11-b07 a3cadd00459f1146fdcfa8702bbb29efdcd58960 jdk7u11-b08 c7ea4220ad61b125bd7c4b7f112dd9ff18e9be33 jdk7u13-b09 +0000000000000000000000000000000000000000 icedtea-2.3.6 +4390dfdde97c7de6b3a12fe59586188fa3ad535c icedtea-2.3.6 +b900024eb4ba87ac1653a6cc6ff30d0809f5dcb5 icedtea-2.3.7 +b9590aa972b990f954c6d16c8a1acf83d5e56cbf icedtea-2.3.8 +1d2eb88cadaf29bf577a71c69b04afe2468d8ff6 jdk7u13-b10 +21dbdd72a46a29c148ea3519268447c467540637 jdk7u13-b30 +1d2eb88cadaf29bf577a71c69b04afe2468d8ff6 jdk7u13-b20 +abcaebcead605f89cd0919add20d8ac16637ddc2 jdk7u15-b01 +62f9e7f5eb644fedd93dd93bd36bcf817a8d9c8a jdk7u15-b02 +ed9f270009f2b8606e9e0f58aeedbed36e13963e jdk7u15-b30 +eaf9b299067069826a5acdc88e15402e5a22cb5d jdk7u15-b03 +c7ea4220ad61b125bd7c4b7f112dd9ff18e9be33 jdk7u15-b32 +b8496d1dc0058341da1790bc2e7d2dbba6d4f90e jdk7u17-b01 diff -r 1d2eb88cadaf -r 8eb0bc947ad4 patches/jaxws_src/xjc.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/jaxws_src/xjc.patch Fri Mar 08 16:04:54 2013 +0000 @@ -0,0 +1,17 @@ +--- src/com/sun/tools/internal/xjc/reader/xmlschema/parser/SchemaConstraintChecker.java.prev 2008-10-21 15:50:20.000000000 +0100 ++++ src/com/sun/tools/internal/xjc/reader/xmlschema/parser/SchemaConstraintChecker.java 2008-10-21 15:57:37.000000000 +0100 +@@ -66,6 +66,14 @@ + + SchemaFactory sf = SchemaFactory.newInstance(W3C_XML_SCHEMA_NS_URI); + sf.setErrorHandler(errorFilter); ++ try { ++ // By default the SchemaFactory imposes a limit of 5000 on ++ // xsd:sequence maxOccurs if a SecurityManager is ++ // installed. This breaks the specification of xjc, ++ // causing TCK failures. ++ sf.setProperty("http://apache.org/xml/properties/security-manager", null); ++ } catch (SAXException e) { ++ } + if( entityResolver != null ) { + sf.setResourceResolver(new LSResourceResolver() { + public LSInput resolveResource(String type, String namespaceURI, String publicId, String systemId, String baseURI) { From andrew at icedtea.classpath.org Fri Mar 8 08:25:26 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 08 Mar 2013 16:25:26 +0000 Subject: /hg/release/icedtea7-forest-2.3/langtools: 12 new changesets Message-ID: changeset 6f47d66e3af1 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=6f47d66e3af1 author: katleman date: Fri Feb 01 10:25:58 2013 -0800 Added tag jdk7u13-b20 for changeset 761b933e2696 changeset 8a12629ea213 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=8a12629ea213 author: katleman date: Tue Jan 29 14:15:55 2013 -0800 Added tag jdk7u13-b10 for changeset 761b933e2696 changeset 4d95b0e87666 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=4d95b0e87666 author: katleman date: Fri Feb 01 10:32:09 2013 -0800 Added tag jdk7u13-b30 for changeset 8a12629ea213 changeset 1298307076c2 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=1298307076c2 author: ewendeli date: Fri Feb 01 23:30:47 2013 +0100 Merge changeset 8db0105f00ce in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=8db0105f00ce author: katleman date: Thu Feb 07 14:18:44 2013 -0800 Added tag jdk7u15-b01 for changeset 1298307076c2 changeset b00c1580ffa9 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=b00c1580ffa9 author: katleman date: Fri Feb 08 10:47:18 2013 -0800 Added tag jdk7u15-b02 for changeset 8db0105f00ce changeset c160d7d1616d in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=c160d7d1616d author: katleman date: Wed Feb 13 18:19:52 2013 -0800 Added tag jdk7u15-b30 for changeset b00c1580ffa9 changeset e358999b4426 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=e358999b4426 author: katleman date: Mon Feb 18 12:10:37 2013 -0800 Added tag jdk7u15-b03 for changeset c160d7d1616d changeset be02fb01d696 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=be02fb01d696 author: katleman date: Mon Feb 18 12:30:00 2013 -0800 Added tag jdk7u15-b32 for changeset a778aaf53c52 changeset edfcf07c2877 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=edfcf07c2877 author: katleman date: Mon Feb 18 12:42:34 2013 -0800 Merge changeset 2782a1c60faf in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=2782a1c60faf author: katleman date: Tue Feb 26 12:42:27 2013 -0800 Added tag jdk7u17-b01 for changeset edfcf07c2877 changeset 23907f495db8 in /hg/release/icedtea7-forest-2.3/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/langtools?cmd=changeset;node=23907f495db8 author: andrew date: Fri Mar 08 16:05:31 2013 +0000 Merge jdk7u17-b02 diffstat: .hgtags | 29 +++++++++++++++++++++++++++++ make/Makefile | 6 ++++++ make/build.properties | 2 +- make/build.xml | 2 +- 4 files changed, 37 insertions(+), 2 deletions(-) diffs (132 lines): diff -r 761b933e2696 -r 23907f495db8 .hgtags --- a/.hgtags Tue Jan 15 18:57:51 2013 -0800 +++ b/.hgtags Fri Mar 08 16:05:31 2013 +0000 @@ -50,6 +50,7 @@ 9596dff460935f09684c11d156ce591f92584f0d jdk7-b73 1a66b08deed0459054b5b1bea3dfbead30d258fa jdk7-b74 2485f5641ed0829205aaaeb31ad711c2c2ef0de3 jdk7-b75 +83367f01297bf255f511f5291bbbbaa24a9c8459 icedtea7-1.12 8fb9b4be3cb1574302acde90549a4d333ef51e93 jdk7-b76 0398ae15b90ac76d87ee21844453e95ff8613e43 jdk7-b77 acc1e40a5874ebf32bebcb6ada565b3b40b7461c jdk7-b78 @@ -63,6 +64,7 @@ ef07347428f2198ae6b8144ac0b9086bbe39fd16 jdk7-b86 409db93d19c002333980df5b797c6b965150c7a0 jdk7-b87 f9b5d4867a26f8c4b90ad37fe2c345b721e93d6b jdk7-b88 +681f1f51926faf4c73d8905a429ff4ead6e9d622 icedtea7-1.13 6cea9a143208bc1185ced046942c0f4e45dbeba5 jdk7-b89 71c2c23a7c35b2896c87004023b9743b6d1b7758 jdk7-b90 97b6fa97b8ddb3a49394011c2a0ec5d6535e594c jdk7-b91 @@ -111,6 +113,7 @@ 3d7acdbb72cab55deedfd35f60d4732abc9d6ac4 jdk7-b134 9d0a61ac567b983da7cc8f4a7030f2245bb6dbab jdk7-b135 ed0f7f1f9511db4f9615b1426d22f8b961629275 jdk7-b136 +8e26c4aee63c04ee129bf9068f5eea47cc385177 icedtea-1.14 a15c9b058ae007d4ccb7e35ce44e4dfa977f090b jdk7-b137 53f212bed4f4304dce7f0bf0fa01c998c65bacd6 jdk7-b138 853b6bb99f9b58eb7cf8211c67d3b6e4f1228a3e jdk7-b139 @@ -123,6 +126,7 @@ 9425dd4f53d5bfcd992d9aecea0eb7d8b2d4f62b jdk7-b146 d34578643d1c6c752d4a6b5e79c6ab1b60850b4a jdk7u1-b01 58bc532d63418ac3c9b42460d89cdaf595c6f3e1 jdk7-b147 +fb7fb3071b642334520e5b9f4a87ce28717af61c icedtea-2.0-branchpoint cd2cc8b5edb045b950aed46d159b4fb8fc2fd1df jdk7u1-b02 82820a30201dbf4b80f1916f3d0f4a92ad21b61a jdk7u1-b03 baa2c13c70fea3d6e259a34f0903197fdceb64b5 jdk7u1-b04 @@ -141,6 +145,7 @@ f0802d8a0909f66ce19d3d44b33ddf4943aee076 jdk7u2-b12 f474527e77e4797d78bd6c3b31923fddcfd9d5c6 jdk7u2-b13 fc0769df8cd03fffc38c7a1ab6b2e2e7cc2506a8 jdk7u2-b21 +58f6a950cd726220e81eddb126ca5c57e3b368f2 icedtea-2.1-branchpoint fc0769df8cd03fffc38c7a1ab6b2e2e7cc2506a8 jdk7u3-b02 0ffc4995457773085f61c39f6d33edc242b41bcf jdk7u3-b03 f6de36b195cd315646213c7affd2cc15702edbfb jdk7u3-b04 @@ -157,6 +162,7 @@ 8919b2b02fcba65f833c68374f3bfdd9bc3ba814 jdk7u4-b10 4672e092f0968d503dc37f860b15ae7e2653f8d7 jdk7u4-b11 a4bf6a1aff54a98e9ff2b3fb53c719f658bec677 jdk7u4-b12 +e3537a4f75c7fcca16c349c3175bb0cdc2fbc29c icedtea-2.2-branchpoint 56eb9150d9ffdb71c47d72871e8ecc98b5f402de jdk7u4-b13 0e55881c2ee2984048c179d1e031cefb56a36bec jdk7u4-b14 0bea057f7ce1577e1b0306f2027c057e35394398 jdk7u5-b01 @@ -191,6 +197,7 @@ 47ae28da508861d77ee6dd408d822acf507b28ec jdk7u6-b15 5c7763489f4d2727c6d9de11f4114fb8ed839042 jdk7u6-b16 66c671f28cb2840ceec5b44c44bac073fc0b4256 jdk7u6-b17 +cee31ee38a190f77b1e21c0515bb28802dcd9678 icedtea-2.3-branchpoint 6aa859ef42876c51bb1b1d7fb4db32a916a7dcaa jdk7u6-b18 474a52eeeafb1feccffda68b96f651e65415c01d jdk7u6-b19 32acb67a79531daf678577c7ef1bde1867da807d jdk7u6-b20 @@ -199,6 +206,15 @@ dd3e29d8892fcaba6d76431d5fa9d49e7c088f76 jdk7u6-b23 6aac89e84fc96d15bb78b13aa71c9e6b73d7237e jdk7u6-b24 bcd1d067d525065630deb98b678bc00b499adbe1 jdk7u6-b30 +ca0a82364e5fe1ae03911c90732b226d2482b77c icedtea-2.3 +4ccca0a55ed66de7e7482b5f2a9222ec44bea699 icedtea-2.3.1 +0cf6181d44db827cb1a341f5936ce43cc489fd08 icedtea-2.3.2 +867d5041bee60ea67ee56c5990a82a0215cc4959 icedtea-2.3.3 +ec73c6927fb72f1034cde0be9dadb4eaffd6b338 icedtea-2.3.4 +946195011b307a48ad0d9f1aecfb689bba7c5d82 icedtea-2.3.5 +afdfcc0ca555b69a5d9ddec458c0036a318b63b9 icedtea-2.3.6 +afdfcc0ca555b69a5d9ddec458c0036a318b63b9 icedtea-2.3.6 +0000000000000000000000000000000000000000 icedtea-2.3.6 2d6017454236d4e95aad7feaff5fc92a612598f4 jdk7u7-b10 27041587508dbc4e08c956ba98a11ce0d5608dc4 jdk7u7-b30 b92a9f4f6bce4ec500ed3adb8203e6424b579f94 jdk7u7-b11 @@ -231,3 +247,16 @@ c5d3dabddff76c92425cbf6a99ed4e066d16b4fd jdk7u11-b07 a0d9abc405580d6fa0ae217fab96608285a38c41 jdk7u11-b08 a778aaf53c52f78c92f29a1220d9f46de94c9247 jdk7u13-b09 +0000000000000000000000000000000000000000 icedtea-2.3.6 +812eeff322ccb47cd1aa9b6f1dd9c9587c3fe911 icedtea-2.3.6 +e0739a8783d19aded13ea9160fa2c87419b98664 icedtea-2.3.7 +b5006c3285c6a39e2b33d5f38b8e72329136ee81 icedtea-2.3.8 +761b933e269693fd689c2af5d8317201b2172dbb jdk7u13-b10 +8a12629ea21378f96666628f472cd9a6936a4933 jdk7u13-b30 +761b933e269693fd689c2af5d8317201b2172dbb jdk7u13-b20 +1298307076c2f0c2a4acd3a2a132cbe98d399009 jdk7u15-b01 +8db0105f00ce9fe6899ece52d46d78995111c456 jdk7u15-b02 +b00c1580ffa95d9edd567835e1b9a77cf8ca2af6 jdk7u15-b30 +c160d7d1616d099afad0986b7d06aee2d9405e57 jdk7u15-b03 +a778aaf53c52f78c92f29a1220d9f46de94c9247 jdk7u15-b32 +edfcf07c2877af8efa649e514167b22b7f6fc0b4 jdk7u17-b01 diff -r 761b933e2696 -r 23907f495db8 make/Makefile --- a/make/Makefile Tue Jan 15 18:57:51 2013 -0800 +++ b/make/Makefile Fri Mar 08 16:05:31 2013 +0000 @@ -111,6 +111,12 @@ ANT_OPTIONS += -Ddebug.classfiles=true endif +ifeq ($(JAVAC_WARNINGS_FATAL), true) + ANT_OPTIONS += -Dwarnings.fatal=-Werror +else + ANT_OPTIONS += -Dwarnings.fatal= +endif + # Note: jdk/make/common/Defs.gmk uses LANGUAGE_VERSION (-source NN) # and the somewhat misnamed CLASS_VERSION (-target NN) ifdef TARGET_CLASS_VERSION diff -r 761b933e2696 -r 23907f495db8 make/build.properties --- a/make/build.properties Tue Jan 15 18:57:51 2013 -0800 +++ b/make/build.properties Fri Mar 08 16:05:31 2013 +0000 @@ -68,7 +68,7 @@ # set the following to -version to verify the versions of javac being used javac.version.opt = # in time, there should be no exceptions to -Xlint:all -javac.lint.opts = -Xlint:all,-deprecation -Werror +javac.lint.opts = -Xlint:all,-deprecation ${warnings.fatal} # options for the task for javac #javadoc.jls3.url=http://java.sun.com/docs/books/jls/ diff -r 761b933e2696 -r 23907f495db8 make/build.xml --- a/make/build.xml Tue Jan 15 18:57:51 2013 -0800 +++ b/make/build.xml Fri Mar 08 16:05:31 2013 +0000 @@ -877,7 +877,7 @@ + classpath="${build.toolclasses.dir}:${build.bootstrap.dir}/classes:${ant.home}/lib/ant.jar"/> From andrew at icedtea.classpath.org Fri Mar 8 08:25:35 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 08 Mar 2013 16:25:35 +0000 Subject: /hg/release/icedtea7-forest-2.3/hotspot: 12 new changesets Message-ID: changeset b4d1e151243f in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=b4d1e151243f author: katleman date: Fri Feb 01 10:25:23 2013 -0800 Added tag jdk7u13-b20 for changeset e0e52e35e0c5 changeset be57a8d7a1a7 in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=be57a8d7a1a7 author: katleman date: Tue Jan 29 14:14:42 2013 -0800 Added tag jdk7u13-b10 for changeset e0e52e35e0c5 changeset 1b40559b91cb in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=1b40559b91cb author: katleman date: Fri Feb 01 10:31:35 2013 -0800 Added tag jdk7u13-b30 for changeset be57a8d7a1a7 changeset 5fbe0cae3a2a in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=5fbe0cae3a2a author: ewendeli date: Fri Feb 01 23:28:04 2013 +0100 Merge changeset 30d72c9abb56 in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=30d72c9abb56 author: katleman date: Thu Feb 07 14:17:46 2013 -0800 Added tag jdk7u15-b01 for changeset 5fbe0cae3a2a changeset 221c64550c5b in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=221c64550c5b author: katleman date: Fri Feb 08 10:46:26 2013 -0800 Added tag jdk7u15-b02 for changeset 30d72c9abb56 changeset 5b55cef461b0 in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=5b55cef461b0 author: katleman date: Wed Feb 13 18:19:21 2013 -0800 Added tag jdk7u15-b30 for changeset 221c64550c5b changeset 53ab22d4f44c in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=53ab22d4f44c author: katleman date: Mon Feb 18 12:09:23 2013 -0800 Added tag jdk7u15-b03 for changeset 5b55cef461b0 changeset d2b587401182 in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=d2b587401182 author: katleman date: Mon Feb 18 12:28:49 2013 -0800 Added tag jdk7u15-b32 for changeset 34a7b6dda06e changeset a4dfda7a2655 in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=a4dfda7a2655 author: katleman date: Mon Feb 18 12:42:19 2013 -0800 Merge changeset 0d82bf449a61 in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=0d82bf449a61 author: katleman date: Tue Feb 26 12:41:47 2013 -0800 Added tag jdk7u17-b01 for changeset a4dfda7a2655 changeset 23888f3dec52 in /hg/release/icedtea7-forest-2.3/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot?cmd=changeset;node=23888f3dec52 author: andrew date: Fri Mar 08 16:05:19 2013 +0000 Merge jdk7u17-b02 diffstat: .hgtags | 33 + agent/src/os/linux/Makefile | 11 +- agent/src/os/linux/libproc.h | 29 +- make/linux/makefiles/adlc.make | 10 +- make/linux/makefiles/defs.make | 54 +- make/linux/makefiles/gcc.make | 122 ++- make/linux/makefiles/jsig.make | 6 +- make/linux/makefiles/rules.make | 10 - make/linux/makefiles/saproc.make | 4 + make/linux/makefiles/vm.make | 24 +- make/linux/platform_zero.in | 2 +- make/solaris/makefiles/adlc.make | 6 +- make/solaris/makefiles/dtrace.make | 16 + make/solaris/makefiles/gcc.make | 4 +- make/solaris/makefiles/jsig.make | 4 + make/solaris/makefiles/rules.make | 10 - make/solaris/makefiles/saproc.make | 4 + make/solaris/makefiles/vm.make | 12 + make/windows/makefiles/vm.make | 8 + src/cpu/x86/vm/c2_globals_x86.hpp | 2 +- src/cpu/zero/vm/assembler_zero.cpp | 8 + src/cpu/zero/vm/assembler_zero.hpp | 1 + src/cpu/zero/vm/copy_zero.hpp | 4 +- src/cpu/zero/vm/cppInterpreter_zero.cpp | 344 +++++++++- src/cpu/zero/vm/deoptimizerFrame_zero.hpp | 53 + src/cpu/zero/vm/frame_zero.inline.hpp | 2 + src/cpu/zero/vm/methodHandles_zero.cpp | 67 +- src/cpu/zero/vm/methodHandles_zero.hpp | 25 +- src/cpu/zero/vm/sharedRuntime_zero.cpp | 30 +- src/os/linux/vm/os_linux.cpp | 39 +- src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp | 11 +- src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp | 31 +- src/share/vm/asm/codeBuffer.cpp | 2 +- src/share/vm/asm/codeBuffer.hpp | 2 +- src/share/vm/ci/ciTypeFlow.cpp | 2 +- src/share/vm/classfile/systemDictionary.cpp | 1 - src/share/vm/compiler/methodLiveness.cpp | 12 +- src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp | 6 +- src/share/vm/gc_implementation/g1/concurrentMark.cpp | 4 +- src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp | 2 +- src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp | 4 +- src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp | 2 +- src/share/vm/memory/blockOffsetTable.hpp | 2 +- src/share/vm/memory/collectorPolicy.cpp | 2 +- src/share/vm/memory/threadLocalAllocBuffer.cpp | 2 +- src/share/vm/opto/cfgnode.cpp | 2 + src/share/vm/opto/type.cpp | 2 + src/share/vm/prims/jni.cpp | 2 +- src/share/vm/prims/jvmtiEnv.cpp | 3 + src/share/vm/runtime/arguments.cpp | 9 +- src/share/vm/runtime/globals.hpp | 2 +- src/share/vm/runtime/os.cpp | 3 + src/share/vm/runtime/vmStructs.cpp | 10 +- src/share/vm/shark/sharkCompiler.cpp | 4 +- src/share/vm/utilities/bitMap.hpp | 2 +- src/share/vm/utilities/macros.hpp | 16 + src/share/vm/utilities/ostream.cpp | 2 +- src/share/vm/utilities/vmError.cpp | 10 +- test/runtime/6929067/Test6929067.sh | 35 +- test/runtime/7020373/GenOOMCrashClass.java | 157 ++++ test/runtime/7020373/Test7020373.sh | 7 +- test/runtime/7020373/testcase.jar | Bin test/runtime/7158804/Test7158804.sh | 30 - 63 files changed, 1101 insertions(+), 224 deletions(-) diffs (truncated from 2502 to 500 lines): diff -r e0e52e35e0c5 -r 23888f3dec52 .hgtags --- a/.hgtags Tue Jan 15 18:57:18 2013 -0800 +++ b/.hgtags Fri Mar 08 16:05:19 2013 +0000 @@ -50,6 +50,7 @@ faf94d94786b621f8e13cbcc941ca69c6d967c3f jdk7-b73 f4b900403d6e4b0af51447bd13bbe23fe3a1dac7 jdk7-b74 d8dd291a362acb656026a9c0a9da48501505a1e7 jdk7-b75 +b4ab978ce52c41bb7e8ee86285e6c9f28122bbe1 icedtea7-1.12 9174bb32e934965288121f75394874eeb1fcb649 jdk7-b76 455105fc81d941482f8f8056afaa7aa0949c9300 jdk7-b77 e703499b4b51e3af756ae77c3d5e8b3058a14e4e jdk7-b78 @@ -87,6 +88,7 @@ 07226e9eab8f74b37346b32715f829a2ef2c3188 hs18-b01 e7e7e36ccdb5d56edd47e5744351202d38f3b7ad jdk7-b87 4b60f23c42231f7ecd62ad1fcb6a9ca26fa57d1b jdk7-b88 +a393ff93e7e54dd94cc4211892605a32f9c77dad icedtea7-1.13 15836273ac2494f36ef62088bc1cb6f3f011f565 jdk7-b89 4b60f23c42231f7ecd62ad1fcb6a9ca26fa57d1b hs18-b02 605c9707a766ff518cd841fc04f9bb4b36a3a30b jdk7-b90 @@ -160,6 +162,7 @@ b898f0fc3cedc972d884d31a751afd75969531cf hs21-b05 bd586e392d93b7ed7a1636dcc8da2b6a4203a102 jdk7-b136 bd586e392d93b7ed7a1636dcc8da2b6a4203a102 hs21-b06 +591c7dc0b2ee879f87a7b5519a5388e0d81520be icedtea-1.14 2dbcb4a4d8dace5fe78ceb563b134f1fb296cd8f jdk7-b137 2dbcb4a4d8dace5fe78ceb563b134f1fb296cd8f hs21-b07 0930dc920c185afbf40fed9a655290b8e5b16783 jdk7-b138 @@ -182,6 +185,7 @@ 38fa55e5e79232d48f1bb8cf27d88bc094c9375a hs21-b16 81d815b05abb564aa1f4100ae13491c949b9a07e jdk7-b147 81d815b05abb564aa1f4100ae13491c949b9a07e hs21-b17 +7693eb0fce1f6b484cce96c233ea20bdad8a09e0 icedtea-2.0-branchpoint 9b0ca45cd756d538c4c30afab280a91868eee1a5 jdk7u2-b01 0cc8a70952c368e06de2adab1f2649a408f5e577 jdk8-b01 31e253c1da429124bb87570ab095d9bc89850d0a jdk8-b02 @@ -210,6 +214,7 @@ 3ba0bb2e7c8ddac172f5b995aae57329cdd2dafa hs22-b10 f17fe2f4b6aacc19cbb8ee39476f2f13a1c4d3cd jdk7u2-b13 0744602f85c6fe62255326df595785eb2b32166d jdk7u2-b21 +f8f4d3f9b16567b91bcef4caaa8417c8de8015f0 icedtea-2.1-branchpoint a40d238623e5b1ab1224ea6b36dc5b23d0a53880 jdk7u3-b02 6986bfb4c82e00b938c140f2202133350e6e73f8 jdk7u3-b03 8e6375b46717d74d4885f839b4e72d03f357a45f jdk7u3-b04 @@ -264,6 +269,7 @@ f92a171cf0071ca6c3fa8231d7d570377f8b2f4d hs23-b16 f92a171cf0071ca6c3fa8231d7d570377f8b2f4d hs23-b16 931e5f39e365a0d550d79148ff87a7f9e864d2e1 hs23-b16 +a2c5354863dcb3d147b7b6f55ef514b1bfecf920 icedtea-2.2-branchpoint efb5f2662c96c472caa3327090268c75a86dd9c0 jdk7u4-b13 82e719a2e6416838b4421637646cbfd7104c7716 jdk7u4-b14 e5f7f95411fb9e837800b4152741c962118e5d7a jdk7u5-b01 @@ -311,6 +317,7 @@ cefe884c708aa6dfd63aff45f6c698a6bc346791 jdk7u6-b16 270a40a57b3d05ca64070208dcbb895b5b509d8e hs23.2-b08 7a37cec9d0d44ae6ea3d26a95407e42d99af6843 jdk7u6-b17 +354cfde7db2f1fd46312d883a63c8a76d5381bab icedtea-2.3-branchpoint df0df4ae5af2f40b7f630c53a86e8c3d68ef5b66 jdk7u6-b18 1257f4373a06f788bd656ae1c7a953a026a285b9 jdk7u6-b19 a0c2fa4baeb6aad6f33dc87b676b21345794d61e hs23.2-b09 @@ -320,6 +327,15 @@ df57f6208cb76b4e8d1a0bd0eea3d2ad577cb79b jdk7u6-b23 b03c2687fb16514652e79261ad68d2c601dcee62 jdk7u6-b24 cffde29ea7cc8647f17002a4d0e94065dcd82839 jdk7u6-b30 +eede732f62dd73953dce03e003415729c6c335b2 icedtea-2.3 +c798442fa4c00ad251f6cbe989d32485845bf247 icedtea-2.3.1 +2a413d946cb1acdcbe1110098f79b7a1f267bf75 icedtea-2.3.2 +0885feeea95caa8b92f46234872f0c3839d8850b icedtea-2.3.3 +87f0aa7a8f8f0209148ad0746a3486d9cf16ebaa icedtea-2.3.4 +f2b98ad97b3c9d2d9fb98b0dd9b82506a5688e55 icedtea-2.3.5 +ad27d7c42279783903b26cd42b09741f5640f6db icedtea-2.3.6 +ad27d7c42279783903b26cd42b09741f5640f6db icedtea-2.3.6 +0000000000000000000000000000000000000000 icedtea-2.3.6 f7933fecea9aa494e4032e17ff07e5fcec4b5961 jdk7u7-b10 eeef33dc4b40f9ba50c4c9b1ac61b30f0f2523bf jdk7u7-b30 f1551c70c7f598b7049bcc33e530fc738a81c7a4 jdk7u7-b11 @@ -352,3 +368,20 @@ 94bf1e3dafef3cc06d3f97f81d304313ccd999ee jdk7u11-b07 2b543aa340e4a75671fe05803fcee08bf3e136db jdk7u11-b08 34a7b6dda06e2ff6f7e9ad563e3fc3ecd8993579 jdk7u13-b09 +0000000000000000000000000000000000000000 icedtea-2.3.6 +849ee586b0be87d4f03ed566a75e5352b647605d icedtea-2.3.6 +849ee586b0be87d4f03ed566a75e5352b647605d icedtea-2.3.6 +0000000000000000000000000000000000000000 icedtea-2.3.6 +0000000000000000000000000000000000000000 icedtea-2.3.6 +19e37453ab1be02d146ace33f19d73719c119eaf icedtea-2.3.6 +bc0de5a0ece28d5e8035cc7659cd6f71a838882a icedtea-2.3.7 +104e2c65892dc642bcad698d0b21cecb08e67c9e icedtea-2.3.8 +e0e52e35e0c53a84daadae95f626e36fd74f3eba jdk7u13-b10 +be57a8d7a1a75971c3b1e7777dcacd20f3d33264 jdk7u13-b30 +e0e52e35e0c53a84daadae95f626e36fd74f3eba jdk7u13-b20 +5fbe0cae3a2a78a73946cfd08c56a64860f1afd9 jdk7u15-b01 +30d72c9abb560bc424d16d96bfd396ccd3c62cbc jdk7u15-b02 +221c64550c5b4411d78b63820835de1a8cd0c118 jdk7u15-b30 +5b55cef461b034766f05a46640caa123aa4247d4 jdk7u15-b03 +34a7b6dda06e2ff6f7e9ad563e3fc3ecd8993579 jdk7u15-b32 +a4dfda7a2655209abb170b2fa4914dbbba89bcd3 jdk7u17-b01 diff -r e0e52e35e0c5 -r 23888f3dec52 agent/src/os/linux/Makefile --- a/agent/src/os/linux/Makefile Tue Jan 15 18:57:18 2013 -0800 +++ b/agent/src/os/linux/Makefile Fri Mar 08 16:05:19 2013 +0000 @@ -23,7 +23,12 @@ # ARCH := $(shell if ([ `uname -m` = "ia64" ]) ; then echo ia64 ; elif ([ `uname -m` = "x86_64" ]) ; then echo amd64; elif ([ `uname -m` = "sparc64" ]) ; then echo sparc; else echo i386 ; fi ) -GCC = gcc + +ifndef BUILD_GCC +BUILD_GCC = gcc +endif + +GCC = $(BUILD_GCC) JAVAH = ${JAVA_HOME}/bin/javah @@ -40,7 +45,7 @@ LIBS = -lthread_db -CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) -D_FILE_OFFSET_BITS=64 +CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D_$(ARCH)_ $(if $(filter $(ARCH),alpha),,-D$(ARCH)) $(INCLUDES) -D_FILE_OFFSET_BITS=64 LIBSA = $(ARCH)/libsaproc.so @@ -73,7 +78,7 @@ $(GCC) -shared $(LFLAGS_LIBSA) -o $(LIBSA) $(OBJS) $(LIBS) test.o: test.c - $(GCC) -c -o test.o -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) test.c + $(GCC) -c -o test.o -g -D_GNU_SOURCE -D_$(ARCH)_ $(if $(filter $(ARCH),alpha),,-D$(ARCH)) $(INCLUDES) test.c test: test.o $(GCC) -o test test.o -L$(ARCH) -lsaproc $(LIBS) diff -r e0e52e35e0c5 -r 23888f3dec52 agent/src/os/linux/libproc.h --- a/agent/src/os/linux/libproc.h Tue Jan 15 18:57:18 2013 -0800 +++ b/agent/src/os/linux/libproc.h Fri Mar 08 16:05:19 2013 +0000 @@ -36,9 +36,34 @@ These two files define pt_regs structure differently */ #ifdef _LP64 -#include "asm-sparc64/ptrace.h" +struct pt_regs { + unsigned long u_regs[16]; /* globals and ins */ + unsigned long tstate; + unsigned long tpc; + unsigned long tnpc; + unsigned int y; + + /* We encode a magic number, PT_REGS_MAGIC, along + * with the %tt (trap type) register value at trap + * entry time. The magic number allows us to identify + * accurately a trap stack frame in the stack + * unwinder, and the %tt value allows us to test + * things like "in a system call" etc. for an arbitray + * process. + * + * The PT_REGS_MAGIC is chosen such that it can be + * loaded completely using just a sethi instruction. + */ + unsigned int magic; +}; #else -#include "asm-sparc/ptrace.h" +struct pt_regs { + unsigned long psr; + unsigned long pc; + unsigned long npc; + unsigned long y; + unsigned long u_regs[16]; /* globals and ins */ +}; #endif #endif //sparc or sparcv9 diff -r e0e52e35e0c5 -r 23888f3dec52 make/linux/makefiles/adlc.make --- a/make/linux/makefiles/adlc.make Tue Jan 15 18:57:18 2013 -0800 +++ b/make/linux/makefiles/adlc.make Fri Mar 08 16:05:19 2013 +0000 @@ -1,5 +1,5 @@ # -# Copyright (c) 1999, 2011, 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 @@ -68,7 +68,9 @@ # CFLAGS_WARN holds compiler options to suppress/enable warnings. # Compiler warnings are treated as errors +ifneq ($(COMPILER_WARNINGS_FATAL),false) CFLAGS_WARN = -Werror +endif CFLAGS += $(CFLAGS_WARN) OBJECTNAMES = \ @@ -133,8 +135,10 @@ # Note that product files are updated via "mv", which is atomic. TEMPDIR := $(OUTDIR)/mktmp$(shell echo $$$$) -# Debuggable by default -CFLAGS += -g +ifneq ($(DEBUG_BINARIES), true) + # Debuggable by default (unless already done by DEBUG_BINARIES) + CFLAGS += -g +endif # Pass -D flags into ADLC. ADLCFLAGS += $(SYSDEFS) diff -r e0e52e35e0c5 -r 23888f3dec52 make/linux/makefiles/defs.make --- a/make/linux/makefiles/defs.make Tue Jan 15 18:57:18 2013 -0800 +++ b/make/linux/makefiles/defs.make Fri Mar 08 16:05:19 2013 +0000 @@ -228,10 +228,14 @@ # client and server subdirectories have symbolic links to ../libjsig.so EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX) ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - ifeq ($(ZIP_DEBUGINFO_FILES),1) - EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.diz - else - EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo + ifneq ($(ZERO_BUILD), true) + ifneq ($(STRIP_POLICY),no_strip) + ifeq ($(ZIP_DEBUGINFO_FILES),1) + EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.diz + else + EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo + endif + endif endif endif EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server @@ -240,11 +244,15 @@ ifndef BUILD_CLIENT_ONLY EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX) - ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - ifeq ($(ZIP_DEBUGINFO_FILES),1) - EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz - else - EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo + ifneq ($(ZERO_BUILD), true) + ifneq ($(STRIP_POLICY),no_strip) + ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) + ifeq ($(ZIP_DEBUGINFO_FILES),1) + EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz + else + EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo + endif + endif endif endif endif @@ -253,11 +261,13 @@ ifeq ($(ARCH_DATA_MODEL), 32) EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) - ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - ifeq ($(ZIP_DEBUGINFO_FILES),1) - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz - else - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo + ifneq ($(STRIP_POLICY),no_strip) + ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) + ifeq ($(ZIP_DEBUGINFO_FILES),1) + EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz + else + EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo + endif endif endif endif @@ -270,12 +280,16 @@ ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ $(EXPORT_LIB_DIR)/sa-jdi.jar ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - ifeq ($(ZIP_DEBUGINFO_FILES),1) - ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz - ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz - else - ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo - ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo + ifneq ($(ZERO_BUILD), true) + ifneq ($(STRIP_POLICY),no_strip) + ifeq ($(ZIP_DEBUGINFO_FILES),1) + ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz + ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz + else + ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo + ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo + endif + endif endif endif ADD_SA_BINARIES/ppc = diff -r e0e52e35e0c5 -r 23888f3dec52 make/linux/makefiles/gcc.make --- a/make/linux/makefiles/gcc.make Tue Jan 15 18:57:18 2013 -0800 +++ b/make/linux/makefiles/gcc.make Fri Mar 08 16:05:19 2013 +0000 @@ -25,19 +25,42 @@ #------------------------------------------------------------------------ # CC, CXX & AS -# When cross-compiling the ALT_COMPILER_PATH points -# to the cross-compilation toolset +ifndef HOST_GCC ifdef CROSS_COMPILE_ARCH -CXX = $(ALT_COMPILER_PATH)/g++ -CC = $(ALT_COMPILER_PATH)/gcc -HOSTCXX = g++ -HOSTCC = gcc +HOST_GCC = gcc else -CXX = g++ -CC = gcc -HOSTCXX = $(CXX) -HOSTCC = $(CC) +HOST_GCC = $(CC) endif +endif + +ifndef HOST_CXX +ifdef CROSS_COMPILE_ARCH +HOST_CXX = g++ +else +HOST_CXX = $(CXX) +endif +endif + +ifndef BUILD_GCC +ifdef CROSS_COMPILE_ARCH +BUILD_GCC = $(ALT_COMPILER_PATH)/gcc +else +BUILD_GCC = gcc +endif +endif + +ifndef BUILD_CXX +ifdef CROSS_COMPILE_ARCH +BUILD_CXX = $(ALT_COMPILER_PATH)/g++ +else +BUILD_CXX = g++ +endif +endif + +CXX = $(BUILD_CXX) +CC = $(BUILD_GCC) +HOSTCXX = $(HOST_CXX) +HOSTCC = $(HOST_GCC) AS = $(CC) -c @@ -61,7 +84,11 @@ # Compiler flags # position-independent code +ifneq ($(filter parisc ppc ppc64 s390 s390x sparc sparc64 sparcv9,$(ZERO_LIBARCH)),) PICFLAG = -fPIC +else +PICFLAG = -fpic +endif VM_PICFLAG/LIBJVM = $(PICFLAG) VM_PICFLAG/AOUT = @@ -123,7 +150,9 @@ endif # Compiler warnings are treated as errors +ifneq ($(COMPILER_WARNINGS_FATAL),false) WARNINGS_ARE_ERRORS = -Werror +endif # Except for a few acceptable ones # Since GCC 4.3, -Wconversion has changed its meanings to warn these implicit @@ -209,47 +238,46 @@ #------------------------------------------------------------------------ # Debug flags -# Use the stabs format for debugging information (this is the default -# on gcc-2.91). It's good enough, has all the information about line -# numbers and local variables, and libjvm_g.so is only about 16M. -# Change this back to "-g" if you want the most expressive format. -# (warning: that could easily inflate libjvm_g.so to 150M!) -# Note: The Itanium gcc compiler crashes when using -gstabs. -DEBUG_CFLAGS/ia64 = -g -DEBUG_CFLAGS/amd64 = -g -DEBUG_CFLAGS/arm = -g -DEBUG_CFLAGS/ppc = -g -DEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH)) -ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),) -DEBUG_CFLAGS += -gstabs -endif - -ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - FASTDEBUG_CFLAGS/ia64 = -g - FASTDEBUG_CFLAGS/amd64 = -g - FASTDEBUG_CFLAGS/arm = -g - FASTDEBUG_CFLAGS/ppc = -g - FASTDEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH)) - ifeq ($(FASTDEBUG_CFLAGS/$(BUILDARCH)),) - FASTDEBUG_CFLAGS += -gstabs +# DEBUG_BINARIES uses full -g debug information for all configs +ifeq ($(DEBUG_BINARIES), true) + CFLAGS += -g +else + # Use the stabs format for debugging information (this is the default + # on gcc-2.91). It's good enough, has all the information about line + # numbers and local variables, and libjvm_g.so is only about 16M. + # Change this back to "-g" if you want the most expressive format. + # (warning: that could easily inflate libjvm_g.so to 150M!) + # Note: The Itanium gcc compiler crashes when using -gstabs. + DEBUG_CFLAGS/ia64 = -g + DEBUG_CFLAGS/amd64 = -g + DEBUG_CFLAGS/arm = -g + DEBUG_CFLAGS/ppc = -g + DEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH)) + ifeq ($(DEBUG_CFLAGS/$(BUILDARCH)),) + DEBUG_CFLAGS += -gstabs endif - - OPT_CFLAGS/ia64 = -g - OPT_CFLAGS/amd64 = -g - OPT_CFLAGS/arm = -g - OPT_CFLAGS/ppc = -g - OPT_CFLAGS += $(OPT_CFLAGS/$(BUILDARCH)) - ifeq ($(OPT_CFLAGS/$(BUILDARCH)),) - OPT_CFLAGS += -gstabs + + ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) + FASTDEBUG_CFLAGS/ia64 = -g + FASTDEBUG_CFLAGS/amd64 = -g + FASTDEBUG_CFLAGS/arm = -g + FASTDEBUG_CFLAGS/ppc = -g + FASTDEBUG_CFLAGS += $(DEBUG_CFLAGS/$(BUILDARCH)) + ifeq ($(FASTDEBUG_CFLAGS/$(BUILDARCH)),) + FASTDEBUG_CFLAGS += -gstabs + endif + + OPT_CFLAGS/ia64 = -g + OPT_CFLAGS/amd64 = -g + OPT_CFLAGS/arm = -g + OPT_CFLAGS/ppc = -g + OPT_CFLAGS += $(OPT_CFLAGS/$(BUILDARCH)) + ifeq ($(OPT_CFLAGS/$(BUILDARCH)),) + OPT_CFLAGS += -gstabs + endif endif endif -# DEBUG_BINARIES overrides everything, use full -g debug information -ifeq ($(DEBUG_BINARIES), true) - DEBUG_CFLAGS = -g - CFLAGS += $(DEBUG_CFLAGS) -endif - # If we are building HEADLESS, pass on to VM # so it can set the java.awt.headless property ifdef HEADLESS diff -r e0e52e35e0c5 -r 23888f3dec52 make/linux/makefiles/jsig.make --- a/make/linux/makefiles/jsig.make Tue Jan 15 18:57:18 2013 -0800 +++ b/make/linux/makefiles/jsig.make Fri Mar 08 16:05:19 2013 +0000 @@ -62,8 +62,10 @@ $(LFLAGS_JSIG) $(JSIG_DEBUG_CFLAGS) -o $@ $< -ldl $(QUIETLY) [ -f $(LIBJSIG_G) ] || { ln -s $@ $(LIBJSIG_G); } ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else @@ -73,10 +75,12 @@ endif endif [ -f $(LIBJSIG_G_DEBUGINFO) ] || { ln -s $(LIBJSIG_DEBUGINFO) $(LIBJSIG_G_DEBUGINFO); } - ifeq ($(ZIP_DEBUGINFO_FILES),1) + ifneq ($(STRIP_POLICY),no_strip) + ifeq ($(ZIP_DEBUGINFO_FILES),1) $(ZIPEXE) -q -y $(LIBJSIG_DIZ) $(LIBJSIG_DEBUGINFO) $(LIBJSIG_G_DEBUGINFO) $(RM) $(LIBJSIG_DEBUGINFO) $(LIBJSIG_G_DEBUGINFO) [ -f $(LIBJSIG_G_DIZ) ] || { ln -s $(LIBJSIG_DIZ) $(LIBJSIG_G_DIZ); } + endif endif endif diff -r e0e52e35e0c5 -r 23888f3dec52 make/linux/makefiles/rules.make --- a/make/linux/makefiles/rules.make Tue Jan 15 18:57:18 2013 -0800 +++ b/make/linux/makefiles/rules.make Fri Mar 08 16:05:19 2013 +0000 @@ -143,20 +143,10 @@ include $(GAMMADIR)/make/altsrc.make -# The non-PIC object files are only generated for 32 bit platforms. -ifdef LP64 %.o: %.cpp @echo Compiling $< $(QUIETLY) $(REMOVE_TARGET) $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE) -else -%.o: %.cpp - @echo Compiling $< - $(QUIETLY) $(REMOVE_TARGET) - $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ - $(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \ - $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)) -endif From andrew at icedtea.classpath.org Fri Mar 8 08:25:43 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 08 Mar 2013 16:25:43 +0000 Subject: /hg/release/icedtea7-forest-2.3/jdk: 25 new changesets Message-ID: changeset ec275f96d030 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=ec275f96d030 author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if changeset e14d128d9be6 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=e14d128d9be6 author: katleman date: Fri Feb 01 10:25:44 2013 -0800 Added tag jdk7u13-b20 for changeset 8eb180a284b0 changeset 9641d2b88d59 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=9641d2b88d59 author: mchung date: Mon Jan 21 13:34:48 2013 -0800 8004937: Improve proxy construction Reviewed-by: jrose, ahgross changeset 1b00d5677ee4 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=1b00d5677ee4 author: ewendeli date: Mon Jan 28 23:31:04 2013 +0100 Merge changeset 33b30ad16898 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=33b30ad16898 author: dfuchs date: Thu Jan 24 10:51:48 2013 -0800 8006446: Restrict MBeanServer access Reviewed-by: alanb, mchung, darcy, jrose, ahgross, skoivu changeset 4bb16e8e663a in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=4bb16e8e663a author: jrose date: Fri Jan 18 20:47:51 2013 -0800 8006179: JSR292 MethodHandles lookup with interface using findVirtual() Reviewed-by: twisti changeset 6b6c1d66f161 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=6b6c1d66f161 author: jrose date: Thu Jan 24 11:06:13 2013 -0800 8006439: Improve MethodHandles coverage Summary: Fill out caller-sensitive list. Recognize aliases of non-static methods. Remove use of MethodUtil Trampoline. Reviewed-by: mchung, twisti, jdn, skoivu changeset 044ea56a339d in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=044ea56a339d author: mchung date: Mon Jan 28 15:08:21 2013 -0800 Merge changeset cbbb166b38eb in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=cbbb166b38eb author: mchung date: Mon Jan 28 15:15:10 2013 -0800 8006882: Proxy generated classes in sun.proxy package breaks JMockit Reviewed-by: alanb, ahgross changeset 28700a56b69d in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=28700a56b69d author: katleman date: Tue Jan 29 14:15:20 2013 -0800 Added tag jdk7u13-b10 for changeset cbbb166b38eb changeset 8385350c6d34 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=8385350c6d34 author: katleman date: Fri Feb 01 10:31:58 2013 -0800 Added tag jdk7u13-b30 for changeset 28700a56b69d changeset 835448d525a1 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=835448d525a1 author: ewendeli date: Fri Feb 01 23:29:46 2013 +0100 Merge changeset 10bf0ec57a6e in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=10bf0ec57a6e author: mchung date: Tue Feb 05 22:56:47 2013 -0800 8007393: Possible race condition after JDK-6664509 Reviewed-by: alanb, jgish changeset 58602549247e in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=58602549247e author: mchung date: Thu Feb 07 09:41:47 2013 -0800 8007611: logging behavior in applet changed Reviewed-by: alanb, jgish changeset 068448362d88 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=068448362d88 author: wetmore date: Thu Feb 07 11:48:13 2013 -0800 8006777: Improve TLS handling of invalid messages Reviewed-by: wetmore, ahgross changeset 0a6a31d15c8c in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=0a6a31d15c8c author: katleman date: Thu Feb 07 14:18:25 2013 -0800 Added tag jdk7u15-b01 for changeset 835448d525a1 changeset d1035652496b in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=d1035652496b author: katleman date: Thu Feb 07 14:23:31 2013 -0800 Merge changeset 0443fe2d8023 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=0443fe2d8023 author: valeriep date: Thu Feb 07 16:18:32 2013 -0800 8007688: Blacklist known bad certificate Summary: Added two known bad certs to the blacklist certs. Reviewed-by: mullan changeset 70b0f967c064 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=70b0f967c064 author: katleman date: Fri Feb 08 10:46:57 2013 -0800 Added tag jdk7u15-b02 for changeset 0443fe2d8023 changeset 87e45d30e24d in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=87e45d30e24d author: katleman date: Wed Feb 13 18:19:42 2013 -0800 Added tag jdk7u15-b30 for changeset 70b0f967c064 changeset b5ae6fb92e71 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=b5ae6fb92e71 author: katleman date: Mon Feb 18 12:10:06 2013 -0800 Added tag jdk7u15-b03 for changeset 87e45d30e24d changeset 8a980f97e66a in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=8a980f97e66a author: katleman date: Tue Feb 26 12:42:17 2013 -0800 Added tag jdk7u17-b01 for changeset b5ae6fb92e71 changeset 0dcf8ad3e63d in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=0dcf8ad3e63d author: bae date: Thu Feb 14 19:51:51 2013 +0400 8007014: Improve image handling Reviewed-by: prr, mschoene, jgodinez changeset b130c8cfecfc in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=b130c8cfecfc author: bae date: Thu Feb 21 11:25:43 2013 +0400 8007675: Improve color conversion Reviewed-by: prr, jgodinez changeset 850b9e5f2c64 in /hg/release/icedtea7-forest-2.3/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=850b9e5f2c64 author: andrew date: Fri Mar 08 15:59:37 2013 +0000 Merge jdk7u17-b02 diffstat: .hgtags | 8 ++++++++ src/share/classes/java/lang/invoke/DirectMethodHandle.java | 9 +++++++++ src/share/classes/java/lang/reflect/Proxy.java | 2 +- src/share/classes/sun/reflect/misc/ReflectUtil.java | 2 +- src/share/lib/security/java.security | 2 ++ src/share/lib/security/java.security-macosx | 2 ++ src/share/lib/security/java.security-solaris | 2 ++ src/share/lib/security/java.security-windows | 2 ++ src/share/native/sun/awt/splashscreen/splashscreen_gif.c | 2 +- 9 files changed, 28 insertions(+), 3 deletions(-) diffs (144 lines): diff -r deac45dc94f0 -r 850b9e5f2c64 .hgtags --- a/.hgtags Mon Mar 04 16:51:01 2013 -0500 +++ b/.hgtags Fri Mar 08 15:59:37 2013 +0000 @@ -267,3 +267,11 @@ 0000000000000000000000000000000000000000 icedtea-2.3.7 afc09edc979709bd0cf9abb342704dbe6587123e icedtea-2.3.7 4f97a6256473be83ea10038ff236a28176691f4a icedtea-2.3.8 +cbbb166b38eb15f5d5c68e913ee18f6f352b7af0 jdk7u13-b10 +28700a56b69d80e70aecf230ab7f9ad4bb5acf23 jdk7u13-b30 +8eb180a284b0911b2645d5cbdff5be499a75d6b2 jdk7u13-b20 +835448d525a10bb826f4f7ebe272fc410bdb0f5d jdk7u15-b01 +0443fe2d8023111b52f4c8db32e038f4a5a9f373 jdk7u15-b02 +70b0f967c0649c501fb14a27bb06daeccbff823a jdk7u15-b30 +87e45d30e24db726ea03b20d861f0a025e437641 jdk7u15-b03 +b5ae6fb92e71df1833221026efe50863593bf682 jdk7u17-b01 diff -r deac45dc94f0 -r 850b9e5f2c64 src/share/classes/java/lang/invoke/DirectMethodHandle.java --- a/src/share/classes/java/lang/invoke/DirectMethodHandle.java Mon Mar 04 16:51:01 2013 -0500 +++ b/src/share/classes/java/lang/invoke/DirectMethodHandle.java Fri Mar 08 15:59:37 2013 +0000 @@ -44,6 +44,15 @@ if (!m.isResolved()) throw new InternalError(); + if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { + // Check for corner case: invokeinterface of Object method. + MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); + m2 = MemberName.getFactory().resolveOrNull(m2, false, null); + if (m2 != null && m2.isPublic()) { + m = m2; + } + } + MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); } diff -r deac45dc94f0 -r 850b9e5f2c64 src/share/classes/java/lang/reflect/Proxy.java --- a/src/share/classes/java/lang/reflect/Proxy.java Mon Mar 04 16:51:01 2013 -0500 +++ b/src/share/classes/java/lang/reflect/Proxy.java Fri Mar 08 15:59:37 2013 +0000 @@ -609,7 +609,7 @@ } if (proxyPkg == null) { - // if no non-public proxy interfaces, use sun.proxy package + // if no non-public proxy interfaces, use com.sun.proxy package proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; } diff -r deac45dc94f0 -r 850b9e5f2c64 src/share/classes/sun/reflect/misc/ReflectUtil.java --- a/src/share/classes/sun/reflect/misc/ReflectUtil.java Mon Mar 04 16:51:01 2013 -0500 +++ b/src/share/classes/sun/reflect/misc/ReflectUtil.java Fri Mar 08 15:59:37 2013 +0000 @@ -202,5 +202,5 @@ } } - public static final String PROXY_PACKAGE = "sun.proxy"; + public static final String PROXY_PACKAGE = "com.sun.proxy"; } diff -r deac45dc94f0 -r 850b9e5f2c64 src/share/lib/security/java.security --- a/src/share/lib/security/java.security Mon Mar 04 16:51:01 2013 -0500 +++ b/src/share/lib/security/java.security Fri Mar 08 15:59:37 2013 +0000 @@ -130,6 +130,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -152,6 +153,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r deac45dc94f0 -r 850b9e5f2c64 src/share/lib/security/java.security-macosx --- a/src/share/lib/security/java.security-macosx Mon Mar 04 16:51:01 2013 -0500 +++ b/src/share/lib/security/java.security-macosx Fri Mar 08 15:59:37 2013 +0000 @@ -131,6 +131,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -154,6 +155,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r deac45dc94f0 -r 850b9e5f2c64 src/share/lib/security/java.security-solaris --- a/src/share/lib/security/java.security-solaris Mon Mar 04 16:51:01 2013 -0500 +++ b/src/share/lib/security/java.security-solaris Fri Mar 08 15:59:37 2013 +0000 @@ -132,6 +132,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -154,6 +155,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r deac45dc94f0 -r 850b9e5f2c64 src/share/lib/security/java.security-windows --- a/src/share/lib/security/java.security-windows Mon Mar 04 16:51:01 2013 -0500 +++ b/src/share/lib/security/java.security-windows Fri Mar 08 15:59:37 2013 +0000 @@ -131,6 +131,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -153,6 +154,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r deac45dc94f0 -r 850b9e5f2c64 src/share/native/sun/awt/splashscreen/splashscreen_gif.c --- a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c Mon Mar 04 16:51:01 2013 -0500 +++ b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c Fri Mar 08 15:59:37 2013 +0000 @@ -316,7 +316,7 @@ int SplashDecodeGifStream(Splash * splash, SplashStream * stream) { -#ifdef GIFLIB_MAJOR >= 5 +#if GIFLIB_MAJOR >= 5 int error = 0; GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); From bugzilla-daemon at icedtea.classpath.org Fri Mar 8 08:25:49 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 08 Mar 2013 16:25:49 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #11 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-forest-2.3/jdk?cmd=changeset;node=ec275f96d030 author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130308/b57a4390/attachment.html From thomas at m3y3r.de Sat Mar 9 09:51:04 2013 From: thomas at m3y3r.de (Thomas Meyer) Date: Sat, 09 Mar 2013 18:51:04 +0100 Subject: [RFC][icedtea-web] Fix NumberFormatException in PluginParameters Message-ID: <1362851464.1220.5.camel@localhost.localdomain> Hi, Maybe introduced by changeset 741a105054af (Remove redundant HTML-tag scanner from ITW. Do not reconstruct tags.) Handling message: GetJavaObject instance 3 Worker #1/IsPriority=false/IsFree=false/Message=instance 3 reference -161 GetJavaObject Exception in thread "NetXPanel initializer" java.lang.NumberFormatException: For input string: "4294967295" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:495) at java.lang.Integer.valueOf(Integer.java:582) at net.sourceforge.jnlp.PluginParameters.getWidth(PluginParameters.java:154) at sun.applet.PluginAppletPanelFactory$2.run(PluginAppletPanelFactory.java:104) at java.lang.Thread.run(Thread.java:722) Proposed fix: diff -r e19fe33c82df plugin/icedteanp/java/sun/applet/PluginParameterParser.java --- a/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Tue Mar 05 16:35:40 2013 -0500 +++ b/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Sat Mar 09 18:50:17 2013 +0100 @@ -1,6 +1,5 @@ package sun.applet; -import java.util.Arrays; import java.util.HashMap; import java.util.Map; @@ -60,7 +59,12 @@ } static boolean isInt(String s) { - return s.matches("^-?\\d+$"); + try{ + Integer.parseInt(s); + return true; + } catch(NumberFormatException e) { + return false; + } } /** From gitne at excite.co.jp Sat Mar 9 20:47:25 2013 From: gitne at excite.co.jp (=?ISO-2022-JP?B?SmFjb2IgV2lzb3I=?=) Date: Sun, 10 Mar 2013 13:47:25 +0900 Subject: =?ISO-2022-JP?B?W3JmY11baWNlZHRlYS13ZWJdIEdlcm1hbiBsb2NhbGl6YXRpb24gJiBFbmdsaXNoIG1lc3NhZ2VzJyBjbGVhbnVwIHByb3Bvc2Fscw==?= Message-ID: <201303100447.r2A4lPV4028351@mail-web01.excite.co.jp> Hello there! Sorry for responding so late but I had my hands full with different stuff lately. Nevertheless, I managed to get the localization done so far. I have also put forward some proposals cleaning up English messages. The German localization is based on those proposals. There are three messages that I still cannot figure out what they supposed to mean exactly: SPLASHdefaultHomepage, SPLASHerrorInInformation, and SPLASHmissingInformation. Though they are localized as reasonably as it gets. I have incorporated all comments that I have received that I found reasonable. In a few messages I have reverted to terms in favor of consistency. Groupbox titles' have received decorations with nbsps for better legibility, hence they do not stick so closely to boxes. I am going to provide localizations for the latest messages together with a patch for Polish. Happy reviewing! Jacob From gitne at excite.co.jp Sat Mar 9 20:49:01 2013 From: gitne at excite.co.jp (=?ISO-2022-JP?B?SmFjb2IgV2lzb3I=?=) Date: Sun, 10 Mar 2013 13:49:01 +0900 Subject: =?ISO-2022-JP?B?W3JmY11baWNlZHRlYS13ZWJdIEdlcm1hbiBsb2NhbGl6YXRpb24gJiBFbmdsaXNoIG1lc3NhZ2VzJyBjbGVhbnVwIHByb3Bvc2Fscw==?= Message-ID: <201303100449.r2A4n1Y0011489@mail-web02.excite.co.jp> Hello there! Sorry for responding so late but I had my hands full with different stuff lately. Nevertheless, I managed to get the localization done so far. I have also put forward some proposals cleaning up English messages. The German localization is based on those proposals. There are three messages that I still cannot figure out what they supposed to mean exactly: SPLASHdefaultHomepage, SPLASHerrorInInformation, and SPLASHmissingInformation. Though they are localized as reasonably as it gets. I have incorporated all comments that I have received that I found reasonable. In a few messages I have reverted to terms in favor of consistency. Groupbox titles' have received decorations with nbsps for better legibility, hence they do not stick so closely to boxes. I am going to provide localizations for the latest messages together with a patch for Polish. Happy reviewing! Jacob -------------- next part -------------- A non-text attachment was scrubbed... Name: Messages_de&en.patch Type: text/x-patch Size: 44962 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130310/4d51c527/ISO-2022-JPBTWVzc2FnZXNfZGUmZW4ucGF0Y2g.patch From andrew at icedtea.classpath.org Sun Mar 10 11:35:50 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Sun, 10 Mar 2013 18:35:50 +0000 Subject: /hg/release/icedtea7-2.3: Add fixes from u17b02 and PR1303 #ifde... Message-ID: changeset c1c3a636860f in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=c1c3a636860f author: Andrew John Hughes date: Sun Mar 10 18:35:28 2013 +0000 Add fixes from u17b02 and PR1303 #ifdef fix locally to stay with forest 2.3.8 tag. 2013-03-08 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add patches. * NEWS: Updated. * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch: Taken from upstream jdk7u17 b02. * patches/pr1303-ifdef_fix.patch: PR1303 issue (#ifdef vs. #if) caught by Bernhard Rosenkr?nzer. diffstat: ChangeLog | 12 ++ Makefile.am | 5 +- NEWS | 4 + patches/8006179-lookup_using_findvirtual.patch | 27 ++++++ patches/8006882-sun.proxy.patch | 106 +++++++++++++++++++++++++ patches/pr1303-ifdef_fix.patch | 19 ++++ 6 files changed, 172 insertions(+), 1 deletions(-) diffs (212 lines): diff -r 8920ab104396 -r c1c3a636860f ChangeLog --- a/ChangeLog Thu Mar 07 15:57:46 2013 +0000 +++ b/ChangeLog Sun Mar 10 18:35:28 2013 +0000 @@ -1,3 +1,15 @@ +2013-03-08 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add patches. + * NEWS: Updated. + * patches/8006179-lookup_using_findvirtual.patch, + * patches/8006882-sun.proxy.patch: + Taken from upstream jdk7u17 b02. + * patches/pr1303-ifdef_fix.patch: + PR1303 issue (#ifdef vs. #if) caught by Bernhard + Rosenkr??nzer. + 2013-03-07 Andrew John Hughes * Makefile.am, diff -r 8920ab104396 -r c1c3a636860f Makefile.am --- a/Makefile.am Thu Mar 07 15:57:46 2013 +0000 +++ b/Makefile.am Sun Mar 10 18:35:28 2013 +0000 @@ -240,7 +240,10 @@ # Patch list -ICEDTEA_PATCHES = +ICEDTEA_PATCHES = \ + patches/8006179-lookup_using_findvirtual.patch \ + patches/8006882-sun.proxy.patch \ + patches/pr1303-ifdef_fix.patch # Conditional patches diff -r 8920ab104396 -r c1c3a636860f NEWS --- a/NEWS Thu Mar 07 15:57:46 2013 +0000 +++ b/NEWS Sun Mar 10 18:35:28 2013 +0000 @@ -18,6 +18,10 @@ * Backports - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c + - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() + - S8006882: Proxy generated classes in sun.proxy package breaks JMockit +* Bug fixes + - PR1303: Correct #ifdef to #if New in release 2.3.7 (2013-02-20): diff -r 8920ab104396 -r c1c3a636860f patches/8006179-lookup_using_findvirtual.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8006179-lookup_using_findvirtual.patch Sun Mar 10 18:35:28 2013 +0000 @@ -0,0 +1,27 @@ +# HG changeset patch +# User jrose +# Date 1358570871 28800 +# Node ID 4bb16e8e663ad133e0950406bda2261169f3920f +# Parent 33b30ad1689805e74c85f6df29d2033c796baedb +8006179: JSR292 MethodHandles lookup with interface using findVirtual() +Reviewed-by: twisti + +diff --git a/src/share/classes/java/lang/invoke/DirectMethodHandle.java b/src/share/classes/java/lang/invoke/DirectMethodHandle.java +--- openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java ++++ openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java +@@ -44,6 +44,15 @@ + if (!m.isResolved()) + throw new InternalError(); + ++ if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { ++ // Check for corner case: invokeinterface of Object method. ++ MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); ++ m2 = MemberName.getFactory().resolveOrNull(m2, false, null); ++ if (m2 != null && m2.isPublic()) { ++ m = m2; ++ } ++ } ++ + MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); + } + diff -r 8920ab104396 -r c1c3a636860f patches/8006882-sun.proxy.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8006882-sun.proxy.patch Sun Mar 10 18:35:28 2013 +0000 @@ -0,0 +1,106 @@ +# HG changeset patch +# User mchung +# Date 1359414910 28800 +# Node ID cbbb166b38eb15f5d5c68e913ee18f6f352b7af0 +# Parent 044ea56a339dfd92b723a5e81941b646f9d26071 +8006882: Proxy generated classes in sun.proxy package breaks JMockit +Reviewed-by: alanb, ahgross + +diff --git a/src/share/classes/java/lang/reflect/Proxy.java b/src/share/classes/java/lang/reflect/Proxy.java +--- openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java ++++ openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java +@@ -609,7 +609,7 @@ + } + + if (proxyPkg == null) { +- // if no non-public proxy interfaces, use sun.proxy package ++ // if no non-public proxy interfaces, use com.sun.proxy package + proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; + } + +diff --git a/src/share/classes/sun/reflect/misc/ReflectUtil.java b/src/share/classes/sun/reflect/misc/ReflectUtil.java +--- openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java ++++ openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java +@@ -202,5 +202,5 @@ + } + } + +- public static final String PROXY_PACKAGE = "sun.proxy"; ++ public static final String PROXY_PACKAGE = "com.sun.proxy"; + } +diff --git a/src/share/lib/security/java.security b/src/share/lib/security/java.security +--- openjdk/jdk/src/share/lib/security/java.security ++++ openjdk/jdk/src/share/lib/security/java.security +@@ -130,6 +130,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -152,6 +153,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +diff --git a/src/share/lib/security/java.security-macosx b/src/share/lib/security/java.security-macosx +--- openjdk/jdk/src/share/lib/security/java.security-macosx ++++ openjdk/jdk/src/share/lib/security/java.security-macosx +@@ -131,6 +131,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -154,6 +155,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +diff --git a/src/share/lib/security/java.security-solaris b/src/share/lib/security/java.security-solaris +--- openjdk/jdk/src/share/lib/security/java.security-solaris ++++ openjdk/jdk/src/share/lib/security/java.security-solaris +@@ -132,6 +132,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -154,6 +155,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +diff --git a/src/share/lib/security/java.security-windows b/src/share/lib/security/java.security-windows +--- openjdk/jdk/src/share/lib/security/java.security-windows ++++ openjdk/jdk/src/share/lib/security/java.security-windows +@@ -131,6 +131,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -153,6 +154,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ diff -r 8920ab104396 -r c1c3a636860f patches/pr1303-ifdef_fix.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/pr1303-ifdef_fix.patch Sun Mar 10 18:35:28 2013 +0000 @@ -0,0 +1,19 @@ +# HG changeset patch +# User andrew +# Date 1362758030 0 +# Node ID ec275f96d030eff83f7e6cfcdd7daa9cda2b4802 +# Parent deac45dc94f0504ba17b8afcb54db1fba4e6f9d5 +PR1303: Correct #ifdef to #if + +diff --git a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c +--- openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c ++++ openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c +@@ -316,7 +316,7 @@ + int + SplashDecodeGifStream(Splash * splash, SplashStream * stream) + { +-#ifdef GIFLIB_MAJOR >= 5 ++#if GIFLIB_MAJOR >= 5 + int error = 0; + GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); + From bugzilla-daemon at icedtea.classpath.org Sun Mar 10 11:35:58 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sun, 10 Mar 2013 18:35:58 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #12 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.3?cmd=changeset;node=c1c3a636860f author: Andrew John Hughes date: Sun Mar 10 18:35:28 2013 +0000 Add fixes from u17b02 and PR1303 #ifdef fix locally to stay with forest 2.3.8 tag. 2013-03-08 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add patches. * NEWS: Updated. * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch: Taken from upstream jdk7u17 b02. * patches/pr1303-ifdef_fix.patch: PR1303 issue (#ifdef vs. #if) caught by Bernhard Rosenkr?nzer. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130310/a571abea/attachment.html From gitne at excite.co.jp Sun Mar 10 14:50:07 2013 From: gitne at excite.co.jp (=?ISO-2022-JP?B?SmFjb2IgV2lzb3I=?=) Date: Mon, 11 Mar 2013 06:50:07 +0900 Subject: =?ISO-2022-JP?B?UmU6IFtyZmNdW2ljZWR0ZWEtd2ViXSBHZXJtYW4gbG9jYWxpemF0aW9uICYgRW5nbGlzaCBtZXNzYWdlcycgY2xlYW51cCBwcm9wb3NhbHM=?= Message-ID: <201303102150.r2ALo7LI014612@mail-web03.excite.co.jp> Hi! "Jacob Wisor" wrote: > I am going to provide localizations for the latest messages together with a patch for Polish. Oh well, it went quicker then I thought, so here is the complete German localization. This patch supersedes the one from Saturday. There are minor inconsistencies in the latest English messages, but I guess one can live with that. Have fun! Jacob -------------- next part -------------- A non-text attachment was scrubbed... Name: Messages_de&en complete.patch Type: text/x-patch Size: 45585 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/825004c1/ISO-2022-JPBTWVzc2FnZXNfZGUmZW4gY29tcGxldGUucGF0Y2g.patch From andrew at icedtea.classpath.org Mon Mar 11 01:08:45 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 11 Mar 2013 08:08:45 +0000 Subject: /hg/release/icedtea7-forest-2.1/jdk: PR1303: Correct #ifdef to #if Message-ID: changeset 0ad964f2ced1 in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=0ad964f2ced1 author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if diffstat: src/share/native/sun/awt/splashscreen/splashscreen_gif.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diffs (12 lines): diff -r 44d9f9e05ca4 -r 0ad964f2ced1 src/share/native/sun/awt/splashscreen/splashscreen_gif.c --- a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c Thu Mar 07 16:06:01 2013 +0000 +++ b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c Fri Mar 08 15:53:50 2013 +0000 @@ -316,7 +316,7 @@ int SplashDecodeGifStream(Splash * splash, SplashStream * stream) { -#ifdef GIFLIB_MAJOR >= 5 +#if GIFLIB_MAJOR >= 5 int error = 0; GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); From bugzilla-daemon at icedtea.classpath.org Mon Mar 11 01:08:55 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 11 Mar 2013 08:08:55 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #13 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=0ad964f2ced1 author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/cfe3ecf8/attachment.html From ptisnovs at icedtea.classpath.org Mon Mar 11 01:57:18 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 11 Mar 2013 08:57:18 +0000 Subject: /hg/rhino-tests: Updated CompiledScriptClassTest to works correc... Message-ID: changeset 9282fedae49b in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=9282fedae49b author: Pavel Tisnovsky date: Mon Mar 11 10:00:23 2013 +0100 Updated CompiledScriptClassTest to works correctly with JDK6 and JDK7 too. diffstat: ChangeLog | 9 +++- src/org/RhinoTests/CompiledScriptClassTest.java | 44 ++++++++++++++++-------- 2 files changed, 36 insertions(+), 17 deletions(-) diffs (142 lines): diff -r f037ba60f477 -r 9282fedae49b ChangeLog --- a/ChangeLog Fri Mar 08 09:52:25 2013 +0100 +++ b/ChangeLog Mon Mar 11 10:00:23 2013 +0100 @@ -1,10 +1,15 @@ -2013-03-09 Pavel Tisnovsky +2013-03-11 Pavel Tisnovsky + + * src/org/RhinoTests/CompiledScriptClassTest.java: + Updated CompiledScriptClassTest to works correctly with JDK6 and JDK7 too. + +2013-03-08 Pavel Tisnovsky * src/org/RhinoTests/SimpleScriptContextClassTest.java: Added new test into the SimpleScriptContextClassTest. Updated other two tests to work correctly in JDK6 and JDK7. -2013-03-08 Pavel Tisnovsky +2013-03-07 Pavel Tisnovsky * src/org/RhinoTests/BindingsTest.java: Added test class deleted by a mistake. diff -r f037ba60f477 -r 9282fedae49b src/org/RhinoTests/CompiledScriptClassTest.java --- a/src/org/RhinoTests/CompiledScriptClassTest.java Fri Mar 08 09:52:25 2013 +0100 +++ b/src/org/RhinoTests/CompiledScriptClassTest.java Mon Mar 11 10:00:23 2013 +0100 @@ -465,8 +465,14 @@ */ protected void testGetFields() { // following fields should exists - final String[] fieldsThatShouldExists = { + final String[] fieldsThatShouldExist_jdk6 = { }; + final String[] fieldsThatShouldExist_jdk7 = { + }; + + // get the right array of field signatures + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + // get all fields Field[] fields = this.compiledScriptClass.getFields(); // and transform the array into a list of field names @@ -475,7 +481,7 @@ fieldsAsString.add(field.toString()); } // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { + for (String fieldThatShouldExists : fieldsThatShouldExist) { assertTrue(fieldsAsString.contains(fieldThatShouldExists), "field " + fieldThatShouldExists + " not found"); } @@ -485,9 +491,16 @@ * Test for method javax.script.CompiledScript.getClass().getDeclaredFields() */ protected void testGetDeclaredFields() { + // following declared fields should exists + final String[] declaredFieldsThatShouldExist_jdk6 = { + }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + }; + + // get the right array of field signatures // following fields should be declared - final String[] fieldsThatShouldExists = { - }; + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + // get all declared fields Field[] declaredFields = this.compiledScriptClass.getDeclaredFields(); // and transform the array into a list of field names @@ -496,18 +509,19 @@ declaredFieldsAsString.add(field.toString()); } // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { - assertTrue(declaredFieldsAsString.contains(fieldThatShouldExists), - "field " + fieldThatShouldExists + " not found"); + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + assertTrue(declaredFieldsAsString.contains(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); } } + /** * Test for method javax.script.CompiledScript.getClass().getMethods() */ protected void testGetMethods() { // following methods should be inherited - final String[] methodsThatShouldExists_jdk6 = { + final String[] methodsThatShouldExist_jdk6 = { "public abstract java.lang.Object javax.script.CompiledScript.eval(javax.script.ScriptContext) throws javax.script.ScriptException", "public abstract javax.script.ScriptEngine javax.script.CompiledScript.getEngine()", "public boolean java.lang.Object.equals(java.lang.Object)", @@ -523,7 +537,7 @@ "public native int java.lang.Object.hashCode()", }; - final String[] methodsThatShouldExists_jdk7 = { + final String[] methodsThatShouldExist_jdk7 = { "public abstract java.lang.Object javax.script.CompiledScript.eval(javax.script.ScriptContext) throws javax.script.ScriptException", "public abstract javax.script.ScriptEngine javax.script.CompiledScript.getEngine()", "public boolean java.lang.Object.equals(java.lang.Object)", @@ -546,9 +560,9 @@ for (Method method : methods) { methodsAsString.add(method.toString()); } - String[] methodsThatShouldExists = getJavaVersion() < 7 ? methodsThatShouldExists_jdk6 : methodsThatShouldExists_jdk7; + String[] methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : methodsThatShouldExists) { + for (String methodThatShouldExists : methodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "method " + methodThatShouldExists + " not found"); } @@ -559,14 +573,14 @@ */ protected void testGetDeclaredMethods() { // following methods should be declared - final String[] declaredMethodsThatShouldExists_jdk6 = { + final String[] declaredMethodsThatShouldExist_jdk6 = { "public abstract java.lang.Object javax.script.CompiledScript.eval(javax.script.ScriptContext) throws javax.script.ScriptException", "public abstract javax.script.ScriptEngine javax.script.CompiledScript.getEngine()", "public java.lang.Object javax.script.CompiledScript.eval() throws javax.script.ScriptException", "public java.lang.Object javax.script.CompiledScript.eval(javax.script.Bindings) throws javax.script.ScriptException", }; - final String[] declaredMethodsThatShouldExists_jdk7 = { + final String[] declaredMethodsThatShouldExist_jdk7 = { "public abstract java.lang.Object javax.script.CompiledScript.eval(javax.script.ScriptContext) throws javax.script.ScriptException", "public abstract javax.script.ScriptEngine javax.script.CompiledScript.getEngine()", "public java.lang.Object javax.script.CompiledScript.eval() throws javax.script.ScriptException", @@ -580,9 +594,9 @@ for (Method method : declaredMethods) { methodsAsString.add(method.toString()); } - String[] declaredMethodsThatShouldExists = getJavaVersion() < 7 ? declaredMethodsThatShouldExists_jdk6 : declaredMethodsThatShouldExists_jdk7; + String[] declaredMethodsThatShouldExist = getJavaVersion() < 7 ? declaredMethodsThatShouldExist_jdk6 : declaredMethodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : declaredMethodsThatShouldExists) { + for (String methodThatShouldExists : declaredMethodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "declared method " + methodThatShouldExists + " not found"); } From andrew at icedtea.classpath.org Mon Mar 11 02:03:12 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 11 Mar 2013 09:03:12 +0000 Subject: /hg/release/icedtea7-forest-2.1/jdk: 2 new changesets Message-ID: changeset 90e4cb6f78bb in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=90e4cb6f78bb author: jrose date: Fri Jan 18 20:47:51 2013 -0800 8006179: JSR292 MethodHandles lookup with interface using findVirtual() Reviewed-by: twisti changeset 1040c44a496d in /hg/release/icedtea7-forest-2.1/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=1040c44a496d author: andrew date: Mon Mar 11 08:14:04 2013 +0000 8006882: Proxy generated classes in sun.proxy package breaks JMockit Reviewed-by: alanb, ahgross diffstat: src/share/classes/java/lang/invoke/DirectMethodHandle.java | 9 +++++++++ src/share/classes/java/lang/reflect/Proxy.java | 2 +- src/share/classes/sun/reflect/misc/ReflectUtil.java | 2 +- src/share/lib/security/java.security | 2 ++ src/share/lib/security/java.security-solaris | 2 ++ src/share/lib/security/java.security-windows | 2 ++ 6 files changed, 17 insertions(+), 2 deletions(-) diffs (98 lines): diff -r 0ad964f2ced1 -r 1040c44a496d src/share/classes/java/lang/invoke/DirectMethodHandle.java --- a/src/share/classes/java/lang/invoke/DirectMethodHandle.java Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/classes/java/lang/invoke/DirectMethodHandle.java Mon Mar 11 08:14:04 2013 +0000 @@ -44,6 +44,15 @@ if (!m.isResolved()) throw new InternalError(); + if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { + // Check for corner case: invokeinterface of Object method. + MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); + m2 = MemberName.getFactory().resolveOrNull(m2, false, null); + if (m2 != null && m2.isPublic()) { + m = m2; + } + } + MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); } diff -r 0ad964f2ced1 -r 1040c44a496d src/share/classes/java/lang/reflect/Proxy.java --- a/src/share/classes/java/lang/reflect/Proxy.java Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/classes/java/lang/reflect/Proxy.java Mon Mar 11 08:14:04 2013 +0000 @@ -609,7 +609,7 @@ } if (proxyPkg == null) { - // if no non-public proxy interfaces, use sun.proxy package + // if no non-public proxy interfaces, use com.sun.proxy package proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; } diff -r 0ad964f2ced1 -r 1040c44a496d src/share/classes/sun/reflect/misc/ReflectUtil.java --- a/src/share/classes/sun/reflect/misc/ReflectUtil.java Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/classes/sun/reflect/misc/ReflectUtil.java Mon Mar 11 08:14:04 2013 +0000 @@ -202,5 +202,5 @@ } } - public static final String PROXY_PACKAGE = "sun.proxy"; + public static final String PROXY_PACKAGE = "com.sun.proxy"; } diff -r 0ad964f2ced1 -r 1040c44a496d src/share/lib/security/java.security --- a/src/share/lib/security/java.security Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/lib/security/java.security Mon Mar 11 08:14:04 2013 +0000 @@ -128,6 +128,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -148,6 +149,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r 0ad964f2ced1 -r 1040c44a496d src/share/lib/security/java.security-solaris --- a/src/share/lib/security/java.security-solaris Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/lib/security/java.security-solaris Mon Mar 11 08:14:04 2013 +0000 @@ -129,6 +129,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -149,6 +150,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r 0ad964f2ced1 -r 1040c44a496d src/share/lib/security/java.security-windows --- a/src/share/lib/security/java.security-windows Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/lib/security/java.security-windows Mon Mar 11 08:14:04 2013 +0000 @@ -129,6 +129,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -149,6 +150,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ From ptisnovs at icedtea.classpath.org Mon Mar 11 02:22:25 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 11 Mar 2013 09:22:25 +0000 Subject: /hg/gfx-test: Added five new tests into BitBltCropImage. Message-ID: changeset 9851de90017e in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=9851de90017e author: Pavel Tisnovsky date: Mon Mar 11 10:25:32 2013 +0100 Added five new tests into BitBltCropImage. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltCropImage.java | 86 ++++++++++++++++++++++++- 2 files changed, 90 insertions(+), 1 deletions(-) diffs (115 lines): diff -r e4edaba131e8 -r 9851de90017e ChangeLog --- a/ChangeLog Fri Mar 08 10:11:09 2013 +0100 +++ b/ChangeLog Mon Mar 11 10:25:32 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-11 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltCropImage.java: + Added five new tests into BitBltCropImage. + 2013-03-08 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltConvolveOp.java: diff -r e4edaba131e8 -r 9851de90017e src/org/gfxtest/testsuites/BitBltCropImage.java --- a/src/org/gfxtest/testsuites/BitBltCropImage.java Fri Mar 08 10:11:09 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltCropImage.java Mon Mar 11 10:25:32 2013 +0100 @@ -1,7 +1,7 @@ /* Java gfx-test framework - Copyright (C) 2010, 2011, 2012 Red Hat + Copyright (C) 2010, 2011, 2012, 2013 Red Hat This file is part of IcedTea. @@ -499,6 +499,90 @@ } /** + * Test basic BitBlt operation for checker buffered image with type + * TYPE_BYTE_GRAY. No crop is performed to that image. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageTypeByteGrayNoCrop(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform BitBlt test using crop operation. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY); + } + + /** + * Test basic BitBlt operation for checker buffered image with type + * TYPE_BYTE_GRAY. Image is cropped so only north-west quarter of it is rendered. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageTypeByteGrayCropNW(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform BitBlt test using crop operation. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY, + BitmapCropRegions.CROP_REGION_NW); + } + + /** + * Test basic BitBlt operation for checker buffered image with type + * TYPE_BYTE_GRAY. Image is cropped so only north-east quarter of it is rendered. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageTypeByteGrayCropNE(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform BitBlt test using crop operation. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY, + BitmapCropRegions.CROP_REGION_NE); + } + + /** + * Test basic BitBlt operation for checker buffered image with type + * TYPE_BYTE_GRAY. Image is cropped so only south-west quarter of it is rendered. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageTypeByteGrayCropSW(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform BitBlt test using crop operation. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY, + BitmapCropRegions.CROP_REGION_SW); + } + + /** + * Test basic BitBlt operation for checker buffered image with type + * TYPE_BYTE_GRAY. Image is cropped so only south-east quarter of it is rendered. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageTypeByteGrayCropSE(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform BitBlt test using crop operation. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY, + BitmapCropRegions.CROP_REGION_SE); + } + + /** * Entry point to the test suite. * * @param args From andrew at icedtea.classpath.org Mon Mar 11 03:04:01 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 11 Mar 2013 10:04:01 +0000 Subject: /hg/release/icedtea7-forest-2.2/jdk: 2 new changesets Message-ID: changeset d95a055941dd in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=d95a055941dd author: jrose date: Fri Jan 18 20:47:51 2013 -0800 8006179: JSR292 MethodHandles lookup with interface using findVirtual() Reviewed-by: twisti changeset 7e8272d637c7 in /hg/release/icedtea7-forest-2.2/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.2/jdk?cmd=changeset;node=7e8272d637c7 author: mchung date: Mon Jan 28 15:15:10 2013 -0800 8006882: Proxy generated classes in sun.proxy package breaks JMockit Reviewed-by: alanb, ahgross diffstat: src/share/classes/java/lang/invoke/DirectMethodHandle.java | 9 +++++++++ src/share/classes/java/lang/reflect/Proxy.java | 2 +- src/share/classes/sun/reflect/misc/ReflectUtil.java | 2 +- src/share/lib/security/java.security | 2 ++ src/share/lib/security/java.security-macosx | 2 ++ src/share/lib/security/java.security-solaris | 2 ++ src/share/lib/security/java.security-windows | 2 ++ 7 files changed, 19 insertions(+), 2 deletions(-) diffs (117 lines): diff -r 0ba4f6f60db8 -r 7e8272d637c7 src/share/classes/java/lang/invoke/DirectMethodHandle.java --- a/src/share/classes/java/lang/invoke/DirectMethodHandle.java Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/classes/java/lang/invoke/DirectMethodHandle.java Mon Jan 28 15:15:10 2013 -0800 @@ -44,6 +44,15 @@ if (!m.isResolved()) throw new InternalError(); + if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { + // Check for corner case: invokeinterface of Object method. + MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); + m2 = MemberName.getFactory().resolveOrNull(m2, false, null); + if (m2 != null && m2.isPublic()) { + m = m2; + } + } + MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); } diff -r 0ba4f6f60db8 -r 7e8272d637c7 src/share/classes/java/lang/reflect/Proxy.java --- a/src/share/classes/java/lang/reflect/Proxy.java Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/classes/java/lang/reflect/Proxy.java Mon Jan 28 15:15:10 2013 -0800 @@ -609,7 +609,7 @@ } if (proxyPkg == null) { - // if no non-public proxy interfaces, use sun.proxy package + // if no non-public proxy interfaces, use com.sun.proxy package proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; } diff -r 0ba4f6f60db8 -r 7e8272d637c7 src/share/classes/sun/reflect/misc/ReflectUtil.java --- a/src/share/classes/sun/reflect/misc/ReflectUtil.java Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/classes/sun/reflect/misc/ReflectUtil.java Mon Jan 28 15:15:10 2013 -0800 @@ -202,5 +202,5 @@ } } - public static final String PROXY_PACKAGE = "sun.proxy"; + public static final String PROXY_PACKAGE = "com.sun.proxy"; } diff -r 0ba4f6f60db8 -r 7e8272d637c7 src/share/lib/security/java.security --- a/src/share/lib/security/java.security Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/lib/security/java.security Mon Jan 28 15:15:10 2013 -0800 @@ -128,6 +128,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -148,6 +149,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r 0ba4f6f60db8 -r 7e8272d637c7 src/share/lib/security/java.security-macosx --- a/src/share/lib/security/java.security-macosx Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/lib/security/java.security-macosx Mon Jan 28 15:15:10 2013 -0800 @@ -129,6 +129,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -150,6 +151,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r 0ba4f6f60db8 -r 7e8272d637c7 src/share/lib/security/java.security-solaris --- a/src/share/lib/security/java.security-solaris Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/lib/security/java.security-solaris Mon Jan 28 15:15:10 2013 -0800 @@ -130,6 +130,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -150,6 +151,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ diff -r 0ba4f6f60db8 -r 7e8272d637c7 src/share/lib/security/java.security-windows --- a/src/share/lib/security/java.security-windows Fri Mar 08 15:53:50 2013 +0000 +++ b/src/share/lib/security/java.security-windows Mon Jan 28 15:15:10 2013 -0800 @@ -129,6 +129,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ @@ -149,6 +150,7 @@ com.sun.imageio.,\ com.sun.istack.internal.,\ com.sun.jmx.,\ + com.sun.proxy.,\ com.sun.org.apache.xerces.internal.utils.,\ com.sun.org.apache.xalan.internal.utils.,\ com.sun.org.glassfish.external.,\ From andrew at icedtea.classpath.org Mon Mar 11 05:48:45 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 11 Mar 2013 12:48:45 +0000 Subject: /hg/release/icedtea7-2.1: Add latest 2013/03/04 security fixes. Message-ID: changeset cabd2098693e in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=cabd2098693e author: Andrew John Hughes date: Mon Mar 11 12:48:37 2013 +0000 Add latest 2013/03/04 security fixes. 2013-03-11 Andrew John Hughes * Makefile.am, (JDK_CHANGESET): Bump to 2.1.7 tag to bring in security fixes. (JDK_SHA256SUM): Likewise. * NEWS: Updated. diffstat: ChangeLog | 8 ++++++++ Makefile.am | 4 ++-- NEWS | 4 ++++ 3 files changed, 14 insertions(+), 2 deletions(-) diffs (50 lines): diff -r fa728d367801 -r cabd2098693e ChangeLog --- a/ChangeLog Thu Feb 21 06:25:13 2013 +1100 +++ b/ChangeLog Mon Mar 11 12:48:37 2013 +0000 @@ -1,3 +1,11 @@ +2013-03-11 Andrew John Hughes + + * Makefile.am, + (JDK_CHANGESET): Bump to 2.1.7 tag to bring in + security fixes. + (JDK_SHA256SUM): Likewise. + * NEWS: Updated. + 2013-02-20 Andrew John Hughes * configure.ac: Bump to 2.1.7pre. diff -r fa728d367801 -r cabd2098693e Makefile.am --- a/Makefile.am Thu Feb 21 06:25:13 2013 +1100 +++ b/Makefile.am Mon Mar 11 12:48:37 2013 +0000 @@ -8,7 +8,7 @@ CORBA_CHANGESET = 4afc0be5b3c6 JAXP_CHANGESET = efa047bf59e9 JAXWS_CHANGESET = 52bbe659af64 -JDK_CHANGESET = 78fbbfe20edb +JDK_CHANGESET = 2989f7467d83 LANGTOOLS_CHANGESET = ac6983a8bd4a OPENJDK_CHANGESET = 7de37e3bcca6 @@ -16,7 +16,7 @@ CORBA_SHA256SUM = 813e02861d89147c0547f4608fe69b0abd153cf548bf1f21ef9d16ea0a6d683e JAXP_SHA256SUM = 20d745c58117d1eaa061edb689bb7569b512ac8fb3d0f3518b5fa8b17ba7012e JAXWS_SHA256SUM = d8acabf54c1a4fe02e45ac4bdfe1ff9f3e7a3abc12884fcacd580bce9063a7c5 -JDK_SHA256SUM = 7eeee7d8479f97ab0eb66be3845224b8b4073de8829ed819175faf9ca2f3b5ca +JDK_SHA256SUM = 77471cc8744c6ec842ee158408a400db0f566f19ac978580c76d7af8ef24e154 LANGTOOLS_SHA256SUM = 47db36264b345939176d1a5f36df84ad56d7fae76ce647ea1b619f7df0eb1eda OPENJDK_SHA256SUM = a856008db052b7f7ec4b466eee117fcc72229531136f71d4dd712c2f6e71cbd6 diff -r fa728d367801 -r cabd2098693e NEWS --- a/NEWS Thu Feb 21 06:25:13 2013 +1100 +++ b/NEWS Mon Mar 11 12:48:37 2013 +0000 @@ -12,6 +12,10 @@ New in release 2.1.7 (2013-04-XX): +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion + New in release 2.1.6 (2013-02-20): * Security fixes From andrew at icedtea.classpath.org Mon Mar 11 05:56:57 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 11 Mar 2013 12:56:57 +0000 Subject: /hg/release/icedtea7-2.2: 2 new changesets Message-ID: changeset b8f9510f4a50 in /hg/release/icedtea7-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-2.2?cmd=changeset;node=b8f9510f4a50 author: Andrew John Hughes date: Fri Mar 08 15:51:44 2013 +0000 Bring in 2013/03/04 security fixes. 2013-03-08 Andrew John Hughes * Makefile.am, (JDK_CHANGESET): Bump to 2.2.7 tag to bring in security fixes. (JDK_SHA256SUM): Likewise. * NEWS: Updated. changeset 03aaabc8b71c in /hg/release/icedtea7-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-2.2?cmd=changeset;node=03aaabc8b71c author: Andrew John Hughes date: Mon Mar 11 11:39:51 2013 +0000 Add new fixes locally (backports from u17b02 & 2.4, PR1303 fix) so as to keep with 2.2.7 forest tag. 2013-03-11 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add patches. * NEWS: Updated. * patches/8002344-krb5loginmodule.patch, * patches/8004344-toolkiterrorhandler.patch: Backported from 2.4. * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch: Taken from upstream jdk7u17 b02. * patches/pr1303-ifdef_fix.patch: PR1303 issue (#ifdef vs. #if) caught by Bernhard Rosenkr?nzer. diffstat: ChangeLog | 23 ++ Makefile.am | 11 +- NEWS | 11 + patches/8002344-krb5loginmodule.patch | 207 +++++++++++++++++++++++++ patches/8004344-toolkiterrorhandler.patch | 33 +++ patches/8006179-lookup_using_findvirtual.patch | 27 +++ patches/8006882-sun.proxy.patch | 106 ++++++++++++ patches/pr1303-ifdef_fix.patch | 19 ++ 8 files changed, 434 insertions(+), 3 deletions(-) diffs (498 lines): diff -r b88f4d566ec9 -r 03aaabc8b71c ChangeLog --- a/ChangeLog Thu Feb 21 06:27:05 2013 +1100 +++ b/ChangeLog Mon Mar 11 11:39:51 2013 +0000 @@ -1,3 +1,26 @@ +2013-03-11 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add patches. + * NEWS: Updated. + * patches/8002344-krb5loginmodule.patch, + * patches/8004344-toolkiterrorhandler.patch: + Backported from 2.4. + * patches/8006179-lookup_using_findvirtual.patch, + * patches/8006882-sun.proxy.patch: + Taken from upstream jdk7u17 b02. + * patches/pr1303-ifdef_fix.patch: + PR1303 issue (#ifdef vs. #if) caught by Bernhard + Rosenkr??nzer. + +2013-03-08 Andrew John Hughes + + * Makefile.am, + (JDK_CHANGESET): Bump to 2.2.7 tag to bring in + security fixes. + (JDK_SHA256SUM): Likewise. + * NEWS: Updated. + 2013-02-20 Andrew John Hughes * configure.ac: Bump to 2.2.7pre. diff -r b88f4d566ec9 -r 03aaabc8b71c Makefile.am --- a/Makefile.am Thu Feb 21 06:27:05 2013 +1100 +++ b/Makefile.am Mon Mar 11 11:39:51 2013 +0000 @@ -8,7 +8,7 @@ CORBA_CHANGESET = 5fcf70e41383 JAXP_CHANGESET = 988fa5bfeeec JAXWS_CHANGESET = 1b6e40dd0756 -JDK_CHANGESET = 6a419ec930a6 +JDK_CHANGESET = 40640be5d6a0 LANGTOOLS_CHANGESET = e89d5b6f21a6 OPENJDK_CHANGESET = cf1afd9bb936 @@ -16,7 +16,7 @@ CORBA_SHA256SUM = e7cb1e30f10dc2135fc8634c38def04efb979fef53633ebeb657cdafd1a649a8 JAXP_SHA256SUM = 5b2401b3da99da631aa2b6b59e53c1e503e0202574d7b5f64d3d2d5b7049d2a1 JAXWS_SHA256SUM = d16ed9287454b14a25690afb22dfc956d84458b4f563d3d59e9b0a028f377564 -JDK_SHA256SUM = 94f5f4aaa96eeeaabb0c99a4296ce1d2072b63e974e9fa610df7bff80bd0b9e5 +JDK_SHA256SUM = 2f334d6d17ec523ef589a3042b28dd2ad8f6e551faaa0298a7bbd99d3c0f48af LANGTOOLS_SHA256SUM = 71cc9ffe06e82df584b7afce8ee95e69d746577cc9a1eca29ce3412c45ccb1a7 OPENJDK_SHA256SUM = 0be0f572242de2744dcf290a7a1cbf9e70ce18f9c02ee0c18d8c3e0563f7203a @@ -235,7 +235,12 @@ # Patch list -ICEDTEA_PATCHES = +ICEDTEA_PATCHES = \ + patches/8002344-krb5loginmodule.patch \ + patches/8004344-toolkiterrorhandler.patch \ + patches/8006179-lookup_using_findvirtual.patch \ + patches/8006882-sun.proxy.patch \ + patches/pr1303-ifdef_fix.patch # Conditional patches diff -r b88f4d566ec9 -r 03aaabc8b71c NEWS --- a/NEWS Thu Feb 21 06:27:05 2013 +1100 +++ b/NEWS Mon Mar 11 11:39:51 2013 +0000 @@ -12,6 +12,17 @@ New in release 2.2.7 (2013-04-XX): +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion +* Backports + - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS + - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c + - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() + - S8006882: Proxy generated classes in sun.proxy package breaks JMockit +* Bug fixes + - PR1303: Correct #ifdef to #if + New in release 2.2.6 (2013-02-20): * Security fixes diff -r b88f4d566ec9 -r 03aaabc8b71c patches/8002344-krb5loginmodule.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8002344-krb5loginmodule.patch Mon Mar 11 11:39:51 2013 +0000 @@ -0,0 +1,207 @@ +# HG changeset patch +# User weijun +# Date 1353294788 -28800 +# Node ID 59cd568088cc6f0618315d99e53f0716afbf4ff2 +# Parent 6a419ec930a6a3ba969ccd29732f5bf61e51948c +8002344: Krb5LoginModule config class does not return proper KDC list from DNS +Reviewed-by: weijun +Contributed-by: Severin Gehwolf , Wang Weijun + +diff --git a/src/share/classes/sun/security/krb5/Config.java b/src/share/classes/sun/security/krb5/Config.java +--- openjdk/jdk/src/share/classes/sun/security/krb5/Config.java ++++ openjdk/jdk/src/share/classes/sun/security/krb5/Config.java +@@ -1284,7 +1284,7 @@ + */ + private String getKDCFromDNS(String realm) throws KrbException { + // use DNS to locate KDC +- String kdcs = null; ++ String kdcs = ""; + String[] srvs = null; + // locate DNS SRV record using UDP + if (DEBUG) { +@@ -1294,7 +1294,7 @@ + if (srvs == null) { + // locate DNS SRV record using TCP + if (DEBUG) { +- System.out.println("getKDCFromDNS using UDP"); ++ System.out.println("getKDCFromDNS using TCP"); + } + srvs = KrbServiceLocator.getKerberosService(realm, "_tcp"); + } +@@ -1303,14 +1303,15 @@ + throw new KrbException(Krb5.KRB_ERR_GENERIC, + "Unable to locate KDC for realm " + realm); + } ++ if (srvs.length == 0) { ++ return null; ++ } + for (int i = 0; i < srvs.length; i++) { +- String value = srvs[i]; +- for (int j = 0; j < srvs[i].length(); j++) { +- // filter the KDC name +- if (value.charAt(j) == ':') { +- kdcs = (value.substring(0, j)).trim(); +- } +- } ++ kdcs += srvs[i].trim() + " "; ++ } ++ kdcs = kdcs.trim(); ++ if (kdcs.equals("")) { ++ return null; + } + return kdcs; + } +diff --git a/test/sun/security/krb5/config/DNS.java b/test/sun/security/krb5/config/DNS.java +new file mode 100644 +--- /dev/null ++++ openjdk/jdk/test/sun/security/krb5/config/DNS.java +@@ -0,0 +1,38 @@ ++/* ++ * Copyright (c) 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA ++ * or visit www.oracle.com if you need additional information or have any ++ * questions. ++ */ ++ ++// See dns.sh. ++import sun.security.krb5.Config; ++ ++public class DNS { ++ public static void main(String[] args) throws Exception { ++ System.setProperty("java.security.krb5.conf", ++ System.getProperty("test.src", ".") +"/nothing.conf"); ++ Config config = Config.getInstance(); ++ String kdcs = config.getKDCList("X"); ++ if (!kdcs.equals("a.com.:88 b.com.:99") && ++ !kdcs.equals("a.com. b.com.:99")) { ++ throw new Exception("Strange KDC: [" + kdcs + "]"); ++ }; ++ } ++} +diff --git a/test/sun/security/krb5/config/NamingManager.java b/test/sun/security/krb5/config/NamingManager.java +new file mode 100644 +--- /dev/null ++++ openjdk/jdk/test/sun/security/krb5/config/NamingManager.java +@@ -0,0 +1,60 @@ ++/* ++ * Copyright (c) 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA ++ * or visit www.oracle.com if you need additional information or have any ++ * questions. ++ */ ++ ++package javax.naming.spi; ++ ++import com.sun.jndi.dns.DnsContext; ++import java.util.Hashtable; ++import javax.naming.Context; ++import javax.naming.NamingException; ++import javax.naming.directory.Attribute; ++import javax.naming.directory.Attributes; ++import javax.naming.directory.BasicAttribute; ++import javax.naming.directory.BasicAttributes; ++ ++/** ++ * A fake javax.naming.spi.NamingManager. It allows reading a DNS ++ * record without contacting a real server. ++ * ++ * See DNS.java and dns.sh. ++ */ ++public class NamingManager { ++ NamingManager() {} ++ public static Context getURLContext( ++ String scheme, Hashtable environment) ++ throws NamingException { ++ return new DnsContext("", null, new Hashtable()) { ++ public Attributes getAttributes(String name, String[] attrIds) ++ throws NamingException { ++ return new BasicAttributes() { ++ public Attribute get(String attrID) { ++ BasicAttribute ba = new BasicAttribute(attrID); ++ ba.add("1 1 99 b.com."); ++ ba.add("0 0 88 a.com."); // 2nd has higher priority ++ return ba; ++ } ++ }; ++ } ++ }; ++ } ++} +diff --git a/test/sun/security/krb5/config/dns.sh b/test/sun/security/krb5/config/dns.sh +new file mode 100644 +--- /dev/null ++++ openjdk/jdk/test/sun/security/krb5/config/dns.sh +@@ -0,0 +1,41 @@ ++# ++# Copyright (c) 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 ++# under the terms of the GNU General Public License version 2 only, as ++# published by the Free Software Foundation. ++# ++# This code is distributed in the hope that it will be useful, but WITHOUT ++# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++# version 2 for more details (a copy is included in the LICENSE file that ++# accompanied this code). ++# ++# You should have received a copy of the GNU General Public License version ++# 2 along with this work; if not, write to the Free Software Foundation, ++# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++# ++# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA ++# or visit www.oracle.com if you need additional information or have any ++# questions. ++# ++ ++# @test ++# @bug 8002344 ++# @summary Krb5LoginModule config class does not return proper KDC list from DNS ++# ++ ++if [ "${TESTJAVA}" = "" ] ; then ++ JAVAC_CMD=`which javac` ++ TESTJAVA=`dirname $JAVAC_CMD`/.. ++fi ++ ++if [ "${TESTSRC}" = "" ] ; then ++ TESTSRC="." ++fi ++ ++$TESTJAVA/bin/javac -d . \ ++ ${TESTSRC}/NamingManager.java ${TESTSRC}/DNS.java ++$TESTJAVA/bin/java -Xbootclasspath/p:. DNS ++ diff -r b88f4d566ec9 -r 03aaabc8b71c patches/8004344-toolkiterrorhandler.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8004344-toolkiterrorhandler.patch Mon Mar 11 11:39:51 2013 +0000 @@ -0,0 +1,33 @@ +# HG changeset patch +# User aph +# Date 1354629728 0 +# Node ID 1d4bf44c8e4e6875f45862871b2a82ae43dea7fa +# Parent 59cd568088cc6f0618315d99e53f0716afbf4ff2 +8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c +Summary: Code does not check for JNU_GetEnv returning NULL. +Reviewed-by: anthony + +diff --git a/src/solaris/native/sun/xawt/XlibWrapper.c b/src/solaris/native/sun/xawt/XlibWrapper.c +--- openjdk/jdk/src/solaris/native/sun/xawt/XlibWrapper.c ++++ openjdk/jdk/src/solaris/native/sun/xawt/XlibWrapper.c +@@ -1260,13 +1260,15 @@ + + JavaVM* jvm = NULL; + static int ToolkitErrorHandler(Display * dpy, XErrorEvent * event) { ++ JNIEnv * env; + if (jvm != NULL) { +- JNIEnv * env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2); +- return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I", +- ptr_to_jlong(dpy), ptr_to_jlong(event)).i; +- } else { +- return 0; ++ env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2); ++ if (env) { ++ return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I", ++ ptr_to_jlong(dpy), ptr_to_jlong(event)).i; ++ } + } ++ return 0; + } + + /* diff -r b88f4d566ec9 -r 03aaabc8b71c patches/8006179-lookup_using_findvirtual.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8006179-lookup_using_findvirtual.patch Mon Mar 11 11:39:51 2013 +0000 @@ -0,0 +1,27 @@ +# HG changeset patch +# User jrose +# Date 1358570871 28800 +# Node ID 4bb16e8e663ad133e0950406bda2261169f3920f +# Parent 33b30ad1689805e74c85f6df29d2033c796baedb +8006179: JSR292 MethodHandles lookup with interface using findVirtual() +Reviewed-by: twisti + +diff --git a/src/share/classes/java/lang/invoke/DirectMethodHandle.java b/src/share/classes/java/lang/invoke/DirectMethodHandle.java +--- openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java ++++ openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java +@@ -44,6 +44,15 @@ + if (!m.isResolved()) + throw new InternalError(); + ++ if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { ++ // Check for corner case: invokeinterface of Object method. ++ MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); ++ m2 = MemberName.getFactory().resolveOrNull(m2, false, null); ++ if (m2 != null && m2.isPublic()) { ++ m = m2; ++ } ++ } ++ + MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); + } + diff -r b88f4d566ec9 -r 03aaabc8b71c patches/8006882-sun.proxy.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8006882-sun.proxy.patch Mon Mar 11 11:39:51 2013 +0000 @@ -0,0 +1,106 @@ +# HG changeset patch +# User mchung +# Date 1359414910 28800 +# Node ID cbbb166b38eb15f5d5c68e913ee18f6f352b7af0 +# Parent 044ea56a339dfd92b723a5e81941b646f9d26071 +8006882: Proxy generated classes in sun.proxy package breaks JMockit +Reviewed-by: alanb, ahgross + +diff --git a/src/share/classes/java/lang/reflect/Proxy.java b/src/share/classes/java/lang/reflect/Proxy.java +--- openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java ++++ openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java +@@ -609,7 +609,7 @@ + } + + if (proxyPkg == null) { +- // if no non-public proxy interfaces, use sun.proxy package ++ // if no non-public proxy interfaces, use com.sun.proxy package + proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; + } + +diff --git a/src/share/classes/sun/reflect/misc/ReflectUtil.java b/src/share/classes/sun/reflect/misc/ReflectUtil.java +--- openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java ++++ openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java +@@ -202,5 +202,5 @@ + } + } + +- public static final String PROXY_PACKAGE = "sun.proxy"; ++ public static final String PROXY_PACKAGE = "com.sun.proxy"; + } +diff --git a/src/share/lib/security/java.security b/src/share/lib/security/java.security +--- openjdk/jdk/src/share/lib/security/java.security ++++ openjdk/jdk/src/share/lib/security/java.security +@@ -130,6 +130,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -152,6 +153,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +diff --git a/src/share/lib/security/java.security-macosx b/src/share/lib/security/java.security-macosx +--- openjdk/jdk/src/share/lib/security/java.security-macosx ++++ openjdk/jdk/src/share/lib/security/java.security-macosx +@@ -131,6 +131,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -154,6 +155,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +diff --git a/src/share/lib/security/java.security-solaris b/src/share/lib/security/java.security-solaris +--- openjdk/jdk/src/share/lib/security/java.security-solaris ++++ openjdk/jdk/src/share/lib/security/java.security-solaris +@@ -132,6 +132,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -154,6 +155,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +diff --git a/src/share/lib/security/java.security-windows b/src/share/lib/security/java.security-windows +--- openjdk/jdk/src/share/lib/security/java.security-windows ++++ openjdk/jdk/src/share/lib/security/java.security-windows +@@ -131,6 +131,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -153,6 +154,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ diff -r b88f4d566ec9 -r 03aaabc8b71c patches/pr1303-ifdef_fix.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/pr1303-ifdef_fix.patch Mon Mar 11 11:39:51 2013 +0000 @@ -0,0 +1,19 @@ +# HG changeset patch +# User andrew +# Date 1362758030 0 +# Node ID ec275f96d030eff83f7e6cfcdd7daa9cda2b4802 +# Parent deac45dc94f0504ba17b8afcb54db1fba4e6f9d5 +PR1303: Correct #ifdef to #if + +diff --git a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c +--- openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c ++++ openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c +@@ -316,7 +316,7 @@ + int + SplashDecodeGifStream(Splash * splash, SplashStream * stream) + { +-#ifdef GIFLIB_MAJOR >= 5 ++#if GIFLIB_MAJOR >= 5 + int error = 0; + GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); + From bugzilla-daemon at icedtea.classpath.org Mon Mar 11 05:57:05 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 11 Mar 2013 12:57:05 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #14 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.2?cmd=changeset;node=03aaabc8b71c author: Andrew John Hughes date: Mon Mar 11 11:39:51 2013 +0000 Add new fixes locally (backports from u17b02 & 2.4, PR1303 fix) so as to keep with 2.2.7 forest tag. 2013-03-11 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add patches. * NEWS: Updated. * patches/8002344-krb5loginmodule.patch, * patches/8004344-toolkiterrorhandler.patch: Backported from 2.4. * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch: Taken from upstream jdk7u17 b02. * patches/pr1303-ifdef_fix.patch: PR1303 issue (#ifdef vs. #if) caught by Bernhard Rosenkr?nzer. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/f94ffc15/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 11 07:35:13 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 11 Mar 2013 14:35:13 +0000 Subject: [Bug 1026] Apps fail to run because of the nanoxml parser's strict XML validation In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1026 Nikolay Kuznetsov changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |nikolay.kuznetsov.ru at gmail. | |com --- Comment #1 from Nikolay Kuznetsov --- I am also facing same issue for my own applet, which works well on Windows. java version "1.7.0_15" OpenJDK Runtime Environment (IcedTea7 2.3.7) (7u15-2.3.7-0ubuntu1~12.04.1) OpenJDK Client VM (build 23.7-b01, mixed mode, sharing) net.sourceforge.jnlp.ParseException: Invalid XML document syntax. at net.sourceforge.jnlp.Parser.getRootNode(Parser.java:1274) at net.sourceforge.jnlp.JNLPFile.(JNLPFile.java:204) at net.sourceforge.jnlp.PluginBridge.(PluginBridge.java:63) at net.sourceforge.jnlp.NetxPanel.runLoader(NetxPanel.java:132) at sun.applet.AppletPanel.run(AppletPanel.java:380) at java.lang.Thread.run(Thread.java:722) Caused by: net.sourceforge.nanoxml.XMLParseException: XML Parse Exception during parsing of a jnlp element at line 29: Unexpected end of data reached at net.sourceforge.nanoxml.XMLElement.unexpectedEndOfData(XMLElement.java:1094) at net.sourceforge.nanoxml.XMLElement.readChar(XMLElement.java:877) at net.sourceforge.nanoxml.XMLElement.resolveEntity(XMLElement.java:1013) at net.sourceforge.nanoxml.XMLElement.scanString(XMLElement.java:658) at net.sourceforge.nanoxml.XMLElement.scanElement(XMLElement.java:915) at net.sourceforge.nanoxml.XMLElement.scanElement(XMLElement.java:967) at net.sourceforge.nanoxml.XMLElement.scanElement(XMLElement.java:967) at net.sourceforge.nanoxml.XMLElement.parseFromReader(XMLElement.java:512) at net.sourceforge.nanoxml.XMLElement.parseFromReader(XMLElement.java:464) at net.sourceforge.jnlp.Parser.getRootNode(Parser.java:1270) ... 5 more Caused by: net.sourceforge.nanoxml.XMLParseException: XML Parse Exception during parsing of a jnlp element at line 29: Unexpected end of data reached at net.sourceforge.nanoxml.XMLElement.unexpectedEndOfData(XMLElement.java:1094) at net.sourceforge.nanoxml.XMLElement.readChar(XMLElement.java:877) at net.sourceforge.nanoxml.XMLElement.resolveEntity(XMLElement.java:1013) at net.sourceforge.nanoxml.XMLElement.scanString(XMLElement.java:658) at net.sourceforge.nanoxml.XMLElement.scanElement(XMLElement.java:915) at net.sourceforge.nanoxml.XMLElement.scanElement(XMLElement.java:967) at net.sourceforge.nanoxml.XMLElement.scanElement(XMLElement.java:967) at net.sourceforge.nanoxml.XMLElement.parseFromReader(XMLElement.java:512) at net.sourceforge.nanoxml.XMLElement.parseFromReader(XMLElement.java:464) at net.sourceforge.jnlp.Parser.getRootNode(Parser.java:1270) at net.sourceforge.jnlp.JNLPFile.(JNLPFile.java:204) at net.sourceforge.jnlp.PluginBridge.(PluginBridge.java:63) at net.sourceforge.jnlp.NetxPanel.runLoader(NetxPanel.java:132) at sun.applet.AppletPanel.run(AppletPanel.java:380) at java.lang.Thread.run(Thread.java:722) Any updates on this issue? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/c4e37cff/attachment.html From andrew at icedtea.classpath.org Mon Mar 11 08:11:31 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 11 Mar 2013 15:11:31 +0000 Subject: /hg/release/icedtea7-2.1: Add new fixes locally (backports from ... Message-ID: changeset cf4897fbb9f5 in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=cf4897fbb9f5 author: Andrew John Hughes date: Mon Mar 11 15:11:10 2013 +0000 Add new fixes locally (backports from u17b02 & 2.4, PR1303 fix) so as to keep with 2.1.7 forest tag. 2013-03-11 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add patches. * NEWS: Updated. * patches/8002344-krb5loginmodule.patch, * patches/8004344-toolkiterrorhandler.patch: Backported from 2.4. * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch: Taken from upstream jdk7u17 b02. * patches/pr1303-ifdef_fix.patch: PR1303 issue (#ifdef vs. #if) caught by Bernhard Rosenkr?nzer. diffstat: ChangeLog | 15 + Makefile.am | 7 +- patches/8002344-krb5loginmodule.patch | 207 +++++++++++++++++++++++++ patches/8004344-toolkiterrorhandler.patch | 33 +++ patches/8006179-lookup_using_findvirtual.patch | 27 +++ patches/8006882-sun.proxy.patch | 87 ++++++++++ patches/pr1303-ifdef_fix.patch | 19 ++ 7 files changed, 394 insertions(+), 1 deletions(-) diffs (432 lines): diff -r cabd2098693e -r cf4897fbb9f5 ChangeLog --- a/ChangeLog Mon Mar 11 12:48:37 2013 +0000 +++ b/ChangeLog Mon Mar 11 15:11:10 2013 +0000 @@ -1,3 +1,18 @@ +2013-03-11 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add patches. + * NEWS: Updated. + * patches/8002344-krb5loginmodule.patch, + * patches/8004344-toolkiterrorhandler.patch: + Backported from 2.4. + * patches/8006179-lookup_using_findvirtual.patch, + * patches/8006882-sun.proxy.patch: + Taken from upstream jdk7u17 b02. + * patches/pr1303-ifdef_fix.patch: + PR1303 issue (#ifdef vs. #if) caught by Bernhard + Rosenkr??nzer. + 2013-03-11 Andrew John Hughes * Makefile.am, diff -r cabd2098693e -r cf4897fbb9f5 Makefile.am --- a/Makefile.am Mon Mar 11 12:48:37 2013 +0000 +++ b/Makefile.am Mon Mar 11 15:11:10 2013 +0000 @@ -235,7 +235,12 @@ # Patch list -ICEDTEA_PATCHES = +ICEDTEA_PATCHES = \ + patches/8002344-krb5loginmodule.patch \ + patches/8004344-toolkiterrorhandler.patch \ + patches/8006179-lookup_using_findvirtual.patch \ + patches/8006882-sun.proxy.patch \ + patches/pr1303-ifdef_fix.patch # Conditional patches diff -r cabd2098693e -r cf4897fbb9f5 patches/8002344-krb5loginmodule.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8002344-krb5loginmodule.patch Mon Mar 11 15:11:10 2013 +0000 @@ -0,0 +1,207 @@ +# HG changeset patch +# User weijun +# Date 1353294788 -28800 +# Node ID 9dc51cdd7cec31aeaccf7e2a44de4d4110f19353 +# Parent 78fbbfe20edb9658c6ee59494b97f1735e73eab2 +8002344: Krb5LoginModule config class does not return proper KDC list from DNS +Reviewed-by: weijun +Contributed-by: Severin Gehwolf , Wang Weijun + +diff --git a/src/share/classes/sun/security/krb5/Config.java b/src/share/classes/sun/security/krb5/Config.java +--- openjdk/jdk/src/share/classes/sun/security/krb5/Config.java ++++ openjdk/jdk/src/share/classes/sun/security/krb5/Config.java +@@ -1233,7 +1233,7 @@ + */ + private String getKDCFromDNS(String realm) throws KrbException { + // use DNS to locate KDC +- String kdcs = null; ++ String kdcs = ""; + String[] srvs = null; + // locate DNS SRV record using UDP + if (DEBUG) { +@@ -1243,7 +1243,7 @@ + if (srvs == null) { + // locate DNS SRV record using TCP + if (DEBUG) { +- System.out.println("getKDCFromDNS using UDP"); ++ System.out.println("getKDCFromDNS using TCP"); + } + srvs = KrbServiceLocator.getKerberosService(realm, "_tcp"); + } +@@ -1252,14 +1252,15 @@ + throw new KrbException(Krb5.KRB_ERR_GENERIC, + "Unable to locate KDC for realm " + realm); + } ++ if (srvs.length == 0) { ++ return null; ++ } + for (int i = 0; i < srvs.length; i++) { +- String value = srvs[i]; +- for (int j = 0; j < srvs[i].length(); j++) { +- // filter the KDC name +- if (value.charAt(j) == ':') { +- kdcs = (value.substring(0, j)).trim(); +- } +- } ++ kdcs += srvs[i].trim() + " "; ++ } ++ kdcs = kdcs.trim(); ++ if (kdcs.equals("")) { ++ return null; + } + return kdcs; + } +diff --git a/test/sun/security/krb5/config/DNS.java b/test/sun/security/krb5/config/DNS.java +new file mode 100644 +--- /dev/null ++++ openjdk/jdk/test/sun/security/krb5/config/DNS.java +@@ -0,0 +1,38 @@ ++/* ++ * Copyright (c) 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA ++ * or visit www.oracle.com if you need additional information or have any ++ * questions. ++ */ ++ ++// See dns.sh. ++import sun.security.krb5.Config; ++ ++public class DNS { ++ public static void main(String[] args) throws Exception { ++ System.setProperty("java.security.krb5.conf", ++ System.getProperty("test.src", ".") +"/nothing.conf"); ++ Config config = Config.getInstance(); ++ String kdcs = config.getKDCList("X"); ++ if (!kdcs.equals("a.com.:88 b.com.:99") && ++ !kdcs.equals("a.com. b.com.:99")) { ++ throw new Exception("Strange KDC: [" + kdcs + "]"); ++ }; ++ } ++} +diff --git a/test/sun/security/krb5/config/NamingManager.java b/test/sun/security/krb5/config/NamingManager.java +new file mode 100644 +--- /dev/null ++++ openjdk/jdk/test/sun/security/krb5/config/NamingManager.java +@@ -0,0 +1,60 @@ ++/* ++ * Copyright (c) 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA ++ * or visit www.oracle.com if you need additional information or have any ++ * questions. ++ */ ++ ++package javax.naming.spi; ++ ++import com.sun.jndi.dns.DnsContext; ++import java.util.Hashtable; ++import javax.naming.Context; ++import javax.naming.NamingException; ++import javax.naming.directory.Attribute; ++import javax.naming.directory.Attributes; ++import javax.naming.directory.BasicAttribute; ++import javax.naming.directory.BasicAttributes; ++ ++/** ++ * A fake javax.naming.spi.NamingManager. It allows reading a DNS ++ * record without contacting a real server. ++ * ++ * See DNS.java and dns.sh. ++ */ ++public class NamingManager { ++ NamingManager() {} ++ public static Context getURLContext( ++ String scheme, Hashtable environment) ++ throws NamingException { ++ return new DnsContext("", null, new Hashtable()) { ++ public Attributes getAttributes(String name, String[] attrIds) ++ throws NamingException { ++ return new BasicAttributes() { ++ public Attribute get(String attrID) { ++ BasicAttribute ba = new BasicAttribute(attrID); ++ ba.add("1 1 99 b.com."); ++ ba.add("0 0 88 a.com."); // 2nd has higher priority ++ return ba; ++ } ++ }; ++ } ++ }; ++ } ++} +diff --git a/test/sun/security/krb5/config/dns.sh b/test/sun/security/krb5/config/dns.sh +new file mode 100644 +--- /dev/null ++++ openjdk/jdk/test/sun/security/krb5/config/dns.sh +@@ -0,0 +1,41 @@ ++# ++# Copyright (c) 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 ++# under the terms of the GNU General Public License version 2 only, as ++# published by the Free Software Foundation. ++# ++# This code is distributed in the hope that it will be useful, but WITHOUT ++# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++# version 2 for more details (a copy is included in the LICENSE file that ++# accompanied this code). ++# ++# You should have received a copy of the GNU General Public License version ++# 2 along with this work; if not, write to the Free Software Foundation, ++# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++# ++# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA ++# or visit www.oracle.com if you need additional information or have any ++# questions. ++# ++ ++# @test ++# @bug 8002344 ++# @summary Krb5LoginModule config class does not return proper KDC list from DNS ++# ++ ++if [ "${TESTJAVA}" = "" ] ; then ++ JAVAC_CMD=`which javac` ++ TESTJAVA=`dirname $JAVAC_CMD`/.. ++fi ++ ++if [ "${TESTSRC}" = "" ] ; then ++ TESTSRC="." ++fi ++ ++$TESTJAVA/bin/javac -d . \ ++ ${TESTSRC}/NamingManager.java ${TESTSRC}/DNS.java ++$TESTJAVA/bin/java -Xbootclasspath/p:. DNS ++ diff -r cabd2098693e -r cf4897fbb9f5 patches/8004344-toolkiterrorhandler.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8004344-toolkiterrorhandler.patch Mon Mar 11 15:11:10 2013 +0000 @@ -0,0 +1,33 @@ +# HG changeset patch +# User aph +# Date 1354629728 0 +# Node ID 4d5e8509905e1d95a87e7ce769d8ee61083107a3 +# Parent 9dc51cdd7cec31aeaccf7e2a44de4d4110f19353 +8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c +Summary: Code does not check for JNU_GetEnv returning NULL. +Reviewed-by: anthony + +diff --git a/src/solaris/native/sun/xawt/XlibWrapper.c b/src/solaris/native/sun/xawt/XlibWrapper.c +--- openjdk/jdk/src/solaris/native/sun/xawt/XlibWrapper.c ++++ openjdk/jdk/src/solaris/native/sun/xawt/XlibWrapper.c +@@ -1260,13 +1260,15 @@ + + JavaVM* jvm = NULL; + static int ToolkitErrorHandler(Display * dpy, XErrorEvent * event) { ++ JNIEnv * env; + if (jvm != NULL) { +- JNIEnv * env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2); +- return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I", +- ptr_to_jlong(dpy), ptr_to_jlong(event)).i; +- } else { +- return 0; ++ env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2); ++ if (env) { ++ return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I", ++ ptr_to_jlong(dpy), ptr_to_jlong(event)).i; ++ } + } ++ return 0; + } + + /* diff -r cabd2098693e -r cf4897fbb9f5 patches/8006179-lookup_using_findvirtual.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8006179-lookup_using_findvirtual.patch Mon Mar 11 15:11:10 2013 +0000 @@ -0,0 +1,27 @@ +# HG changeset patch +# User jrose +# Date 1358570871 28800 +# Node ID 90e4cb6f78bb0551ae23f88dd75cb57aad9d8662 +# Parent 0ad964f2ced1b4f12c1b30bd92dceb73ba15f608 +8006179: JSR292 MethodHandles lookup with interface using findVirtual() +Reviewed-by: twisti + +diff --git a/src/share/classes/java/lang/invoke/DirectMethodHandle.java b/src/share/classes/java/lang/invoke/DirectMethodHandle.java +--- openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java ++++ openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java +@@ -44,6 +44,15 @@ + if (!m.isResolved()) + throw new InternalError(); + ++ if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { ++ // Check for corner case: invokeinterface of Object method. ++ MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); ++ m2 = MemberName.getFactory().resolveOrNull(m2, false, null); ++ if (m2 != null && m2.isPublic()) { ++ m = m2; ++ } ++ } ++ + MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); + } + diff -r cabd2098693e -r cf4897fbb9f5 patches/8006882-sun.proxy.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/8006882-sun.proxy.patch Mon Mar 11 15:11:10 2013 +0000 @@ -0,0 +1,87 @@ +# HG changeset patch +# User andrew +# Date 1362989644 0 +# Node ID 1040c44a496db37f595fa66b71ef91e67598cbf4 +# Parent 90e4cb6f78bb0551ae23f88dd75cb57aad9d8662 +8006882: Proxy generated classes in sun.proxy package breaks JMockit +Reviewed-by: alanb, ahgross + +diff --git a/src/share/classes/java/lang/reflect/Proxy.java b/src/share/classes/java/lang/reflect/Proxy.java +--- openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java ++++ openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java +@@ -609,7 +609,7 @@ + } + + if (proxyPkg == null) { +- // if no non-public proxy interfaces, use sun.proxy package ++ // if no non-public proxy interfaces, use com.sun.proxy package + proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; + } + +diff --git a/src/share/classes/sun/reflect/misc/ReflectUtil.java b/src/share/classes/sun/reflect/misc/ReflectUtil.java +--- openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java ++++ openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java +@@ -202,5 +202,5 @@ + } + } + +- public static final String PROXY_PACKAGE = "sun.proxy"; ++ public static final String PROXY_PACKAGE = "com.sun.proxy"; + } +diff --git a/src/share/lib/security/java.security b/src/share/lib/security/java.security +--- openjdk/jdk/src/share/lib/security/java.security ++++ openjdk/jdk/src/share/lib/security/java.security +@@ -128,6 +128,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -148,6 +149,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +diff --git a/src/share/lib/security/java.security-solaris b/src/share/lib/security/java.security-solaris +--- openjdk/jdk/src/share/lib/security/java.security-solaris ++++ openjdk/jdk/src/share/lib/security/java.security-solaris +@@ -129,6 +129,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -149,6 +150,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +diff --git a/src/share/lib/security/java.security-windows b/src/share/lib/security/java.security-windows +--- openjdk/jdk/src/share/lib/security/java.security-windows ++++ openjdk/jdk/src/share/lib/security/java.security-windows +@@ -129,6 +129,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ +@@ -149,6 +150,7 @@ + com.sun.imageio.,\ + com.sun.istack.internal.,\ + com.sun.jmx.,\ ++ com.sun.proxy.,\ + com.sun.org.apache.xerces.internal.utils.,\ + com.sun.org.apache.xalan.internal.utils.,\ + com.sun.org.glassfish.external.,\ diff -r cabd2098693e -r cf4897fbb9f5 patches/pr1303-ifdef_fix.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/pr1303-ifdef_fix.patch Mon Mar 11 15:11:10 2013 +0000 @@ -0,0 +1,19 @@ +# HG changeset patch +# User andrew +# Date 1362758030 0 +# Node ID 0ad964f2ced1b4f12c1b30bd92dceb73ba15f608 +# Parent 44d9f9e05ca4a7735685cb246c004a5f4abd19c7 +PR1303: Correct #ifdef to #if + +diff --git a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c +--- openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c ++++ openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c +@@ -316,7 +316,7 @@ + int + SplashDecodeGifStream(Splash * splash, SplashStream * stream) + { +-#ifdef GIFLIB_MAJOR >= 5 ++#if GIFLIB_MAJOR >= 5 + int error = 0; + GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); + From bugzilla-daemon at icedtea.classpath.org Mon Mar 11 08:11:38 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 11 Mar 2013 15:11:38 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #15 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.1?cmd=changeset;node=cf4897fbb9f5 author: Andrew John Hughes date: Mon Mar 11 15:11:10 2013 +0000 Add new fixes locally (backports from u17b02 & 2.4, PR1303 fix) so as to keep with 2.1.7 forest tag. 2013-03-11 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add patches. * NEWS: Updated. * patches/8002344-krb5loginmodule.patch, * patches/8004344-toolkiterrorhandler.patch: Backported from 2.4. * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch: Taken from upstream jdk7u17 b02. * patches/pr1303-ifdef_fix.patch: PR1303 issue (#ifdef vs. #if) caught by Bernhard Rosenkr?nzer. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/74638665/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 11 09:21:26 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 11 Mar 2013 16:21:26 +0000 Subject: [Bug 1026] Apps fail to run because of the nanoxml parser's strict XML validation In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1026 Adam Domurad changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |adomurad at redhat.com --- Comment #2 from Adam Domurad --- Hi, by your own applet, do you mean one you use or one you develop ? If you develop it, you should fix the XML. I will look into this issue again sometime, although note the tricky thing about loose XML validation is that it's tricky to tell exactly how the official plugin/JNLP implementation decided to go about it. You can contact the applet owners and ask them to use valid XML, or you can hand-edit the JNLP file in the mean time. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/cd8dd617/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 11 09:31:39 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 11 Mar 2013 16:31:39 +0000 Subject: [Bug 1026] Apps fail to run because of the nanoxml parser's strict XML validation In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1026 --- Comment #3 from Nikolay Kuznetsov --- Yes, I have developed it. XML file is valid. I have verified it using JaNeLa tool. Now I have removed OpenJDK and installed Oracle JVM. It works perfectly with same xml file. And works under Windows for tens of people. I have replace domain and removed couple of lines of parameters. This how my jnlp file would like: Applet mydomain -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/1c06fff8/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 11 10:08:30 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 11 Mar 2013 17:08:30 +0000 Subject: [Bug 1026] Apps fail to run because of the nanoxml parser's strict XML validation In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1026 --- Comment #4 from Adam Domurad --- The JNLP you posted parsed correctly with icedtea-web. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/f4a531fb/attachment.html From adomurad at redhat.com Mon Mar 11 14:21:16 2013 From: adomurad at redhat.com (Adam Domurad) Date: Mon, 11 Mar 2013 17:21:16 -0400 Subject: [rfc][icedtea-web] PluginAppletViewer unit tests with test extensions for mocking plugin input&output pipes Message-ID: <513E4ACC.8090304@redhat.com> This is an attempt to enable unit testing of hard-to-test parts of icedtea-web. It introduces a new class 'PluginPipeMock' that allows the requests coming from the plugin to be read one-by-one, and the ability to send mocked replies. This is possible thanks to that fact that PluginStreamHandler takes arbitrary and InputStream&OutputStream. Attached are unit tests for PluginAppletViewer.eval, PluginAppletViewer.call, PluginAppletViewer.toString and PluginAppletViewer.JavascriptFinalize. While the javascript-related functionality is mocked, the responsibilities from the Java-side of things are tested. It may be worth looking into using iostream's on the C++ side and mocking them similarly (for the unfamiliar, they are also classes that can be inherited from, so a similar approach can be taken). Even better would be to provide the C++ side with some NPAPI-enabled javascript engine to interface with so we can fully test the javascript stuff with unit tests. ChangeLog: 2013-XX-XX Adam Domurad * Makefile.am (stamps/test-extensions-compile.stamp): Make plugin classes available to test extensions * tests/test-extensions/net/sourceforge/jnlp/AsyncCallWithTimeout.java: New, helper for doing asynchronous calls with a given timeout. Returns an exit code. * tests/test-extensions/sun/applet/PluginPipeMessages.java: New, helper for verifying plugin messages and getting the reference number. * tests/netx/unit/sun/applet/PluginAppletViewerTest.java: New, uses PluginPipeMock to test the javascript requests to the plygin. * tests/test-extensions/sun/applet/mock/PluginPipeMock.java: New, helper for getting the plugin requests and mocking the replies. -------------- next part -------------- A non-text attachment was scrubbed... Name: test-liveconnect-messages.patch Type: text/x-patch Size: 16442 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130311/28557979/test-liveconnect-messages.patch From adomurad at redhat.com Mon Mar 11 15:16:19 2013 From: adomurad at redhat.com (Adam Domurad) Date: Mon, 11 Mar 2013 18:16:19 -0400 Subject: [rfc][icedtea-web] Fix run-cpp-unit-tests on F18 Message-ID: <513E57B3.3020104@redhat.com> Hi. It doesn't seem like the gcc flags used bring in the needed dependencies on F18 anymore. NB: Duplicate flags are harmless, so it shouldn't break any other systems. ChangeLog: 2013-XX-XX Adam Domurad The IcedTea project provides a harness to build the source code from OpenJDK using Free Software build tools, along with additional features such as a PulseAudio sound driver and support for alternative virtual machines. A new set of security releases are now available for the OpenJDK 7 series: 2.1.7, 2.2.7 & 2.3.8. We recommend that users upgrade to the latest release from the appropriate branch as soon as possible. The releases contain the following security fixes: * S8007014, CVE-2013-0809: Improve image handling * S8007675, CVE-2013-1493: Improve color conversion In addition, IcedTea includes the usual IcedTea patches to allow builds against system libraries and to support more estoric architectures. If you find an issue with one of these releases, please report it to our bug database (http://icedtea.classpath.org/bugzilla) under the appropriate component. Development discussion takes place on the distro-pkg-dev at openjdk.java.net mailing list and patches are always welcome. Full details of the releases can be found below. What's New? =========== New in release 2.3.8 (2013-04-11): * Security fixes - S8007014, CVE-2013-0809: Improve image handling - S8007675, CVE-2013-1493: Improve color conversion * Backports - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() - S8006882: Proxy generated classes in sun.proxy package breaks JMockit * Bug fixes - PR1303: Correct #ifdef to #if - PR1340: Simplify the rhino class rewriter to avoid use of concurrency - Revert 7017193 and add the missing free call, until a better fix is ready. New in release 2.2.7 (2013-04-11): * Security fixes - S8007014, CVE-2013-0809: Improve image handling - S8007675, CVE-2013-1493: Improve color conversion * Backports - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() - S8006882: Proxy generated classes in sun.proxy package breaks JMockit * Bug fixes - PR1303: Correct #ifdef to #if - PR1340: Simplify the rhino class rewriter to avoid use of concurrency - Revert 7017193 and add the missing free call, until a better fix is ready. New in release 2.1.7 (2013-04-11): * Security fixes - S8007014, CVE-2013-0809: Improve image handling - S8007675, CVE-2013-1493: Improve color conversion * Backports - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() - S8006882: Proxy generated classes in sun.proxy package breaks JMockit * Bug fixes - PR1303: Correct #ifdef to #if - Stop libraries being stripped in the OpenJDK build. - PR1340: Simplify the rhino class rewriter to avoid use of concurrency - Revert 7017193 and add the missing free call, until a better fix is ready. The tarballs can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea-2.1.7.tar.gz * http://icedtea.classpath.org/download/source/icedtea-2.2.7.tar.gz * http://icedtea.classpath.org/download/source/icedtea-2.3.8.tar.gz SHA256 checksums: e23d7715b9b27635f721414614be4bc5e52d32fb9739bc2e5dd1abcd8183dbee icedtea-2.1.7.tar.gz 070a14f450569f98bd7b1ce5c42a9240c81ac5c234e2b39f8897f11d3d625ecc icedtea-2.2.7.tar.gz 750a4c6e3e22369aa7dcfb0751fe85d5ea7a36b32871861c5063dbcadddc7153 icedtea-2.3.8.tar.gz Each tarball is accompanied by a digital signature available at the above URL + '.sig'. This is produced using my public key. See details below. PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 The following people helped with these releases: * Andrew Hughes (applying all security patches & backports, creation & testing of bug fixes, reproducer testing, release management) * Matthias Klose (reported & fixed PR1340) * Bernhard Rosenkr?nzer (reported issue with PR1303) We would also like to thank the bug reporters and testers! To get started: $ tar xzf icedtea-${version}.tar.gz where ${version} is the version of IcedTea being used. Full build requirements and instructions are in INSTALL: $ mkdir icedtea-build $ cd icedtea-build $ ../icedtea-${version}/configure [--enable-zero --enable-pulse-java --enable-systemtap ...] $ make Happy hacking! -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/181326e5/attachment.bin From ptisnovs at icedtea.classpath.org Tue Mar 12 01:28:37 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 12 Mar 2013 08:28:37 +0000 Subject: /hg/rhino-tests: Updated SimpleScriptContextClassTest to works c... Message-ID: changeset 64b1fc64c1b9 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=64b1fc64c1b9 author: Pavel Tisnovsky date: Tue Mar 12 09:31:43 2013 +0100 Updated SimpleScriptContextClassTest to works correctly with JDK6 and JDK7 too. diffstat: ChangeLog | 6 ++++++ src/org/RhinoTests/SimpleScriptContextClassTest.java | 18 +++++++++++++----- 2 files changed, 19 insertions(+), 5 deletions(-) diffs (66 lines): diff -r 9282fedae49b -r 64b1fc64c1b9 ChangeLog --- a/ChangeLog Mon Mar 11 10:00:23 2013 +0100 +++ b/ChangeLog Tue Mar 12 09:31:43 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-12 Pavel Tisnovsky + + * src/org/RhinoTests/SimpleScriptContextClassTest.java: + Updated SimpleScriptContextClassTest to works correctly with JDK6 and + JDK7 too. + 2013-03-11 Pavel Tisnovsky * src/org/RhinoTests/CompiledScriptClassTest.java: diff -r 9282fedae49b -r 64b1fc64c1b9 src/org/RhinoTests/SimpleScriptContextClassTest.java --- a/src/org/RhinoTests/SimpleScriptContextClassTest.java Mon Mar 11 10:00:23 2013 +0100 +++ b/src/org/RhinoTests/SimpleScriptContextClassTest.java Tue Mar 12 09:31:43 2013 +0100 @@ -415,10 +415,18 @@ */ protected void testGetFields() { // following fields should exists - final String[] fieldsThatShouldExist = { + final String[] fieldsThatShouldExist_jdk6 = { "public static final int javax.script.ScriptContext.ENGINE_SCOPE", "public static final int javax.script.ScriptContext.GLOBAL_SCOPE", }; + final String[] fieldsThatShouldExist_jdk7 = { + "public static final int javax.script.ScriptContext.ENGINE_SCOPE", + "public static final int javax.script.ScriptContext.GLOBAL_SCOPE", + }; + + // get the right array of field signatures + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + // get all fields Field[] fields = this.simpleScriptContextClass.getFields(); // and transform the array into a list of field names @@ -548,7 +556,7 @@ */ protected void testGetMethods() { // following methods should be inherited - final String[] methodsThatShouldExists_jdk6 = { + final String[] methodsThatShouldExist_jdk6 = { "public boolean java.lang.Object.equals(java.lang.Object)", "public final native java.lang.Class java.lang.Object.getClass()", "public final native void java.lang.Object.notify()", @@ -574,7 +582,7 @@ "public void javax.script.SimpleScriptContext.setWriter(java.io.Writer)", }; - final String[] methodsThatShouldExists_jdk7 = { + final String[] methodsThatShouldExist_jdk7 = { "public boolean java.lang.Object.equals(java.lang.Object)", "public final native java.lang.Class java.lang.Object.getClass()", "public final native void java.lang.Object.notify()", @@ -607,9 +615,9 @@ for (Method method : methods) { methodsAsString.add(method.toString()); } - String[] methodsThatShouldExists = getJavaVersion() < 7 ? methodsThatShouldExists_jdk6 : methodsThatShouldExists_jdk7; + String[] methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : methodsThatShouldExists) { + for (String methodThatShouldExists : methodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "method " + methodThatShouldExists + " not found"); } From ptisnovs at icedtea.classpath.org Tue Mar 12 01:40:11 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 12 Mar 2013 08:40:11 +0000 Subject: /hg/gfx-test: Eight new tests added into the test suite BitBltUs... Message-ID: changeset bbe7a70b8421 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=bbe7a70b8421 author: Pavel Tisnovsky date: Tue Mar 12 09:43:16 2013 +0100 Eight new tests added into the test suite BitBltUsingBgColor. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltUsingBgColor.java | 120 +++++++++++++++++++++ 2 files changed, 125 insertions(+), 0 deletions(-) diffs (142 lines): diff -r 9851de90017e -r bbe7a70b8421 ChangeLog --- a/ChangeLog Mon Mar 11 10:25:32 2013 +0100 +++ b/ChangeLog Tue Mar 12 09:43:16 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-12 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltUsingBgColor.java: + Eight new tests added into the test suite BitBltUsingBgColor. + 2013-03-11 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltCropImage.java: diff -r 9851de90017e -r bbe7a70b8421 src/org/gfxtest/testsuites/BitBltUsingBgColor.java --- a/src/org/gfxtest/testsuites/BitBltUsingBgColor.java Mon Mar 11 10:25:32 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltUsingBgColor.java Tue Mar 12 09:43:16 2013 +0100 @@ -1486,6 +1486,126 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Background color is set to Color.black. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort565RGBBackgroundBlack(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort565RGB(image, graphics2d, Color.black); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Background color is set to Color.blue. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort565RGBBackgroundBlue(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort565RGB(image, graphics2d, Color.blue); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Background color is set to Color.green. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort565RGBBackgroundGreen(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort565RGB(image, graphics2d, Color.green); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Background color is set to Color.cyan. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort565RGBBackgroundCyan(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort565RGB(image, graphics2d, Color.cyan); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Background color is set to Color.red. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort565RGBBackgroundRed(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort565RGB(image, graphics2d, Color.red); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Background color is set to Color.magenta. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort565RGBBackgroundMagenta(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort565RGB(image, graphics2d, Color.magenta); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Background color is set to Color.yellow. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort565RGBBackgroundYellow(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort565RGB(image, graphics2d, Color.yellow); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Background color is set to Color.white. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshort565RGBBackgroundWhite(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshort565RGB(image, graphics2d, Color.white); + } + + /** * Entry point to the test suite. * * @param args not used in this case From jvanek at redhat.com Tue Mar 12 03:57:43 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 12 Mar 2013 11:57:43 +0100 Subject: [RFC][icedtea-web] Fix NumberFormatException in PluginParameters In-Reply-To: <1362851464.1220.5.camel@localhost.localdomain> References: <1362851464.1220.5.camel@localhost.localdomain> Message-ID: <513F0A27.3090803@redhat.com> On 03/09/2013 06:51 PM, Thomas Meyer wrote: > Hi, > > Maybe introduced by changeset 741a105054af (Remove redundant HTML-tag > scanner from ITW. Do not reconstruct tags.) > > Handling message: GetJavaObject instance 3 Worker #1/IsPriority=false/IsFree=false/Message=instance 3 reference -161 GetJavaObject > Exception in thread "NetXPanel initializer" java.lang.NumberFormatException: For input string: "4294967295" > at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) > at java.lang.Integer.parseInt(Integer.java:495) > at java.lang.Integer.valueOf(Integer.java:582) > at net.sourceforge.jnlp.PluginParameters.getWidth(PluginParameters.java:154) > at sun.applet.PluginAppletPanelFactory$2.run(PluginAppletPanelFactory.java:104) > at java.lang.Thread.run(Thread.java:722) > > Proposed fix: > > diff -r e19fe33c82df plugin/icedteanp/java/sun/applet/PluginParameterParser.java > --- a/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Tue Mar 05 16:35:40 2013 -0500 > +++ b/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Sat Mar 09 18:50:17 2013 +0100 > @@ -1,6 +1,5 @@ > package sun.applet; > > -import java.util.Arrays; > import java.util.HashMap; > import java.util.Map; > > @@ -60,7 +59,12 @@ > } > > static boolean isInt(String s) { > - return s.matches("^-?\\d+$"); > + try{ > + Integer.parseInt(s); > + return true; > + } catch(NumberFormatException e) { > + return false; > + } > } > > /** > > Yes please. Althoug I do not like the exception-driven method, this appears much better then reinvite more spherical circle where (my) original approach had to lead after (just little bit) deeper investigations... J:( From adomurad at redhat.com Tue Mar 12 05:56:48 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 12 Mar 2013 08:56:48 -0400 Subject: [fyi][icedtea-web] backend and itw-settings for extended applets security In-Reply-To: <5130E0EF.2030003@redhat.com> References: <510E532C.8040401@redhat.com> <51119426.9090000@redhat.com> <511D1142.2090501@redhat.com> <511D2AA8.2040709@redhat.com> <5124C5D0.7080309@redhat.com> <512545CD.4080305@redhat.com> <51269AAA.8090606@redhat.com> <512B8F37.9020703@redhat.com> <512F83FC.1080101@redhat.com> <5130E0EF.2030003@redhat.com> Message-ID: <513F2610.8070602@redhat.com> On 03/01/2013 12:10 PM, Adam Domurad wrote: > [ large snip ] >> New version attached. >> -Adam > > Woops. In the back&forth between 1.2 and HEAD I have forgot to add the > normalization stuff. > > Rough location of the changes (sorry for the odd format, I just > grepped them): > > + private static UnsignedAppletActionEntry > getMatchingItem(UnsignedAppletActionStorage actionStorage, > PluginBridge file) { > + return actionStorage.getMatchingItem( > + normalizeURLQuietly(file.getSourceLocation()).toString(), > + normalizeURLQuietly(file.getCodeBase()).toString(), > + file.getArchiveJars()); > + } > + > + static private URL normalizeURLQuietly(URL url) { > + try { > + System.out.println("Normalizing " + url + " to " + > ResourceTracker.normalizeUrl(url, false)); > + return ResourceTracker.normalizeUrl(url, false); > + } catch (IOException e) { > + e.printStackTrace(); > + } catch (URISyntaxException e) { > + e.printStackTrace(); > + } > + return url; > + } > -- > + } > + > + URL codebase = normalizeURLQuietly(file.getCodeBase()); > + URL documentbase = > normalizeURLQuietly(file.getSourceLocation()); > + > + /* Else, create a new entry */ > + UrlRegEx codebaseRegex = new UrlRegEx("\\Q" + codebase + > "\\E"); > + UrlRegEx documentbaseRegex = new UrlRegEx("\\Q" + > documentbase + "\\E"); > + > + UnsignedAppletActionEntry entry = new > UnsignedAppletActionEntry( > + behaviour, > > > Happy hacking, > -Adam Ping? From jvanek at redhat.com Tue Mar 12 07:26:04 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 12 Mar 2013 15:26:04 +0100 Subject: [icedtea-web][rfc] Extract native code caching from JNLPClassLoader into a small class In-Reply-To: <5136618B.70505@redhat.com> References: <5136618B.70505@redhat.com> Message-ID: <513F3AFC.2040109@redhat.com> On 03/05/2013 10:20 PM, Adam Domurad wrote: > This is an incremental part of the effort to reduce the responsibilities of JNLPClassLoader. > > 2013-03-05 Adam Domurad > > * netx/net/sourceforge/jnlp/cache/NativeLibraryStorage.java: New, > stores and searches for native library files that are loaded from jars. > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: Move code > that handled native jar caching to NativeLibraryStorage. > > Happy hacking, > -Adam Is there any more reason for this refactoring then much nicer, more readable, and testable jnlpclasslaoder? Anyway I'm fan of this kind of refactoring. And I'm for this to be done. - there must be unittests for this chnage - i would like to see even reproducer for this - it should go to 1.3 to after some time in head. I have not check if there is something more then pure refactoring, but if there isn't and tsts will be added, then this will be approved. J. From jvanek at redhat.com Tue Mar 12 08:10:49 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 12 Mar 2013 16:10:49 +0100 Subject: [rfc][icedtea-web] German localization & English messages' cleanup proposals In-Reply-To: <201303102150.r2ALo7LI014612@mail-web03.excite.co.jp> References: <201303102150.r2ALo7LI014612@mail-web03.excite.co.jp> Message-ID: <513F4579.60403@redhat.com> On 03/10/2013 10:50 PM, Jacob Wisor wrote: > Hi! > > "Jacob Wisor" wrote: >> I am going to provide localizations for the latest messages together with a patch for Polish. > > Oh well, it went quicker then I thought, so here is the complete German localization. This patch supersedes the one from Saturday. There are minor inconsistencies in the latest English messages, but I guess one can live with that. > > Have fun! > > Jacob Thank you very much! Unless some voice will be raised (well, was not since sunday), I will push this patch together with recently proposed tests tomorrow. Thank you once more for your effort! J. From adomurad at redhat.com Tue Mar 12 08:42:25 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 12 Mar 2013 11:42:25 -0400 Subject: [rfc][icedtea-web] replacing of hardcoded jre path by function In-Reply-To: <51276C90.5040903@redhat.com> References: <51276C90.5040903@redhat.com> Message-ID: <513F4CE1.4000506@redhat.com> On 02/22/2013 08:03 AM, Jiri Vanek wrote: > Hi! > > This is replacing of hardoced path part 2. This is replacing the > constants ICEDTEA_WEB_JRE by functions. However those functions are > just returning the (ICEDTEA_WEB_JRE) consatnts now :) But they should > prepare path for another parts... > > The goal is to have logic in those functions, which will provide the > value from deploy.propertie file(s) (or use default (As is as now) if > property will not exists.... > > J > > > ps: this is part of make-jredir-configurable after install effort > diff -r 5501859497c2 plugin/icedteanp/IcedTeaNPPlugin.cc > --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Feb 22 11:43:19 2013 > +0100 > +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Feb 22 13:51:39 2013 > +0100 > @@ -156,8 +156,14 @@ > // Data directory for plugin. > static std::string data_directory; > > -// Fully-qualified appletviewer executable. > -static const char* appletviewer_executable = ICEDTEA_WEB_JRE "/bin/java"; > +// Fully-qualified appletviewer default executable and rt.jar > +static const char* appletviewer_default_executable = ICEDTEA_WEB_JRE > "/bin/java"; > +static const char* appletviewer_default_rtjar = ICEDTEA_WEB_JRE > "/lib/rt.jar"; > +// Fully-qualified appletviewer default executable and rt.jar > +// resolved by methods in runtime. It is expected they will be the > same during > +//whole runtime > +static char appletviewer_executable[256]; > +static char appletviewer_rtjar[256]; Java user afraid of the heap ? :-) These static buffers are not needed. > > // Applet viewer input channel (needs to be static because it is used > in plugin_in_pipe_callback) > static GIOChannel* in_from_appletviewer = NULL; > @@ -284,6 +290,16 @@ > > #endif > > +static char* getPluginExecutbale(char* dest){ s/Executbale/Executable/ > + strcpy(dest, appletviewer_default_executable); > + return dest; > +} > + > +static char* getPluginRtJar(char* dest){ > + strcpy(dest, appletviewer_default_rtjar); > + return dest; > +} I prefer get_plugin_java_executable() & get_plugin_java_runtime_jar(). No big deal though, but I would use underscores for consistency however you name it. Also please use the signature: static std::string whatever_name() { return ICEDTEA_WEB_JRE "/bin/java"; // or lib/rt.jar } You can get rid of the constant this way, too. Note that char* is valid wherever std::string is taken (but not the other way around). Note that for now the signature *could* be const char* -- but I strongly encourage std::string for when this becomes read from the properties. > + > > /* > * Find first member in GHashTable* depending on version of glib > @@ -1517,13 +1533,14 @@ > static NPError > plugin_test_appletviewer () > { > - PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", > appletviewer_executable); > + > + PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", > getPluginExecutbale(appletviewer_executable)); Just a hint, this will need a c_str() here when changed to std::string > NPError error = NPERR_NO_ERROR; > > gchar* command_line[3] = { NULL, NULL, NULL }; > gchar** environment; > > - command_line[0] = g_strdup (appletviewer_executable); > + command_line[0] = g_strdup > (getPluginExecutbale(appletviewer_executable)); Same > command_line[1] = g_strdup("-version"); > command_line[2] = NULL; > > @@ -1570,7 +1587,7 @@ > > // Construct command line parameters > > - command_line.push_back(appletviewer_executable); > + command_line.push_back(getPluginExecutbale(appletviewer_executable)); Same > > //Add JVM args to command_line > for (int i = 0; i < jvm_args->size(); i++) > @@ -1581,7 +1598,7 @@ > command_line.push_back(PLUGIN_BOOTCLASSPATH); > // set the classpath to avoid using the default (cwd). > command_line.push_back("-classpath"); > - command_line.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); > + command_line.push_back(getPluginRtJar(appletviewer_rtjar)); > > // Enable coverage agent if we are running instrumented plugin > #ifdef COVERAGE_AGENT > @@ -1652,10 +1669,10 @@ > gchar *output = NULL; > std::vector* tokenOutput = NULL; > > - commands.push_back(appletviewer_executable); > + commands.push_back(getPluginExecutbale(appletviewer_executable)); > commands.push_back(PLUGIN_BOOTCLASSPATH); > commands.push_back("-classpath"); > - commands.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); > + commands.push_back(getPluginRtJar(appletviewer_rtjar)); > commands.push_back("net.sourceforge.jnlp.controlpanel.CommandLine"); > commands.push_back("get"); > commands.push_back("deployment.plugin.jvm.arguments"); > @@ -2175,11 +2192,11 @@ > } > > // Set appletviewer_executable. > - PLUGIN_DEBUG("Executing java at %s\n", appletviewer_executable); > + PLUGIN_DEBUG("Executing java at %s\n", > getPluginExecutbale(appletviewer_executable)); Same > np_error = plugin_test_appletviewer (); > if (np_error != NPERR_NO_ERROR) > { > - fprintf(stderr, "Unable to find java executable %s\n", > appletviewer_executable); > + fprintf(stderr, "Unable to find java executable %s\n", > getPluginExecutbale(appletviewer_executable)); Same > return np_error; > } > > @@ -2191,7 +2208,7 @@ > > plugin_instance_mutex = g_mutex_new (); > > - PLUGIN_DEBUG ("NP_Initialize: using %s\n", appletviewer_executable); > + PLUGIN_DEBUG ("NP_Initialize: using %s\n", > getPluginExecutbale(appletviewer_executable)); Same > > plugin_req_proc = new PluginRequestProcessor(); > java_req_proc = new JavaMessageSender(); The commands vector will not need the c_str(), because it is a vector of std::string (things are much nicer when everything uses std::string, we should move towards that!) Thanks for looking into it, looks fine otherwise. -Adam From andrew at icedtea.classpath.org Tue Mar 12 11:36:16 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 18:36:16 +0000 Subject: /hg/release/icedtea7-2.1: 5 new changesets Message-ID: changeset 1bcc6dd061fa in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=1bcc6dd061fa author: Andrew John Hughes date: Mon Mar 11 16:24:59 2013 +0000 Don't strip binaries during OpenJDK build. Leave this to the end user. 2013-03-11 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add patch. (ICEDTEA_ENV): Add ALT_STRIP_POLICY=no_strip. * patches/no_stripping.patch: Don't create debuginfo files when no_strip is set. * NEWS: Updated with this fix and previous set. changeset ac2e6d3acc00 in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=ac2e6d3acc00 author: Andrew John Hughes date: Mon Mar 11 16:30:36 2013 +0000 PR1340: Simplify the rhino class rewriter to avoid use of concurrency 2013-03-11 Andrew John Hughes PR1340: Simplify the rewriter, avoiding concurrency. * NEWS: Mention fix. * rewriter/com/redhat/rewriter/ClassRewriter.java: Always use the single threaded executor. changeset 3b31da62583f in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=3b31da62583f author: Andrew John Hughes date: Mon Mar 11 20:19:08 2013 +0000 Revert 7017193 and add the missing free call on a -1 return, until a better fix is ready. http://mail.openjdk.java.net/pipermail/hotspot-dev/2013-February/008695.html 2013-03-11 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * patches/revert-7017193.patch: Revert 7017193 due to performance issues, adding a free call on error, until a better fix is produced. * NEWS: Updated. changeset 04dbdea00c85 in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=04dbdea00c85 author: Andrew John Hughes date: Mon Mar 11 20:19:49 2013 +0000 Prepare for 2.1.7 release. 2013-03-11 Andrew John Hughes * configure.ac: Bump to 2.1.7 proper. * NEWS: Set release date for 2.1.7. changeset 576696c715ca in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=576696c715ca author: Andrew John Hughes date: Tue Mar 12 18:35:56 2013 +0000 Added tag icedtea-2.1.7 for changeset 04dbdea00c85 diffstat: .hgtags | 1 + ChangeLog | 31 ++++ Makefile.am | 7 +- NEWS | 12 +- configure.ac | 2 +- patches/no_stripping.patch | 180 ++++++++++++++++++++++++ patches/revert-7017193.patch | 136 ++++++++++++++++++ rewriter/com/redhat/rewriter/ClassRewriter.java | 6 +- 8 files changed, 368 insertions(+), 7 deletions(-) diffs (450 lines): diff -r cf4897fbb9f5 -r 576696c715ca .hgtags --- a/.hgtags Mon Mar 11 15:11:10 2013 +0000 +++ b/.hgtags Tue Mar 12 18:35:56 2013 +0000 @@ -43,3 +43,4 @@ a25c80a05735543475e3c704a4162c0d1c02a441 icedtea-2.1.4 763c13001988cc50ffd1d195a110c1650b2d7fe1 icedtea-2.1.5 05bc6e6f7d9cbed6d4760813236856c9782c5277 icedtea-2.1.6 +04dbdea00c8531667d0273ed9ee76fa7db645f94 icedtea-2.1.7 diff -r cf4897fbb9f5 -r 576696c715ca ChangeLog --- a/ChangeLog Mon Mar 11 15:11:10 2013 +0000 +++ b/ChangeLog Tue Mar 12 18:35:56 2013 +0000 @@ -1,3 +1,34 @@ +2013-03-11 Andrew John Hughes + + * configure.ac: Bump to 2.1.7 proper. + * NEWS: Set release date for 2.1.7. + +2013-03-11 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * patches/revert-7017193.patch: + Revert 7017193 due to performance issues, + adding a free call on error, until a better + fix is produced. + * NEWS: Updated. + +2013-03-11 Andrew John Hughes + + PR1340: Simplify the rewriter, avoiding concurrency. + * NEWS: Mention fix. + * rewriter/com/redhat/rewriter/ClassRewriter.java: + Always use the single threaded executor. + +2013-03-11 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add patch. + (ICEDTEA_ENV): Add ALT_STRIP_POLICY=no_strip. + * patches/no_stripping.patch: + Don't create debuginfo files when no_strip is set. + * NEWS: Updated with this fix and previous set. + 2013-03-11 Andrew John Hughes * Makefile.am: diff -r cf4897fbb9f5 -r 576696c715ca Makefile.am --- a/Makefile.am Mon Mar 11 15:11:10 2013 +0000 +++ b/Makefile.am Tue Mar 12 18:35:56 2013 +0000 @@ -240,7 +240,9 @@ patches/8004344-toolkiterrorhandler.patch \ patches/8006179-lookup_using_findvirtual.patch \ patches/8006882-sun.proxy.patch \ - patches/pr1303-ifdef_fix.patch + patches/pr1303-ifdef_fix.patch \ + patches/no_stripping.patch \ + patches/revert-7017193.patch # Conditional patches @@ -436,7 +438,8 @@ BUILD_CPP="$(CXX)" \ USE_SYSTEM_CUPS="true" \ CUPS_LIBS="${CUPS_LIBS}" \ - CUPS_CFLAGS="${CUPS_CFLAGS}" + CUPS_CFLAGS="${CUPS_CFLAGS}" \ + ALT_STRIP_POLICY=no_strip if ENABLE_CACAO ICEDTEA_ENV += \ diff -r cf4897fbb9f5 -r 576696c715ca NEWS --- a/NEWS Mon Mar 11 15:11:10 2013 +0000 +++ b/NEWS Tue Mar 12 18:35:56 2013 +0000 @@ -10,11 +10,21 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 2.1.7 (2013-04-XX): +New in release 2.1.7 (2013-04-11): * Security fixes - S8007014, CVE-2013-0809: Improve image handling - S8007675, CVE-2013-1493: Improve color conversion +* Backports + - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS + - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c + - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() + - S8006882: Proxy generated classes in sun.proxy package breaks JMockit +* Bug fixes + - PR1303: Correct #ifdef to #if + - Stop libraries being stripped in the OpenJDK build. + - PR1340: Simplify the rhino class rewriter to avoid use of concurrency + - Revert 7017193 and add the missing free call, until a better fix is ready. New in release 2.1.6 (2013-02-20): diff -r cf4897fbb9f5 -r 576696c715ca configure.ac --- a/configure.ac Mon Mar 11 15:11:10 2013 +0000 +++ b/configure.ac Tue Mar 12 18:35:56 2013 +0000 @@ -1,4 +1,4 @@ -AC_INIT([icedtea], [2.1.7pre], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea], [2.1.7], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) diff -r cf4897fbb9f5 -r 576696c715ca patches/no_stripping.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/no_stripping.patch Tue Mar 12 18:35:56 2013 +0000 @@ -0,0 +1,180 @@ +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/defs.make openjdk/hotspot/make/linux/makefiles/defs.make +--- openjdk.orig/hotspot/make/linux/makefiles/defs.make 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/defs.make 2013-03-11 15:29:11.691786343 +0000 +@@ -186,7 +186,9 @@ + EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.so + ifneq ($(ZERO_BUILD), true) + ifneq ($(OBJCOPY),) +- EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo ++ ifneq ($(STRIP_POLICY),no_strip) ++ EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo ++ endif + endif + endif + +@@ -198,7 +200,9 @@ + EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.so + ifneq ($(ZERO_BUILD), true) + ifneq ($(OBJCOPY),) +- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo ++ ifneq ($(STRIP_POLICY),no_strip) ++ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo ++ endif + endif + endif + endif +@@ -208,7 +212,9 @@ + EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt + EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so + ifneq ($(OBJCOPY),) +- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo ++ ifneq ($(STRIP_POLICY),no_strip) ++ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo ++ endif + endif + endif + endif +@@ -221,8 +227,10 @@ + $(EXPORT_LIB_DIR)/sa-jdi.jar + ifneq ($(ZERO_BUILD), true) + ifneq ($(OBJCOPY),) +- ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo +- ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo ++ ifneq ($(STRIP_POLICY),no_strip) ++ ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo ++ ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo ++ endif + endif + endif + ADD_SA_BINARIES/ppc = +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/jsig.make openjdk/hotspot/make/linux/makefiles/jsig.make +--- openjdk.orig/hotspot/make/linux/makefiles/jsig.make 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/jsig.make 2013-03-11 15:27:13.065876291 +0000 +@@ -59,8 +59,10 @@ + $(LFLAGS_JSIG) $(JSIG_DEBUG_CFLAGS) -o $@ $< -ldl + $(QUIETLY) [ -f $(LIBJSIG_G) ] || { ln -s $@ $(LIBJSIG_G); } + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/saproc.make openjdk/hotspot/make/linux/makefiles/saproc.make +--- openjdk.orig/hotspot/make/linux/makefiles/saproc.make 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/saproc.make 2013-03-11 15:27:13.065876291 +0000 +@@ -87,8 +87,10 @@ + -lthread_db + $(QUIETLY) [ -f $(LIBSAPROC_G) ] || { ln -s $@ $(LIBSAPROC_G); } + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/vm.make openjdk/hotspot/make/linux/makefiles/vm.make +--- openjdk.orig/hotspot/make/linux/makefiles/vm.make 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/make/linux/makefiles/vm.make 2013-03-11 15:27:13.065876291 +0000 +@@ -328,8 +328,10 @@ + } + ifeq ($(CROSS_COMPILE_ARCH),) + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +diff -Nru openjdk.orig/hotspot/make/solaris/makefiles/dtrace.make openjdk/hotspot/make/solaris/makefiles/dtrace.make +--- openjdk.orig/hotspot/make/solaris/makefiles/dtrace.make 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/make/solaris/makefiles/dtrace.make 2013-03-11 15:27:13.065876291 +0000 +@@ -107,8 +107,10 @@ + $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc + [ -f $(XLIBJVM_DB_G) ] || { ln -s $(LIBJVM_DB) $(XLIBJVM_DB_G); } + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DB_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(XLIBJVM_DB_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +@@ -127,8 +129,10 @@ + $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor + [ -f $(XLIBJVM_DTRACE_G) ] || { ln -s $(LIBJVM_DTRACE) $(XLIBJVM_DTRACE_G); } + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DTRACE_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(XLIBJVM_DTRACE_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +@@ -186,8 +190,10 @@ + $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc + [ -f $(LIBJVM_DB_G) ] || { ln -s $@ $(LIBJVM_DB_G); } + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DB_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DB_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +@@ -205,8 +211,10 @@ + $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor + [ -f $(LIBJVM_DTRACE_G) ] || { ln -s $@ $(LIBJVM_DTRACE_G); } + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DTRACE_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +diff -Nru openjdk.orig/hotspot/make/solaris/makefiles/jsig.make openjdk/hotspot/make/solaris/makefiles/jsig.make +--- openjdk.orig/hotspot/make/solaris/makefiles/jsig.make 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/make/solaris/makefiles/jsig.make 2013-03-11 15:27:13.065876291 +0000 +@@ -55,8 +55,10 @@ + $(LFLAGS_JSIG) -o $@ $< -ldl + [ -f $(LIBJSIG_G) ] || { ln -s $@ $(LIBJSIG_G); } + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +diff -Nru openjdk.orig/hotspot/make/solaris/makefiles/saproc.make openjdk/hotspot/make/solaris/makefiles/saproc.make +--- openjdk.orig/hotspot/make/solaris/makefiles/saproc.make 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/make/solaris/makefiles/saproc.make 2013-03-11 15:27:13.065876291 +0000 +@@ -106,8 +106,10 @@ + -ldl -ldemangle -lthread -lc + [ -f $(LIBSAPROC_G) ] || { ln -s $@ $(LIBSAPROC_G); } + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else +diff -Nru openjdk.orig/hotspot/make/solaris/makefiles/vm.make openjdk/hotspot/make/solaris/makefiles/vm.make +--- openjdk.orig/hotspot/make/solaris/makefiles/vm.make 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/make/solaris/makefiles/vm.make 2013-03-11 15:27:13.065876291 +0000 +@@ -284,8 +284,10 @@ + $(QUIETLY) [ -f $(LIBJVM_G) ] || ln -s $@ $(LIBJVM_G) + $(QUIETLY) [ -f $(LIBJVM_G).1 ] || ln -s $@.1 $(LIBJVM_G).1 + ifneq ($(OBJCOPY),) ++ ifneq ($(STRIP_POLICY),no_strip) + $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO) + $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@ ++ endif + ifeq ($(STRIP_POLICY),all_strip) + $(QUIETLY) $(STRIP) $@ + else diff -r cf4897fbb9f5 -r 576696c715ca patches/revert-7017193.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/revert-7017193.patch Tue Mar 12 18:35:56 2013 +0000 @@ -0,0 +1,136 @@ +diff -Nru openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp openjdk/hotspot/src/os/linux/vm/os_linux.cpp +--- openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2013-03-11 20:15:01.080257099 +0000 +@@ -2788,39 +2788,47 @@ + // writing thread stacks don't use growable mappings (i.e. those + // creeated with MAP_GROWSDOWN), and aren't marked "[stack]", so this + // only applies to the main thread. +- +-static +-bool get_stack_bounds(uintptr_t *bottom, uintptr_t *top) { +- +- char buf[128]; +- int fd, sz; +- +- if ((fd = ::open("/proc/self/maps", O_RDONLY)) < 0) { ++static bool ++get_stack_bounds(uintptr_t *bottom, uintptr_t *top) ++{ ++ FILE *f = fopen("/proc/self/maps", "r"); ++ if (f == NULL) + return false; +- } + +- const char kw[] = "[stack]"; +- const int kwlen = sizeof(kw)-1; +- +- // Address part of /proc/self/maps couldn't be more than 128 bytes +- while ((sz = os::get_line_chars(fd, buf, sizeof(buf))) > 0) { +- if (sz > kwlen && ::memcmp(buf+sz-kwlen, kw, kwlen) == 0) { +- // Extract addresses +- if (sscanf(buf, "%" SCNxPTR "-%" SCNxPTR, bottom, top) == 2) { +- uintptr_t sp = (uintptr_t) __builtin_frame_address(0); +- if (sp >= *bottom && sp <= *top) { +- ::close(fd); +- return true; +- } ++ while (!feof(f)) { ++ size_t dummy; ++ char *str = NULL; ++ ssize_t len = getline(&str, &dummy, f); ++ if (len == -1) { ++ fclose(f); ++ if (str != NULL) ++ free(str); ++ return false; ++ } ++ ++ if (len > 0 && str[len-1] == '\n') { ++ str[len-1] = 0; ++ len--; ++ } ++ ++ static const char *stack_str = "[stack]"; ++ if (len > (ssize_t)strlen(stack_str) ++ && (strcmp(str + len - strlen(stack_str), stack_str) == 0)) { ++ if (sscanf(str, "%" SCNxPTR "-%" SCNxPTR, bottom, top) == 2) { ++ uintptr_t sp = (uintptr_t)__builtin_frame_address(0); ++ if (sp >= *bottom && sp <= *top) { ++ free(str); ++ fclose(f); ++ return true; + } +- } ++ } ++ } ++ free(str); + } +- +- ::close(fd); ++ fclose(f); + return false; + } + +- + // If the (growable) stack mapping already extends beyond the point + // where we're going to put our guard pages, truncate the mapping at + // that point by munmap()ping it. This ensures that when we later +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-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/runtime/os.cpp 2013-03-11 20:15:01.080257099 +0000 +@@ -1306,41 +1306,3 @@ + } + return result; + } +- +-// Read file line by line, if line is longer than bsize, +-// skip rest of line. +-int os::get_line_chars(int fd, char* buf, const size_t bsize){ +- size_t sz, i = 0; +- +- // read until EOF, EOL or buf is full +- while ((sz = (int) read(fd, &buf[i], 1)) == 1 && i < (bsize-2) && buf[i] != '\n') { +- ++i; +- } +- +- if (buf[i] == '\n') { +- // EOL reached so ignore EOL character and return +- +- buf[i] = 0; +- return (int) i; +- } +- +- buf[i+1] = 0; +- +- if (sz != 1) { +- // EOF reached. if we read chars before EOF return them and +- // return EOF on next call otherwise return EOF +- +- return (i == 0) ? -1 : (int) i; +- } +- +- // line is longer than size of buf, skip to EOL +- char ch; +- while (read(fd, &ch, 1) == 1 && ch != '\n') { +- // Do nothing +- } +- +- // return initial part of line that fits in buf. +- // If we reached EOF, it will be returned on next call. +- +- return (int) i; +-} +diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/os.hpp openjdk/hotspot/src/share/vm/runtime/os.hpp +--- openjdk.orig/hotspot/src/share/vm/runtime/os.hpp 2013-02-15 00:04:42.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/runtime/os.hpp 2013-03-11 20:15:16.008497745 +0000 +@@ -661,10 +661,6 @@ + // Hook for os specific jvm options that we don't want to abort on seeing + static bool obsolete_option(const JavaVMOption *option); + +- // Read file line by line. If line is longer than bsize, +- // rest of line is skipped. Returns number of bytes read or -1 on EOF +- static int get_line_chars(int fd, char *buf, const size_t bsize); +- + // Platform dependent stuff + #ifdef TARGET_OS_FAMILY_linux + # include "os_linux.hpp" diff -r cf4897fbb9f5 -r 576696c715ca rewriter/com/redhat/rewriter/ClassRewriter.java --- a/rewriter/com/redhat/rewriter/ClassRewriter.java Mon Mar 11 15:11:10 2013 +0000 +++ b/rewriter/com/redhat/rewriter/ClassRewriter.java Tue Mar 12 18:35:56 2013 +0000 @@ -60,8 +60,8 @@ /** * The executor for submitting rewriting jobs. */ - private static final ExecutorService executor = DEBUG ? - Executors.newSingleThreadExecutor() : Executors.newCachedThreadPool(); + private static final ExecutorService executor = + Executors.newSingleThreadExecutor(); /** * The source directory, set once by main. @@ -290,4 +290,4 @@ return null; } -} \ No newline at end of file +} From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 11:36:26 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 18:36:26 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.1?cmd=changeset;node=ac2e6d3acc00 author: Andrew John Hughes date: Mon Mar 11 16:30:36 2013 +0000 PR1340: Simplify the rhino class rewriter to avoid use of concurrency 2013-03-11 Andrew John Hughes PR1340: Simplify the rewriter, avoiding concurrency. * NEWS: Mention fix. * rewriter/com/redhat/rewriter/ClassRewriter.java: Always use the single threaded executor. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/5236fdd6/attachment.html From andrew at icedtea.classpath.org Tue Mar 12 11:39:58 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 18:39:58 +0000 Subject: /hg/release/icedtea6-1.11: Start 1.11.10 release cycle. Message-ID: changeset d11c7c20b7b9 in /hg/release/icedtea6-1.11 details: http://icedtea.classpath.org/hg/release/icedtea6-1.11?cmd=changeset;node=d11c7c20b7b9 author: Andrew John Hughes date: Tue Mar 12 18:39:47 2013 +0000 Start 1.11.10 release cycle. 2013-03-12 Andrew John Hughes * configure.ac: Bump to 1.11.10pre. * NEWS: Add section for 1.11.10. diffstat: ChangeLog | 5 +++++ NEWS | 3 +++ configure.ac | 2 +- 3 files changed, 9 insertions(+), 1 deletions(-) diffs (35 lines): diff -r d5f5daa65a99 -r d11c7c20b7b9 ChangeLog --- a/ChangeLog Mon Mar 04 16:20:35 2013 -0500 +++ b/ChangeLog Tue Mar 12 18:39:47 2013 +0000 @@ -1,3 +1,8 @@ +2013-03-12 Andrew John Hughes + + * configure.ac: Bump to 1.11.10pre. + * NEWS: Add section for 1.11.10. + 2013-03-04 Omair Majid * NEWS: Add release date of 1.11.9. diff -r d5f5daa65a99 -r d11c7c20b7b9 NEWS --- a/NEWS Mon Mar 04 16:20:35 2013 -0500 +++ b/NEWS Tue Mar 12 18:39:47 2013 +0000 @@ -10,7 +10,10 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY +New in release 1.11.10 (2013-04-XX): + New in release 1.11.9 (2013-03-04): + * Security fixes - S8007014, CVE-2013-0809: Improve image handling - S8007675, CVE-2013-1493: Improve color conversion diff -r d5f5daa65a99 -r d11c7c20b7b9 configure.ac --- a/configure.ac Mon Mar 04 16:20:35 2013 -0500 +++ b/configure.ac Tue Mar 12 18:39:47 2013 +0000 @@ -1,4 +1,4 @@ -AC_INIT([icedtea6],[1.11.9],[distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6],[1.11.10pre],[distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) From andrew at icedtea.classpath.org Tue Mar 12 11:45:41 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 18:45:41 +0000 Subject: /hg/release/icedtea6-1.12: Start 1.12.5 release cycle. Message-ID: changeset 2e114710f951 in /hg/release/icedtea6-1.12 details: http://icedtea.classpath.org/hg/release/icedtea6-1.12?cmd=changeset;node=2e114710f951 author: Andrew John Hughes date: Tue Mar 12 18:45:33 2013 +0000 Start 1.12.5 release cycle. 2013-03-12 Andrew John Hughes * configure.ac: Bump to 1.12.5pre. * NEWS: Add section for 1.12.5. diffstat: ChangeLog | 5 +++++ NEWS | 2 ++ configure.ac | 2 +- 3 files changed, 8 insertions(+), 1 deletions(-) diffs (33 lines): diff -r d868cd71c566 -r 2e114710f951 ChangeLog --- a/ChangeLog Mon Mar 04 17:58:21 2013 -0500 +++ b/ChangeLog Tue Mar 12 18:45:33 2013 +0000 @@ -1,3 +1,8 @@ +2013-03-12 Andrew John Hughes + + * configure.ac: Bump to 1.12.5pre. + * NEWS: Add section for 1.12.5. + 2013-03-04 Omair Majid * confiugre.ac: Prepare for 1.12.4. diff -r d868cd71c566 -r 2e114710f951 NEWS --- a/NEWS Mon Mar 04 17:58:21 2013 -0500 +++ b/NEWS Tue Mar 12 18:45:33 2013 +0000 @@ -10,6 +10,8 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY +New in release 1.12.5 (2013-04-XX): + New in release 1.12.4 (2013-03-04): * Security fixes diff -r d868cd71c566 -r 2e114710f951 configure.ac --- a/configure.ac Mon Mar 04 17:58:21 2013 -0500 +++ b/configure.ac Tue Mar 12 18:45:33 2013 +0000 @@ -1,4 +1,4 @@ -AC_INIT([icedtea6],[1.12.4],[distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6],[1.12.5pre],[distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) From andrew at icedtea.classpath.org Tue Mar 12 12:24:09 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 19:24:09 +0000 Subject: /hg/release/icedtea7-2.3: 6 new changesets Message-ID: changeset 5eb386a89c50 in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=5eb386a89c50 author: Andrew John Hughes date: Mon Mar 11 16:31:39 2013 +0000 PR1340: Simplify the rhino class rewriter to avoid use of concurrency 2013-03-11 Andrew John Hughes PR1340: Simplify the rewriter, avoiding concurrency. * NEWS: Mention fix. * rewriter/com/redhat/rewriter/ClassRewriter.java: Always use the single threaded executor. changeset 6be63c6e510b in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=6be63c6e510b author: Andrew John Hughes date: Mon Mar 11 16:45:40 2013 +0000 Prepare for 2.3.8 release. 2013-03-11 Andrew John Hughes * configure.ac: Bump to 2.3.8 proper. * NEWS: Set release date for 2.3.8. changeset 4b66cc7559e3 in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=4b66cc7559e3 author: Andrew John Hughes date: Mon Mar 11 16:51:11 2013 +0000 Sync Zero HotSpot option with changes to IcedTea 2.1. 2013-03-11 Andrew John Hughes * hotspot.map: Sync zero option with updates to IcedTea 2.1. changeset eeda7cda31dc in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=eeda7cda31dc author: Andrew John Hughes date: Mon Mar 11 18:44:23 2013 +0000 Revert 7017193 and add the missing free call on a -1 return, until a better fix is ready. http://mail.openjdk.java.net/pipermail/hotspot-dev/2013-February/008695.html 2013-03-11 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * patches/revert-7017193.patch: Revert 7017193 due to performance issues, adding a free call on error, until a better fix is produced. * NEWS: Updated. changeset 72168bcc4eb1 in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=72168bcc4eb1 author: Andrew John Hughes date: Tue Mar 12 19:15:01 2013 +0000 Added tag icedtea-2.3.8 for changeset eeda7cda31dc changeset 18742f5233f6 in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=18742f5233f6 author: Andrew John Hughes date: Tue Mar 12 19:23:19 2013 +0000 Start 2.3.9 release cycle. 2013-03-12 Andrew John Hughes * configure.ac: Bump to 2.3.9pre. * NEWS: Add section for 2.3.9. diffstat: .hgtags | 1 + ChangeLog | 32 +++++ Makefile.am | 3 +- NEWS | 6 +- configure.ac | 2 +- hotspot.map | 2 +- patches/revert-7017193.patch | 138 ++++++++++++++++++++++++ rewriter/com/redhat/rewriter/ClassRewriter.java | 6 +- 8 files changed, 183 insertions(+), 7 deletions(-) diffs (263 lines): diff -r c1c3a636860f -r 18742f5233f6 .hgtags --- a/.hgtags Sun Mar 10 18:35:28 2013 +0000 +++ b/.hgtags Tue Mar 12 19:23:19 2013 +0000 @@ -44,3 +44,4 @@ 6c1ea875ae648f7b4fac17070a7b108645211808 icedtea-2.3.4 107138d757a75a0b01ff762257e1f754f832e245 icedtea-2.3.6 8e87a16a613cf9f2b6a9496c514fb098eb872f7f icedtea-2.3.7 +eeda7cda31dc55c0faa4d2773cfc4c2f27bb6d7a icedtea-2.3.8 diff -r c1c3a636860f -r 18742f5233f6 ChangeLog --- a/ChangeLog Sun Mar 10 18:35:28 2013 +0000 +++ b/ChangeLog Tue Mar 12 19:23:19 2013 +0000 @@ -1,3 +1,35 @@ +2013-03-12 Andrew John Hughes + + * configure.ac: Bump to 2.3.9pre. + * NEWS: Add section for 2.3.9. + +2013-03-11 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * patches/revert-7017193.patch: + Revert 7017193 due to performance issues, + adding a free call on error, until a better + fix is produced. + * NEWS: Updated. + +2013-03-11 Andrew John Hughes + + * hotspot.map: Sync zero option with updates to + IcedTea 2.1. + +2013-03-11 Andrew John Hughes + + * configure.ac: Bump to 2.3.8 proper. + * NEWS: Set release date for 2.3.8. + +2013-03-11 Andrew John Hughes + + PR1340: Simplify the rewriter, avoiding concurrency. + * NEWS: Mention fix. + * rewriter/com/redhat/rewriter/ClassRewriter.java: + Always use the single threaded executor. + 2013-03-08 Andrew John Hughes * Makefile.am: diff -r c1c3a636860f -r 18742f5233f6 Makefile.am --- a/Makefile.am Sun Mar 10 18:35:28 2013 +0000 +++ b/Makefile.am Tue Mar 12 19:23:19 2013 +0000 @@ -243,7 +243,8 @@ ICEDTEA_PATCHES = \ patches/8006179-lookup_using_findvirtual.patch \ patches/8006882-sun.proxy.patch \ - patches/pr1303-ifdef_fix.patch + patches/pr1303-ifdef_fix.patch \ + patches/revert-7017193.patch # Conditional patches diff -r c1c3a636860f -r 18742f5233f6 NEWS --- a/NEWS Sun Mar 10 18:35:28 2013 +0000 +++ b/NEWS Tue Mar 12 19:23:19 2013 +0000 @@ -10,7 +10,9 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 2.3.8 (2013-04-XX): +New in release 2.3.9 (2013-04-XX): + +New in release 2.3.8 (2013-03-11): * Security fixes - S8007014, CVE-2013-0809: Improve image handling @@ -22,6 +24,8 @@ - S8006882: Proxy generated classes in sun.proxy package breaks JMockit * Bug fixes - PR1303: Correct #ifdef to #if + - PR1340: Simplify the rhino class rewriter to avoid use of concurrency + - Revert 7017193 and add the missing free call, until a better fix is ready. New in release 2.3.7 (2013-02-20): diff -r c1c3a636860f -r 18742f5233f6 configure.ac --- a/configure.ac Sun Mar 10 18:35:28 2013 +0000 +++ b/configure.ac Tue Mar 12 19:23:19 2013 +0000 @@ -1,4 +1,4 @@ -AC_INIT([icedtea], [2.3.8pre], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea], [2.3.9pre], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) diff -r c1c3a636860f -r 18742f5233f6 hotspot.map --- a/hotspot.map Sun Mar 10 18:35:28 2013 +0000 +++ b/hotspot.map Tue Mar 12 19:23:19 2013 +0000 @@ -1,3 +1,3 @@ # version url changeset sha256sum default http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot a152dced63a1 eac2313e3012653afa7549257765d56e4348c775363eee0733968d32a7c1eeae -zero http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot 32569b4d36f4 455be170dcea6edbc9c74f9d67308bb6a1f39dadda0267e7d73ea6af3043f60c +zero http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot d8b22e079abe 28883ebefcfff1ba8b356a7fabf8e449c25fe7fffe1d563f1f58f887100063f0 diff -r c1c3a636860f -r 18742f5233f6 patches/revert-7017193.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/revert-7017193.patch Tue Mar 12 19:23:19 2013 +0000 @@ -0,0 +1,138 @@ +diff --git a/src/os/linux/vm/os_linux.cpp b/src/os/linux/vm/os_linux.cpp +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp +@@ -2763,39 +2763,47 @@ + // writing thread stacks don't use growable mappings (i.e. those + // creeated with MAP_GROWSDOWN), and aren't marked "[stack]", so this + // only applies to the main thread. +- +-static +-bool get_stack_bounds(uintptr_t *bottom, uintptr_t *top) { +- +- char buf[128]; +- int fd, sz; +- +- if ((fd = ::open("/proc/self/maps", O_RDONLY)) < 0) { ++static bool ++get_stack_bounds(uintptr_t *bottom, uintptr_t *top) ++{ ++ FILE *f = fopen("/proc/self/maps", "r"); ++ if (f == NULL) + return false; +- } +- +- const char kw[] = "[stack]"; +- const int kwlen = sizeof(kw)-1; +- +- // Address part of /proc/self/maps couldn't be more than 128 bytes +- while ((sz = os::get_line_chars(fd, buf, sizeof(buf))) > 0) { +- if (sz > kwlen && ::memcmp(buf+sz-kwlen, kw, kwlen) == 0) { +- // Extract addresses +- if (sscanf(buf, "%" SCNxPTR "-%" SCNxPTR, bottom, top) == 2) { +- uintptr_t sp = (uintptr_t) __builtin_frame_address(0); +- if (sp >= *bottom && sp <= *top) { +- ::close(fd); +- return true; +- } ++ ++ while (!feof(f)) { ++ size_t dummy; ++ char *str = NULL; ++ ssize_t len = getline(&str, &dummy, f); ++ if (len == -1) { ++ fclose(f); ++ if (str != NULL) ++ free(str); ++ return false; ++ } ++ ++ if (len > 0 && str[len-1] == '\n') { ++ str[len-1] = 0; ++ len--; ++ } ++ ++ static const char *stack_str = "[stack]"; ++ if (len > (ssize_t)strlen(stack_str) ++ && (strcmp(str + len - strlen(stack_str), stack_str) == 0)) { ++ if (sscanf(str, "%" SCNxPTR "-%" SCNxPTR, bottom, top) == 2) { ++ uintptr_t sp = (uintptr_t)__builtin_frame_address(0); ++ if (sp >= *bottom && sp <= *top) { ++ free(str); ++ fclose(f); ++ return true; + } +- } +- } +- +- ::close(fd); ++ } ++ } ++ free(str); ++ } ++ fclose(f); + return false; + } + +- + // If the (growable) stack mapping already extends beyond the point + // where we're going to put our guard pages, truncate the mapping at + // that point by munmap()ping it. This ensures that when we later +diff --git a/src/share/vm/runtime/os.cpp b/src/share/vm/runtime/os.cpp +--- openjdk/hotspot/src/share/vm/runtime/os.cpp ++++ openjdk/hotspot/src/share/vm/runtime/os.cpp +@@ -1331,41 +1331,3 @@ + } + return result; + } +- +-// Read file line by line, if line is longer than bsize, +-// skip rest of line. +-int os::get_line_chars(int fd, char* buf, const size_t bsize){ +- size_t sz, i = 0; +- +- // read until EOF, EOL or buf is full +- while ((sz = (int) read(fd, &buf[i], 1)) == 1 && i < (bsize-2) && buf[i] != '\n') { +- ++i; +- } +- +- if (buf[i] == '\n') { +- // EOL reached so ignore EOL character and return +- +- buf[i] = 0; +- return (int) i; +- } +- +- buf[i+1] = 0; +- +- if (sz != 1) { +- // EOF reached. if we read chars before EOF return them and +- // return EOF on next call otherwise return EOF +- +- return (i == 0) ? -1 : (int) i; +- } +- +- // line is longer than size of buf, skip to EOL +- char ch; +- while (read(fd, &ch, 1) == 1 && ch != '\n') { +- // Do nothing +- } +- +- // return initial part of line that fits in buf. +- // If we reached EOF, it will be returned on next call. +- +- return (int) i; +-} +diff --git a/src/share/vm/runtime/os.hpp b/src/share/vm/runtime/os.hpp +--- openjdk/hotspot/src/share/vm/runtime/os.hpp ++++ openjdk/hotspot/src/share/vm/runtime/os.hpp +@@ -672,10 +672,6 @@ + // Hook for os specific jvm options that we don't want to abort on seeing + static bool obsolete_option(const JavaVMOption *option); + +- // Read file line by line. If line is longer than bsize, +- // rest of line is skipped. Returns number of bytes read or -1 on EOF +- static int get_line_chars(int fd, char *buf, const size_t bsize); +- + // Extensions + #include "runtime/os_ext.hpp" + diff -r c1c3a636860f -r 18742f5233f6 rewriter/com/redhat/rewriter/ClassRewriter.java --- a/rewriter/com/redhat/rewriter/ClassRewriter.java Sun Mar 10 18:35:28 2013 +0000 +++ b/rewriter/com/redhat/rewriter/ClassRewriter.java Tue Mar 12 19:23:19 2013 +0000 @@ -60,8 +60,8 @@ /** * The executor for submitting rewriting jobs. */ - private static final ExecutorService executor = DEBUG ? - Executors.newSingleThreadExecutor() : Executors.newCachedThreadPool(); + private static final ExecutorService executor = + Executors.newSingleThreadExecutor(); /** * The source directory, set once by main. @@ -290,4 +290,4 @@ return null; } -} \ No newline at end of file +} From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 12:24:15 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 19:24:15 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 --- Comment #2 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.3?cmd=changeset;node=5eb386a89c50 author: Andrew John Hughes date: Mon Mar 11 16:31:39 2013 +0000 PR1340: Simplify the rhino class rewriter to avoid use of concurrency 2013-03-11 Andrew John Hughes PR1340: Simplify the rewriter, avoiding concurrency. * NEWS: Mention fix. * rewriter/com/redhat/rewriter/ClassRewriter.java: Always use the single threaded executor. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/df496fd4/attachment.html From andrew at icedtea.classpath.org Tue Mar 12 12:33:38 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 19:33:38 +0000 Subject: /hg/release/icedtea7-2.2: 5 new changesets Message-ID: changeset b7e507e31613 in /hg/release/icedtea7-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-2.2?cmd=changeset;node=b7e507e31613 author: Andrew John Hughes date: Mon Mar 11 16:31:39 2013 +0000 PR1340: Simplify the rhino class rewriter to avoid use of concurrency 2013-03-11 Andrew John Hughes PR1340: Simplify the rewriter, avoiding concurrency. * NEWS: Mention fix. * rewriter/com/redhat/rewriter/ClassRewriter.java: Always use the single threaded executor. changeset f6cbaa56daa3 in /hg/release/icedtea7-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-2.2?cmd=changeset;node=f6cbaa56daa3 author: Andrew John Hughes date: Mon Mar 11 18:44:23 2013 +0000 Revert 7017193 and add the missing free call on a -1 return, until a better fix is ready. http://mail.openjdk.java.net/pipermail/hotspot-dev/2013-February/008695.html 2013-03-11 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * patches/revert-7017193.patch: Revert 7017193 due to performance issues, adding a free call on error, until a better fix is produced. * NEWS: Updated. changeset f431ba3ea9d4 in /hg/release/icedtea7-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-2.2?cmd=changeset;node=f431ba3ea9d4 author: Andrew John Hughes date: Mon Mar 11 18:51:56 2013 +0000 Prepare for 2.2.7 release. 2013-03-11 Andrew John Hughes * configure.ac: Bump to 2.2.7 proper. * NEWS: Set release date for 2.2.7. changeset e022668f7165 in /hg/release/icedtea7-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-2.2?cmd=changeset;node=e022668f7165 author: Andrew John Hughes date: Tue Mar 12 19:32:51 2013 +0000 Added tag icedtea-2.2.7 for changeset f431ba3ea9d4 changeset 4549f9fbf989 in /hg/release/icedtea7-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-2.2?cmd=changeset;node=4549f9fbf989 author: Andrew John Hughes date: Tue Mar 12 19:33:16 2013 +0000 Start 2.2.8 release cycle. 2013-03-12 Andrew John Hughes * configure.ac: Bump to 2.2.8pre. * NEWS: Add section for 2.2.8. diffstat: .hgtags | 1 + ChangeLog | 27 ++++ Makefile.am | 3 +- NEWS | 6 +- configure.ac | 2 +- patches/revert-7017193.patch | 138 ++++++++++++++++++++++++ rewriter/com/redhat/rewriter/ClassRewriter.java | 6 +- 7 files changed, 177 insertions(+), 6 deletions(-) diffs (250 lines): diff -r 03aaabc8b71c -r 4549f9fbf989 .hgtags --- a/.hgtags Mon Mar 11 11:39:51 2013 +0000 +++ b/.hgtags Tue Mar 12 19:33:16 2013 +0000 @@ -40,3 +40,4 @@ a4e92bc2183a7a0e4a1a5f23d8d1f013ed267fe7 icedtea-2.2.4 bb62d64bd4ea1d79d0a3772dbbac6c219289c558 icedtea-2.2.5 af9f6b25365c6b6f906ca5386649912945bc596f icedtea-2.2.6 +f431ba3ea9d46d6c7758c8d1e97c818b43e46b8d icedtea-2.2.7 diff -r 03aaabc8b71c -r 4549f9fbf989 ChangeLog --- a/ChangeLog Mon Mar 11 11:39:51 2013 +0000 +++ b/ChangeLog Tue Mar 12 19:33:16 2013 +0000 @@ -1,3 +1,30 @@ +2013-03-12 Andrew John Hughes + + * configure.ac: Bump to 2.2.8pre. + * NEWS: Add section for 2.2.8. + +2013-03-11 Andrew John Hughes + + * configure.ac: Bump to 2.2.7 proper. + * NEWS: Set release date for 2.2.7. + +2013-03-11 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * patches/revert-7017193.patch: + Revert 7017193 due to performance issues, + adding a free call on error, until a better + fix is produced. + * NEWS: Updated. + +2013-03-11 Andrew John Hughes + + PR1340: Simplify the rewriter, avoiding concurrency. + * NEWS: Mention fix. + * rewriter/com/redhat/rewriter/ClassRewriter.java: + Always use the single threaded executor. + 2013-03-11 Andrew John Hughes * Makefile.am: diff -r 03aaabc8b71c -r 4549f9fbf989 Makefile.am --- a/Makefile.am Mon Mar 11 11:39:51 2013 +0000 +++ b/Makefile.am Tue Mar 12 19:33:16 2013 +0000 @@ -240,7 +240,8 @@ patches/8004344-toolkiterrorhandler.patch \ patches/8006179-lookup_using_findvirtual.patch \ patches/8006882-sun.proxy.patch \ - patches/pr1303-ifdef_fix.patch + patches/pr1303-ifdef_fix.patch \ + patches/revert-7017193.patch # Conditional patches diff -r 03aaabc8b71c -r 4549f9fbf989 NEWS --- a/NEWS Mon Mar 11 11:39:51 2013 +0000 +++ b/NEWS Tue Mar 12 19:33:16 2013 +0000 @@ -10,7 +10,9 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 2.2.7 (2013-04-XX): +New in release 2.2.8 (2013-04-XX): + +New in release 2.2.7 (2013-03-11): * Security fixes - S8007014, CVE-2013-0809: Improve image handling @@ -22,6 +24,8 @@ - S8006882: Proxy generated classes in sun.proxy package breaks JMockit * Bug fixes - PR1303: Correct #ifdef to #if + - PR1340: Simplify the rhino class rewriter to avoid use of concurrency + - Revert 7017193 and add the missing free call, until a better fix is ready. New in release 2.2.6 (2013-02-20): diff -r 03aaabc8b71c -r 4549f9fbf989 configure.ac --- a/configure.ac Mon Mar 11 11:39:51 2013 +0000 +++ b/configure.ac Tue Mar 12 19:33:16 2013 +0000 @@ -1,4 +1,4 @@ -AC_INIT([icedtea], [2.2.7pre], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea], [2.2.8pre], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) diff -r 03aaabc8b71c -r 4549f9fbf989 patches/revert-7017193.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/revert-7017193.patch Tue Mar 12 19:33:16 2013 +0000 @@ -0,0 +1,138 @@ +diff --git a/src/os/linux/vm/os_linux.cpp b/src/os/linux/vm/os_linux.cpp +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp +@@ -2763,39 +2763,47 @@ + // writing thread stacks don't use growable mappings (i.e. those + // creeated with MAP_GROWSDOWN), and aren't marked "[stack]", so this + // only applies to the main thread. +- +-static +-bool get_stack_bounds(uintptr_t *bottom, uintptr_t *top) { +- +- char buf[128]; +- int fd, sz; +- +- if ((fd = ::open("/proc/self/maps", O_RDONLY)) < 0) { ++static bool ++get_stack_bounds(uintptr_t *bottom, uintptr_t *top) ++{ ++ FILE *f = fopen("/proc/self/maps", "r"); ++ if (f == NULL) + return false; +- } +- +- const char kw[] = "[stack]"; +- const int kwlen = sizeof(kw)-1; +- +- // Address part of /proc/self/maps couldn't be more than 128 bytes +- while ((sz = os::get_line_chars(fd, buf, sizeof(buf))) > 0) { +- if (sz > kwlen && ::memcmp(buf+sz-kwlen, kw, kwlen) == 0) { +- // Extract addresses +- if (sscanf(buf, "%" SCNxPTR "-%" SCNxPTR, bottom, top) == 2) { +- uintptr_t sp = (uintptr_t) __builtin_frame_address(0); +- if (sp >= *bottom && sp <= *top) { +- ::close(fd); +- return true; +- } ++ ++ while (!feof(f)) { ++ size_t dummy; ++ char *str = NULL; ++ ssize_t len = getline(&str, &dummy, f); ++ if (len == -1) { ++ fclose(f); ++ if (str != NULL) ++ free(str); ++ return false; ++ } ++ ++ if (len > 0 && str[len-1] == '\n') { ++ str[len-1] = 0; ++ len--; ++ } ++ ++ static const char *stack_str = "[stack]"; ++ if (len > (ssize_t)strlen(stack_str) ++ && (strcmp(str + len - strlen(stack_str), stack_str) == 0)) { ++ if (sscanf(str, "%" SCNxPTR "-%" SCNxPTR, bottom, top) == 2) { ++ uintptr_t sp = (uintptr_t)__builtin_frame_address(0); ++ if (sp >= *bottom && sp <= *top) { ++ free(str); ++ fclose(f); ++ return true; + } +- } +- } +- +- ::close(fd); ++ } ++ } ++ free(str); ++ } ++ fclose(f); + return false; + } + +- + // If the (growable) stack mapping already extends beyond the point + // where we're going to put our guard pages, truncate the mapping at + // that point by munmap()ping it. This ensures that when we later +diff --git a/src/share/vm/runtime/os.cpp b/src/share/vm/runtime/os.cpp +--- openjdk/hotspot/src/share/vm/runtime/os.cpp ++++ openjdk/hotspot/src/share/vm/runtime/os.cpp +@@ -1331,41 +1331,3 @@ + } + return result; + } +- +-// Read file line by line, if line is longer than bsize, +-// skip rest of line. +-int os::get_line_chars(int fd, char* buf, const size_t bsize){ +- size_t sz, i = 0; +- +- // read until EOF, EOL or buf is full +- while ((sz = (int) read(fd, &buf[i], 1)) == 1 && i < (bsize-2) && buf[i] != '\n') { +- ++i; +- } +- +- if (buf[i] == '\n') { +- // EOL reached so ignore EOL character and return +- +- buf[i] = 0; +- return (int) i; +- } +- +- buf[i+1] = 0; +- +- if (sz != 1) { +- // EOF reached. if we read chars before EOF return them and +- // return EOF on next call otherwise return EOF +- +- return (i == 0) ? -1 : (int) i; +- } +- +- // line is longer than size of buf, skip to EOL +- char ch; +- while (read(fd, &ch, 1) == 1 && ch != '\n') { +- // Do nothing +- } +- +- // return initial part of line that fits in buf. +- // If we reached EOF, it will be returned on next call. +- +- return (int) i; +-} +diff --git a/src/share/vm/runtime/os.hpp b/src/share/vm/runtime/os.hpp +--- openjdk/hotspot/src/share/vm/runtime/os.hpp ++++ openjdk/hotspot/src/share/vm/runtime/os.hpp +@@ -672,10 +672,6 @@ + // Hook for os specific jvm options that we don't want to abort on seeing + static bool obsolete_option(const JavaVMOption *option); + +- // Read file line by line. If line is longer than bsize, +- // rest of line is skipped. Returns number of bytes read or -1 on EOF +- static int get_line_chars(int fd, char *buf, const size_t bsize); +- + // Extensions + #include "runtime/os_ext.hpp" + diff -r 03aaabc8b71c -r 4549f9fbf989 rewriter/com/redhat/rewriter/ClassRewriter.java --- a/rewriter/com/redhat/rewriter/ClassRewriter.java Mon Mar 11 11:39:51 2013 +0000 +++ b/rewriter/com/redhat/rewriter/ClassRewriter.java Tue Mar 12 19:33:16 2013 +0000 @@ -60,8 +60,8 @@ /** * The executor for submitting rewriting jobs. */ - private static final ExecutorService executor = DEBUG ? - Executors.newSingleThreadExecutor() : Executors.newCachedThreadPool(); + private static final ExecutorService executor = + Executors.newSingleThreadExecutor(); /** * The source directory, set once by main. @@ -290,4 +290,4 @@ return null; } -} \ No newline at end of file +} From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 12:33:52 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 19:33:52 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 --- Comment #3 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.2?cmd=changeset;node=b7e507e31613 author: Andrew John Hughes date: Mon Mar 11 16:31:39 2013 +0000 PR1340: Simplify the rhino class rewriter to avoid use of concurrency 2013-03-11 Andrew John Hughes PR1340: Simplify the rewriter, avoiding concurrency. * NEWS: Mention fix. * rewriter/com/redhat/rewriter/ClassRewriter.java: Always use the single threaded executor. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/d4515b03/attachment.html From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 12:58:59 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 19:58:59 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution|--- |FIXED Target Milestone|2.1.6 |2.1.7 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/26c65d99/attachment.html From andrew at icedtea.classpath.org Tue Mar 12 13:01:35 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:01:35 +0000 Subject: /hg/release/icedtea7-2.1: Start the 2.1.8 release cycle. Message-ID: changeset 1b2d86fddd09 in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=1b2d86fddd09 author: Andrew John Hughes date: Tue Mar 12 20:01:24 2013 +0000 Start the 2.1.8 release cycle. 2013-03-12 Andrew John Hughes * configure.ac: Bump to 2.1.8pre. * NEWS: Add section for 2.1.8. diffstat: ChangeLog | 5 +++++ NEWS | 4 +++- configure.ac | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diffs (35 lines): diff -r 576696c715ca -r 1b2d86fddd09 ChangeLog --- a/ChangeLog Tue Mar 12 18:35:56 2013 +0000 +++ b/ChangeLog Tue Mar 12 20:01:24 2013 +0000 @@ -1,3 +1,8 @@ +2013-03-12 Andrew John Hughes + + * configure.ac: Bump to 2.1.8pre. + * NEWS: Add section for 2.1.8. + 2013-03-11 Andrew John Hughes * configure.ac: Bump to 2.1.7 proper. diff -r 576696c715ca -r 1b2d86fddd09 NEWS --- a/NEWS Tue Mar 12 18:35:56 2013 +0000 +++ b/NEWS Tue Mar 12 20:01:24 2013 +0000 @@ -10,7 +10,9 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 2.1.7 (2013-04-11): +New in release 2.1.8 (2013-04-XX): + +New in release 2.1.7 (2013-03-11): * Security fixes - S8007014, CVE-2013-0809: Improve image handling diff -r 576696c715ca -r 1b2d86fddd09 configure.ac --- a/configure.ac Tue Mar 12 18:35:56 2013 +0000 +++ b/configure.ac Tue Mar 12 20:01:24 2013 +0000 @@ -1,4 +1,4 @@ -AC_INIT([icedtea], [2.1.7], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea], [2.1.8pre], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) From andrew at icedtea.classpath.org Tue Mar 12 13:05:07 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:05:07 +0000 Subject: /hg/icedtea7: 2 new changesets Message-ID: changeset e9f69abe7bba in /hg/icedtea7 details: http://icedtea.classpath.org/hg/icedtea7?cmd=changeset;node=e9f69abe7bba author: Andrew John Hughes date: Tue Mar 12 20:03:18 2013 +0000 PR1340: Simplify the rhino class rewriter to avoid use of concurrency 2013-03-11 Andrew John Hughes PR1340: Simplify the rewriter, avoiding concurrency. * rewriter/com/redhat/rewriter/ClassRewriter.java: Always use the single threaded executor. changeset 898867dc123e in /hg/icedtea7 details: http://icedtea.classpath.org/hg/icedtea7?cmd=changeset;node=898867dc123e author: Andrew John Hughes date: Tue Mar 12 20:04:59 2013 +0000 Add release notes for 2.1.7, 2.2.7 & 2.3.8. 2013-03-12 Andrew John Hughes * NEWS: Add release notes for 2.3.8, 2.1.7 & 2.2.7. diffstat: ChangeLog | 11 +++++ NEWS | 46 +++++++++++++++++++++++++ rewriter/com/redhat/rewriter/ClassRewriter.java | 6 +- 3 files changed, 60 insertions(+), 3 deletions(-) diffs (95 lines): diff -r 3506c375241e -r 898867dc123e ChangeLog --- a/ChangeLog Thu Feb 21 06:37:07 2013 +1100 +++ b/ChangeLog Tue Mar 12 20:04:59 2013 +0000 @@ -1,3 +1,14 @@ +2013-03-12 Andrew John Hughes + + * NEWS: Add release notes for 2.3.8, 2.1.7 & + 2.2.7. + +2013-03-11 Andrew John Hughes + + PR1340: Simplify the rewriter, avoiding concurrency. + * rewriter/com/redhat/rewriter/ClassRewriter.java: + Always use the single threaded executor. + 2013-02-21 Andrew John Hughes * NEWS: Add release notes for 2.3.7, 2.1.6 & diff -r 3506c375241e -r 898867dc123e NEWS --- a/NEWS Thu Feb 21 06:37:07 2013 +1100 +++ b/NEWS Tue Mar 12 20:04:59 2013 +0000 @@ -679,6 +679,52 @@ - Set UNLIMITED_CRYPTO=true to ensure we use the unlimited policy. - Set handleStartupErrors to ignoreMultipleInitialisation in nss.cfg to fix PR473 +New in release 2.3.8 (2013-03-11): + +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion +* Backports + - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS + - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c + - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() + - S8006882: Proxy generated classes in sun.proxy package breaks JMockit +* Bug fixes + - PR1303: Correct #ifdef to #if + - PR1340: Simplify the rhino class rewriter to avoid use of concurrency + - Revert 7017193 and add the missing free call, until a better fix is ready. + +New in release 2.2.7 (2013-03-11): + +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion +* Backports + - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS + - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c + - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() + - S8006882: Proxy generated classes in sun.proxy package breaks JMockit +* Bug fixes + - PR1303: Correct #ifdef to #if + - PR1340: Simplify the rhino class rewriter to avoid use of concurrency + - Revert 7017193 and add the missing free call, until a better fix is ready. + +New in release 2.1.7 (2013-03-11): + +* Security fixes + - S8007014, CVE-2013-0809: Improve image handling + - S8007675, CVE-2013-1493: Improve color conversion +* Backports + - S8002344: Krb5LoginModule config class does not return proper KDC list from DNS + - S8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c + - S8006179: JSR292 MethodHandles lookup with interface using findVirtual() + - S8006882: Proxy generated classes in sun.proxy package breaks JMockit +* Bug fixes + - PR1303: Correct #ifdef to #if + - Stop libraries being stripped in the OpenJDK build. + - PR1340: Simplify the rhino class rewriter to avoid use of concurrency + - Revert 7017193 and add the missing free call, until a better fix is ready. + New in release 2.3.7 (2013-02-20): * Security fixes diff -r 3506c375241e -r 898867dc123e rewriter/com/redhat/rewriter/ClassRewriter.java --- a/rewriter/com/redhat/rewriter/ClassRewriter.java Thu Feb 21 06:37:07 2013 +1100 +++ b/rewriter/com/redhat/rewriter/ClassRewriter.java Tue Mar 12 20:04:59 2013 +0000 @@ -60,8 +60,8 @@ /** * The executor for submitting rewriting jobs. */ - private static final ExecutorService executor = DEBUG ? - Executors.newSingleThreadExecutor() : Executors.newCachedThreadPool(); + private static final ExecutorService executor = + Executors.newSingleThreadExecutor(); /** * The source directory, set once by main. @@ -290,4 +290,4 @@ return null; } -} \ No newline at end of file +} From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 13:05:17 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:05:17 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 --- Comment #4 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7?cmd=changeset;node=e9f69abe7bba author: Andrew John Hughes date: Tue Mar 12 20:03:18 2013 +0000 PR1340: Simplify the rhino class rewriter to avoid use of concurrency 2013-03-11 Andrew John Hughes PR1340: Simplify the rewriter, avoiding concurrency. * rewriter/com/redhat/rewriter/ClassRewriter.java: Always use the single threaded executor. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/d0c49c43/attachment.html From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 13:08:15 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:08:15 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Blocks|1274 | Resolution|--- |FIXED --- Comment #5 from Andrew John Hughes --- Remove blocker. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/98499617/attachment.html From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 13:08:15 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:08:15 +0000 Subject: [Bug 1274] [TRACKER] IcedTea 2.4.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1274 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on|1340 | -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/05b39313/attachment.html From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 13:08:54 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:08:54 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 --- Comment #6 from Andrew John Hughes --- Release announcement: http://bitly.com/ZGBdkA -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/7eeeeff0/attachment.html From andrew at icedtea.classpath.org Tue Mar 12 13:10:53 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:10:53 +0000 Subject: /hg/release/icedtea7-forest-2.4/jdk: PR1303: Correct #ifdef to #if Message-ID: changeset c45e02df52f4 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=c45e02df52f4 author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if diffstat: src/share/native/sun/awt/splashscreen/splashscreen_gif.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diffs (12 lines): diff -r 3d0b72d4c0f9 -r c45e02df52f4 src/share/native/sun/awt/splashscreen/splashscreen_gif.c --- a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c Thu Feb 21 11:25:43 2013 +0400 +++ b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c Fri Mar 08 15:53:50 2013 +0000 @@ -316,7 +316,7 @@ int SplashDecodeGifStream(Splash * splash, SplashStream * stream) { -#ifdef GIFLIB_MAJOR >= 5 +#if GIFLIB_MAJOR >= 5 int error = 0; GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 13:11:00 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:11:00 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #16 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=c45e02df52f4 author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/2d534c4e/attachment.html From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 13:11:46 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 20:11:46 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #17 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset;node=67b0266bbd5d author: andrew date: Fri Mar 08 15:53:50 2013 +0000 PR1303: Correct #ifdef to #if -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/bd5ad73a/attachment.html From andrew at icedtea.classpath.org Tue Mar 12 14:41:10 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 12 Mar 2013 21:41:10 +0000 Subject: /hg/release/icedtea7-2.3: Sync with forest tip, removing unneede... Message-ID: changeset 87982c9fedc5 in /hg/release/icedtea7-2.3 details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=87982c9fedc5 author: Andrew John Hughes date: Tue Mar 12 21:34:03 2013 +0000 Sync with forest tip, removing unneeded local patches. 2013-03-12 Andrew John Hughes * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch, * patches/pr1303-ifdef_fix.patch: Remove patches that are upstream. * Makefile.am: (CORBA_CHANGESET): Update to IcedTea7 2.3 forest head, syncing with upstream jdk7u17b02 changesets. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (CORBA_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. (ICEDTEA_PATCHES): Drop upstream patches. * hotspot.map: Sync default with 2.3 HEAD as other changes above. diffstat: ChangeLog | 26 +++++- Makefile.am | 27 ++--- hotspot.map | 2 +- patches/8006179-lookup_using_findvirtual.patch | 27 ------ patches/8006882-sun.proxy.patch | 106 ------------------------- patches/pr1303-ifdef_fix.patch | 19 ---- 6 files changed, 38 insertions(+), 169 deletions(-) diffs (257 lines): diff -r 18742f5233f6 -r 87982c9fedc5 ChangeLog --- a/ChangeLog Tue Mar 12 19:23:19 2013 +0000 +++ b/ChangeLog Tue Mar 12 21:34:03 2013 +0000 @@ -1,3 +1,27 @@ +2013-03-12 Andrew John Hughes + + * patches/8006179-lookup_using_findvirtual.patch, + * patches/8006882-sun.proxy.patch, + * patches/pr1303-ifdef_fix.patch: + Remove patches that are upstream. + * Makefile.am: + (CORBA_CHANGESET): Update to IcedTea7 2.3 forest head, + syncing with upstream jdk7u17b02 changesets. + (JAXP_CHANGESET): Likewise. + (JAXWS_CHANGESET): Likewise. + (JDK_CHANGESET): Likewise. + (LANGTOOLS_CHANGESET): Likewise. + (OPENJDK_CHANGESET): Likewise. + (CORBA_SHA256SUM): Likewise. + (JAXP_SHA256SUM): Likewise. + (JAXWS_SHA256SUM): Likewise. + (JDK_SHA256SUM): Likewise. + (LANGTOOLS_SHA256SUM): Likewise. + (OPENJDK_SHA256SUM): Likewise. + (ICEDTEA_PATCHES): Drop upstream patches. + * hotspot.map: Sync default with 2.3 HEAD as other + changes above. + 2013-03-12 Andrew John Hughes * configure.ac: Bump to 2.3.9pre. @@ -45,7 +69,7 @@ 2013-03-07 Andrew John Hughes * Makefile.am, - (JDK_UPDATE_VERSION): Bump to 15. + (JDK_UPDATE_VERSION): Bump to 17. (OPENJDK_VERSION): Bump to b02. (CORBA_CHANGESET): Update to IcedTea7 2.3 forest head, bringing in security fixes & backports. diff -r 18742f5233f6 -r 87982c9fedc5 Makefile.am --- a/Makefile.am Tue Mar 12 19:23:19 2013 +0000 +++ b/Makefile.am Tue Mar 12 21:34:03 2013 +0000 @@ -4,19 +4,19 @@ JDK_UPDATE_VERSION = 17 COMBINED_VERSION = $(JDK_UPDATE_VERSION)-$(OPENJDK_VERSION) -CORBA_CHANGESET = 516aae5f27cf -JAXP_CHANGESET = 1fbe99283d97 -JAXWS_CHANGESET = 3c7be82314bf -JDK_CHANGESET = deac45dc94f0 -LANGTOOLS_CHANGESET = 41426c72b802 -OPENJDK_CHANGESET = ed02a059ea15 +CORBA_CHANGESET = 47a6bf94ce11 +JAXP_CHANGESET = a2c49387365b +JAXWS_CHANGESET = 8eb0bc947ad4 +JDK_CHANGESET = 850b9e5f2c64 +LANGTOOLS_CHANGESET = 23907f495db8 +OPENJDK_CHANGESET = 12b96a57263c -CORBA_SHA256SUM = 181ceb85a4dade1a8d8465e2d69255ee3612dbc5a50699a59a4f21e69be7a1c6 -JAXP_SHA256SUM = ed3a963c4309316fba654f0a60ba4bec21b2d170e64423eddfa2ba635ac76572 -JAXWS_SHA256SUM = 4abe7366900327a0de21caee8a7b0ea5494821507a02bfb07cffc980cebe90ad -JDK_SHA256SUM = 00e3e4cb436f4153434faa2d1063114a9028e9c8a7eacf558873053c47365215 -LANGTOOLS_SHA256SUM = cbef395a2af27673a3611ed50d84a76ae9f9539a7c42ed8e06e171bfc1ac030c -OPENJDK_SHA256SUM = 865030303330856c988e353bf1bc86fc95669179b0958a4072538fc59d9a073b +CORBA_SHA256SUM = 7346565688c3f01872af2c16a491233325ad5e924475dc89ff01f50582814934 +JAXP_SHA256SUM = 835a175fa72efd097218cb0f052e1874392afde738f940ebd59ca498483e5cb8 +JAXWS_SHA256SUM = a68a47d136d9b205bc9cac3728e33dce979ca9799740f65b39769b8e0af5b07e +JDK_SHA256SUM = 613ca91c4244198bad568352e24c1a82abd1018140f9b59c825d33c437ded3b9 +LANGTOOLS_SHA256SUM = 8bbf80e096352b4e26407b94c405ea7d529f002057d7a1e0e1d108a5d8feb51c +OPENJDK_SHA256SUM = 651f99364e451d79156c879b8c8e47b8568fb3b4e4d28ebc38d36028acbed8bc CACAO_VERSION = a567bcb7f589 CACAO_SHA256SUM = d49f79debc131a5694cae6ab3ba2864e7f3249ee8d9dc09aae8afdd4dc6b09f9 @@ -241,9 +241,6 @@ # Patch list ICEDTEA_PATCHES = \ - patches/8006179-lookup_using_findvirtual.patch \ - patches/8006882-sun.proxy.patch \ - patches/pr1303-ifdef_fix.patch \ patches/revert-7017193.patch # Conditional patches diff -r 18742f5233f6 -r 87982c9fedc5 hotspot.map --- a/hotspot.map Tue Mar 12 19:23:19 2013 +0000 +++ b/hotspot.map Tue Mar 12 21:34:03 2013 +0000 @@ -1,3 +1,3 @@ # version url changeset sha256sum -default http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot a152dced63a1 eac2313e3012653afa7549257765d56e4348c775363eee0733968d32a7c1eeae +default http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot 23888f3dec52 6d77e26134d47e62621a35b259c70d8e98070724af9a718ec2b85cf84b954614 zero http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot d8b22e079abe 28883ebefcfff1ba8b356a7fabf8e449c25fe7fffe1d563f1f58f887100063f0 diff -r 18742f5233f6 -r 87982c9fedc5 patches/8006179-lookup_using_findvirtual.patch --- a/patches/8006179-lookup_using_findvirtual.patch Tue Mar 12 19:23:19 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -# HG changeset patch -# User jrose -# Date 1358570871 28800 -# Node ID 4bb16e8e663ad133e0950406bda2261169f3920f -# Parent 33b30ad1689805e74c85f6df29d2033c796baedb -8006179: JSR292 MethodHandles lookup with interface using findVirtual() -Reviewed-by: twisti - -diff --git a/src/share/classes/java/lang/invoke/DirectMethodHandle.java b/src/share/classes/java/lang/invoke/DirectMethodHandle.java ---- openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java -+++ openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java -@@ -44,6 +44,15 @@ - if (!m.isResolved()) - throw new InternalError(); - -+ if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { -+ // Check for corner case: invokeinterface of Object method. -+ MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); -+ m2 = MemberName.getFactory().resolveOrNull(m2, false, null); -+ if (m2 != null && m2.isPublic()) { -+ m = m2; -+ } -+ } -+ - MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); - } - diff -r 18742f5233f6 -r 87982c9fedc5 patches/8006882-sun.proxy.patch --- a/patches/8006882-sun.proxy.patch Tue Mar 12 19:23:19 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,106 +0,0 @@ -# HG changeset patch -# User mchung -# Date 1359414910 28800 -# Node ID cbbb166b38eb15f5d5c68e913ee18f6f352b7af0 -# Parent 044ea56a339dfd92b723a5e81941b646f9d26071 -8006882: Proxy generated classes in sun.proxy package breaks JMockit -Reviewed-by: alanb, ahgross - -diff --git a/src/share/classes/java/lang/reflect/Proxy.java b/src/share/classes/java/lang/reflect/Proxy.java ---- openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java -+++ openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java -@@ -609,7 +609,7 @@ - } - - if (proxyPkg == null) { -- // if no non-public proxy interfaces, use sun.proxy package -+ // if no non-public proxy interfaces, use com.sun.proxy package - proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; - } - -diff --git a/src/share/classes/sun/reflect/misc/ReflectUtil.java b/src/share/classes/sun/reflect/misc/ReflectUtil.java ---- openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java -+++ openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java -@@ -202,5 +202,5 @@ - } - } - -- public static final String PROXY_PACKAGE = "sun.proxy"; -+ public static final String PROXY_PACKAGE = "com.sun.proxy"; - } -diff --git a/src/share/lib/security/java.security b/src/share/lib/security/java.security ---- openjdk/jdk/src/share/lib/security/java.security -+++ openjdk/jdk/src/share/lib/security/java.security -@@ -130,6 +130,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -152,6 +153,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -diff --git a/src/share/lib/security/java.security-macosx b/src/share/lib/security/java.security-macosx ---- openjdk/jdk/src/share/lib/security/java.security-macosx -+++ openjdk/jdk/src/share/lib/security/java.security-macosx -@@ -131,6 +131,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -154,6 +155,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -diff --git a/src/share/lib/security/java.security-solaris b/src/share/lib/security/java.security-solaris ---- openjdk/jdk/src/share/lib/security/java.security-solaris -+++ openjdk/jdk/src/share/lib/security/java.security-solaris -@@ -132,6 +132,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -154,6 +155,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -diff --git a/src/share/lib/security/java.security-windows b/src/share/lib/security/java.security-windows ---- openjdk/jdk/src/share/lib/security/java.security-windows -+++ openjdk/jdk/src/share/lib/security/java.security-windows -@@ -131,6 +131,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -153,6 +154,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ diff -r 18742f5233f6 -r 87982c9fedc5 patches/pr1303-ifdef_fix.patch --- a/patches/pr1303-ifdef_fix.patch Tue Mar 12 19:23:19 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1362758030 0 -# Node ID ec275f96d030eff83f7e6cfcdd7daa9cda2b4802 -# Parent deac45dc94f0504ba17b8afcb54db1fba4e6f9d5 -PR1303: Correct #ifdef to #if - -diff --git a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c ---- openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c -+++ openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c -@@ -316,7 +316,7 @@ - int - SplashDecodeGifStream(Splash * splash, SplashStream * stream) - { --#ifdef GIFLIB_MAJOR >= 5 -+#if GIFLIB_MAJOR >= 5 - int error = 0; - GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); - From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 14:41:17 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 21:41:17 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #18 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.3?cmd=changeset;node=87982c9fedc5 author: Andrew John Hughes date: Tue Mar 12 21:34:03 2013 +0000 Sync with forest tip, removing unneeded local patches. 2013-03-12 Andrew John Hughes * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch, * patches/pr1303-ifdef_fix.patch: Remove patches that are upstream. * Makefile.am: (CORBA_CHANGESET): Update to IcedTea7 2.3 forest head, syncing with upstream jdk7u17b02 changesets. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (CORBA_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. (ICEDTEA_PATCHES): Drop upstream patches. * hotspot.map: Sync default with 2.3 HEAD as other changes above. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/8b607499/attachment.html From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 14:50:27 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 12 Mar 2013 21:50:27 +0000 Subject: [Bug 1342] New: java.lang.ArrayIndexOutOfBoundsException - LOG4j Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1342 Bug ID: 1342 Summary: java.lang.ArrayIndexOutOfBoundsException - LOG4j Classification: Unclassified Product: IcedTea Version: 6-1.9.8 Hardware: x86_64 OS: Linux Status: NEW Severity: critical Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: lakstap at gmail.com CC: unassigned at icedtea.classpath.org I am calling a simple java program but at times noticed that log4j is throwing following errors. java.lang.ArrayIndexOutOfBoundsException at java.io.OutputStreamWriter.write(OutputStreamWriter.java:261) at java.io.Writer.write(Writer.java:151) at org.apache.log4j.helpers.CountingQuietWriter.write(CountingQuietWriter.java:45) at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:302) at org.apache.log4j.RollingFileAppender.subAppend(RollingFileAppender.java:263) at org.apache.log4j.WriterAppender.append(WriterAppender.java:160) at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251) at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66) JVM Version java version "1.6.0_20" OpenJDK Runtime Environment (IcedTea6 1.9.8) (rhel-1.22.1.9.8.el5_6-x86_64) OpenJDK 64-Bit Server VM (build 19.0-b09, mixed mode) Could you please look in to this issue ASAP. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130312/23619089/attachment.html From andrew at icedtea.classpath.org Tue Mar 12 23:49:51 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 13 Mar 2013 06:49:51 +0000 Subject: /hg/release/icedtea7-2.2: Sync with forest, removing local copie... Message-ID: changeset 53a2da2c4e72 in /hg/release/icedtea7-2.2 details: http://icedtea.classpath.org/hg/release/icedtea7-2.2?cmd=changeset;node=53a2da2c4e72 author: Andrew John Hughes date: Wed Mar 13 06:49:36 2013 +0000 Sync with forest, removing local copies of patches. 2013-03-12 Andrew John Hughes * patches/8002344-krb5loginmodule.patch, * patches/8004344-toolkiterrorhandler.patch, * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch, * patches/pr1303-ifdef_fix.patch: Remove local copies of upstream patches. * Makefile.am: (HOTSPOT_CHANGESET): Update to IcedTea7 2.2 forest head, bringing in upstream versions of patches. (HOTSPOT_CHANGESET): Likewise. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (HOTSPOT_SHA256SUM): Likewise. (CORBA_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. (ICEDTEA_PATCHES): Remove dropped patches. diffstat: ChangeLog | 26 +++ Makefile.am | 33 +-- patches/8002344-krb5loginmodule.patch | 207 ------------------------- patches/8004344-toolkiterrorhandler.patch | 33 --- patches/8006179-lookup_using_findvirtual.patch | 27 --- patches/8006882-sun.proxy.patch | 106 ------------ patches/pr1303-ifdef_fix.patch | 19 -- 7 files changed, 40 insertions(+), 411 deletions(-) diffs (496 lines): diff -r 4549f9fbf989 -r 53a2da2c4e72 ChangeLog --- a/ChangeLog Tue Mar 12 19:33:16 2013 +0000 +++ b/ChangeLog Wed Mar 13 06:49:36 2013 +0000 @@ -1,3 +1,29 @@ +2013-03-12 Andrew John Hughes + + * patches/8002344-krb5loginmodule.patch, + * patches/8004344-toolkiterrorhandler.patch, + * patches/8006179-lookup_using_findvirtual.patch, + * patches/8006882-sun.proxy.patch, + * patches/pr1303-ifdef_fix.patch: + Remove local copies of upstream patches. + * Makefile.am: + (HOTSPOT_CHANGESET): Update to IcedTea7 2.2 forest head, + bringing in upstream versions of patches. + (HOTSPOT_CHANGESET): Likewise. + (JAXP_CHANGESET): Likewise. + (JAXWS_CHANGESET): Likewise. + (JDK_CHANGESET): Likewise. + (LANGTOOLS_CHANGESET): Likewise. + (OPENJDK_CHANGESET): Likewise. + (HOTSPOT_SHA256SUM): Likewise. + (CORBA_SHA256SUM): Likewise. + (JAXP_SHA256SUM): Likewise. + (JAXWS_SHA256SUM): Likewise. + (JDK_SHA256SUM): Likewise. + (LANGTOOLS_SHA256SUM): Likewise. + (OPENJDK_SHA256SUM): Likewise. + (ICEDTEA_PATCHES): Remove dropped patches. + 2013-03-12 Andrew John Hughes * configure.ac: Bump to 2.2.8pre. diff -r 4549f9fbf989 -r 53a2da2c4e72 Makefile.am --- a/Makefile.am Tue Mar 12 19:33:16 2013 +0000 +++ b/Makefile.am Wed Mar 13 06:49:36 2013 +0000 @@ -4,21 +4,21 @@ JDK_UPDATE_VERSION = 05 COMBINED_VERSION = $(JDK_UPDATE_VERSION)-$(OPENJDK_VERSION) -HOTSPOT_CHANGESET = de365dd26484 -CORBA_CHANGESET = 5fcf70e41383 -JAXP_CHANGESET = 988fa5bfeeec -JAXWS_CHANGESET = 1b6e40dd0756 -JDK_CHANGESET = 40640be5d6a0 -LANGTOOLS_CHANGESET = e89d5b6f21a6 -OPENJDK_CHANGESET = cf1afd9bb936 +HOTSPOT_CHANGESET = c312054a7ae6 +CORBA_CHANGESET = 529355376925 +JAXP_CHANGESET = c8a89a3af782 +JAXWS_CHANGESET = a68ab44db7ee +JDK_CHANGESET = 7e8272d637c7 +LANGTOOLS_CHANGESET = ae5ba074188d +OPENJDK_CHANGESET = 1a406488fe33 -HOTSPOT_SHA256SUM = c964a3660ba4769f921ad4ebd552b1b4941a30dbe171c48357e42998ca268765 -CORBA_SHA256SUM = e7cb1e30f10dc2135fc8634c38def04efb979fef53633ebeb657cdafd1a649a8 -JAXP_SHA256SUM = 5b2401b3da99da631aa2b6b59e53c1e503e0202574d7b5f64d3d2d5b7049d2a1 -JAXWS_SHA256SUM = d16ed9287454b14a25690afb22dfc956d84458b4f563d3d59e9b0a028f377564 -JDK_SHA256SUM = 2f334d6d17ec523ef589a3042b28dd2ad8f6e551faaa0298a7bbd99d3c0f48af -LANGTOOLS_SHA256SUM = 71cc9ffe06e82df584b7afce8ee95e69d746577cc9a1eca29ce3412c45ccb1a7 -OPENJDK_SHA256SUM = 0be0f572242de2744dcf290a7a1cbf9e70ce18f9c02ee0c18d8c3e0563f7203a +HOTSPOT_SHA256SUM = 44b79ee4443c4ad7ab8fe039fec581df416d1c027104483a78be62db8709615e +CORBA_SHA256SUM = b4f0eca0f37b581ace14f24b5aea2db99321e027c4bc2a044b9c796d45804a07 +JAXP_SHA256SUM = 310e77b526f3abb7ed8c117e3b12c3daa54779c8571743faab3a25a3495273f5 +JAXWS_SHA256SUM = eacd5a4a5f05ddeb2d84e02b700643cd43cb6ac8db3cfa937fa18fcf2ba3a676 +JDK_SHA256SUM = 811a41f50078d9cd203fc10265fff1e58eacd3a214cbad617a151bc4ff4cfe47 +LANGTOOLS_SHA256SUM = 8193a0309874143e10e8002d8c5fcf10aefc012af74d8a3bb4416611dfe9fb7f +OPENJDK_SHA256SUM = 196845c4edcf0d82ed72661b381c83f2d0e6e0d4b8952e002decd3483280388e CACAO_VERSION = a567bcb7f589 CACAO_SHA256SUM = d49f79debc131a5694cae6ab3ba2864e7f3249ee8d9dc09aae8afdd4dc6b09f9 @@ -236,11 +236,6 @@ # Patch list ICEDTEA_PATCHES = \ - patches/8002344-krb5loginmodule.patch \ - patches/8004344-toolkiterrorhandler.patch \ - patches/8006179-lookup_using_findvirtual.patch \ - patches/8006882-sun.proxy.patch \ - patches/pr1303-ifdef_fix.patch \ patches/revert-7017193.patch # Conditional patches diff -r 4549f9fbf989 -r 53a2da2c4e72 patches/8002344-krb5loginmodule.patch --- a/patches/8002344-krb5loginmodule.patch Tue Mar 12 19:33:16 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,207 +0,0 @@ -# HG changeset patch -# User weijun -# Date 1353294788 -28800 -# Node ID 59cd568088cc6f0618315d99e53f0716afbf4ff2 -# Parent 6a419ec930a6a3ba969ccd29732f5bf61e51948c -8002344: Krb5LoginModule config class does not return proper KDC list from DNS -Reviewed-by: weijun -Contributed-by: Severin Gehwolf , Wang Weijun - -diff --git a/src/share/classes/sun/security/krb5/Config.java b/src/share/classes/sun/security/krb5/Config.java ---- openjdk/jdk/src/share/classes/sun/security/krb5/Config.java -+++ openjdk/jdk/src/share/classes/sun/security/krb5/Config.java -@@ -1284,7 +1284,7 @@ - */ - private String getKDCFromDNS(String realm) throws KrbException { - // use DNS to locate KDC -- String kdcs = null; -+ String kdcs = ""; - String[] srvs = null; - // locate DNS SRV record using UDP - if (DEBUG) { -@@ -1294,7 +1294,7 @@ - if (srvs == null) { - // locate DNS SRV record using TCP - if (DEBUG) { -- System.out.println("getKDCFromDNS using UDP"); -+ System.out.println("getKDCFromDNS using TCP"); - } - srvs = KrbServiceLocator.getKerberosService(realm, "_tcp"); - } -@@ -1303,14 +1303,15 @@ - throw new KrbException(Krb5.KRB_ERR_GENERIC, - "Unable to locate KDC for realm " + realm); - } -+ if (srvs.length == 0) { -+ return null; -+ } - for (int i = 0; i < srvs.length; i++) { -- String value = srvs[i]; -- for (int j = 0; j < srvs[i].length(); j++) { -- // filter the KDC name -- if (value.charAt(j) == ':') { -- kdcs = (value.substring(0, j)).trim(); -- } -- } -+ kdcs += srvs[i].trim() + " "; -+ } -+ kdcs = kdcs.trim(); -+ if (kdcs.equals("")) { -+ return null; - } - return kdcs; - } -diff --git a/test/sun/security/krb5/config/DNS.java b/test/sun/security/krb5/config/DNS.java -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/test/sun/security/krb5/config/DNS.java -@@ -0,0 +1,38 @@ -+/* -+ * Copyright (c) 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 -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+// See dns.sh. -+import sun.security.krb5.Config; -+ -+public class DNS { -+ public static void main(String[] args) throws Exception { -+ System.setProperty("java.security.krb5.conf", -+ System.getProperty("test.src", ".") +"/nothing.conf"); -+ Config config = Config.getInstance(); -+ String kdcs = config.getKDCList("X"); -+ if (!kdcs.equals("a.com.:88 b.com.:99") && -+ !kdcs.equals("a.com. b.com.:99")) { -+ throw new Exception("Strange KDC: [" + kdcs + "]"); -+ }; -+ } -+} -diff --git a/test/sun/security/krb5/config/NamingManager.java b/test/sun/security/krb5/config/NamingManager.java -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/test/sun/security/krb5/config/NamingManager.java -@@ -0,0 +1,60 @@ -+/* -+ * Copyright (c) 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 -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+package javax.naming.spi; -+ -+import com.sun.jndi.dns.DnsContext; -+import java.util.Hashtable; -+import javax.naming.Context; -+import javax.naming.NamingException; -+import javax.naming.directory.Attribute; -+import javax.naming.directory.Attributes; -+import javax.naming.directory.BasicAttribute; -+import javax.naming.directory.BasicAttributes; -+ -+/** -+ * A fake javax.naming.spi.NamingManager. It allows reading a DNS -+ * record without contacting a real server. -+ * -+ * See DNS.java and dns.sh. -+ */ -+public class NamingManager { -+ NamingManager() {} -+ public static Context getURLContext( -+ String scheme, Hashtable environment) -+ throws NamingException { -+ return new DnsContext("", null, new Hashtable()) { -+ public Attributes getAttributes(String name, String[] attrIds) -+ throws NamingException { -+ return new BasicAttributes() { -+ public Attribute get(String attrID) { -+ BasicAttribute ba = new BasicAttribute(attrID); -+ ba.add("1 1 99 b.com."); -+ ba.add("0 0 88 a.com."); // 2nd has higher priority -+ return ba; -+ } -+ }; -+ } -+ }; -+ } -+} -diff --git a/test/sun/security/krb5/config/dns.sh b/test/sun/security/krb5/config/dns.sh -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/test/sun/security/krb5/config/dns.sh -@@ -0,0 +1,41 @@ -+# -+# Copyright (c) 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 -+# under the terms of the GNU General Public License version 2 only, as -+# published by the Free Software Foundation. -+# -+# This code is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+# version 2 for more details (a copy is included in the LICENSE file that -+# accompanied this code). -+# -+# You should have received a copy of the GNU General Public License version -+# 2 along with this work; if not, write to the Free Software Foundation, -+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+# -+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+# or visit www.oracle.com if you need additional information or have any -+# questions. -+# -+ -+# @test -+# @bug 8002344 -+# @summary Krb5LoginModule config class does not return proper KDC list from DNS -+# -+ -+if [ "${TESTJAVA}" = "" ] ; then -+ JAVAC_CMD=`which javac` -+ TESTJAVA=`dirname $JAVAC_CMD`/.. -+fi -+ -+if [ "${TESTSRC}" = "" ] ; then -+ TESTSRC="." -+fi -+ -+$TESTJAVA/bin/javac -d . \ -+ ${TESTSRC}/NamingManager.java ${TESTSRC}/DNS.java -+$TESTJAVA/bin/java -Xbootclasspath/p:. DNS -+ diff -r 4549f9fbf989 -r 53a2da2c4e72 patches/8004344-toolkiterrorhandler.patch --- a/patches/8004344-toolkiterrorhandler.patch Tue Mar 12 19:33:16 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -# HG changeset patch -# User aph -# Date 1354629728 0 -# Node ID 1d4bf44c8e4e6875f45862871b2a82ae43dea7fa -# Parent 59cd568088cc6f0618315d99e53f0716afbf4ff2 -8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c -Summary: Code does not check for JNU_GetEnv returning NULL. -Reviewed-by: anthony - -diff --git a/src/solaris/native/sun/xawt/XlibWrapper.c b/src/solaris/native/sun/xawt/XlibWrapper.c ---- openjdk/jdk/src/solaris/native/sun/xawt/XlibWrapper.c -+++ openjdk/jdk/src/solaris/native/sun/xawt/XlibWrapper.c -@@ -1260,13 +1260,15 @@ - - JavaVM* jvm = NULL; - static int ToolkitErrorHandler(Display * dpy, XErrorEvent * event) { -+ JNIEnv * env; - if (jvm != NULL) { -- JNIEnv * env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2); -- return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I", -- ptr_to_jlong(dpy), ptr_to_jlong(event)).i; -- } else { -- return 0; -+ env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2); -+ if (env) { -+ return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I", -+ ptr_to_jlong(dpy), ptr_to_jlong(event)).i; -+ } - } -+ return 0; - } - - /* diff -r 4549f9fbf989 -r 53a2da2c4e72 patches/8006179-lookup_using_findvirtual.patch --- a/patches/8006179-lookup_using_findvirtual.patch Tue Mar 12 19:33:16 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -# HG changeset patch -# User jrose -# Date 1358570871 28800 -# Node ID 4bb16e8e663ad133e0950406bda2261169f3920f -# Parent 33b30ad1689805e74c85f6df29d2033c796baedb -8006179: JSR292 MethodHandles lookup with interface using findVirtual() -Reviewed-by: twisti - -diff --git a/src/share/classes/java/lang/invoke/DirectMethodHandle.java b/src/share/classes/java/lang/invoke/DirectMethodHandle.java ---- openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java -+++ openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java -@@ -44,6 +44,15 @@ - if (!m.isResolved()) - throw new InternalError(); - -+ if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { -+ // Check for corner case: invokeinterface of Object method. -+ MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); -+ m2 = MemberName.getFactory().resolveOrNull(m2, false, null); -+ if (m2 != null && m2.isPublic()) { -+ m = m2; -+ } -+ } -+ - MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); - } - diff -r 4549f9fbf989 -r 53a2da2c4e72 patches/8006882-sun.proxy.patch --- a/patches/8006882-sun.proxy.patch Tue Mar 12 19:33:16 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,106 +0,0 @@ -# HG changeset patch -# User mchung -# Date 1359414910 28800 -# Node ID cbbb166b38eb15f5d5c68e913ee18f6f352b7af0 -# Parent 044ea56a339dfd92b723a5e81941b646f9d26071 -8006882: Proxy generated classes in sun.proxy package breaks JMockit -Reviewed-by: alanb, ahgross - -diff --git a/src/share/classes/java/lang/reflect/Proxy.java b/src/share/classes/java/lang/reflect/Proxy.java ---- openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java -+++ openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java -@@ -609,7 +609,7 @@ - } - - if (proxyPkg == null) { -- // if no non-public proxy interfaces, use sun.proxy package -+ // if no non-public proxy interfaces, use com.sun.proxy package - proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; - } - -diff --git a/src/share/classes/sun/reflect/misc/ReflectUtil.java b/src/share/classes/sun/reflect/misc/ReflectUtil.java ---- openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java -+++ openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java -@@ -202,5 +202,5 @@ - } - } - -- public static final String PROXY_PACKAGE = "sun.proxy"; -+ public static final String PROXY_PACKAGE = "com.sun.proxy"; - } -diff --git a/src/share/lib/security/java.security b/src/share/lib/security/java.security ---- openjdk/jdk/src/share/lib/security/java.security -+++ openjdk/jdk/src/share/lib/security/java.security -@@ -130,6 +130,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -152,6 +153,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -diff --git a/src/share/lib/security/java.security-macosx b/src/share/lib/security/java.security-macosx ---- openjdk/jdk/src/share/lib/security/java.security-macosx -+++ openjdk/jdk/src/share/lib/security/java.security-macosx -@@ -131,6 +131,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -154,6 +155,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -diff --git a/src/share/lib/security/java.security-solaris b/src/share/lib/security/java.security-solaris ---- openjdk/jdk/src/share/lib/security/java.security-solaris -+++ openjdk/jdk/src/share/lib/security/java.security-solaris -@@ -132,6 +132,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -154,6 +155,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -diff --git a/src/share/lib/security/java.security-windows b/src/share/lib/security/java.security-windows ---- openjdk/jdk/src/share/lib/security/java.security-windows -+++ openjdk/jdk/src/share/lib/security/java.security-windows -@@ -131,6 +131,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -153,6 +154,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ diff -r 4549f9fbf989 -r 53a2da2c4e72 patches/pr1303-ifdef_fix.patch --- a/patches/pr1303-ifdef_fix.patch Tue Mar 12 19:33:16 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,19 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1362758030 0 -# Node ID ec275f96d030eff83f7e6cfcdd7daa9cda2b4802 -# Parent deac45dc94f0504ba17b8afcb54db1fba4e6f9d5 -PR1303: Correct #ifdef to #if - -diff --git a/src/share/native/sun/awt/splashscreen/splashscreen_gif.c b/src/share/native/sun/awt/splashscreen/splashscreen_gif.c ---- openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c -+++ openjdk/jdk/src/share/native/sun/awt/splashscreen/splashscreen_gif.c -@@ -316,7 +316,7 @@ - int - SplashDecodeGifStream(Splash * splash, SplashStream * stream) - { --#ifdef GIFLIB_MAJOR >= 5 -+#if GIFLIB_MAJOR >= 5 - int error = 0; - GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error); - From bugzilla-daemon at icedtea.classpath.org Tue Mar 12 23:50:05 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 13 Mar 2013 06:50:05 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #19 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.2?cmd=changeset;node=53a2da2c4e72 author: Andrew John Hughes date: Wed Mar 13 06:49:36 2013 +0000 Sync with forest, removing local copies of patches. 2013-03-12 Andrew John Hughes * patches/8002344-krb5loginmodule.patch, * patches/8004344-toolkiterrorhandler.patch, * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch, * patches/pr1303-ifdef_fix.patch: Remove local copies of upstream patches. * Makefile.am: (HOTSPOT_CHANGESET): Update to IcedTea7 2.2 forest head, bringing in upstream versions of patches. (HOTSPOT_CHANGESET): Likewise. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (HOTSPOT_SHA256SUM): Likewise. (CORBA_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. (ICEDTEA_PATCHES): Remove dropped patches. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130313/9ed06eae/attachment.html From andrew at icedtea.classpath.org Wed Mar 13 00:20:02 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 13 Mar 2013 07:20:02 +0000 Subject: /hg/release/icedtea7-forest-2.1/hotspot: Don't create debuginfo ... Message-ID: changeset f6f4d5e6c1dd in /hg/release/icedtea7-forest-2.1/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot?cmd=changeset;node=f6f4d5e6c1dd author: andrew date: Wed Mar 13 07:19:51 2013 +0000 Don't create debuginfo files if not stripping. diffstat: make/linux/makefiles/defs.make | 18 +++++++++++++----- make/linux/makefiles/jsig.make | 2 ++ make/linux/makefiles/saproc.make | 2 ++ make/linux/makefiles/vm.make | 2 ++ make/solaris/makefiles/dtrace.make | 8 ++++++++ make/solaris/makefiles/jsig.make | 2 ++ make/solaris/makefiles/saproc.make | 2 ++ make/solaris/makefiles/vm.make | 2 ++ 8 files changed, 33 insertions(+), 5 deletions(-) diffs (180 lines): diff -r 0e0aaf1070b4 -r f6f4d5e6c1dd make/linux/makefiles/defs.make --- a/make/linux/makefiles/defs.make Mon Mar 04 19:34:15 2013 -0500 +++ b/make/linux/makefiles/defs.make Wed Mar 13 07:19:51 2013 +0000 @@ -186,7 +186,9 @@ EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.so ifneq ($(ZERO_BUILD), true) ifneq ($(OBJCOPY),) - EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo + ifneq ($(STRIP_POLICY),no_strip) + EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo + endif endif endif @@ -198,7 +200,9 @@ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.so ifneq ($(ZERO_BUILD), true) ifneq ($(OBJCOPY),) - EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo + ifneq ($(STRIP_POLICY),no_strip) + EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo + endif endif endif endif @@ -208,7 +212,9 @@ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so ifneq ($(OBJCOPY),) - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo + ifneq ($(STRIP_POLICY),no_strip) + EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo + endif endif endif endif @@ -221,8 +227,10 @@ $(EXPORT_LIB_DIR)/sa-jdi.jar ifneq ($(ZERO_BUILD), true) ifneq ($(OBJCOPY),) - ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo - ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo + ifneq ($(STRIP_POLICY),no_strip) + ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo + ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo + endif endif endif ADD_SA_BINARIES/ppc = diff -r 0e0aaf1070b4 -r f6f4d5e6c1dd make/linux/makefiles/jsig.make --- a/make/linux/makefiles/jsig.make Mon Mar 04 19:34:15 2013 -0500 +++ b/make/linux/makefiles/jsig.make Wed Mar 13 07:19:51 2013 +0000 @@ -59,8 +59,10 @@ $(LFLAGS_JSIG) $(JSIG_DEBUG_CFLAGS) -o $@ $< -ldl $(QUIETLY) [ -f $(LIBJSIG_G) ] || { ln -s $@ $(LIBJSIG_G); } ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else diff -r 0e0aaf1070b4 -r f6f4d5e6c1dd make/linux/makefiles/saproc.make --- a/make/linux/makefiles/saproc.make Mon Mar 04 19:34:15 2013 -0500 +++ b/make/linux/makefiles/saproc.make Wed Mar 13 07:19:51 2013 +0000 @@ -87,8 +87,10 @@ -lthread_db $(QUIETLY) [ -f $(LIBSAPROC_G) ] || { ln -s $@ $(LIBSAPROC_G); } ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else diff -r 0e0aaf1070b4 -r f6f4d5e6c1dd make/linux/makefiles/vm.make --- a/make/linux/makefiles/vm.make Mon Mar 04 19:34:15 2013 -0500 +++ b/make/linux/makefiles/vm.make Wed Mar 13 07:19:51 2013 +0000 @@ -328,8 +328,10 @@ } ifeq ($(CROSS_COMPILE_ARCH),) ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else diff -r 0e0aaf1070b4 -r f6f4d5e6c1dd make/solaris/makefiles/dtrace.make --- a/make/solaris/makefiles/dtrace.make Mon Mar 04 19:34:15 2013 -0500 +++ b/make/solaris/makefiles/dtrace.make Wed Mar 13 07:19:51 2013 +0000 @@ -107,8 +107,10 @@ $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc [ -f $(XLIBJVM_DB_G) ] || { ln -s $(LIBJVM_DB) $(XLIBJVM_DB_G); } ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DB_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(XLIBJVM_DB_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else @@ -127,8 +129,10 @@ $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor [ -f $(XLIBJVM_DTRACE_G) ] || { ln -s $(LIBJVM_DTRACE) $(XLIBJVM_DTRACE_G); } ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(XLIBJVM_DTRACE_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(XLIBJVM_DTRACE_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else @@ -186,8 +190,10 @@ $(SHARED_FLAG) $(LFLAGS_JVM_DB) -o $@ $(DTRACE_SRCDIR)/$(JVM_DB).c -lc [ -f $(LIBJVM_DB_G) ] || { ln -s $@ $(LIBJVM_DB_G); } ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DB_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DB_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else @@ -205,8 +211,10 @@ $(SHARED_FLAG) $(LFLAGS_JVM_DTRACE) -o $@ $(DTRACE_SRCDIR)/$(JVM_DTRACE).c -lc -lthread -ldoor [ -f $(LIBJVM_DTRACE_G) ] || { ln -s $@ $(LIBJVM_DTRACE_G); } ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DTRACE_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DTRACE_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else diff -r 0e0aaf1070b4 -r f6f4d5e6c1dd make/solaris/makefiles/jsig.make --- a/make/solaris/makefiles/jsig.make Mon Mar 04 19:34:15 2013 -0500 +++ b/make/solaris/makefiles/jsig.make Wed Mar 13 07:19:51 2013 +0000 @@ -55,8 +55,10 @@ $(LFLAGS_JSIG) -o $@ $< -ldl [ -f $(LIBJSIG_G) ] || { ln -s $@ $(LIBJSIG_G); } ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJSIG_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJSIG_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else diff -r 0e0aaf1070b4 -r f6f4d5e6c1dd make/solaris/makefiles/saproc.make --- a/make/solaris/makefiles/saproc.make Mon Mar 04 19:34:15 2013 -0500 +++ b/make/solaris/makefiles/saproc.make Wed Mar 13 07:19:51 2013 +0000 @@ -106,8 +106,10 @@ -ldl -ldemangle -lthread -lc [ -f $(LIBSAPROC_G) ] || { ln -s $@ $(LIBSAPROC_G); } ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBSAPROC_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBSAPROC_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else diff -r 0e0aaf1070b4 -r f6f4d5e6c1dd make/solaris/makefiles/vm.make --- a/make/solaris/makefiles/vm.make Mon Mar 04 19:34:15 2013 -0500 +++ b/make/solaris/makefiles/vm.make Wed Mar 13 07:19:51 2013 +0000 @@ -284,8 +284,10 @@ $(QUIETLY) [ -f $(LIBJVM_G) ] || ln -s $@ $(LIBJVM_G) $(QUIETLY) [ -f $(LIBJVM_G).1 ] || ln -s $@.1 $(LIBJVM_G).1 ifneq ($(OBJCOPY),) + ifneq ($(STRIP_POLICY),no_strip) $(QUIETLY) $(OBJCOPY) --only-keep-debug $@ $(LIBJVM_DEBUGINFO) $(QUIETLY) $(OBJCOPY) --add-gnu-debuglink=$(LIBJVM_DEBUGINFO) $@ + endif ifeq ($(STRIP_POLICY),all_strip) $(QUIETLY) $(STRIP) $@ else From ptisnovs at icedtea.classpath.org Wed Mar 13 02:03:09 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 13 Mar 2013 09:03:09 +0000 Subject: /hg/rhino-tests: Added new tests: getConstructor() and getDeclar... Message-ID: changeset 20e66f471943 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=20e66f471943 author: Pavel Tisnovsky date: Wed Mar 13 10:06:13 2013 +0100 Added new tests: getConstructor() and getDeclaredConstructor() into the test suite ScriptContextClassTest. diffstat: ChangeLog | 6 + src/org/RhinoTests/ScriptContextClassTest.java | 79 ++++++++++++++++++++++++- 2 files changed, 80 insertions(+), 5 deletions(-) diffs (119 lines): diff -r 64b1fc64c1b9 -r 20e66f471943 ChangeLog --- a/ChangeLog Tue Mar 12 09:31:43 2013 +0100 +++ b/ChangeLog Wed Mar 13 10:06:13 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-13 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptContextClassTest.java: + Added new tests: getConstructor() and getDeclaredConstructor() into + the test suite ScriptContextClassTest. + 2013-03-12 Pavel Tisnovsky * src/org/RhinoTests/SimpleScriptContextClassTest.java: diff -r 64b1fc64c1b9 -r 20e66f471943 src/org/RhinoTests/ScriptContextClassTest.java --- a/src/org/RhinoTests/ScriptContextClassTest.java Tue Mar 12 09:31:43 2013 +0100 +++ b/src/org/RhinoTests/ScriptContextClassTest.java Wed Mar 13 10:06:13 2013 +0100 @@ -324,6 +324,66 @@ } /** + * Test for method javax.script.ScriptContext.getClass().getConstructor() + */ + protected void testGetConstructor() { + // following constructors should exist + Map constructorsThatShouldExist_jdk6 = new TreeMap(); + + Map constructorsThatShouldExist_jdk7 = new TreeMap(); + + Map constructorsThatShouldExist = getJavaVersion() < 7 ? constructorsThatShouldExist_jdk6 : constructorsThatShouldExist_jdk7; + + // check if all required constructors really exist + for (Map.Entry constructorThatShouldExists : constructorsThatShouldExist.entrySet()) { + try { + Constructor constructor = this.scriptContextClass.getConstructor(constructorThatShouldExists.getValue()); + assertNotNull(constructor, + "constructor " + constructorThatShouldExists.getKey() + " not found"); + String constructorName = constructor.getName(); + assertNotNull(constructorName, + "constructor " + constructorThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(constructorName.equals(constructorThatShouldExists.getKey()), + "constructor " + constructorThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.ScriptContext.getClass().getDeclaredConstructor() + */ + protected void testGetDeclaredConstructor() { + // following constructors should exist + Map constructorsThatShouldExist_jdk6 = new TreeMap(); + + Map constructorsThatShouldExist_jdk7 = new TreeMap(); + + Map constructorsThatShouldExist = getJavaVersion() < 7 ? constructorsThatShouldExist_jdk6 : constructorsThatShouldExist_jdk7; + + // check if all required constructors really exist + for (Map.Entry constructorThatShouldExists : constructorsThatShouldExist.entrySet()) { + try { + Constructor constructor = this.scriptContextClass.getDeclaredConstructor(constructorThatShouldExists.getValue()); + assertNotNull(constructor, + "constructor " + constructorThatShouldExists.getKey() + " not found"); + String constructorName = constructor.getName(); + assertNotNull(constructorName, + "constructor " + constructorThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(constructorName.equals(constructorThatShouldExists.getKey()), + "constructor " + constructorThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.ScriptContext.getClass().getFields() */ protected void testGetFields() { @@ -358,11 +418,20 @@ * Test for method javax.script.ScriptContext.getClass().getDeclaredFields() */ protected void testGetDeclaredFields() { - // following fields should be declared - final String[] fieldsThatShouldExists = { + // following declared fields should exists + final String[] declaredFieldsThatShouldExist_jdk6 = { "public static final int javax.script.ScriptContext.ENGINE_SCOPE", "public static final int javax.script.ScriptContext.GLOBAL_SCOPE", }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + "public static final int javax.script.ScriptContext.ENGINE_SCOPE", + "public static final int javax.script.ScriptContext.GLOBAL_SCOPE", + }; + + // get the right array of field signatures + // following fields should be declared + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + // get all declared fields Field[] declaredFields = this.scriptContextClass.getDeclaredFields(); // and transform the array into a list of field names @@ -371,9 +440,9 @@ declaredFieldsAsString.add(field.toString()); } // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { - assertTrue(declaredFieldsAsString.contains(fieldThatShouldExists), - "field " + fieldThatShouldExists + " not found"); + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + assertTrue(declaredFieldsAsString.contains(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); } } From andrew at icedtea.classpath.org Wed Mar 13 02:19:05 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 13 Mar 2013 09:19:05 +0000 Subject: /hg/release/icedtea7-2.1: Sync with forest and remove local copi... Message-ID: changeset e0baa69f348f in /hg/release/icedtea7-2.1 details: http://icedtea.classpath.org/hg/release/icedtea7-2.1?cmd=changeset;node=e0baa69f348f author: Andrew John Hughes date: Wed Mar 13 09:18:57 2013 +0000 Sync with forest and remove local copies of upstream patches. 2013-03-13 Andrew John Hughes * patches/8002344-krb5loginmodule.patch, * patches/8004344-toolkiterrorhandler.patch, * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch, * patches/no_stripping.patch, * patches/pr1303-ifdef_fix.patch: Remove local copies of upstream patches. * Makefile.am: (HOTSPOT_CHANGESET): Update to IcedTea7 2.1 forest head, bringing in upstream versions of local patches. (HOTSPOT_CHANGESET): Likewise. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (HOTSPOT_SHA256SUM): Likewise. (CORBA_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. (ICEDTEA_PATCHES): Drop patches. diffstat: ChangeLog | 27 +++ Makefile.am | 34 +-- patches/8002344-krb5loginmodule.patch | 207 ------------------------- patches/8004344-toolkiterrorhandler.patch | 33 --- patches/8006179-lookup_using_findvirtual.patch | 27 --- patches/8006882-sun.proxy.patch | 87 ---------- patches/no_stripping.patch | 180 --------------------- patches/pr1303-ifdef_fix.patch | 19 -- 8 files changed, 41 insertions(+), 573 deletions(-) diffs (truncated from 663 to 500 lines): diff -r 1b2d86fddd09 -r e0baa69f348f ChangeLog --- a/ChangeLog Tue Mar 12 20:01:24 2013 +0000 +++ b/ChangeLog Wed Mar 13 09:18:57 2013 +0000 @@ -1,3 +1,30 @@ +2013-03-13 Andrew John Hughes + + * patches/8002344-krb5loginmodule.patch, + * patches/8004344-toolkiterrorhandler.patch, + * patches/8006179-lookup_using_findvirtual.patch, + * patches/8006882-sun.proxy.patch, + * patches/no_stripping.patch, + * patches/pr1303-ifdef_fix.patch: + Remove local copies of upstream patches. + * Makefile.am: + (HOTSPOT_CHANGESET): Update to IcedTea7 2.1 forest head, + bringing in upstream versions of local patches. + (HOTSPOT_CHANGESET): Likewise. + (JAXP_CHANGESET): Likewise. + (JAXWS_CHANGESET): Likewise. + (JDK_CHANGESET): Likewise. + (LANGTOOLS_CHANGESET): Likewise. + (OPENJDK_CHANGESET): Likewise. + (HOTSPOT_SHA256SUM): Likewise. + (CORBA_SHA256SUM): Likewise. + (JAXP_SHA256SUM): Likewise. + (JAXWS_SHA256SUM): Likewise. + (JDK_SHA256SUM): Likewise. + (LANGTOOLS_SHA256SUM): Likewise. + (OPENJDK_SHA256SUM): Likewise. + (ICEDTEA_PATCHES): Drop patches. + 2013-03-12 Andrew John Hughes * configure.ac: Bump to 2.1.8pre. diff -r 1b2d86fddd09 -r e0baa69f348f Makefile.am --- a/Makefile.am Tue Mar 12 20:01:24 2013 +0000 +++ b/Makefile.am Wed Mar 13 09:18:57 2013 +0000 @@ -4,21 +4,21 @@ JDK_UPDATE_VERSION = 03 COMBINED_VERSION = $(JDK_UPDATE_VERSION)-$(OPENJDK_VERSION) -HOTSPOT_CHANGESET = d8b22e079abe -CORBA_CHANGESET = 4afc0be5b3c6 -JAXP_CHANGESET = efa047bf59e9 -JAXWS_CHANGESET = 52bbe659af64 -JDK_CHANGESET = 2989f7467d83 -LANGTOOLS_CHANGESET = ac6983a8bd4a -OPENJDK_CHANGESET = 7de37e3bcca6 +HOTSPOT_CHANGESET = f6f4d5e6c1dd +CORBA_CHANGESET = 313f1ee32118 +JAXP_CHANGESET = 691f82a0de0b +JAXWS_CHANGESET = a48ebab198a4 +JDK_CHANGESET = 1040c44a496d +LANGTOOLS_CHANGESET = c63c8a2164e4 +OPENJDK_CHANGESET = c1c649636704 -HOTSPOT_SHA256SUM = 28883ebefcfff1ba8b356a7fabf8e449c25fe7fffe1d563f1f58f887100063f0 -CORBA_SHA256SUM = 813e02861d89147c0547f4608fe69b0abd153cf548bf1f21ef9d16ea0a6d683e -JAXP_SHA256SUM = 20d745c58117d1eaa061edb689bb7569b512ac8fb3d0f3518b5fa8b17ba7012e -JAXWS_SHA256SUM = d8acabf54c1a4fe02e45ac4bdfe1ff9f3e7a3abc12884fcacd580bce9063a7c5 -JDK_SHA256SUM = 77471cc8744c6ec842ee158408a400db0f566f19ac978580c76d7af8ef24e154 -LANGTOOLS_SHA256SUM = 47db36264b345939176d1a5f36df84ad56d7fae76ce647ea1b619f7df0eb1eda -OPENJDK_SHA256SUM = a856008db052b7f7ec4b466eee117fcc72229531136f71d4dd712c2f6e71cbd6 +HOTSPOT_SHA256SUM = 52029034eb2140c06f567aad85f23e7a7d45977b6df441bf7f6ebe30767f9964 +CORBA_SHA256SUM = 9326c1fc0dedcbc2af386cb73b80727416e24664ccbf766221450f6e2138e952 +JAXP_SHA256SUM = 17a242852010f535c11f874aae07a6d60f7007541fe1586666638cc6d58f8f1f +JAXWS_SHA256SUM = 57dab4837468b775ff55e21352c7920f3f35c1e6ceb130154fb89eeb163e176f +JDK_SHA256SUM = e624a809f099870100330022bda9dafe30bfa4539ee14ec118ffa3ebbafa012d +LANGTOOLS_SHA256SUM = 46d93bd9069d86ea233464d5a9777b12f0a027142b9ac665e3b244f69a5416b6 +OPENJDK_SHA256SUM = 6cb4258bf22daba0dd5b8cbfee8acd8a378b3e1f36259b6437f7589c74ed6e4f CACAO_VERSION = a567bcb7f589 CACAO_SHA256SUM = d49f79debc131a5694cae6ab3ba2864e7f3249ee8d9dc09aae8afdd4dc6b09f9 @@ -236,12 +236,6 @@ # Patch list ICEDTEA_PATCHES = \ - patches/8002344-krb5loginmodule.patch \ - patches/8004344-toolkiterrorhandler.patch \ - patches/8006179-lookup_using_findvirtual.patch \ - patches/8006882-sun.proxy.patch \ - patches/pr1303-ifdef_fix.patch \ - patches/no_stripping.patch \ patches/revert-7017193.patch # Conditional patches diff -r 1b2d86fddd09 -r e0baa69f348f patches/8002344-krb5loginmodule.patch --- a/patches/8002344-krb5loginmodule.patch Tue Mar 12 20:01:24 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,207 +0,0 @@ -# HG changeset patch -# User weijun -# Date 1353294788 -28800 -# Node ID 9dc51cdd7cec31aeaccf7e2a44de4d4110f19353 -# Parent 78fbbfe20edb9658c6ee59494b97f1735e73eab2 -8002344: Krb5LoginModule config class does not return proper KDC list from DNS -Reviewed-by: weijun -Contributed-by: Severin Gehwolf , Wang Weijun - -diff --git a/src/share/classes/sun/security/krb5/Config.java b/src/share/classes/sun/security/krb5/Config.java ---- openjdk/jdk/src/share/classes/sun/security/krb5/Config.java -+++ openjdk/jdk/src/share/classes/sun/security/krb5/Config.java -@@ -1233,7 +1233,7 @@ - */ - private String getKDCFromDNS(String realm) throws KrbException { - // use DNS to locate KDC -- String kdcs = null; -+ String kdcs = ""; - String[] srvs = null; - // locate DNS SRV record using UDP - if (DEBUG) { -@@ -1243,7 +1243,7 @@ - if (srvs == null) { - // locate DNS SRV record using TCP - if (DEBUG) { -- System.out.println("getKDCFromDNS using UDP"); -+ System.out.println("getKDCFromDNS using TCP"); - } - srvs = KrbServiceLocator.getKerberosService(realm, "_tcp"); - } -@@ -1252,14 +1252,15 @@ - throw new KrbException(Krb5.KRB_ERR_GENERIC, - "Unable to locate KDC for realm " + realm); - } -+ if (srvs.length == 0) { -+ return null; -+ } - for (int i = 0; i < srvs.length; i++) { -- String value = srvs[i]; -- for (int j = 0; j < srvs[i].length(); j++) { -- // filter the KDC name -- if (value.charAt(j) == ':') { -- kdcs = (value.substring(0, j)).trim(); -- } -- } -+ kdcs += srvs[i].trim() + " "; -+ } -+ kdcs = kdcs.trim(); -+ if (kdcs.equals("")) { -+ return null; - } - return kdcs; - } -diff --git a/test/sun/security/krb5/config/DNS.java b/test/sun/security/krb5/config/DNS.java -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/test/sun/security/krb5/config/DNS.java -@@ -0,0 +1,38 @@ -+/* -+ * Copyright (c) 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 -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+// See dns.sh. -+import sun.security.krb5.Config; -+ -+public class DNS { -+ public static void main(String[] args) throws Exception { -+ System.setProperty("java.security.krb5.conf", -+ System.getProperty("test.src", ".") +"/nothing.conf"); -+ Config config = Config.getInstance(); -+ String kdcs = config.getKDCList("X"); -+ if (!kdcs.equals("a.com.:88 b.com.:99") && -+ !kdcs.equals("a.com. b.com.:99")) { -+ throw new Exception("Strange KDC: [" + kdcs + "]"); -+ }; -+ } -+} -diff --git a/test/sun/security/krb5/config/NamingManager.java b/test/sun/security/krb5/config/NamingManager.java -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/test/sun/security/krb5/config/NamingManager.java -@@ -0,0 +1,60 @@ -+/* -+ * Copyright (c) 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 -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+ * or visit www.oracle.com if you need additional information or have any -+ * questions. -+ */ -+ -+package javax.naming.spi; -+ -+import com.sun.jndi.dns.DnsContext; -+import java.util.Hashtable; -+import javax.naming.Context; -+import javax.naming.NamingException; -+import javax.naming.directory.Attribute; -+import javax.naming.directory.Attributes; -+import javax.naming.directory.BasicAttribute; -+import javax.naming.directory.BasicAttributes; -+ -+/** -+ * A fake javax.naming.spi.NamingManager. It allows reading a DNS -+ * record without contacting a real server. -+ * -+ * See DNS.java and dns.sh. -+ */ -+public class NamingManager { -+ NamingManager() {} -+ public static Context getURLContext( -+ String scheme, Hashtable environment) -+ throws NamingException { -+ return new DnsContext("", null, new Hashtable()) { -+ public Attributes getAttributes(String name, String[] attrIds) -+ throws NamingException { -+ return new BasicAttributes() { -+ public Attribute get(String attrID) { -+ BasicAttribute ba = new BasicAttribute(attrID); -+ ba.add("1 1 99 b.com."); -+ ba.add("0 0 88 a.com."); // 2nd has higher priority -+ return ba; -+ } -+ }; -+ } -+ }; -+ } -+} -diff --git a/test/sun/security/krb5/config/dns.sh b/test/sun/security/krb5/config/dns.sh -new file mode 100644 ---- /dev/null -+++ openjdk/jdk/test/sun/security/krb5/config/dns.sh -@@ -0,0 +1,41 @@ -+# -+# Copyright (c) 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 -+# under the terms of the GNU General Public License version 2 only, as -+# published by the Free Software Foundation. -+# -+# This code is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+# version 2 for more details (a copy is included in the LICENSE file that -+# accompanied this code). -+# -+# You should have received a copy of the GNU General Public License version -+# 2 along with this work; if not, write to the Free Software Foundation, -+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+# -+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -+# or visit www.oracle.com if you need additional information or have any -+# questions. -+# -+ -+# @test -+# @bug 8002344 -+# @summary Krb5LoginModule config class does not return proper KDC list from DNS -+# -+ -+if [ "${TESTJAVA}" = "" ] ; then -+ JAVAC_CMD=`which javac` -+ TESTJAVA=`dirname $JAVAC_CMD`/.. -+fi -+ -+if [ "${TESTSRC}" = "" ] ; then -+ TESTSRC="." -+fi -+ -+$TESTJAVA/bin/javac -d . \ -+ ${TESTSRC}/NamingManager.java ${TESTSRC}/DNS.java -+$TESTJAVA/bin/java -Xbootclasspath/p:. DNS -+ diff -r 1b2d86fddd09 -r e0baa69f348f patches/8004344-toolkiterrorhandler.patch --- a/patches/8004344-toolkiterrorhandler.patch Tue Mar 12 20:01:24 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -# HG changeset patch -# User aph -# Date 1354629728 0 -# Node ID 4d5e8509905e1d95a87e7ce769d8ee61083107a3 -# Parent 9dc51cdd7cec31aeaccf7e2a44de4d4110f19353 -8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c -Summary: Code does not check for JNU_GetEnv returning NULL. -Reviewed-by: anthony - -diff --git a/src/solaris/native/sun/xawt/XlibWrapper.c b/src/solaris/native/sun/xawt/XlibWrapper.c ---- openjdk/jdk/src/solaris/native/sun/xawt/XlibWrapper.c -+++ openjdk/jdk/src/solaris/native/sun/xawt/XlibWrapper.c -@@ -1260,13 +1260,15 @@ - - JavaVM* jvm = NULL; - static int ToolkitErrorHandler(Display * dpy, XErrorEvent * event) { -+ JNIEnv * env; - if (jvm != NULL) { -- JNIEnv * env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2); -- return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I", -- ptr_to_jlong(dpy), ptr_to_jlong(event)).i; -- } else { -- return 0; -+ env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2); -+ if (env) { -+ return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I", -+ ptr_to_jlong(dpy), ptr_to_jlong(event)).i; -+ } - } -+ return 0; - } - - /* diff -r 1b2d86fddd09 -r e0baa69f348f patches/8006179-lookup_using_findvirtual.patch --- a/patches/8006179-lookup_using_findvirtual.patch Tue Mar 12 20:01:24 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -# HG changeset patch -# User jrose -# Date 1358570871 28800 -# Node ID 90e4cb6f78bb0551ae23f88dd75cb57aad9d8662 -# Parent 0ad964f2ced1b4f12c1b30bd92dceb73ba15f608 -8006179: JSR292 MethodHandles lookup with interface using findVirtual() -Reviewed-by: twisti - -diff --git a/src/share/classes/java/lang/invoke/DirectMethodHandle.java b/src/share/classes/java/lang/invoke/DirectMethodHandle.java ---- openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java -+++ openjdk/jdk/src/share/classes/java/lang/invoke/DirectMethodHandle.java -@@ -44,6 +44,15 @@ - if (!m.isResolved()) - throw new InternalError(); - -+ if (m.getDeclaringClass().isInterface() && !m.isAbstract()) { -+ // Check for corner case: invokeinterface of Object method. -+ MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers()); -+ m2 = MemberName.getFactory().resolveOrNull(m2, false, null); -+ if (m2 != null && m2.isPublic()) { -+ m = m2; -+ } -+ } -+ - MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass); - } - diff -r 1b2d86fddd09 -r e0baa69f348f patches/8006882-sun.proxy.patch --- a/patches/8006882-sun.proxy.patch Tue Mar 12 20:01:24 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,87 +0,0 @@ -# HG changeset patch -# User andrew -# Date 1362989644 0 -# Node ID 1040c44a496db37f595fa66b71ef91e67598cbf4 -# Parent 90e4cb6f78bb0551ae23f88dd75cb57aad9d8662 -8006882: Proxy generated classes in sun.proxy package breaks JMockit -Reviewed-by: alanb, ahgross - -diff --git a/src/share/classes/java/lang/reflect/Proxy.java b/src/share/classes/java/lang/reflect/Proxy.java ---- openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java -+++ openjdk/jdk/src/share/classes/java/lang/reflect/Proxy.java -@@ -609,7 +609,7 @@ - } - - if (proxyPkg == null) { -- // if no non-public proxy interfaces, use sun.proxy package -+ // if no non-public proxy interfaces, use com.sun.proxy package - proxyPkg = ReflectUtil.PROXY_PACKAGE + "."; - } - -diff --git a/src/share/classes/sun/reflect/misc/ReflectUtil.java b/src/share/classes/sun/reflect/misc/ReflectUtil.java ---- openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java -+++ openjdk/jdk/src/share/classes/sun/reflect/misc/ReflectUtil.java -@@ -202,5 +202,5 @@ - } - } - -- public static final String PROXY_PACKAGE = "sun.proxy"; -+ public static final String PROXY_PACKAGE = "com.sun.proxy"; - } -diff --git a/src/share/lib/security/java.security b/src/share/lib/security/java.security ---- openjdk/jdk/src/share/lib/security/java.security -+++ openjdk/jdk/src/share/lib/security/java.security -@@ -128,6 +128,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -148,6 +149,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -diff --git a/src/share/lib/security/java.security-solaris b/src/share/lib/security/java.security-solaris ---- openjdk/jdk/src/share/lib/security/java.security-solaris -+++ openjdk/jdk/src/share/lib/security/java.security-solaris -@@ -129,6 +129,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -149,6 +150,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -diff --git a/src/share/lib/security/java.security-windows b/src/share/lib/security/java.security-windows ---- openjdk/jdk/src/share/lib/security/java.security-windows -+++ openjdk/jdk/src/share/lib/security/java.security-windows -@@ -129,6 +129,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ -@@ -149,6 +150,7 @@ - com.sun.imageio.,\ - com.sun.istack.internal.,\ - com.sun.jmx.,\ -+ com.sun.proxy.,\ - com.sun.org.apache.xerces.internal.utils.,\ - com.sun.org.apache.xalan.internal.utils.,\ - com.sun.org.glassfish.external.,\ diff -r 1b2d86fddd09 -r e0baa69f348f patches/no_stripping.patch --- a/patches/no_stripping.patch Tue Mar 12 20:01:24 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,180 +0,0 @@ -diff -Nru openjdk.orig/hotspot/make/linux/makefiles/defs.make openjdk/hotspot/make/linux/makefiles/defs.make ---- openjdk.orig/hotspot/make/linux/makefiles/defs.make 2013-02-15 00:04:42.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/defs.make 2013-03-11 15:29:11.691786343 +0000 -@@ -186,7 +186,9 @@ - EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.so - ifneq ($(ZERO_BUILD), true) - ifneq ($(OBJCOPY),) -- EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo -+ ifneq ($(STRIP_POLICY),no_strip) -+ EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo -+ endif - endif - endif - -@@ -198,7 +200,9 @@ - EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.so - ifneq ($(ZERO_BUILD), true) - ifneq ($(OBJCOPY),) -- EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo -+ ifneq ($(STRIP_POLICY),no_strip) -+ EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo -+ endif - endif - endif - endif -@@ -208,7 +212,9 @@ - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.so - ifneq ($(OBJCOPY),) -- EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo -+ ifneq ($(STRIP_POLICY),no_strip) -+ EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo -+ endif - endif - endif - endif -@@ -221,8 +227,10 @@ - $(EXPORT_LIB_DIR)/sa-jdi.jar - ifneq ($(ZERO_BUILD), true) - ifneq ($(OBJCOPY),) From bugzilla-daemon at icedtea.classpath.org Wed Mar 13 02:19:14 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 13 Mar 2013 09:19:14 +0000 Subject: [Bug 1303] [IcedTea7] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1303 --- Comment #20 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.1?cmd=changeset;node=e0baa69f348f author: Andrew John Hughes date: Wed Mar 13 09:18:57 2013 +0000 Sync with forest and remove local copies of upstream patches. 2013-03-13 Andrew John Hughes * patches/8002344-krb5loginmodule.patch, * patches/8004344-toolkiterrorhandler.patch, * patches/8006179-lookup_using_findvirtual.patch, * patches/8006882-sun.proxy.patch, * patches/no_stripping.patch, * patches/pr1303-ifdef_fix.patch: Remove local copies of upstream patches. * Makefile.am: (HOTSPOT_CHANGESET): Update to IcedTea7 2.1 forest head, bringing in upstream versions of local patches. (HOTSPOT_CHANGESET): Likewise. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (HOTSPOT_SHA256SUM): Likewise. (CORBA_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. (ICEDTEA_PATCHES): Drop patches. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130313/4c3e5eae/attachment.html From ptisnovs at icedtea.classpath.org Wed Mar 13 02:31:29 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 13 Mar 2013 09:31:29 +0000 Subject: /hg/gfx-test: One helper method and ten new tests added into the... Message-ID: changeset 0c2bda9645ee in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=0c2bda9645ee author: Pavel Tisnovsky date: Wed Mar 13 10:34:35 2013 +0100 One helper method and ten new tests added into the test suite BitBltUsingBgColorAlpha. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java | 170 ++++++++++++++++ 2 files changed, 175 insertions(+), 0 deletions(-) diffs (199 lines): diff -r bbe7a70b8421 -r 0c2bda9645ee ChangeLog --- a/ChangeLog Tue Mar 12 09:43:16 2013 +0100 +++ b/ChangeLog Wed Mar 13 10:34:35 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-13 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java: + One helper method and ten new tests added into the test suite BitBltUsingBgColorAlpha. + 2013-03-12 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltUsingBgColor.java: diff -r bbe7a70b8421 -r 0c2bda9645ee src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java --- a/src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java Tue Mar 12 09:43:16 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java Wed Mar 13 10:34:35 2013 +0100 @@ -122,6 +122,26 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageType4ByteABGRPre(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR_PRE, newColor); + } + + /** * Calculate color with given alpha value. * * @param backgroundColor @@ -663,6 +683,156 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.red. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundRedAlpha000(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.red, 0.0f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.red. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundRedAlpha025(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.red, 0.25f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.red. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundRedAlpha050(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.red, 0.5f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.red. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundRedAlpha075(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.red, 0.75f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.red. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundRedAlpha100(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.red, 1.00f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.green. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundGreenAlpha000(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.green, 0.0f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.green. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundGreenAlpha025(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.green, 0.25f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.green. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundGreenAlpha050(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.green, 0.5f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.green. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundGreenAlpha075(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.green, 0.75f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Background color is set to Color.green. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType4ByteABGRbackgroundGreenAlpha100(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType4ByteABGR(image, graphics2d, Color.green, 1.00f); + } + + /** * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. * Background color is set to Color.black. * From adomurad at redhat.com Wed Mar 13 06:10:43 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 13 Mar 2013 09:10:43 -0400 Subject: PluginAppletViewer.showDocument broken? In-Reply-To: <1363166293.1218.9.camel@localhost.localdomain> References: <1362851464.1220.5.camel@localhost.localdomain> <513F0A27.3090803@redhat.com> <1363166293.1218.9.camel@localhost.localdomain> Message-ID: <51407AD3.2020409@redhat.com> On 03/13/2013 05:18 AM, Thomas Meyer wrote: > Hi, > > there seems to be another regression in the current tip. > > For remote log on to my employers site I use the the > SecureHCLauncherApplet. > > this applet has a the init() and start() method overwritten. > > the last thing that is executed in the start() method is a > PluginAppletViewer.showDocument(). > > stack trace is: > Thread [NetxPanelThread at https://employer.com/blabla] (Ausgesetzt) (nicht synchron) > PluginAppletViewer.showDocument(URL, String) Zeile: 921 (nicht synchron) > SecureHCLauncher.onFinishedLoadingWithAction(String) Zeile: 388 > SecureHCLauncher.onFinishedLoading() Zeile: 369 [lokale Variablen nicht verf?gbar] > SecureHCLauncher.doInstall() Zeile: 266 > SecureHCLauncher(SecureLauncherApplet).start() Zeile: 223 > SecureHCLauncher.start() Zeile: 205 > NetxPanel(AppletPanel).run() Zeile: 476 > Thread.run() Zeile: 722 > > The log also has this info: > WRITING 2: instance 9 reference 187 LoadURL https://successful-auth-site.com _top > PIPE: appletviewer wrote: instance 9 reference 187 LoadURL https://successful-auth-site.com _top > WRITING 2 DONE > PIPE: appletviewer read: instance 9 destroy > Waiting for data... > > The problem is, that the URL request to show in the current browser window ( == "_top") is never loaded/shown in the browser! > > This used to work for some months ago. I didn't try to login remotely for a while to this site... > > ideas are welcome! > > with kind regards > thomas > Hi! Taking it to distro-list. Have you tried with older versions of icedtea-web on the same website ? I will look into it. Thanks, -Adam From jvanek at icedtea.classpath.org Wed Mar 13 06:44:17 2013 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Wed, 13 Mar 2013 13:44:17 +0000 Subject: /hg/icedtea-web: 3 new changesets Message-ID: changeset ef954a4d000e in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=ef954a4d000e author: Jiri Vanek date: Wed Mar 13 12:44:53 2013 +0100 Added initial German localization by Jacob Wisor * netx/net/sourceforge/jnlp/resources/Messages_de.properties: New file with German properties changeset 6fec4892d51b in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=6fec4892d51b author: Jiri Vanek date: Wed Mar 13 14:24:55 2013 +0100 Added tests for German i18n * tests/reproducers/simple/LocalesTest/testcases/LocalesTestTest.java: Enhanced to test also German localization . * tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java: Enhanced to handle de messages and be prepared for locales with one language but different nations changeset fb7b3fb66a6b in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=fb7b3fb66a6b author: Jiri Vanek date: Wed Mar 13 14:34:26 2013 +0100 Jacob Wisor , fixed strange sentences in default locales bundle netx/net/sourceforge/jnlp/resources/Messages.properties diffstat: ChangeLog | 22 + netx/net/sourceforge/jnlp/resources/Messages.properties | 80 +- netx/net/sourceforge/jnlp/resources/Messages_de.properties | 536 ++++++++++ tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java | 198 ++- tests/reproducers/simple/LocalesTest/testcases/LocalesTestTest.java | 205 ++- 5 files changed, 892 insertions(+), 149 deletions(-) diffs (truncated from 1327 to 500 lines): diff -r e19fe33c82df -r fb7b3fb66a6b ChangeLog --- a/ChangeLog Tue Mar 05 16:35:40 2013 -0500 +++ b/ChangeLog Wed Mar 13 14:34:26 2013 +0100 @@ -1,3 +1,25 @@ +2012-13-03 Jiri Vanek + Jacob Wisor + + Fixed strange sentences in default locales bundle. + * netx/net/sourceforge/jnlp/resources/Messages.properties: + +2012-13-03 Jiri Vanek + + Added tests for German i18n + * tests/reproducers/simple/LocalesTest/testcases/LocalesTestTest.java: + Enhanced to test also German localization . + * tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java: + Enhanced to handle de messages and be prepared for locales with one language + but different nations. + +2012-13-03 Jiri Vanek + Jacob Wisor + + Added initial German localization + * netx/net/sourceforge/jnlp/resources/Messages_de.properties: + New file with German properties + 2013-03-05 Adam Domurad * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java diff -r e19fe33c82df -r fb7b3fb66a6b netx/net/sourceforge/jnlp/resources/Messages.properties --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Tue Mar 05 16:35:40 2013 -0500 +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Wed Mar 13 14:34:26 2013 +0100 @@ -51,9 +51,9 @@ LNullUpdatePolicy=Update policy cannot be null. LThreadInterrupted=Thread interrupted while waiting for file to launch. -LThreadInterruptedInfo=This can lead to deadlock or corrupted run, please restart your application/browser +LThreadInterruptedInfo=This can lead to deadlock or yield other damage during execution. Please restart your application/browser. LCouldNotLaunch=Could not launch JNLP file. -LCouldNotLaunchInfo=Application was not initialized, for more information execute javaws/browser from commandline and sent bug report. +LCouldNotLaunchInfo=The application has not been initialized, for more information execute javaws/browser from the command line and send a bug report. LCantRead=Could not read or parse the JNLP file. LCantReadInfo=You can try to download this file manually and send it as bug report to IcedTea-Web team. LNullLocation=Could not determine .jnlp file location. @@ -71,7 +71,7 @@ LInitApplet=Could not initialize applet. LInitAppletInfo=For more information click "more information button". LInitApplication=Could not initialize application. -LInitApplicationInfo=Application was not initialized, for more information execute javaws from commandline. +LInitApplicationInfo=The application has not been initialized, for more information execute javaws from the command line. LNotLaunchable=Not a launchable JNLP file. LNotLaunchableInfo=File must be a JNLP application, applet, or installer type. LCantDetermineMainClass=Unknown Main-Class. @@ -96,28 +96,28 @@ LNotVerified=Jars not verified. LCancelOnUserRequest=Canceled on user request. LFatalVerification=A fatal error occurred while trying to verify jars. -LFatalVerificationInfo=We caught an Exception from the JarCertVerifier class. One of these exceptions could be from not being able to read the cacerts or trusted.certs files. +LFatalVerificationInfo=An exception has been thrown in class JarCertVerifier. Being unable to read the cacerts or trusted.certs files could be a possible cause for this exception. LNotVerifiedDialog=Not all jars could be verified. LAskToContinue=Would you still like to continue running this application? # Parser -PInvalidRoot=Root node is not a jnlp node -PNoResources=No resources section defined +PInvalidRoot=Root element is not a jnlp element. +PNoResources=No resources element specified. PUntrustedNative=nativelib element cannot be specified unless a trusted environment is requested. PExtensionHasJ2SE=j2se element cannot be specified in a component extension file. PInnerJ2SE=j2se element cannot be specified within a j2se element. -PTwoMains=Duplicate main JAR defined in a resources element (there can be only one) -PNativeHasMain=Cannot specify main attribute on native JARs. -PNoInfoElement=No information section defined. +PTwoMains=Duplicate main attribute specified on a resources element (there can be only one) +PNativeHasMain=main attribute cannot be specified on a nativelib element. +PNoInfoElement=No information element specified. PMissingTitle=title PMissingVendor=vendor -PMissingElement=The {0} section has not been defined for your locale nor does a default value exist in the JNLP file. -PTwoDescriptions=Duplicate description of kind {0} -PSharing=Element "sharing-allowed" is illegal in a standard JNLP file -PTwoSecurity=Only one security element allowed per JNLPFile. -PEmptySecurity=Security element specified but does not contain a permissions element. -PTwoDescriptors=Only one application descriptor element allowed per JNLPFile. +PMissingElement=The {0} section has not been specified for your locale nor does a default value exist in the JNLP file. +PTwoDescriptions=Duplicate description elements of kind {0} are illegal. +PSharing=sharing-allowed element is illegal in a standard JNLP file +PTwoSecurity=Only one security element allowed per JNLP file. +PEmptySecurity=security element specified but does not contain a permissions element. +PTwoDescriptors=Only one application-desc element allowed per JNLP file. PTwoDesktops=Only one desktop element allowed PTwoMenus=Only one menu element allowed PTwoTitles=Only one title element allowed @@ -177,7 +177,7 @@ BOArg = Adds an application argument before launching. BOParam = Adds an applet parameter before launching. BOProperty = Sets a system property before launching. -BOUpdate = Update check if seconds since last checked. +BOUpdate = Check for updates. BOLicense = Display the GPL license and exit. BOVerbose = Enable verbose output. BOAbout = Shows a sample application. @@ -235,7 +235,7 @@ SNotYetValidCert=Resources contain entries whose signer certificate is not yet valid. SUntrustedCertificate=The digital signature was generated with an untrusted certificate. STrustedCertificate=The digital signature was generated with a trusted certificate. -SCNMisMatch=The expected hostname for this certificate is: "{0}"
The address being connected to is: "{1}" +SCNMisMatch=The expected hostname for this certificate is: "{0}"
The address being connected to is: "{1}" SRunWithoutRestrictions=This application will be run without the security restrictions normally provided by java. SCertificateDetails=Certificate Details @@ -283,7 +283,7 @@ # Value Validator messages. Messages should follow "Possible values ..." VVPossibleValues=Possible values {0} VVPossibleBooleanValues=are {0} or {1} -VVPossibleFileValues=include the absolute location of a file - it must begin with a / +VVPossibleFileValues=include an absolute path to a file VVPossibleRangedIntegerValues=are in range {0} to {1} (inclusive) VVPossibleUrlValues=include any valid url (eg http://icedtea.classpath.org/hg/) @@ -310,16 +310,16 @@ CPButCertificates=Certificates... # Control Panel - Headers -CPHead=IcedTea Web Control Panel -CPHeadAbout=About -CPHeadNetworkSettings=Network Proxy Settings -CPHeadTempInternetFiles=Temporary Internet Files -CPHeadJRESettings=Java Runtime Environment Settings -CPHeadCertificates=Certificates -CPHeadDebugging=Debugging Settings -CPHeadDesktopIntegration=Desktop Integrations -CPHeadSecurity=Security Settings -CPHeadJVMSettings=JVM Settings +CPHead=IcedTea-Web Control Panel +CPHeadAbout=\u00a0About\u00a0IcedTea-Web\u00a0 +CPHeadNetworkSettings=\u00a0Network\u00a0Proxy\u00a0Settings\u00a0 +CPHeadTempInternetFiles=\u00a0Temporary\u00a0Internet\u00a0Files\u00a0 +CPHeadJRESettings=\u00a0Java\u00a0Runtime\u00a0Environment\u00a0Settings\u00a0 +CPHeadCertificates=\u00a0Certificates\u00a0 +CPHeadDebugging=\u00a0Debugging\u00a0Settings\u00a0 +CPHeadDesktopIntegration=\u00a0Desktop\u00a0Integrations\u00a0 +CPHeadSecurity=\u00a0Security\u00a0Settings\u00a0 +CPHeadJVMSettings=\u00a0JVM\u00a0Settings\u00a0 # Control Panel - Tabs CPTabAbout=About IcedTea-Web @@ -402,10 +402,10 @@ # Control Panel - TemporaryInternetFilesPanel TIFPEnableCache=Keep temporary files on my computer -TIFPLocation=Location +TIFPLocation=\u00a0Location\u00a0 TIFPLocationLabel=Select the location where temporary files are kept TIFPChange=Change -TIFPDiskSpace=Disk space +TIFPDiskSpace=\u00a0Disk\u00a0space\u00a0 TIFPCompressionLevel=Select the compression level for JAR files TIFPNone=None TIFPMax=Max @@ -442,10 +442,10 @@ CLListDescription=Shows a list of all property names and values that are in use by IcedTea-Web CLGetDescription=Shows the value for property-name CLSetDescription=Sets the property-name to value if possible. The value is checked for being valid. If the administrator has locked the property, this will have no effect -CLResetDescription=Resets the value for property-name to it\'s default value +CLResetDescription=Resets the value for property-name to it\'s default value.\nall resets all properties recognized by IcedTea-Web to their default value. CLInfoDescription=Shows more information about the given property -CLCheckDescription=Shows any properties that have been defined but are not recognized by IcedTea Web -CLHelpDescription=The itweb-settings tool allows a user to modify, view and check configuration. \nTo use the GUI, do not pass any arguments. To use the CLI mode, pass in the approrpiate command and parameters. For help with a particular command, try: {0} command help +CLCheckDescription=Shows any properties that have been defined but are not recognized by IcedTea-Web +CLHelpDescription=The itweb-settings tool allows a user to modify, view and check configuration.\nTo use the GUI, do not pass any arguments. To use the CLI mode, pass in the approrpiate command and parameters. For help with a particular command, try: {0} command help # splash screen related SPLASHerror = Click here for details. Serious exception occurred. @@ -455,17 +455,17 @@ SPLASHhomepage = Homepage SPLASHdescription = Description SPLASHClose= Close -SPLASHclosewAndCopyException = Close and copy StackTrace to clipboard -SPLASHexOccured = Sorry, a serious exception occurred... +SPLASHclosewAndCopyException = Close and copy the stack trace to clipboard +SPLASHexOccured = A serious exception has occurred... SPLASHHome = Home SPLASHcantCopyEx = Can not copy exception SPLASHnoExRecorded = No exception recorded -SPLASHmainL1 = For even more information you can visit {0} and follow the steps to obtain information and fill bug +SPLASHmainL1 = For even more information you can visit {0} and follow the steps described there on how to obtain necessary information to file bug SPLASHurl = http://icedtea.classpath.org/wiki/IcedTea-Web#Filing_bugs SPLASHurlLooks = http://icedtea.classpath.org/wiki/IcedTea-Web -SPLASHmainL3 = Sorry no more information available, try to launch browser from command line and watch output. +SPLASHmainL3 = No further information available, try to launch the browser from the command line and examine the output. SPLASHcloseAndCopyShorter = Close and copy to clipboard -SPLASHmainL4 = We have noticed exception written below, for even more information try to launch browser from command line and watch output +SPLASHmainL4 = The folloing exception has occured. For more information, try to launch the browser from the command line and examine the output. SPLASHexWas = Exception was: SPLASHcfl = Can't follow link to SPLASHvendorsInfo = Information from vendor of your application @@ -473,7 +473,7 @@ SPLASHdefaultHomepage = Unspecified homepage, verify source rather SPLASHerrorInInformation = Error during loading of information element, verify source rather SPLASHmissingInformation = Information element is missing, verify source rather -SPLASHchainWas = This is the list of exceptions that occurred launching your applet. Please note, those exceptions can be from multiple applets. For a good bug report, be sure to run only one applet. +SPLASHchainWas = This is the list of exceptions that occurred launching your applet. Please note, those exceptions can originate from multiple applets. For a good bug report, be sure to run only one applet. APPEXTSECappletSecurityLevelExtraHighId=Disable running of all java applets APPEXTSECappletSecurityLevelVeryHighId=Very High Security @@ -534,4 +534,4 @@ APPEXTSECguiPanelShowOnlyPermanentA=Show only allowed permanent records APPEXTSECguiPanelShowOnlyPermanentN=Show only forbidden permanent records APPEXTSECguiPanelShowOnlyTemporalY=Show previously allowed applets records -APPEXTSECguiPanelShowOnlyTemporalN=Show previously denied applets records \ No newline at end of file +APPEXTSECguiPanelShowOnlyTemporalN=Show previously denied applets records diff -r e19fe33c82df -r fb7b3fb66a6b netx/net/sourceforge/jnlp/resources/Messages_de.properties --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/netx/net/sourceforge/jnlp/resources/Messages_de.properties Wed Mar 13 14:34:26 2013 +0100 @@ -0,0 +1,536 @@ +# German UI messages for netx +# L=Launcher, B=Boot, P=Parser, C=cache S=security +# +# General +NullParameter=Nullparameter +ButAllow=Zulassen +ButBrowse=Durchsuchen... +ButCancel=\ Abbrechen +ButClose=Schlie\u00dfen +ButCopy=In die Zwischenablage kopieren +ButMoreInformation=Weitere\u00a0Informationen... +ButOk=OK +ButProceed=Fortfahren +ButRun=Ausf\u00fchren +ButApply=Anwenden +ButDone=Fertig +ButShowDetails=Details zeigen +ButHideDetails=Details verbergen + +AFileOnTheMachine=eine Datei auf dem Rechner +AlwaysAllowAction=Diese Aktion immer zulassen +Usage=Gebrauch: +Error=Fehler + +Continue=Soll fortgefahren werden? +Field=Feld +From=Von +Name=Name +Password=Kennwort: +Publisher=Herausgeber +Unknown= +Username=Benutzername: +Value=Wert +Version=Version + +# LS - Severity +LSMinor=Gering +LSFatal=Fatal + +# LC - Category +LCSystem=Systemfehler +LCExternalLaunch=Externer Startfehler +LCFileFormat=Dateiformatfehler +LCReadError=Lesefehler +LCClient=Anwendungsfehler +LCLaunching=Startfehler +LCNotSupported=Nicht unterst\u00fctztes Feature +LCInit=Initialisierungsfehler +LAllThreadGroup=Alle JNLP Anwendungen +LNullUpdatePolicy=Aktualisierungsrichtlinie darf nicht null sein. + +LThreadInterrupted=Ausf\u00fchrungsstrang unterbrochen, w\u00e4hrend auf den Start der Datei gewartet wird. +LThreadInterruptedInfo=Dies kann zum Einfrieren oder sonstigen Sch\u00e4den w\u00e4hrend der Ausf\u00fchrung f\u00fchren. Bitte die Anwendung oder den Web-Browser neustarten. +LCouldNotLaunch=Konnte JNLP-Datei nicht starten. +LCouldNotLaunchInfo=Die Anwendung war nicht initialisiert. Um detailierte Informationen zu erhalten k\u00f6nnen javaws oder der Web-Browser von der Befehlszeile aus gestartet werden und die Textausgabe in einem Fehlerbericht gesendet werden. +LCantRead=Konnte die JNLP-Datei nicht lesen oder die Syntax analysieren. +LCantReadInfo=Die Datei kann m\u00f6glicherweise manuell heruntergeladen und als Fehlerbericht an das IcedTea-Web Team gesendet werden. +LNullLocation=Konnte den Ort der .jnlp Datei nicht bestimmen. +LNullLocationInfo=Es wurde versucht eine JNLP-Datei in einer anderen JVM zu starten, aber die Datei konnte am Ort nicht ermittelt werden. Um in einer externen JVM zu starten, muss die Laufzeitumgebung in der Lage sein die .jnlp Datei entweder auf dem lokalen Dateisystem oder einem Server zu ermitteln. +LNetxJarMissing=Konnte den Ort von netx.jar nicht bestimmen. +LNetxJarMissingInfo=Ein wurde versucht eine JNLP-Datei in einer anderen JVM zu starten, aber das netx.jar konnte am Ort nicht ermittelt werden. Um in einer externen JVM zu starten, muss die Laufzeitumgebung in der Lage sein das netx.jar zu ermitteln. +LNotToSpec=JNLP-Datei nicht strikt nach Spezifikation. +LNotToSpecInfo=Die JNLP-Datei enth\u00e4lt Daten, die nach JNLP Spezifikation verboten sind. Die Laufzeitumgebung kann versuchen die ung\u00fcltigen Information zu ignorieren und die Datei zu starten fortfahren. +LNotApplication=Keine Anwendungsdatei. +LNotApplicationInfo=Es wurde versucht eine Nichtanwendungsdatei als eine Anwendung zu laden. +LNotApplet=Keine Applet-Datei. +LNotAppletInfo=Es wurde versucht eine Nichtappletdatei als ein Applet zu laden. +LNoInstallers=Installer werden nicht unterst\u00fctzt. +LNoInstallersInfo=JNLP Installerdateien werden noch nicht unterst\u00fctzt. +LInitApplet=Konnte Applet nicht initialisieren. +LInitAppletInfo=Um weitere Information zu erhalten, bitte den Knopf \u201eWeitere Informationen\u201c klicken. +LInitApplication=Konnte Anwendung nicht initialisieren. +LInitApplicationInfo=Die Anwendung war nicht initialisiert. Um weitere Informationen zu erhalten kann javaws von der Befehlszeile aus ausgef\u00fchrt werden. +LNotLaunchable=Keine startbare JNLP-Datei. +LNotLaunchableInfo=Datei muss ein JNLP Anwendungs-, Applet- oder Installertyp sein. +LCantDetermineMainClass=Unbekannte Hauptklasse. +LCantDetermineMainClassInfo=Konnte die Hauptklasse f\u00fcr diese Anwendung nicht bestimmen. +LUnsignedJarWithSecurity=Kann keine Berechtigungen nicht signierten Jars gew\u00e4hren. +LUnsignedJarWithSecurityInfo=Anwendung hat Sicherheitsberechtigungen angefordert, aber Jars sind nicht signiert. +LSignedJNLPAppDifferentCerts=Die JNLP Anwendung ist nicht vollst\u00e4ndig durch ein einzelnes Zertifikat signiert. +LSignedJNLPAppDifferentCertsInfo=Der JNLP Anwendung wurden ihre Komponenten individuell signiert, jedoch muss es einen gemeinsamen Unterzeichner zu allen Eintr\u00e4gen geben. +LSignedAppJarUsingUnsignedJar=Signierte Anwendung nutzt nicht signierte Jars. +LSignedAppJarUsingUnsignedJarInfo=Das Haupt-Jar der Anwendung ist signiert, aber manche Jars, die sie nutzt sind nicht. +LSignedJNLPFileDidNotMatch=Die signierte JNLP-Datei stimmt nicht mit der startenden JNLP-Datei \u00fcberein. +LNoSecInstance=Fehler: Keine Sicherheitsinstanz f\u00fcr {0}. Die Anwendung k\u00f6nnte Schwierigkeiten haben fortzufahren +LCertFoundIn={0} in cacerts gefunden ({1}) +LSingleInstanceExists=Eine andere Instanz dieses Applets existiert bereits und nur eine kann zur selben Zeit ausgef\u00fchrt werden. + +JNotApplet=Datei ist kein Applet. +JNotApplication=Datei ist keine Anwendung. +JNotComponent=Datei ist keine Komponente. +JNotInstaller=Datei ist kein Installer. +JInvalidExtensionDescriptor=Erweiterung verweist nicht auf eine Komponente oder einen Installer (Name={1}, Ort={2}). + +LNotVerified=Jars nicht verifiziert. +LCancelOnUserRequest=Abgebrochen auf Anfrage des Benutzers. +LFatalVerification=W\u00e4hrend des Versuchs Jars zu verifizieren, ist ein fataler Fehler aufgetreten. +LFatalVerificationInfo=Eine Ausnahme in der Klasse JarCertVerifier wurde abgefangen. Die Unlesbarkeit der Dateien cacerts oder trusted.certs k\u00f6nnte eine Ursache dieser Ausnahmen sein. + + +LNotVerifiedDialog=Nicht alle Jars konnten verifiziert werden. +LAskToContinue=M\u00f6chten Sie dennoch die Ausf\u00fchrung dieser Anwendung fortsetzen? + +# Parser +PInvalidRoot=Der Wurzelknoten ist nicht das Element jnlp +PNoResources=Kein Element resources angeben +PUntrustedNative=Das Element nativelib kann nicht angegeben werden sofern eine vertrauensw\u00fcrdige Umgebung angefordert wird. +PExtensionHasJ2SE=Das Element j2se kann nicht in einer Komponentenerweiterungsdatei angegeben werden. +PInnerJ2SE=Das Element j2se kann nicht innerhalb eines j2se-Elements angegeben werden. +PTwoMains=Doppeltes main JAR in einem resources-Element definiert (es kann nur eins geben) +PNativeHasMain=Das Attribut main darf nicht am Element nativelib angeben werden +PNoInfoElement=Kein Element information angegeben +PMissingTitle=Titel +PMissingVendor=Lieferant +PMissingElement=Der Abschnitt {0} wurde f\u00fcr das aktive Gebietsschema nicht definiert, noch existiert ein Standardwert in der JNLP-Datei. +PTwoDescriptions=Doppelte Elemente description mit Attribut kind {0} sind nicht erlaubt. +PSharing=Das Element \u201esharing-allowed\u201c ist in einer Standard-JNLP-Datei nicht erlaubt +PTwoSecurity=Nur ein Element security pro JNLP-Datei zugelassen. +PEmptySecurity=Security-Element angegeben, enth\u00e4lt aber das Element permissions nicht. +PTwoDescriptors=Nur ein Element application-desc pro JNLP-Datei zugelassen. +PTwoDesktops=Nur ein Element desktop zugelassen +PTwoMenus=Nur ein Element menu zugelassen +PTwoTitles=Nur ein Element title zugelassen +PTwoIcons=Nur ein Element icon zugelassen +PTwoUpdates=Nur ein Element update ist zugelassen +PUnknownApplet=Unbekanntes Applet +PBadWidth=Ung\u00fcltige Appletbreite. +PBadHeight=Ung\u00fcltige Appleth\u00f6he. +PUrlNotInCodebase=Relative URL gibt kein Unterverzeichnis der Codebasis an. (Knoten={0}, href={1}, Basis={2}) +PBadRelativeUrl=Ung\u00fcltige relative URL (Knoten={0}, href={1}, Basis={2}) +PBadNonrelativeUrl=Ung\u00fcltige nicht-relative URL (Knoten={0}, href={1}) +PNeedsAttribute=Das {0} Element muss ein {1} Attribut angeben. +PBadXML=Ung\u00fcltige XML Dokumentensyntax. +PBadHeapSize=Ung\u00fcltiger Wert f\u00fcr den dynamischen Speicher ({0}) + +# Runtime +BLaunchAbout=Das Fenster \u201e\u00dcber IcedTea-Web\u201c wird ge\u00f6ffnet... +BNeedsFile=Muss eine .jnlp Datei angeben +RNoAboutJnlp=Es ist nicht m\u00f6glich about.jnlp zu finden +BFileLoc=JNLP-Dateiort +BBadProp=Falsches Eigenschaftformat {0} (sollte Schl\u00fcssel=Wert sein) +BBadParam=Falsches Parameterformat {0} (sollte Name=Wert sein) +BNoDir=Verzeichnis {0} existiert nicht. +BNoCodeOrObjectApplet=Die Auszeichnung applet muss ein Attribut 'code' oder 'object' angegeben. +RNoResource=Fehlende Ressource: {0} +RShutdown=Diese Ausnahme um Herunterfahren der JVM zu verhindern, aber der Prozess wurde terminiert. +RExitTaken=Ausstiegsklasse bereits gesetzt und Aufrufender ist keine Ausstiegsklasse. +RCantReplaceSM=Wechseln des SecurityManager ist nicht zugelassen. +RCantCreateFile=Kann Datei {0} nicht erstellen +RCantDeleteFile=Kann Datei {0} nicht l\u00f6schen +RRemoveRPermFailed=Entfernen der Leseberechtigung f\u00fcr Datei {0} schlug fehl +RRemoveWPermFailed=Entfernen der Schreibberechtigungen f\u00fcr Datei {0} schlug fehl +RRemoveXPermFailed=Entfernen der Ausf\u00fchrberechtigungen f\u00fcr Datei {0} schlug fehl +RGetRPermFailed=Erwerben der Leseberechtigungen f\u00fcr Datei {0} schlug fehl +RGetWPermFailed=Erwerben der Schreibberechtigungen f\u00fcr Datei {0} schlug fehl +RGetXPermFailed=Erwerben der Ausf\u00fchrberechtigungen f\u00fcr Datei {0} schlug fehl +RCantCreateDir=Kann Verzeichnis {0} nicht erstellen +RCantRename=Kann {0} nicht in {1} umbenennen +RDenyStopped=Angehaltene Anwendungen haben keine Berechtigungen. +RExitNoApp=Kann die JVM nicht beenden, da die gegenw\u00e4rtige Anwendung nicht bestimmt werden kann. +RNoLockDir=Kann Ausschlussverzeichnis nicht erstellen ({0}) +RNestedJarExtration=Kann verschachteltes Jar nicht extrahieren. +RUnexpected=Unerwartetes {0} bei {1} +RConfigurationError=Fataler Fehler beim Lesen der Konfiguration +RConfigurationFatal=FEHLER: Ein fataler Fehler ist beim Laden der Konfiguration aufgetreten. Vielleicht war eine globale Konfiguration erforderlich, konnte jedoch nicht gefunden werden +RPRoxyPacNotSupported=Die Verwendung von Autoproxykonfigurationsdateien (PAC) wird nicht unterst\u00fctzt. +RProxyFirefoxNotFound=Es ist nicht m\u00f6glich Firefoxs Proxyeinstellungen zu verwenden. Nutze \u201eDIRECT\u201c als Proxytyp. +RProxyFirefoxOptionNotImplemented=Browserproxyoption \u201e{0}\u201c ({1}) wird noch nicht unterst\u00fctzt. +RBrowserLocationPromptTitle=Browserort +RBrowserLocationPromptMessage=Bitte den Ort des Browsers angeben +RBrowserLocationPromptMessageWithReason=Bitte den Ort des Browsers angeben (der Browserbefehl \u201e{0}\u201c ist ung\u00fcltig). + +# Boot options, message should be shorter than this ----------------> +BOUsage=javaws [-Ausf\u00fchrungsoptionen] +BOUsage2=javaws [-Steuerungsoptionen] +BOJnlp=Ort der zu startenden JNLP-Datei (URL oder Datei). +BOArg=F\u00fcgt einen Anwendungsparameter vor dem Start hinzu. +BOParam=F\u00fcgt einen Appletparameter vor dem Start hinzu. +BOProperty=Setzt eine Systemeigenschaft vor dem Start. +BOUpdate=Pr\u00fcfe auf Aktualisierungen. +BOLicense=Die GPL Lizenz zeigen und beenden. +BOVerbose=Ausf\u00fchrliche Ausgabe aktivieren. +BOAbout=Zeigt eine Beispielanwendung. +BONosecurity=Deaktiviert die sichere Laufzeitumgebung. +BONoupdate=Deaktiviert die Pr\u00fcfung nach Aktualisierungen. +BOHeadless=Deaktiviert Herunterladefenster, andere Benutzeroberfl\u00e4chen. +BOStrict=Aktiviert die strikte Pr\u00fcfung des JNLP-Dateiformats. +BOViewer=Zeigt die Ansicht der vertrauensw\u00fcrdigen Zertifikate. +BXnofork=Keine weitere JVM erstellen. +BXclearcache=Den JNLP Anwendungszwischenspeicher s\u00e4ubern. +BOHelp=Diese Meldung ausgeben und beenden. + +# Cache +CAutoGen=Automatisch generiert - Nicht editieren +CNotCacheable={0} ist keine zwischenspeicherbare Ressource +CDownloading=Herunterladen +CComplete=Vollst\u00e4ndig +CChooseCache=Ein Zwischenspeicherverzeichnis w\u00e4hlen... +CChooseCacheInfo=Netx ben\u00f6tigt einen Ort zur Ablage von Zwischenspeicherdateien. +CChooseCacheDir=Zwischenspeicherverzeichnis +CCannotClearCache=Kann den Zwischenspeicher zur Zeit nicht s\u00e4ubern +CFakeCache=Zwischenspeicher ist durcheinander. Wird geordnet. +CFakedCache=Zwischenspeicher war durcheinander und wurde geordnet. Es wird strengstens empfohlen, dass \u201ejavaws -Xclearcache\u201c und anschlie\u00dfend die Anwendung ausgef\u00fchrt wird. + +# Security +SFileReadAccess=Die Anwendung hat Lesezugriff auf {0} angefordert. Soll diese Aktion zugelassen werden? +SFileWriteAccess=Die Anwendung hat Schreibzugriff auf {0} angefordert. Soll diese Aktion zugelassen werden? +SDesktopShortcut=Die Anwendung hat die Berechtigung eine Verkn\u00fcpfung auf dem Desktop zu erstellen angefordert. Soll diese Aktion zugelassen werden? +SSigUnverified=Die digitale Signatur der Anwendung konnte nicht verifiziert werden. Soll die Anwendung zur Ausf\u00fchrung gebracht werden? +SSigVerified=Die digitale Signatur der Anwendung wurde verifiziert. Soll die Anwendung zur Ausf\u00fchrung gebracht werden? +SSignatureError=Die digitale Signatur der Anwendung hat einen Fehler. Soll die Anwendung zur Ausf\u00fchrung gebracht werden? +SUntrustedSource=Die digitale Signatur konnte nicht durch eine vertrauensw\u00fcrdige Quelle verifiziert werden. Die Anwendung sollte nur zur Ausgef\u00fchrung gebracht werden, wenn der Ursprung der Anwendung vertrauensw\u00fcrdig ist. +SWarnFullPermissionsIgnorePolicy=Dem ausgef\u00fchrten Code werden volle Berechtigungen gegeben, indem jedwede Java-Richtlinien die eingerichtet sein k\u00f6nnten ignoriert werden. +STrustedSource=Die digitale Signatur wurde durch eine vertrauensw\u00fcrdige Quelle best\u00e4tigt. +SClipboardReadAccess=Die Anwendung hat den ausschlie\u00dflichen Lesezugriff auf die Systemzwischenablage angefordert. Soll diese Aktion zugelassen werden? +SClipboardWriteAccess=Die Anwendung hat den ausschlie\u00dflichen Schreibzugriff auf die Systemzwischenablage angefordert. Soll diese Aktion zugelassen werden? +SPrinterAccess=Die Anwendung hat den Druckerzugriff angefordert. Soll diese Aktion zugelassen werden? +SNetworkAccess=Die Anwendung hat die Berechtigung Verbindungen zu {0} herzustellen angefordert. Soll diese Aktion zugelassen werden? +SNoAssociatedCertificate= +SUnverified=(nicht verifiziert) +SAlwaysTrustPublisher=Dem Inhalt von diesem Herausgeber immer vertrauen +SHttpsUnverified=Das HTTPS Zertifikat dieser Website kann nicht verifiziert werden. +SNotAllSignedSummary=Nur Teile des Anwendungscodes sind signiert. +SNotAllSignedDetail=Diese Anwendung enth\u00e4lt sowohl signierten als auch nicht signierten Code. W\u00e4hrend signierter Code sicher ist, wenn Sie dem Anbieter vertrauen, kann nicht signierter Code sich \u00fcber Code erstrecken, der sich der Kontrolle des Anbieters entzieht. +SNotAllSignedQuestion=Soll fortgefahren und diese Anwendung dennoch zur Ausf\u00fchrung gebracht werden? +SAuthenticationPrompt=Der Server {0} von {1} fordert Authentifizierung an. Er sagt: \u201e{2}\u201c +SJNLPFileIsNotSigned=Die Anwendung enth\u00e4lt eine digitale Signatur in der, die startende JNLP-Datei nicht signiert ist. + +# Security - used for the More Information dialog +SBadKeyUsage=Ressourcen enthalten Eintr\u00e4ge, deren Signaturzertifikaterweiterung KeyUsage die Codesignatur nicht zul\u00e4sst. +SBadExtendedKeyUsage=Ressourcen enthalten Eintr\u00e4ge, deren Signaturzertifikaterweiterung ExtendedKeyUsage die Codesignatur nicht zul\u00e4sst. +SBadNetscapeCertType=Ressourcen enthalten Eintr\u00e4ge, deren Signaturzertifikaterweiterung NetscapeCertType die Codesignatur nicht zul\u00e4sst. +SHasExpiredCert=Die digitale Signatur ist abgelaufen. +SHasExpiringCert=Ressourcen enthalten Eintr\u00e4ge, deren Signaturzertifikat innerhalb von 6 Monaten ablaufen wird. +SNotYetValidCert=Ressourcen enthalten Eintr\u00e4ge, deren Signaturzertifikat noch nicht g\u00fcltig ist. +SUntrustedCertificate=Die digitale Signatur wurde mit einem nicht vertrauensw\u00fcrdigen Zertifikat generiert. +STrustedCertificate=Die digitale Signatur wurde mit einem vertrauensw\u00fcrdigen Zertifikat generiert. +SCNMisMatch=Der erwartete Hostname f\u00fcr dieses Zertifikat ist: \u201e{0}\u201c
Die Adresse zu der verbunden wird ist: \u201e{1}\u201c +SRunWithoutRestrictions=Diese Anwendung wird ohne die von Java normalerweise gebotenen Sicherheitsbeschr\u00e4nkungen ausgef\u00fchrt werden. +SCertificateDetails=Zertifikatdetails + +# Security - certificate information +SIssuer=Aussteller +SSerial=Seriennummer +SMD5Fingerprint=MD5 Fingerabdruck +SSHA1Fingerprint=SHA1 Fingerabdruck +SSignature=Signatur +SSignatureAlgorithm=Signaturalgorithmus +SSubject=Inhaber +SValidity=G\u00fcltigkeit + +# Certificate Viewer +CVCertificateViewer=Zertifikate +CVCertificateType=Zertifikattyp +CVDetails=Details +CVExport=Exportieren +CVExportPasswordMessage=Kennwort eingeben, um Schl\u00fcsseldatei zu sch\u00fctzen: +CVImport=Importieren +CVImportPasswordMessage=Kennwort eingeben, um auf Datei zuzugreifen: +CVIssuedBy=Ausgestellt von +CVIssuedTo=Ausgestellt f\u00fcr +CVPasswordTitle=Authentifizierung erforderlich +CVRemove=Entfernen +CVRemoveConfirmMessage=Soll das markierte Zertifikat wirklich entfernt werden? +CVRemoveConfirmTitle=Best\u00e4tigung - Zertifikat entfernen? +CVUser=Benutzer +CVSystem=System + +KS=Schl\u00fcsselspeicher +KSCerts=Vertrauensw\u00fcrdige Zertifikate +KSJsseCerts=Vertrauensw\u00fcrdige JSSE Zertifikate +KSCaCerts=Vertrauensw\u00fcrdige Stammzertifizierungsstellenzertifikate +KSJsseCaCerts=Vertrauensw\u00fcrdige JSSE Stammzertifizierungsstellenzertifikate +KSClientCerts=Clientauthentifizierungszertifikate + +# Deployment Configuration messages +DCIncorrectValue=Die Eigenschaft \u201e{0}\u201c hat den falschen Wert \u201e{1}\u201c. M\u00f6gliche Werte {2}. +DCInternal=Interner Fehler: {0} +DCSourceInternal= +DCUnknownSettingWithName=Die Eigenschaft \u201e{0}\u201c ist unbekannt. + +# Value Validator messages. Messages should follow "Possible values ..." From jvanek at icedtea.classpath.org Wed Mar 13 06:48:34 2013 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Wed, 13 Mar 2013 13:48:34 +0000 Subject: /hg/icedtea-web: Udated news for DE transaltion and Authors for ... Message-ID: changeset e6c51c4b4d20 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=e6c51c4b4d20 author: Jiri Vanek date: Wed Mar 13 14:51:20 2013 +0100 Udated news for DE transaltion and Authors for Jacob diffstat: AUTHORS | 1 + ChangeLog | 5 +++++ NEWS | 1 + 3 files changed, 7 insertions(+), 0 deletions(-) diffs (34 lines): diff -r fb7b3fb66a6b -r e6c51c4b4d20 AUTHORS --- a/AUTHORS Wed Mar 13 14:34:26 2013 +0100 +++ b/AUTHORS Wed Mar 13 14:51:20 2013 +0100 @@ -26,6 +26,7 @@ Joshua Sumali Jiri Vanek Mark Wielaard +Jacob Wisor Man Lung Wong This project also includes code from the following projects: diff -r fb7b3fb66a6b -r e6c51c4b4d20 ChangeLog --- a/ChangeLog Wed Mar 13 14:34:26 2013 +0100 +++ b/ChangeLog Wed Mar 13 14:51:20 2013 +0100 @@ -1,3 +1,8 @@ +2012-13-03 Jiri Vanek + + * NEWS: mentioned de translation + * AUTHORS: added Jacob Wisor + 2012-13-03 Jiri Vanek Jacob Wisor diff -r fb7b3fb66a6b -r e6c51c4b4d20 NEWS --- a/NEWS Wed Mar 13 14:34:26 2013 +0100 +++ b/NEWS Wed Mar 13 14:51:20 2013 +0100 @@ -10,6 +10,7 @@ New in release 1.4 (2012-XX-XX): * Added cs_CZ localisation +* Added de localisation * Splash screen for javaws and plugin * All IcedTea-Web dialogues are centered to middle of active screen * Download indicator made compact for more then one jar From adomurad at redhat.com Wed Mar 13 07:20:42 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 13 Mar 2013 10:20:42 -0400 Subject: [rfc][icedtea-web] Ensure applet shutdown finishes without exceptions In-Reply-To: <510AEAC0.2010104@redhat.com> References: <510AEAC0.2010104@redhat.com> Message-ID: <51408B3A.2070500@redhat.com> On 01/31/2013 05:05 PM, Adam Domurad wrote: > Hi all. Another round of what I think could be important stability > fixes for icedtea-web. > > I noticed while doing my unsigned-applet-confirmation patch that > JNLPClassLoader instances did not always reach reference-count == 0 > when all their instances should have been destroyed. The first part of > that was the applet synchronization issue, that I have posted a patch > for. > > 3 additional problems fixed here: > > Fixed in npe-fix-and-wait-for-init.patch: > 1.) There was a sometimes-occurring NPE in > JNLPClassLoader#getPermisions, when a CodeSource did not have an > associated location when an applet was destroyed. This could cause the > destroyApplet code to not finish. This was fixed with a simple null > check guard. This fixes some spurious exceptions being printed out > during shutdown (causing some noise in reproducer system). > > 2.) Applets can actually be destroyed from one thread *in the middle > of initialization*, while somewhat hard to reproduce, spamming refresh > on a many-applet page inevitably caused it. Luckily a mechanism was > already in place for efficiently waiting for applets to initialize. > > Fixed in dont-interrupt-workers.patch: > > 3.) Applets were being interrupted while shutting down -- a major > cause of spurious exceptions being printed out (causing even more > noise in reproducer system). This interrupt facility was too > heavy-weight for the desired task. Instead Java's builtin wait & > notify facilities are now used to perform the same operation on a much > finer scale. > > ** Note that I looked into the matter and saw that the method > notifyWorkerIsFree did not actually perform the desired task and was > removed as misleading. In fact the consumer thread spins around > looking for free workers and did not wait for an interruption. This > behaviour has not changed, and the method is not needed (nor was it > needed how the code was before). > > npe-fix-and-wait-for-init.patch changes: > 2013-XX-XX Adam Domurad > > Ensure applet destruction cannot in the middle of initialization. > Prevent NPE that can sometimes occurs (especially with this change). > * netx/net/sourceforge/jnlp/NetxPanel.java > (destroyApplet): wait for applet initialization > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > (getPermissions): avoid potential NPE if code source location is > missing > > dont-interrupt-workers.patch changes: > 2013-XX-XX Adam Domurad > > Don't interrupt worker/consumer threads (can prevent shutdown code > from > executing); instead use Object wait/notify methods. > * plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java > (notifyHasWork): Replacement for thread interruption > (waitForWork): Replacement for thread sleeping > (run): Use waitForWork instead of Thread.sleep > (notifyWorkerIsFree): Removed -- misleading method. > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > (message): Make volatile, as it should have always been. > (notifyHasWork): Replacement for thread interruption > (waitForWork): Replacement for thread sleeping > (run): Use waitForWork instead of Thread.sleep > (getPermissions): avoid potential NPE if code source location is > missing > (free): Remove reference to notifyWorkerIsFree. Ping ? (for dont-interrupt-workers.patch) This is IMO quite an improvement for stability. It's also bugging me seeing this avoidable InterruptedException over and over. > > > I am excited to see these changes get in. I will see soon if there's > any effect on the amount of noise in the test system. > > Happy hacking, > -Adam -Adam From jfabriko at redhat.com Wed Mar 13 09:13:36 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Wed, 13 Mar 2013 17:13:36 +0100 Subject: [rfc][icedtea-web] KnownToFailInBrowsers annotation patch Message-ID: <5140A5B0.6080008@redhat.com> Hello, I am sending for your consideration a patch that introduces the @KnownToFailInBrowsers annotation, which may be useful in some of the reproducers (namely passing arrays from JS->J does work in opera and firefox and does not work in google-chrome, chromium, midori and epiphany, and i think it is more problem of the browsers than of icedtea-web plugin). The annotation is detected in junit-runner/JunitLikeXmlOutputListener.java and junit-runner/LessVerboseTextListener.java and reflected in the console and xml output of run-netx-dist-tests. Cheers, Jana 2013-03-13 Jana Fabrikova * /tests/test-extensions/net/sourceforge/jnlp/annotations/KnownToFailInBrowsers.java the implementation of new annotation, which has an array of browsers of type Browsers[] named failsIn * /tests/junit-runner/JunitLikeXmlOutputListener.java in method (testDone) the testcases that are known to fail in current browser are detected in addition to the tests that are k2f in all browsers * /tests/junit-runner/LessVerboseTextListener.java added method (getK2FinB) reading the annotion, in method (printK2F) the testcases that are known to fail in current browser are detected in addition to the tests that are k2f in all browsers -------------- next part -------------- A non-text attachment was scrubbed... Name: k2fannot.patch Type: text/x-patch Size: 9666 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130313/423e3e26/k2fannot.patch From jvanek at redhat.com Wed Mar 13 09:45:09 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 13 Mar 2013 17:45:09 +0100 Subject: [rfc][icedtea-web] KnownToFailInBrowsers annotation patch In-Reply-To: <5140A5B0.6080008@redhat.com> References: <5140A5B0.6080008@redhat.com> Message-ID: <5140AD15.8090606@redhat.com> On 03/13/2013 05:13 PM, Jana Fabrikova wrote: > Hello, > > I am sending for your consideration a patch that introduces the @KnownToFailInBrowsers annotation, which may be useful in some of the reproducers (namely passing arrays from JS->J does work in opera and firefox and does not work in google-chrome, chromium, midori and epiphany, and i think it is more problem of the browsers than of icedtea-web plugin). > > The annotation is detected in junit-runner/JunitLikeXmlOutputListener.java and junit-runner/LessVerboseTextListener.java and reflected in the console and xml output of run-netx-dist-tests. > > Cheers, > Jana > > 2013-03-13 Jana Fabrikova > > * /tests/test-extensions/net/sourceforge/jnlp/annotations/KnownToFailInBrowsers.java > the implementation of new annotation, which has an array of > browsers of type Browsers[] named failsIn > > * /tests/junit-runner/JunitLikeXmlOutputListener.java > in method (testDone) the testcases that are known to fail in > current browser are detected in addition to the tests that are > k2f in all browsers > > * /tests/junit-runner/LessVerboseTextListener.java > added method (getK2FinB) reading the annotion, > in method (printK2F) the testcases that are known to fail in > current browser are detected in addition to the tests that are > k2f in all browsers hmhm... I'm not sure If new type of annotation is needed. I would prefer extension of KnownTofail as it is. Now it have no parameter. In your new implementation it will have optional Browsers[] failsIn(). If it will be null/empty, then it will behave as we are used now. Otherwise it will be more sophisticated What do you think? For the implementation itself - uless I missed something, I'm terribly missing the browser recognition handling in xml/plaintext generation and in xslt sheet. Also some example usage of annotaion would be nice and as a top candy the screenshots of outputs can be attached. J. From bugzilla-daemon at icedtea.classpath.org Wed Mar 13 11:17:47 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 13 Mar 2013 18:17:47 +0000 Subject: [Bug 1342] java.lang.ArrayIndexOutOfBoundsException - LOG4j In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1342 Lakshmi changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P3 |P1 --- Comment #1 from Lakshmi --- Please look in to this issue. Please help us. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130313/bf86c2cd/attachment.html From ptisnovs at icedtea.classpath.org Thu Mar 14 03:06:10 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 14 Mar 2013 10:06:10 +0000 Subject: /hg/gfx-test: Six new rescale operators and nine new tests added... Message-ID: changeset 36745cfac283 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=36745cfac283 author: Pavel Tisnovsky date: Thu Mar 14 11:09:17 2013 +0100 Six new rescale operators and nine new tests added into the test suite BitBltRescaleOp. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltRescaleOp.java | 144 ++++++++++++++++++++++++ 2 files changed, 149 insertions(+), 0 deletions(-) diffs (191 lines): diff -r 0c2bda9645ee -r 36745cfac283 ChangeLog --- a/ChangeLog Wed Mar 13 10:34:35 2013 +0100 +++ b/ChangeLog Thu Mar 14 11:09:17 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-14 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltRescaleOp.java: + Six new rescale operators and nine new tests added into the test suite BitBltRescaleOp. + 2013-03-13 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java: diff -r 0c2bda9645ee -r 36745cfac283 src/org/gfxtest/testsuites/BitBltRescaleOp.java --- a/src/org/gfxtest/testsuites/BitBltRescaleOp.java Wed Mar 13 10:34:35 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltRescaleOp.java Thu Mar 14 11:09:17 2013 +0100 @@ -76,10 +76,20 @@ private static final float DarkenScale = 0.5f; private static final float LightenScale = 2.0f; + private static final float[] NoFilterScaleArray = {1.0f, 1.0f, 1.0f}; + private static final float ZeroOffset = 0.0f; private static final float DarkeningOffset = -128; private static final float LighteningOffset = 127f; + private static final float[] DarkeningRedOffset = new float[]{ DarkeningOffset, 0f, 0f }; + private static final float[] DarkeningGreenOffset = new float[]{ 0f, DarkeningOffset,0f }; + private static final float[] DarkeningBlueOffset = new float[]{ 0f, 0f, DarkeningOffset }; + + private static final float[] LighteningRedOffset = new float[]{ LighteningOffset, 0f, 0f }; + private static final float[] LighteningGreenOffset = new float[]{ 0f, LighteningOffset,0f }; + private static final float[] LighteningBlueOffset = new float[]{ 0f, 0f, LighteningOffset }; + private static final float WhiteImageOffset = 255f; private static final float BlackImageOffset = -255f; @@ -90,6 +100,14 @@ private static final RescaleOp whiteImageOffsetROP = new RescaleOp(NoFilterScale, WhiteImageOffset, null); private static final RescaleOp blackImageOffsetROP = new RescaleOp(NoFilterScale, BlackImageOffset, null); + private static final RescaleOp darkenRedOffsetROP = new RescaleOp(NoFilterScaleArray, DarkeningRedOffset, null); + private static final RescaleOp darkenGreenOffsetROP = new RescaleOp(NoFilterScaleArray, DarkeningGreenOffset, null); + private static final RescaleOp darkenBlueOffsetROP = new RescaleOp(NoFilterScaleArray, DarkeningBlueOffset, null); + + private static final RescaleOp lightenRedOffsetROP = new RescaleOp(NoFilterScaleArray, LighteningRedOffset, null); + private static final RescaleOp lightenGreenOffsetROP = new RescaleOp(NoFilterScaleArray, LighteningGreenOffset, null); + private static final RescaleOp lightenBlueOffsetROP = new RescaleOp(NoFilterScaleArray, LighteningBlueOffset, null); + private static final RescaleOp darkenScaleROP = new RescaleOp(DarkenScale, ZeroOffset, null); private static final RescaleOp lightenScaleROP = new RescaleOp(LightenScale, ZeroOffset, null); private static final RescaleOp blackImageScaleROP = new RescaleOp(BlackImageScale, ZeroOffset, null); @@ -166,6 +184,90 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundDarkenRedOffsetROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, darkenRedOffsetROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundDarkenGreenOffsetROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, darkenGreenOffsetROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundDarkenBlueOffsetROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, darkenBlueOffsetROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundLightenRedOffsetROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, lightenRedOffsetROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundLightenGreenOffsetROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, lightenGreenOffsetROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundLightenBlueOffsetROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, lightenBlueOffsetROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundLightenOffsetROP(TestImage image, Graphics2D graphics2d) { return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, lightenOffsetROP); @@ -242,6 +344,48 @@ } /** + * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundDarkenScaleROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, darkenScaleROP); + } + + /** + * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundLightenScaleROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, lightenScaleROP); + } + + /** + * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundBlackImageROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, blackImageScaleROP); + } + + /** * Entry point to the test suite. * * @param args not used in this case From jvanek at redhat.com Thu Mar 14 03:09:23 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 14 Mar 2013 11:09:23 +0100 Subject: PluginAppletViewer.showDocument broken? In-Reply-To: <51407AD3.2020409@redhat.com> References: <1362851464.1220.5.camel@localhost.localdomain> <513F0A27.3090803@redhat.com> <1363166293.1218.9.camel@localhost.localdomain> <51407AD3.2020409@redhat.com> Message-ID: <5141A1D3.8060803@redhat.com> Hi Thomas! I'm not able to reproduce this issue. The new document opened both with "_top" directive and without. If you will be able to prepare some minimalistic reproducer it will be appreciated, otherwise maybe your browser can be broken? Or some selinux policy? Or whatever can block new window. Browsers are becoming to dont like java so maybe browser update and not icedtea-web's one could break your app. /me moreover just cooking from water J. On 03/13/2013 02:10 PM, Adam Domurad wrote: > On 03/13/2013 05:18 AM, Thomas Meyer wrote: >> Hi, >> >> there seems to be another regression in the current tip. >> >> For remote log on to my employers site I use the the >> SecureHCLauncherApplet. >> >> this applet has a the init() and start() method overwritten. >> >> the last thing that is executed in the start() method is a >> PluginAppletViewer.showDocument(). >> >> stack trace is: >> Thread [NetxPanelThread at https://employer.com/blabla] (Ausgesetzt) (nicht synchron) >> PluginAppletViewer.showDocument(URL, String) Zeile: 921 (nicht synchron) >> SecureHCLauncher.onFinishedLoadingWithAction(String) Zeile: 388 >> SecureHCLauncher.onFinishedLoading() Zeile: 369 [lokale Variablen nicht verf?gbar] >> SecureHCLauncher.doInstall() Zeile: 266 >> SecureHCLauncher(SecureLauncherApplet).start() Zeile: 223 >> SecureHCLauncher.start() Zeile: 205 >> NetxPanel(AppletPanel).run() Zeile: 476 >> Thread.run() Zeile: 722 >> >> The log also has this info: >> WRITING 2: instance 9 reference 187 LoadURL https://successful-auth-site.com _top >> PIPE: appletviewer wrote: instance 9 reference 187 LoadURL https://successful-auth-site.com _top >> WRITING 2 DONE >> PIPE: appletviewer read: instance 9 destroy >> Waiting for data... >> >> The problem is, that the URL request to show in the current browser window ( == "_top") is never loaded/shown in the browser! >> >> This used to work for some months ago. I didn't try to login remotely for a while to this site... >> >> ideas are welcome! >> >> with kind regards >> thomas >> > > Hi! Taking it to distro-list. > Have you tried with older versions of icedtea-web on the same website ? > I will look into it. > > Thanks, > -Adam From ptisnovs at icedtea.classpath.org Thu Mar 14 03:09:04 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 14 Mar 2013 10:09:04 +0000 Subject: /hg/rhino-tests: Added new tests: getField(), getMethod() and ge... Message-ID: changeset b6f84ad71660 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=b6f84ad71660 author: Pavel Tisnovsky date: Thu Mar 14 11:12:10 2013 +0100 Added new tests: getField(), getMethod() and getDeclaredMethod() into the test suite SimpleBindingsClassTest. diffstat: ChangeLog | 6 + src/org/RhinoTests/SimpleBindingsClassTest.java | 161 ++++++++++++++++++++++++ 2 files changed, 167 insertions(+), 0 deletions(-) diffs (191 lines): diff -r 20e66f471943 -r b6f84ad71660 ChangeLog --- a/ChangeLog Wed Mar 13 10:06:13 2013 +0100 +++ b/ChangeLog Thu Mar 14 11:12:10 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-14 Pavel Tisnovsky + + * src/org/RhinoTests/SimpleBindingsClassTest.java: + Added new tests: getField(), getMethod() and getDeclaredMethod() into + the test suite SimpleBindingsClassTest. + 2013-03-13 Pavel Tisnovsky * src/org/RhinoTests/ScriptContextClassTest.java: diff -r 20e66f471943 -r b6f84ad71660 src/org/RhinoTests/SimpleBindingsClassTest.java --- a/src/org/RhinoTests/SimpleBindingsClassTest.java Wed Mar 13 10:06:13 2013 +0100 +++ b/src/org/RhinoTests/SimpleBindingsClassTest.java Thu Mar 14 11:12:10 2013 +0100 @@ -499,6 +499,35 @@ } /** + * Test for method javax.script.SimpleBindings.getClass().getDeclaredField() + */ + protected void testGetDeclaredField() { + // following declared fields should exists + final String[] declaredFieldsThatShouldExist_jdk6 = { + "map", + }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + "map", + }; + + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + + // check if all required declared fields really exists + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + try { + Field field = this.simpleBindingsClass.getDeclaredField(declaredFieldThatShouldExists); + String fieldName = field.getName(); + assertTrue(fieldName.equals(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.SimpleBindings.getClass().getMethods() */ protected void testGetMethods() { @@ -623,6 +652,138 @@ } /** + * Test for method javax.script.SimpleBindings.getClass().getMethod() + */ + protected void testGetMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("get", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("put", new Class[] {java.lang.String.class, java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("put", new Class[] {java.lang.Object.class, java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("clear", new Class[] {}); + methodsThatShouldExist_jdk6.put("size", new Class[] {}); + methodsThatShouldExist_jdk6.put("isEmpty", new Class[] {}); + methodsThatShouldExist_jdk6.put("values", new Class[] {}); + methodsThatShouldExist_jdk6.put("entrySet", new Class[] {}); + methodsThatShouldExist_jdk6.put("putAll", new Class[] {java.util.Map.class}); + methodsThatShouldExist_jdk6.put("remove", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("keySet", new Class[] {}); + methodsThatShouldExist_jdk6.put("containsValue", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("containsKey", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {long.class}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {long.class, int.class}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {}); + methodsThatShouldExist_jdk6.put("hashCode", new Class[] {}); + methodsThatShouldExist_jdk6.put("getClass", new Class[] {}); + methodsThatShouldExist_jdk6.put("equals", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("toString", new Class[] {}); + methodsThatShouldExist_jdk6.put("notify", new Class[] {}); + methodsThatShouldExist_jdk6.put("notifyAll", new Class[] {}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("remove", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("get", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("put", new Class[] {java.lang.String.class, java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("put", new Class[] {java.lang.Object.class, java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("values", new Class[] {}); + methodsThatShouldExist_jdk7.put("clear", new Class[] {}); + methodsThatShouldExist_jdk7.put("isEmpty", new Class[] {}); + methodsThatShouldExist_jdk7.put("size", new Class[] {}); + methodsThatShouldExist_jdk7.put("entrySet", new Class[] {}); + methodsThatShouldExist_jdk7.put("putAll", new Class[] {java.util.Map.class}); + methodsThatShouldExist_jdk7.put("keySet", new Class[] {}); + methodsThatShouldExist_jdk7.put("containsKey", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("containsValue", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {long.class, int.class}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {long.class}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {}); + methodsThatShouldExist_jdk7.put("equals", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("toString", new Class[] {}); + methodsThatShouldExist_jdk7.put("hashCode", new Class[] {}); + methodsThatShouldExist_jdk7.put("getClass", new Class[] {}); + methodsThatShouldExist_jdk7.put("notify", new Class[] {}); + methodsThatShouldExist_jdk7.put("notifyAll", new Class[] {}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.simpleBindingsClass.getMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.SimpleBindings.getClass().getDeclaredMethod() + */ + protected void testGetDeclaredMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("get", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("put", new Class[] {java.lang.String.class, java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("put", new Class[] {java.lang.Object.class, java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("clear", new Class[] {}); + methodsThatShouldExist_jdk6.put("size", new Class[] {}); + methodsThatShouldExist_jdk6.put("isEmpty", new Class[] {}); + methodsThatShouldExist_jdk6.put("values", new Class[] {}); + methodsThatShouldExist_jdk6.put("entrySet", new Class[] {}); + methodsThatShouldExist_jdk6.put("putAll", new Class[] {java.util.Map.class}); + methodsThatShouldExist_jdk6.put("checkKey", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("remove", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("keySet", new Class[] {}); + methodsThatShouldExist_jdk6.put("containsValue", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("containsKey", new Class[] {java.lang.Object.class}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("remove", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("get", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("put", new Class[] {java.lang.String.class, java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("put", new Class[] {java.lang.Object.class, java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("values", new Class[] {}); + methodsThatShouldExist_jdk7.put("clear", new Class[] {}); + methodsThatShouldExist_jdk7.put("isEmpty", new Class[] {}); + methodsThatShouldExist_jdk7.put("size", new Class[] {}); + methodsThatShouldExist_jdk7.put("entrySet", new Class[] {}); + methodsThatShouldExist_jdk7.put("putAll", new Class[] {java.util.Map.class}); + methodsThatShouldExist_jdk7.put("checkKey", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("keySet", new Class[] {}); + methodsThatShouldExist_jdk7.put("containsKey", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("containsValue", new Class[] {java.lang.Object.class}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.simpleBindingsClass.getDeclaredMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.SimpleBindings.getClass().getAnnotations() */ protected void testGetAnnotations() { From thomas at m3y3r.de Thu Mar 14 05:18:27 2013 From: thomas at m3y3r.de (Thomas Meyer) Date: Thu, 14 Mar 2013 13:18:27 +0100 Subject: PluginAppletViewer.showDocument broken? In-Reply-To: <5141A1D3.8060803@redhat.com> References: <1362851464.1220.5.camel@localhost.localdomain> <513F0A27.3090803@redhat.com> <1363166293.1218.9.camel@localhost.localdomain> <51407AD3.2020409@redhat.com> <5141A1D3.8060803@redhat.com> Message-ID: <20130314131827.Horde.GAg9V1QvoipRQcATm2gFcpA@webmail.your-server.de> Zitat von Jiri Vanek : > Hi Thomas! Hi, > > I'm not able to reproduce this issue. > The new document opened both with "_top" directive and without. Yes, I tested several versions of icedtea-web (1.2 and 1.3 release tree) and none seems to working anymore. I have also the impression, that something else broke/changed in my setup. Maybe firefox broke something or the SecureHCLauncher on my employeers site did change something. I think Icedtea-web is fine. > > If you will be able to prepare some minimalistic reproducer it will > be appreciated, otherwise maybe your browser can be broken? > Or some selinux policy? Or whatever can block new window. Browsers > are becoming to dont like java so maybe browser update and not > icedtea-web's one could break your app. > /me moreover just cooking from water > > > J. > > On 03/13/2013 02:10 PM, Adam Domurad wrote: >> On 03/13/2013 05:18 AM, Thomas Meyer wrote: >>> Hi, >>> >>> there seems to be another regression in the current tip. >>> >>> For remote log on to my employers site I use the the >>> SecureHCLauncherApplet. >>> >>> this applet has a the init() and start() method overwritten. >>> >>> the last thing that is executed in the start() method is a >>> PluginAppletViewer.showDocument(). >>> >>> stack trace is: >>> Thread [NetxPanelThread at https://employer.com/blabla] (Ausgesetzt) >>> (nicht synchron) >>> PluginAppletViewer.showDocument(URL, String) Zeile: 921 (nicht synchron) >>> SecureHCLauncher.onFinishedLoadingWithAction(String) Zeile: 388 >>> SecureHCLauncher.onFinishedLoading() Zeile: 369 [lokale Variablen >>> nicht verf?gbar] >>> SecureHCLauncher.doInstall() Zeile: 266 >>> SecureHCLauncher(SecureLauncherApplet).start() Zeile: 223 >>> SecureHCLauncher.start() Zeile: 205 >>> NetxPanel(AppletPanel).run() Zeile: 476 >>> Thread.run() Zeile: 722 >>> >>> The log also has this info: >>> WRITING 2: instance 9 reference 187 LoadURL >>> https://successful-auth-site.com _top >>> PIPE: appletviewer wrote: instance 9 reference 187 LoadURL >>> https://successful-auth-site.com _top >>> WRITING 2 DONE >>> PIPE: appletviewer read: instance 9 destroy >>> Waiting for data... >>> >>> The problem is, that the URL request to show in the current >>> browser window ( == "_top") is never loaded/shown in the browser! >>> >>> This used to work for some months ago. I didn't try to login >>> remotely for a while to this site... >>> >>> ideas are welcome! >>> >>> with kind regards >>> thomas >>> >> >> Hi! Taking it to distro-list. >> Have you tried with older versions of icedtea-web on the same website ? >> I will look into it. >> >> Thanks, >> -Adam From bugzilla-daemon at icedtea.classpath.org Fri Mar 15 00:58:03 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 15 Mar 2013 07:58:03 +0000 Subject: [Bug 1342] java.lang.ArrayIndexOutOfBoundsException - LOG4j In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1342 helpcrypto at gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |helpcrypto at gmail.com --- Comment #2 from helpcrypto at gmail.com --- (In reply to comment #1) > Please look in to this issue. Please help us. Can you give a test case? (a little main with code causing the error). Can you provide log4j version? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130315/9c8a1853/attachment.html From ptisnovs at icedtea.classpath.org Fri Mar 15 01:55:10 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 15 Mar 2013 08:55:10 +0000 Subject: /hg/rhino-tests: Added new tests: getField() and getDeclaredFiel... Message-ID: changeset 7ea64ea424ed in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=7ea64ea424ed author: Pavel Tisnovsky date: Fri Mar 15 09:58:16 2013 +0100 Added new tests: getField() and getDeclaredField() into CompiledScriptClassTest. Added new tests: getCanonicalName(), getConstructor() and getDeclaredConstructor() into ScriptEngineFactoryClassTest. diffstat: ChangeLog | 9 ++ src/org/RhinoTests/CompiledScriptClassTest.java | 53 ++++++++++++++ src/org/RhinoTests/ScriptEngineFactoryClassTest.java | 72 +++++++++++++++++++- 3 files changed, 133 insertions(+), 1 deletions(-) diffs (182 lines): diff -r b6f84ad71660 -r 7ea64ea424ed ChangeLog --- a/ChangeLog Thu Mar 14 11:12:10 2013 +0100 +++ b/ChangeLog Fri Mar 15 09:58:16 2013 +0100 @@ -1,3 +1,12 @@ +2013-03-15 Pavel Tisnovsky + + * src/org/RhinoTests/CompiledScriptClassTest.java: + Added new tests: getField() and getDeclaredField() into + CompiledScriptClassTest. + * src/org/RhinoTests/ScriptEngineFactoryClassTest.java: + Added new tests: getCanonicalName(), getConstructor() and + getDeclaredConstructor() into ScriptEngineFactoryClassTest. + 2013-03-14 Pavel Tisnovsky * src/org/RhinoTests/SimpleBindingsClassTest.java: diff -r b6f84ad71660 -r 7ea64ea424ed src/org/RhinoTests/CompiledScriptClassTest.java --- a/src/org/RhinoTests/CompiledScriptClassTest.java Thu Mar 14 11:12:10 2013 +0100 +++ b/src/org/RhinoTests/CompiledScriptClassTest.java Fri Mar 15 09:58:16 2013 +0100 @@ -515,6 +515,59 @@ } } + /** + * Test for method javax.script.CompiledScript.getClass().getField() + */ + protected void testGetField() { + // following fields should exists + final String[] fieldsThatShouldExist_jdk6 = { + }; + final String[] fieldsThatShouldExist_jdk7 = { + }; + + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + + // check if all required fields really exists + for (String fieldThatShouldExists : fieldsThatShouldExist) { + try { + Field field = this.compiledScriptClass.getField(fieldThatShouldExists); + String fieldName = field.getName(); + assertTrue(fieldName.equals(fieldThatShouldExists), + "field " + fieldThatShouldExists + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.CompiledScript.getClass().getDeclaredField() + */ + protected void testGetDeclaredField() { + // following declared fields should exists + final String[] declaredFieldsThatShouldExist_jdk6 = { + }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + }; + + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + + // check if all required declared fields really exists + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + try { + Field field = this.compiledScriptClass.getDeclaredField(declaredFieldThatShouldExists); + String fieldName = field.getName(); + assertTrue(fieldName.equals(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } /** * Test for method javax.script.CompiledScript.getClass().getMethods() diff -r b6f84ad71660 -r 7ea64ea424ed src/org/RhinoTests/ScriptEngineFactoryClassTest.java --- a/src/org/RhinoTests/ScriptEngineFactoryClassTest.java Thu Mar 14 11:12:10 2013 +0100 +++ b/src/org/RhinoTests/ScriptEngineFactoryClassTest.java Fri Mar 15 09:58:16 2013 +0100 @@ -1,7 +1,7 @@ /* Rhino test framework - Copyright (C) 2011, 2012 Red Hat + Copyright (C) 2011, 2012, 2013 Red Hat This file is part of IcedTea. @@ -45,6 +45,7 @@ import java.util.List; import java.util.Map; import java.util.HashMap; +import java.util.TreeMap; import java.lang.annotation.Annotation; import java.lang.reflect.Constructor; @@ -261,6 +262,15 @@ } /** + * Test for method javax.script.ScriptEngineFactory.getClass().getCanonicalName() + */ + protected void testGetCanonicalName() { + String canonicalName = this.scriptEngineFactoryClass.getCanonicalName(); + assertEquals(canonicalName, "javax.script.ScriptEngineFactory", + "Method javax.script.ScriptEngineFactory.getClass().getCanonicalName() returns wrong value " + canonicalName); + } + + /** * Test for method javax.script.ScriptEngineFactory.getClass().getSuperclass() */ protected void testGetSuperclass() { @@ -314,6 +324,66 @@ } /** + * Test for method javax.script.ScriptEngineFactory.getClass().getConstructor() + */ + protected void testGetConstructor() { + // following constructors should exist + Map constructorsThatShouldExist_jdk6 = new TreeMap(); + + Map constructorsThatShouldExist_jdk7 = new TreeMap(); + + Map constructorsThatShouldExist = getJavaVersion() < 7 ? constructorsThatShouldExist_jdk6 : constructorsThatShouldExist_jdk7; + + // check if all required constructors really exist + for (Map.Entry constructorThatShouldExists : constructorsThatShouldExist.entrySet()) { + try { + Constructor constructor = this.scriptEngineFactoryClass.getConstructor(constructorThatShouldExists.getValue()); + assertNotNull(constructor, + "constructor " + constructorThatShouldExists.getKey() + " not found"); + String constructorName = constructor.getName(); + assertNotNull(constructorName, + "constructor " + constructorThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(constructorName.equals(constructorThatShouldExists.getKey()), + "constructor " + constructorThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.ScriptEngineFactory.getClass().getDeclaredConstructor() + */ + protected void testGetDeclaredConstructor() { + // following constructors should exist + Map constructorsThatShouldExist_jdk6 = new TreeMap(); + + Map constructorsThatShouldExist_jdk7 = new TreeMap(); + + Map constructorsThatShouldExist = getJavaVersion() < 7 ? constructorsThatShouldExist_jdk6 : constructorsThatShouldExist_jdk7; + + // check if all required constructors really exist + for (Map.Entry constructorThatShouldExists : constructorsThatShouldExist.entrySet()) { + try { + Constructor constructor = this.scriptEngineFactoryClass.getDeclaredConstructor(constructorThatShouldExists.getValue()); + assertNotNull(constructor, + "constructor " + constructorThatShouldExists.getKey() + " not found"); + String constructorName = constructor.getName(); + assertNotNull(constructorName, + "constructor " + constructorThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(constructorName.equals(constructorThatShouldExists.getKey()), + "constructor " + constructorThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.ScriptEngineFactory.getClass().getFields() */ protected void testGetFields() { From ptisnovs at icedtea.classpath.org Fri Mar 15 02:17:32 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 15 Mar 2013 09:17:32 +0000 Subject: /hg/gfx-test: Eleven new tests added into the test suite BitBltB... Message-ID: changeset 9cc875576c6f in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=9cc875576c6f author: Pavel Tisnovsky date: Fri Mar 15 10:19:53 2013 +0100 Eleven new tests added into the test suite BitBltBasicTests.java. Corrected names of five other tests. diffstat: ChangeLog | 6 + src/org/gfxtest/testsuites/BitBltBasicTests.java | 183 +++++++++++++++++++++- 2 files changed, 179 insertions(+), 10 deletions(-) diffs (268 lines): diff -r 36745cfac283 -r 9cc875576c6f ChangeLog --- a/ChangeLog Thu Mar 14 11:09:17 2013 +0100 +++ b/ChangeLog Fri Mar 15 10:19:53 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-15 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltBasicTests.java: + Eleven new tests added into the test suite BitBltBasicTests.java. + Corrected names of five other tests. + 2013-03-14 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltRescaleOp.java: diff -r 36745cfac283 -r 9cc875576c6f src/org/gfxtest/testsuites/BitBltBasicTests.java --- a/src/org/gfxtest/testsuites/BitBltBasicTests.java Thu Mar 14 11:09:17 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltBasicTests.java Fri Mar 15 10:19:53 2013 +0100 @@ -2437,7 +2437,7 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltHorizontalGrayscaleGradientImageTypeByteBinary(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltHorizontalGrayscaleGradientBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. return CommonBitmapOperations.doBitBltTestWithHorizontalGrayscaleGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY); @@ -2618,7 +2618,7 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltVerticalGrayscaleGradientImageTypeByteBinary(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltVerticalGrayscaleGradientBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. return CommonBitmapOperations.doBitBltTestWithVerticalGrayscaleGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY); @@ -2789,8 +2789,6 @@ return CommonBitmapOperations.doBitBltTestWithVerticalGrayscaleGradientImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR); } - - /** * Test basic BitBlt operation for horizontal red gradient buffered image * with type TYPE_BYTE_BINARY. @@ -2801,13 +2799,178 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltHorizontalRedGradientImageTypeByteBinary(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltHorizontalRedGradientBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. return CommonBitmapOperations.doBitBltTestWithHorizontalRedGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY); } /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_INT_RGB. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageTypeIntRGB(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_INT_RGB); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_INT_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageTypeIntBGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_INT_BGR); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_INT_ARGB. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageTypeIntARGB(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_INT_ARGB); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_INT_ARGB_PRE. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageTypeIntARGB_Pre(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_INT_ARGB_PRE); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_4BYTE_ABGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageType4ByteABGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_4BYTE_ABGR_PRE. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageType4ByteABGR_PRE(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR_PRE); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_BYTE_GRAY. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageTypeByteGray(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_USHORT_GRAY. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageTypeUshortGray(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_USHORT_GRAY); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_USHORT_565_RGB. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageTypeUshort565RGB(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_USHORT_565_RGB); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_USHORT_555_RGB. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageTypeUshort555RGB(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_USHORT_555_RGB); + } + + /** + * Test basic BitBlt operation for vertical red gradient buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltVerticalRedGradientBufferedImageType3ByteBGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR); + } + + /** * Test basic BitBlt operation for vertical red gradient buffered image * with type TYPE_BYTE_BINARY. * @@ -2817,7 +2980,7 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltVerticalRedGradientImageTypeByteBinary(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltVerticalRedGradientBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. return CommonBitmapOperations.doBitBltTestWithVerticalRedGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY); @@ -2833,7 +2996,7 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltHorizontalGreenGradientImageTypeByteBinary(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltHorizontalGreenGradientBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. return CommonBitmapOperations.doBitBltTestWithHorizontalGreenGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY); @@ -2849,7 +3012,7 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltVerticalGreenGradientImageTypeByteBinary(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltVerticalGreenGradientBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. return CommonBitmapOperations.doBitBltTestWithVerticalGreenGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY); @@ -2865,7 +3028,7 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltHorizontalBlueGradientImageTypeByteBinary(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltHorizontalBlueGradientBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. return CommonBitmapOperations.doBitBltTestWithHorizontalBlueGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY); @@ -2881,7 +3044,7 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltVerticalBlueGradientImageTypeByteBinary(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltVerticalBlueGradientBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. return CommonBitmapOperations.doBitBltTestWithVerticalBlueGradientImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY); From jvanek at redhat.com Fri Mar 15 08:01:30 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 15 Mar 2013 16:01:30 +0100 Subject: [fyi][icedtea-web] backend and itw-settings for extended applets security In-Reply-To: <513F2610.8070602@redhat.com> References: <510E532C.8040401@redhat.com> <51119426.9090000@redhat.com> <511D1142.2090501@redhat.com> <511D2AA8.2040709@redhat.com> <5124C5D0.7080309@redhat.com> <512545CD.4080305@redhat.com> <51269AAA.8090606@redhat.com> <512B8F37.9020703@redhat.com> <512F83FC.1080101@redhat.com> <5130E0EF.2030003@redhat.com> <513F2610.8070602@redhat.com> Message-ID: <514337CA.3040400@redhat.com> On 03/12/2013 01:56 PM, Adam Domurad wrote: > On 03/01/2013 12:10 PM, Adam Domurad wrote: >> [ large snip ] >>> New version attached. >>> -Adam >> >> Woops. In the back&forth between 1.2 and HEAD I have forgot to add the normalization stuff. >> >> Rough location of the changes (sorry for the odd format, I just grepped them): >> >> + private static UnsignedAppletActionEntry getMatchingItem(UnsignedAppletActionStorage actionStorage, PluginBridge file) { >> + return actionStorage.getMatchingItem( >> + normalizeURLQuietly(file.getSourceLocation()).toString(), >> + normalizeURLQuietly(file.getCodeBase()).toString(), >> + file.getArchiveJars()); >> + } >> + >> + static private URL normalizeURLQuietly(URL url) { >> + try { >> + System.out.println("Normalizing " + url + " to " + ResourceTracker.normalizeUrl(url, false)); >> + return ResourceTracker.normalizeUrl(url, false); >> + } catch (IOException e) { >> + e.printStackTrace(); >> + } catch (URISyntaxException e) { >> + e.printStackTrace(); >> + } >> + return url; >> + } >> -- >> + } >> + >> + URL codebase = normalizeURLQuietly(file.getCodeBase()); >> + URL documentbase = normalizeURLQuietly(file.getSourceLocation()); >> + >> + /* Else, create a new entry */ >> + UrlRegEx codebaseRegex = new UrlRegEx("\\Q" + codebase + "\\E"); >> + UrlRegEx documentbaseRegex = new UrlRegEx("\\Q" + documentbase + "\\E"); >> + >> + UnsignedAppletActionEntry entry = new UnsignedAppletActionEntry( >> + behaviour, >> >> >> Happy hacking, >> -Adam > > Ping? Sorry for taking so long, but it was not working as expected. Few issues remains: 1)The "wildcard do not work" issue as we have discussed - they do :) But i had (for some reason???) included archives comaprsion also for not stored archvies. So when there was wildchards an no archives, but the matching against fully qualified applet then failed. Attached is patch with fix and test. [rfc] 2)parameters - as you are already aware, all parameters are stored to urls. As those can be some dinamical ID or simialr, then I think we should strip them both from bases and from jars. For jars the tshe strip is easy (all behind ? , including ?).For urls I'm not so sure. Maybe the best is to strip both saved and compared? or strip just form saved with be "...\E.*" or "...?\E.*addition to such a base? [rfc] 3)archives saved with full url. On one side I'm not sure how wrong this is. On the second side I would probably prefer to have just plain archive names . This happens during all, except "plain archives tag". Good reproducer is jnlp href. I'm for simple "scratch everything before last slash" - before saving and comparing [rfc] With fix on my previous work the whole concept looks to be working as expected. Maybe you can push, and fix following issues separately. Depends what do you prefer to fight with during packporting to 1.3;) Also the "ask once for matching appelts" looks like working,a nd I have seen both red and green text finally :) I think that also the backport to 1.2 is affected by above issues, so I would hold it off.. or maybe do not do it at all. (and just live with this 1.3 and head) J. -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: archivesPatch Url: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130315/d772ba68/archivesPatch.ksh From andrew at icedtea.classpath.org Fri Mar 15 12:22:41 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 15 Mar 2013 19:22:41 +0000 Subject: /hg/icedtea: Mass update / cleanup to build OpenJDK b80 from ups... Message-ID: changeset 14ea939ddd75 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=14ea939ddd75 author: Andrew John Hughes date: Fri Mar 15 19:22:26 2013 +0000 Mass update / cleanup to build OpenJDK b80 from upstream OpenJDK. 2013-03-14 Andrew John Hughes Bump to OpenJDK b80. * generated/com/sun/accessibility/internal/resources/accessibility.java, * generated/com/sun/accessibility/internal/resources/accessibility_de.java, * generated/com/sun/accessibility/internal/resources/accessibility_en.java, * generated/com/sun/accessibility/internal/resources/accessibility_es.java, * generated/com/sun/accessibility/internal/resources/accessibility_fr.java, * generated/com/sun/accessibility/internal/resources/accessibility_it.java, * generated/com/sun/accessibility/internal/resources/accessibility_ja.java, * generated/com/sun/accessibility/internal/resources/accessibility_ko.java, * generated/com/sun/accessibility/internal/resources/accessibility_sv.java, * generated/com/sun/accessibility/internal/resources/accessibility_zh_CN.java, * generated/com/sun/accessibility/internal/resources/accessibility_zh_HK.java, * generated/com/sun/accessibility/internal/resources/accessibility_zh_TW.java, * generated/com/sun/corba/se/PortableActivationIDL/Activator.java, * generated/com/sun/corba/se/PortableActivationIDL/ActivatorHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ActivatorHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ActivatorOperations.java, * generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinition.java, * generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinitionHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinitionHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/EndPointInfo.java, * generated/com/sun/corba/se/PortableActivationIDL/EndPointInfoHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/EndPointInfoHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/EndpointInfoListHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/EndpointInfoListHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/IIOP_CLEAR_TEXT.java, * generated/com/sun/corba/se/PortableActivationIDL/InitialNameService.java, * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceOperations.java, * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBound.java, * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBoundHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBoundHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/InvalidORBid.java, * generated/com/sun/corba/se/PortableActivationIDL/InvalidORBidHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/InvalidORBidHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/Locator.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorOperations.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORB.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORBHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORBHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerType.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerTypeHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerTypeHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPoint.java, * generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPointHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPointHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegistered.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegisteredHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegisteredHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfo.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoListHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoListHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBProxy.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBProxyHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBProxyHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBProxyOperations.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBidListHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ORBidListHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/Repository.java, * generated/com/sun/corba/se/PortableActivationIDL/RepositoryHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/RepositoryHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/RepositoryOperations.java, * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/AppNamesHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/AppNamesHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDef.java, * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDefHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDefHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActive.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActiveHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActiveHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalled.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalledHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalledHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegistered.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegisteredHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegisteredHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalled.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalledHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalledHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDown.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDownHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDownHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerIdsHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerIdsHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerManager.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerManagerHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerManagerHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerManagerOperations.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerNotActive.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerNotActiveHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerNotActiveHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegistered.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegisteredHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegisteredHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerProxy.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerProxyHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerProxyHolder.java, * generated/com/sun/corba/se/PortableActivationIDL/ServerProxyOperations.java, * generated/com/sun/corba/se/PortableActivationIDL/TCPPortHelper.java, * generated/com/sun/corba/se/PortableActivationIDL/_ActivatorImplBase.java, * generated/com/sun/corba/se/PortableActivationIDL/_ActivatorStub.java, * generated/com/sun/corba/se/PortableActivationIDL/_InitialNameServiceImplBase.java, * generated/com/sun/corba/se/PortableActivationIDL/_InitialNameServiceStub.java, * generated/com/sun/corba/se/PortableActivationIDL/_LocatorImplBase.java, * generated/com/sun/corba/se/PortableActivationIDL/_LocatorStub.java, * generated/com/sun/corba/se/PortableActivationIDL/_ORBProxyImplBase.java, * generated/com/sun/corba/se/PortableActivationIDL/_ORBProxyStub.java, * generated/com/sun/corba/se/PortableActivationIDL/_RepositoryImplBase.java, * generated/com/sun/corba/se/PortableActivationIDL/_RepositoryStub.java, * generated/com/sun/corba/se/PortableActivationIDL/_ServerManagerImplBase.java, * generated/com/sun/corba/se/PortableActivationIDL/_ServerManagerStub.java, * generated/com/sun/corba/se/PortableActivationIDL/_ServerProxyImplBase.java, * generated/com/sun/corba/se/PortableActivationIDL/_ServerProxyStub.java, * generated/com/sun/corba/se/impl/logging/ActivationSystemException.java, * generated/com/sun/corba/se/impl/logging/ActivationSystemException.resource, * generated/com/sun/corba/se/impl/logging/IORSystemException.java, * generated/com/sun/corba/se/impl/logging/IORSystemException.resource, * generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java, * generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.resource, * generated/com/sun/corba/se/impl/logging/LogStrings.properties, * generated/com/sun/corba/se/impl/logging/NamingSystemException.java, * generated/com/sun/corba/se/impl/logging/NamingSystemException.resource, * generated/com/sun/corba/se/impl/logging/OMGSystemException.java, * generated/com/sun/corba/se/impl/logging/OMGSystemException.resource, * generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java, * generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource, * generated/com/sun/corba/se/impl/logging/POASystemException.java, * generated/com/sun/corba/se/impl/logging/POASystemException.resource, * generated/com/sun/corba/se/impl/logging/UtilSystemException.java, * generated/com/sun/corba/se/impl/logging/UtilSystemException.resource, * generated/com/sun/corba/se/spi/activation/Activator.java, * generated/com/sun/corba/se/spi/activation/ActivatorHelper.java, * generated/com/sun/corba/se/spi/activation/ActivatorHolder.java, * generated/com/sun/corba/se/spi/activation/ActivatorOperations.java, * generated/com/sun/corba/se/spi/activation/BadServerDefinition.java, * generated/com/sun/corba/se/spi/activation/BadServerDefinitionHelper.java, * generated/com/sun/corba/se/spi/activation/BadServerDefinitionHolder.java, * generated/com/sun/corba/se/spi/activation/EndPointInfo.java, * generated/com/sun/corba/se/spi/activation/EndPointInfoHelper.java, * generated/com/sun/corba/se/spi/activation/EndPointInfoHolder.java, * generated/com/sun/corba/se/spi/activation/EndpointInfoListHelper.java, * generated/com/sun/corba/se/spi/activation/EndpointInfoListHolder.java, * generated/com/sun/corba/se/spi/activation/IIOP_CLEAR_TEXT.java, * generated/com/sun/corba/se/spi/activation/InitialNameService.java, * generated/com/sun/corba/se/spi/activation/InitialNameServiceHelper.java, * generated/com/sun/corba/se/spi/activation/InitialNameServiceHolder.java, * generated/com/sun/corba/se/spi/activation/InitialNameServiceOperations.java, * generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBound.java, * generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBoundHelper.java, * generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBoundHolder.java, * generated/com/sun/corba/se/spi/activation/InvalidORBid.java, * generated/com/sun/corba/se/spi/activation/InvalidORBidHelper.java, * generated/com/sun/corba/se/spi/activation/InvalidORBidHolder.java, * generated/com/sun/corba/se/spi/activation/Locator.java, * generated/com/sun/corba/se/spi/activation/LocatorHelper.java, * generated/com/sun/corba/se/spi/activation/LocatorHolder.java, * generated/com/sun/corba/se/spi/activation/LocatorOperations.java, * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocation.java, * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationHelper.java, * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationHolder.java, * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORB.java, * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORBHelper.java, * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORBHolder.java, * generated/com/sun/corba/se/spi/activation/NoSuchEndPoint.java, * generated/com/sun/corba/se/spi/activation/NoSuchEndPointHelper.java, * generated/com/sun/corba/se/spi/activation/NoSuchEndPointHolder.java, * generated/com/sun/corba/se/spi/activation/ORBAlreadyRegistered.java, * generated/com/sun/corba/se/spi/activation/ORBAlreadyRegisteredHelper.java, * generated/com/sun/corba/se/spi/activation/ORBAlreadyRegisteredHolder.java, * generated/com/sun/corba/se/spi/activation/ORBPortInfo.java, * generated/com/sun/corba/se/spi/activation/ORBPortInfoHelper.java, * generated/com/sun/corba/se/spi/activation/ORBPortInfoHolder.java, * generated/com/sun/corba/se/spi/activation/ORBPortInfoListHelper.java, * generated/com/sun/corba/se/spi/activation/ORBPortInfoListHolder.java, * generated/com/sun/corba/se/spi/activation/ORBidHelper.java, * generated/com/sun/corba/se/spi/activation/ORBidListHelper.java, * generated/com/sun/corba/se/spi/activation/ORBidListHolder.java, * generated/com/sun/corba/se/spi/activation/POANameHelper.java, * generated/com/sun/corba/se/spi/activation/POANameHolder.java, * generated/com/sun/corba/se/spi/activation/Repository.java, * generated/com/sun/corba/se/spi/activation/RepositoryHelper.java, * generated/com/sun/corba/se/spi/activation/RepositoryHolder.java, * generated/com/sun/corba/se/spi/activation/RepositoryOperations.java, * generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDef.java, * generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDefHelper.java, * generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDefHolder.java, * generated/com/sun/corba/se/spi/activation/RepositoryPackage/StringSeqHelper.java, * generated/com/sun/corba/se/spi/activation/RepositoryPackage/StringSeqHolder.java, * generated/com/sun/corba/se/spi/activation/Server.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyActive.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyActiveHelper.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyActiveHolder.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalled.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalledHelper.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalledHolder.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyRegistered.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyRegisteredHelper.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyRegisteredHolder.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalled.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalledHelper.java, * generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalledHolder.java, * generated/com/sun/corba/se/spi/activation/ServerHeldDown.java, * generated/com/sun/corba/se/spi/activation/ServerHeldDownHelper.java, * generated/com/sun/corba/se/spi/activation/ServerHeldDownHolder.java, * generated/com/sun/corba/se/spi/activation/ServerHelper.java, * generated/com/sun/corba/se/spi/activation/ServerHolder.java, * generated/com/sun/corba/se/spi/activation/ServerIdHelper.java, * generated/com/sun/corba/se/spi/activation/ServerIdsHelper.java, * generated/com/sun/corba/se/spi/activation/ServerIdsHolder.java, * generated/com/sun/corba/se/spi/activation/ServerManager.java, * generated/com/sun/corba/se/spi/activation/ServerManagerHelper.java, * generated/com/sun/corba/se/spi/activation/ServerManagerHolder.java, * generated/com/sun/corba/se/spi/activation/ServerManagerOperations.java, * generated/com/sun/corba/se/spi/activation/ServerNotActive.java, * generated/com/sun/corba/se/spi/activation/ServerNotActiveHelper.java, * generated/com/sun/corba/se/spi/activation/ServerNotActiveHolder.java, * generated/com/sun/corba/se/spi/activation/ServerNotRegistered.java, * generated/com/sun/corba/se/spi/activation/ServerNotRegisteredHelper.java, * generated/com/sun/corba/se/spi/activation/ServerNotRegisteredHolder.java, * generated/com/sun/corba/se/spi/activation/ServerOperations.java, * generated/com/sun/corba/se/spi/activation/TCPPortHelper.java, * generated/com/sun/corba/se/spi/activation/_ActivatorImplBase.java, * generated/com/sun/corba/se/spi/activation/_ActivatorStub.java, * generated/com/sun/corba/se/spi/activation/_InitialNameServiceImplBase.java, * generated/com/sun/corba/se/spi/activation/_InitialNameServiceStub.java, * generated/com/sun/corba/se/spi/activation/_LocatorImplBase.java, * generated/com/sun/corba/se/spi/activation/_LocatorStub.java, * generated/com/sun/corba/se/spi/activation/_RepositoryImplBase.java, * generated/com/sun/corba/se/spi/activation/_RepositoryStub.java, * generated/com/sun/corba/se/spi/activation/_ServerImplBase.java, * generated/com/sun/corba/se/spi/activation/_ServerManagerImplBase.java, * generated/com/sun/corba/se/spi/activation/_ServerManagerStub.java, * generated/com/sun/corba/se/spi/activation/_ServerStub.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_de.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_es.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_fr.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_it.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_ja.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_ko.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_sv.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_HK.java, * generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.java, * generated/com/sun/java/swing/plaf/motif/resources/motif.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_de.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_es.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_fr.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_it.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_ja.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_ko.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_sv.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_zh_CN.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_zh_HK.java, * generated/com/sun/java/swing/plaf/motif/resources/motif_zh_TW.java, * generated/com/sun/java/swing/plaf/windows/resources/windows.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_de.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_es.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_fr.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_it.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_ja.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_ko.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_sv.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_zh_CN.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_zh_HK.java, * generated/com/sun/java/swing/plaf/windows/resources/windows_zh_TW.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_de.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_es.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_fr.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_it.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_ja.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_ko.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_sv.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_HK.java, * generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_de.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_es.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_fr.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_it.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_ja.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_ko.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_sv.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_CN.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_HK.java, * generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_TW.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_de.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_es.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_fr.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_it.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_ja.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_ko.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_sv.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_HK.java, * generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.java, * generated/com/sun/tools/apt/resources/apt.java, * generated/com/sun/tools/apt/resources/apt_ja.java, * generated/com/sun/tools/apt/resources/apt_zh_CN.java, * generated/com/sun/tools/doclets/formats/html/resources/standard.java, * generated/com/sun/tools/doclets/formats/html/resources/standard_ja.java, * generated/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.java, * generated/com/sun/tools/doclets/internal/toolkit/resources/doclets.java, * generated/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.java, * generated/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.java, * generated/com/sun/tools/javac/resources/compiler.java, * generated/com/sun/tools/javac/resources/compiler_ja.java, * generated/com/sun/tools/javac/resources/compiler_zh_CN.java, * generated/com/sun/tools/javac/resources/javac.java, * generated/com/sun/tools/javac/resources/javac_ja.java, * generated/com/sun/tools/javac/resources/javac_zh_CN.java, * generated/com/sun/tools/javac/resources/legacy.java, * generated/com/sun/tools/javac/resources/version.java, * generated/com/sun/tools/javadoc/resources/javadoc.java, * generated/com/sun/tools/javadoc/resources/javadoc_ja.java, * generated/com/sun/tools/javadoc/resources/javadoc_zh_CN.java, * generated/com/sun/tools/jdi/JDWP.java, * generated/com/sun/tools/jdi/resources/jdi.java, * generated/com/sun/tools/jdi/resources/jdi_ja.java, * generated/com/sun/tools/jdi/resources/jdi_zh_CN.java, * generated/java/lang/CharacterData00.java, * generated/java/lang/CharacterData01.java, * generated/java/lang/CharacterData02.java, * generated/java/lang/CharacterData0E.java, * generated/java/lang/CharacterDataLatin1.java, * generated/java/lang/CharacterDataPrivateUse.java, * generated/java/lang/CharacterDataUndefined.java, * generated/java/lang/UNIXProcess.java, * generated/java/nio/BufferOverflowException.java, * generated/java/nio/BufferUnderflowException.java, * generated/java/nio/ByteBuffer.java, * generated/java/nio/ByteBufferAsCharBufferB.java, * generated/java/nio/ByteBufferAsCharBufferL.java, * generated/java/nio/ByteBufferAsCharBufferRB.java, * generated/java/nio/ByteBufferAsCharBufferRL.java, * generated/java/nio/ByteBufferAsDoubleBufferB.java, * generated/java/nio/ByteBufferAsDoubleBufferL.java, * generated/java/nio/ByteBufferAsDoubleBufferRB.java, * generated/java/nio/ByteBufferAsDoubleBufferRL.java, * generated/java/nio/ByteBufferAsFloatBufferB.java, * generated/java/nio/ByteBufferAsFloatBufferL.java, * generated/java/nio/ByteBufferAsFloatBufferRB.java, * generated/java/nio/ByteBufferAsFloatBufferRL.java, * generated/java/nio/ByteBufferAsIntBufferB.java, * generated/java/nio/ByteBufferAsIntBufferL.java, * generated/java/nio/ByteBufferAsIntBufferRB.java, * generated/java/nio/ByteBufferAsIntBufferRL.java, * generated/java/nio/ByteBufferAsLongBufferB.java, * generated/java/nio/ByteBufferAsLongBufferL.java, * generated/java/nio/ByteBufferAsLongBufferRB.java, * generated/java/nio/ByteBufferAsLongBufferRL.java, * generated/java/nio/ByteBufferAsShortBufferB.java, * generated/java/nio/ByteBufferAsShortBufferL.java, * generated/java/nio/ByteBufferAsShortBufferRB.java, * generated/java/nio/ByteBufferAsShortBufferRL.java, * generated/java/nio/CharBuffer.java, * generated/java/nio/DirectByteBuffer.java, * generated/java/nio/DirectByteBufferR.java, * generated/java/nio/DirectCharBufferRS.java, * generated/java/nio/DirectCharBufferRU.java, * generated/java/nio/DirectCharBufferS.java, * generated/java/nio/DirectCharBufferU.java, * generated/java/nio/DirectDoubleBufferRS.java, * generated/java/nio/DirectDoubleBufferRU.java, * generated/java/nio/DirectDoubleBufferS.java, * generated/java/nio/DirectDoubleBufferU.java, * generated/java/nio/DirectFloatBufferRS.java, * generated/java/nio/DirectFloatBufferRU.java, * generated/java/nio/DirectFloatBufferS.java, * generated/java/nio/DirectFloatBufferU.java, * generated/java/nio/DirectIntBufferRS.java, * generated/java/nio/DirectIntBufferRU.java, * generated/java/nio/DirectIntBufferS.java, * generated/java/nio/DirectIntBufferU.java, * generated/java/nio/DirectLongBufferRS.java, * generated/java/nio/DirectLongBufferRU.java, * generated/java/nio/DirectLongBufferS.java, * generated/java/nio/DirectLongBufferU.java, * generated/java/nio/DirectShortBufferRS.java, * generated/java/nio/DirectShortBufferRU.java, * generated/java/nio/DirectShortBufferS.java, * generated/java/nio/DirectShortBufferU.java, * generated/java/nio/DoubleBuffer.java, * generated/java/nio/FloatBuffer.java, * generated/java/nio/HeapByteBuffer.java, * generated/java/nio/HeapByteBufferR.java, * generated/java/nio/HeapCharBuffer.java, * generated/java/nio/HeapCharBufferR.java, * generated/java/nio/HeapDoubleBuffer.java, * generated/java/nio/HeapDoubleBufferR.java, * generated/java/nio/HeapFloatBuffer.java, * generated/java/nio/HeapFloatBufferR.java, * generated/java/nio/HeapIntBuffer.java, * generated/java/nio/HeapIntBufferR.java, * generated/java/nio/HeapLongBuffer.java, * generated/java/nio/HeapLongBufferR.java, * generated/java/nio/HeapShortBuffer.java, * generated/java/nio/HeapShortBufferR.java, * generated/java/nio/IntBuffer.java, * generated/java/nio/InvalidMarkException.java, * generated/java/nio/LongBuffer.java, * generated/java/nio/ReadOnlyBufferException.java, * generated/java/nio/ShortBuffer.java, * generated/java/nio/channels/AcceptPendingException.java, * generated/java/nio/channels/AlreadyBoundException.java, * generated/java/nio/channels/AlreadyConnectedException.java, * generated/java/nio/channels/AsynchronousCloseException.java, * generated/java/nio/channels/CancelledKeyException.java, * generated/java/nio/channels/ClosedByInterruptException.java, * generated/java/nio/channels/ClosedChannelException.java, * generated/java/nio/channels/ClosedSelectorException.java, * generated/java/nio/channels/ConnectionPendingException.java, * generated/java/nio/channels/FileLockInterruptionException.java, * generated/java/nio/channels/IllegalBlockingModeException.java, * generated/java/nio/channels/IllegalChannelGroupException.java, * generated/java/nio/channels/IllegalSelectorException.java, * generated/java/nio/channels/InterruptedByTimeoutException.java, * generated/java/nio/channels/NoConnectionPendingException.java, * generated/java/nio/channels/NonReadableChannelException.java, * generated/java/nio/channels/NonWritableChannelException.java, * generated/java/nio/channels/NotYetBoundException.java, * generated/java/nio/channels/NotYetConnectedException.java, * generated/java/nio/channels/OverlappingFileLockException.java, * generated/java/nio/channels/ReadPendingException.java, * generated/java/nio/channels/ShutdownChannelGroupException.java, * generated/java/nio/channels/UnresolvedAddressException.java, * generated/java/nio/channels/UnsupportedAddressTypeException.java, * generated/java/nio/channels/WritePendingException.java, * generated/java/nio/charset/CharacterCodingException.java, * generated/java/nio/charset/CharsetDecoder.java, * generated/java/nio/charset/CharsetEncoder.java, * generated/java/nio/charset/IllegalCharsetNameException.java, * generated/java/nio/charset/UnsupportedCharsetException.java, * generated/java/util/CurrencyData.java, * generated/javax/management/remote/rmi/RMIConnectionImpl_Stub.java, * generated/javax/management/remote/rmi/RMIServerImpl_Stub.java, * generated/org/omg/CORBA/ParameterMode.java, * generated/org/omg/CORBA/ParameterModeHelper.java, * generated/org/omg/CORBA/ParameterModeHolder.java, * generated/org/omg/CORBA/PolicyErrorCodeHelper.java, * generated/org/omg/CORBA/PolicyErrorHelper.java, * generated/org/omg/CORBA/PolicyErrorHolder.java, * generated/org/omg/CORBA/StringSeqHelper.java, * generated/org/omg/CORBA/StringSeqHolder.java, * generated/org/omg/CORBA/WStringSeqHelper.java, * generated/org/omg/CORBA/WStringSeqHolder.java, * generated/org/omg/CosNaming/Binding.java, * generated/org/omg/CosNaming/BindingHelper.java, * generated/org/omg/CosNaming/BindingHolder.java, * generated/org/omg/CosNaming/BindingIterator.java, * generated/org/omg/CosNaming/BindingIteratorHelper.java, * generated/org/omg/CosNaming/BindingIteratorHolder.java, * generated/org/omg/CosNaming/BindingIteratorOperations.java, * generated/org/omg/CosNaming/BindingIteratorPOA.java, * generated/org/omg/CosNaming/BindingListHelper.java, * generated/org/omg/CosNaming/BindingListHolder.java, * generated/org/omg/CosNaming/BindingType.java, * generated/org/omg/CosNaming/BindingTypeHelper.java, * generated/org/omg/CosNaming/BindingTypeHolder.java, * generated/org/omg/CosNaming/IstringHelper.java, * generated/org/omg/CosNaming/NameComponent.java, * generated/org/omg/CosNaming/NameComponentHelper.java, * generated/org/omg/CosNaming/NameComponentHolder.java, * generated/org/omg/CosNaming/NameHelper.java, * generated/org/omg/CosNaming/NameHolder.java, * generated/org/omg/CosNaming/NamingContext.java, * generated/org/omg/CosNaming/NamingContextExt.java, * generated/org/omg/CosNaming/NamingContextExtHelper.java, * generated/org/omg/CosNaming/NamingContextExtHolder.java, * generated/org/omg/CosNaming/NamingContextExtOperations.java, * generated/org/omg/CosNaming/NamingContextExtPOA.java, * generated/org/omg/CosNaming/NamingContextExtPackage/AddressHelper.java, * generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.java, * generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHelper.java, * generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHolder.java, * generated/org/omg/CosNaming/NamingContextExtPackage/StringNameHelper.java, * generated/org/omg/CosNaming/NamingContextExtPackage/URLStringHelper.java, * generated/org/omg/CosNaming/NamingContextHelper.java, * generated/org/omg/CosNaming/NamingContextHolder.java, * generated/org/omg/CosNaming/NamingContextOperations.java, * generated/org/omg/CosNaming/NamingContextPOA.java, * generated/org/omg/CosNaming/NamingContextPackage/AlreadyBound.java, * generated/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHelper.java, * generated/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHolder.java, * generated/org/omg/CosNaming/NamingContextPackage/CannotProceed.java, * generated/org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.java, * generated/org/omg/CosNaming/NamingContextPackage/CannotProceedHolder.java, * generated/org/omg/CosNaming/NamingContextPackage/InvalidName.java, * generated/org/omg/CosNaming/NamingContextPackage/InvalidNameHelper.java, * generated/org/omg/CosNaming/NamingContextPackage/InvalidNameHolder.java, * generated/org/omg/CosNaming/NamingContextPackage/NotEmpty.java, * generated/org/omg/CosNaming/NamingContextPackage/NotEmptyHelper.java, * generated/org/omg/CosNaming/NamingContextPackage/NotEmptyHolder.java, * generated/org/omg/CosNaming/NamingContextPackage/NotFound.java, * generated/org/omg/CosNaming/NamingContextPackage/NotFoundHelper.java, * generated/org/omg/CosNaming/NamingContextPackage/NotFoundHolder.java, * generated/org/omg/CosNaming/NamingContextPackage/NotFoundReason.java, * generated/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHelper.java, * generated/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHolder.java, * generated/org/omg/CosNaming/_BindingIteratorStub.java, * generated/org/omg/CosNaming/_NamingContextExtStub.java, * generated/org/omg/CosNaming/_NamingContextStub.java, * generated/org/omg/Dynamic/Parameter.java, * generated/org/omg/DynamicAny/AnySeqHelper.java, * generated/org/omg/DynamicAny/DynAny.java, * generated/org/omg/DynamicAny/DynAnyFactory.java, * generated/org/omg/DynamicAny/DynAnyFactoryHelper.java, * generated/org/omg/DynamicAny/DynAnyFactoryOperations.java, * generated/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCode.java, * generated/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHelper.java, * generated/org/omg/DynamicAny/DynAnyHelper.java, * generated/org/omg/DynamicAny/DynAnyOperations.java, * generated/org/omg/DynamicAny/DynAnyPackage/InvalidValue.java, * generated/org/omg/DynamicAny/DynAnyPackage/InvalidValueHelper.java, * generated/org/omg/DynamicAny/DynAnyPackage/TypeMismatch.java, * generated/org/omg/DynamicAny/DynAnyPackage/TypeMismatchHelper.java, * generated/org/omg/DynamicAny/DynAnySeqHelper.java, * generated/org/omg/DynamicAny/DynArray.java, * generated/org/omg/DynamicAny/DynArrayHelper.java, * generated/org/omg/DynamicAny/DynArrayOperations.java, * generated/org/omg/DynamicAny/DynEnum.java, * generated/org/omg/DynamicAny/DynEnumHelper.java, * generated/org/omg/DynamicAny/DynEnumOperations.java, * generated/org/omg/DynamicAny/DynFixed.java, * generated/org/omg/DynamicAny/DynFixedHelper.java, * generated/org/omg/DynamicAny/DynFixedOperations.java, * generated/org/omg/DynamicAny/DynSequence.java, * generated/org/omg/DynamicAny/DynSequenceHelper.java, * generated/org/omg/DynamicAny/DynSequenceOperations.java, * generated/org/omg/DynamicAny/DynStruct.java, * generated/org/omg/DynamicAny/DynStructHelper.java, * generated/org/omg/DynamicAny/DynStructOperations.java, * generated/org/omg/DynamicAny/DynUnion.java, * generated/org/omg/DynamicAny/DynUnionHelper.java, * generated/org/omg/DynamicAny/DynUnionOperations.java, * generated/org/omg/DynamicAny/DynValue.java, * generated/org/omg/DynamicAny/DynValueBox.java, * generated/org/omg/DynamicAny/DynValueBoxOperations.java, * generated/org/omg/DynamicAny/DynValueCommon.java, * generated/org/omg/DynamicAny/DynValueCommonOperations.java, * generated/org/omg/DynamicAny/DynValueHelper.java, * generated/org/omg/DynamicAny/DynValueOperations.java, * generated/org/omg/DynamicAny/FieldNameHelper.java, * generated/org/omg/DynamicAny/NameDynAnyPair.java, * generated/org/omg/DynamicAny/NameDynAnyPairHelper.java, * generated/org/omg/DynamicAny/NameDynAnyPairSeqHelper.java, * generated/org/omg/DynamicAny/NameValuePair.java, * generated/org/omg/DynamicAny/NameValuePairHelper.java, * generated/org/omg/DynamicAny/NameValuePairSeqHelper.java, * generated/org/omg/DynamicAny/_DynAnyFactoryStub.java, * generated/org/omg/DynamicAny/_DynAnyStub.java, * generated/org/omg/DynamicAny/_DynArrayStub.java, * generated/org/omg/DynamicAny/_DynEnumStub.java, * generated/org/omg/DynamicAny/_DynFixedStub.java, * generated/org/omg/DynamicAny/_DynSequenceStub.java, * generated/org/omg/DynamicAny/_DynStructStub.java, * generated/org/omg/DynamicAny/_DynUnionStub.java, * generated/org/omg/DynamicAny/_DynValueStub.java, * generated/org/omg/IOP/CodeSets.java, * generated/org/omg/IOP/Codec.java, * generated/org/omg/IOP/CodecFactory.java, * generated/org/omg/IOP/CodecFactoryHelper.java, * generated/org/omg/IOP/CodecFactoryOperations.java, * generated/org/omg/IOP/CodecFactoryPackage/UnknownEncoding.java, * generated/org/omg/IOP/CodecFactoryPackage/UnknownEncodingHelper.java, * generated/org/omg/IOP/CodecOperations.java, * generated/org/omg/IOP/CodecPackage/FormatMismatch.java, * generated/org/omg/IOP/CodecPackage/FormatMismatchHelper.java, * generated/org/omg/IOP/CodecPackage/InvalidTypeForEncoding.java, * generated/org/omg/IOP/CodecPackage/InvalidTypeForEncodingHelper.java, * generated/org/omg/IOP/CodecPackage/TypeMismatch.java, * generated/org/omg/IOP/CodecPackage/TypeMismatchHelper.java, * generated/org/omg/IOP/ComponentIdHelper.java, * generated/org/omg/IOP/ENCODING_CDR_ENCAPS.java, * generated/org/omg/IOP/Encoding.java, * generated/org/omg/IOP/ExceptionDetailMessage.java, * generated/org/omg/IOP/IOR.java, * generated/org/omg/IOP/IORHelper.java, * generated/org/omg/IOP/IORHolder.java, * generated/org/omg/IOP/MultipleComponentProfileHelper.java, * generated/org/omg/IOP/MultipleComponentProfileHolder.java, * generated/org/omg/IOP/ProfileIdHelper.java, * generated/org/omg/IOP/RMICustomMaxStreamFormat.java, * generated/org/omg/IOP/ServiceContext.java, * generated/org/omg/IOP/ServiceContextHelper.java, * generated/org/omg/IOP/ServiceContextHolder.java, * generated/org/omg/IOP/ServiceContextListHelper.java, * generated/org/omg/IOP/ServiceContextListHolder.java, * generated/org/omg/IOP/ServiceIdHelper.java, * generated/org/omg/IOP/TAG_ALTERNATE_IIOP_ADDRESS.java, * generated/org/omg/IOP/TAG_CODE_SETS.java, * generated/org/omg/IOP/TAG_INTERNET_IOP.java, * generated/org/omg/IOP/TAG_JAVA_CODEBASE.java, * generated/org/omg/IOP/TAG_MULTIPLE_COMPONENTS.java, * generated/org/omg/IOP/TAG_ORB_TYPE.java, * generated/org/omg/IOP/TAG_POLICIES.java, * generated/org/omg/IOP/TAG_RMI_CUSTOM_MAX_STREAM_FORMAT.java, * generated/org/omg/IOP/TaggedComponent.java, * generated/org/omg/IOP/TaggedComponentHelper.java, * generated/org/omg/IOP/TaggedComponentHolder.java, * generated/org/omg/IOP/TaggedProfile.java, * generated/org/omg/IOP/TaggedProfileHelper.java, * generated/org/omg/IOP/TaggedProfileHolder.java, * generated/org/omg/IOP/TransactionService.java, * generated/org/omg/Messaging/SYNC_WITH_TRANSPORT.java, * generated/org/omg/Messaging/SyncScopeHelper.java, * generated/org/omg/PortableInterceptor/ACTIVE.java, * generated/org/omg/PortableInterceptor/AdapterManagerIdHelper.java, * generated/org/omg/PortableInterceptor/AdapterNameHelper.java, * generated/org/omg/PortableInterceptor/AdapterStateHelper.java, * generated/org/omg/PortableInterceptor/ClientRequestInfo.java, * generated/org/omg/PortableInterceptor/ClientRequestInfoOperations.java, * generated/org/omg/PortableInterceptor/ClientRequestInterceptor.java, * generated/org/omg/PortableInterceptor/ClientRequestInterceptorOperations.java, * generated/org/omg/PortableInterceptor/Current.java, * generated/org/omg/PortableInterceptor/CurrentHelper.java, * generated/org/omg/PortableInterceptor/CurrentOperations.java, * generated/org/omg/PortableInterceptor/DISCARDING.java, * generated/org/omg/PortableInterceptor/ForwardRequest.java, * generated/org/omg/PortableInterceptor/ForwardRequestHelper.java, * generated/org/omg/PortableInterceptor/HOLDING.java, * generated/org/omg/PortableInterceptor/INACTIVE.java, * generated/org/omg/PortableInterceptor/IORInfo.java, * generated/org/omg/PortableInterceptor/IORInfoOperations.java, * generated/org/omg/PortableInterceptor/IORInterceptor.java, * generated/org/omg/PortableInterceptor/IORInterceptorOperations.java, * generated/org/omg/PortableInterceptor/IORInterceptor_3_0.java, * generated/org/omg/PortableInterceptor/IORInterceptor_3_0Helper.java, * generated/org/omg/PortableInterceptor/IORInterceptor_3_0Holder.java, * generated/org/omg/PortableInterceptor/IORInterceptor_3_0Operations.java, * generated/org/omg/PortableInterceptor/Interceptor.java, * generated/org/omg/PortableInterceptor/InterceptorOperations.java, * generated/org/omg/PortableInterceptor/InvalidSlot.java, * generated/org/omg/PortableInterceptor/InvalidSlotHelper.java, * generated/org/omg/PortableInterceptor/LOCATION_FORWARD.java, * generated/org/omg/PortableInterceptor/NON_EXISTENT.java, * generated/org/omg/PortableInterceptor/ORBIdHelper.java, * generated/org/omg/PortableInterceptor/ORBInitInfo.java, * generated/org/omg/PortableInterceptor/ORBInitInfoOperations.java, * generated/org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateName.java, * generated/org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateNameHelper.java, * generated/org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidName.java, * generated/org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidNameHelper.java, * generated/org/omg/PortableInterceptor/ORBInitInfoPackage/ObjectIdHelper.java, * generated/org/omg/PortableInterceptor/ORBInitializer.java, * generated/org/omg/PortableInterceptor/ORBInitializerOperations.java, * generated/org/omg/PortableInterceptor/ObjectIdHelper.java, * generated/org/omg/PortableInterceptor/ObjectReferenceFactory.java, * generated/org/omg/PortableInterceptor/ObjectReferenceFactoryHelper.java, * generated/org/omg/PortableInterceptor/ObjectReferenceFactoryHolder.java, * generated/org/omg/PortableInterceptor/ObjectReferenceTemplate.java, * generated/org/omg/PortableInterceptor/ObjectReferenceTemplateHelper.java, * generated/org/omg/PortableInterceptor/ObjectReferenceTemplateHolder.java, * generated/org/omg/PortableInterceptor/ObjectReferenceTemplateSeqHelper.java, * generated/org/omg/PortableInterceptor/ObjectReferenceTemplateSeqHolder.java, * generated/org/omg/PortableInterceptor/PolicyFactory.java, * generated/org/omg/PortableInterceptor/PolicyFactoryOperations.java, * generated/org/omg/PortableInterceptor/RequestInfo.java, * generated/org/omg/PortableInterceptor/RequestInfoOperations.java, * generated/org/omg/PortableInterceptor/SUCCESSFUL.java, * generated/org/omg/PortableInterceptor/SYSTEM_EXCEPTION.java, * generated/org/omg/PortableInterceptor/ServerIdHelper.java, * generated/org/omg/PortableInterceptor/ServerRequestInfo.java, * generated/org/omg/PortableInterceptor/ServerRequestInfoOperations.java, * generated/org/omg/PortableInterceptor/ServerRequestInterceptor.java, * generated/org/omg/PortableInterceptor/ServerRequestInterceptorOperations.java, * generated/org/omg/PortableInterceptor/TRANSPORT_RETRY.java, * generated/org/omg/PortableInterceptor/UNKNOWN.java, * generated/org/omg/PortableInterceptor/USER_EXCEPTION.java, * generated/org/omg/PortableServer/AdapterActivator.java, * generated/org/omg/PortableServer/AdapterActivatorOperations.java, * generated/org/omg/PortableServer/Current.java, * generated/org/omg/PortableServer/CurrentOperations.java, * generated/org/omg/PortableServer/CurrentPackage/NoContext.java, * generated/org/omg/PortableServer/CurrentPackage/NoContextHelper.java, * generated/org/omg/PortableServer/ForwardRequest.java, * generated/org/omg/PortableServer/ForwardRequestHelper.java, * generated/org/omg/PortableServer/ID_ASSIGNMENT_POLICY_ID.java, * generated/org/omg/PortableServer/ID_UNIQUENESS_POLICY_ID.java, * generated/org/omg/PortableServer/IMPLICIT_ACTIVATION_POLICY_ID.java, * generated/org/omg/PortableServer/IdAssignmentPolicy.java, * generated/org/omg/PortableServer/IdAssignmentPolicyOperations.java, * generated/org/omg/PortableServer/IdAssignmentPolicyValue.java, * generated/org/omg/PortableServer/IdUniquenessPolicy.java, * generated/org/omg/PortableServer/IdUniquenessPolicyOperations.java, * generated/org/omg/PortableServer/IdUniquenessPolicyValue.java, * generated/org/omg/PortableServer/ImplicitActivationPolicy.java, * generated/org/omg/PortableServer/ImplicitActivationPolicyOperations.java, * generated/org/omg/PortableServer/ImplicitActivationPolicyValue.java, * generated/org/omg/PortableServer/LIFESPAN_POLICY_ID.java, * generated/org/omg/PortableServer/LifespanPolicy.java, * generated/org/omg/PortableServer/LifespanPolicyOperations.java, * generated/org/omg/PortableServer/LifespanPolicyValue.java, * generated/org/omg/PortableServer/POA.java, * generated/org/omg/PortableServer/POAManager.java, * generated/org/omg/PortableServer/POAManagerOperations.java, * generated/org/omg/PortableServer/POAManagerPackage/AdapterInactive.java, * generated/org/omg/PortableServer/POAManagerPackage/AdapterInactiveHelper.java, * generated/org/omg/PortableServer/POAManagerPackage/State.java, * generated/org/omg/PortableServer/POAOperations.java, * generated/org/omg/PortableServer/POAPackage/AdapterAlreadyExists.java, * generated/org/omg/PortableServer/POAPackage/AdapterAlreadyExistsHelper.java, * generated/org/omg/PortableServer/POAPackage/AdapterNonExistent.java, * generated/org/omg/PortableServer/POAPackage/AdapterNonExistentHelper.java, * generated/org/omg/PortableServer/POAPackage/InvalidPolicy.java, * generated/org/omg/PortableServer/POAPackage/InvalidPolicyHelper.java, * generated/org/omg/PortableServer/POAPackage/NoServant.java, * generated/org/omg/PortableServer/POAPackage/NoServantHelper.java, * generated/org/omg/PortableServer/POAPackage/ObjectAlreadyActive.java, * generated/org/omg/PortableServer/POAPackage/ObjectAlreadyActiveHelper.java, * generated/org/omg/PortableServer/POAPackage/ObjectNotActive.java, * generated/org/omg/PortableServer/POAPackage/ObjectNotActiveHelper.java, * generated/org/omg/PortableServer/POAPackage/ServantAlreadyActive.java, * generated/org/omg/PortableServer/POAPackage/ServantAlreadyActiveHelper.java, * generated/org/omg/PortableServer/POAPackage/ServantNotActive.java, * generated/org/omg/PortableServer/POAPackage/ServantNotActiveHelper.java, * generated/org/omg/PortableServer/POAPackage/WrongAdapter.java, * generated/org/omg/PortableServer/POAPackage/WrongAdapterHelper.java, * generated/org/omg/PortableServer/POAPackage/WrongPolicy.java, * generated/org/omg/PortableServer/POAPackage/WrongPolicyHelper.java, * generated/org/omg/PortableServer/REQUEST_PROCESSING_POLICY_ID.java, * generated/org/omg/PortableServer/RequestProcessingPolicy.java, * generated/org/omg/PortableServer/RequestProcessingPolicyOperations.java, * generated/org/omg/PortableServer/RequestProcessingPolicyValue.java, * generated/org/omg/PortableServer/SERVANT_RETENTION_POLICY_ID.java, * generated/org/omg/PortableServer/ServantActivator.java, * generated/org/omg/PortableServer/ServantActivatorHelper.java, * generated/org/omg/PortableServer/ServantActivatorOperations.java, * generated/org/omg/PortableServer/ServantActivatorPOA.java, * generated/org/omg/PortableServer/ServantLocator.java, * generated/org/omg/PortableServer/ServantLocatorHelper.java, * generated/org/omg/PortableServer/ServantLocatorOperations.java, * generated/org/omg/PortableServer/ServantLocatorPOA.java, * generated/org/omg/PortableServer/ServantManager.java, * generated/org/omg/PortableServer/ServantManagerOperations.java, * generated/org/omg/PortableServer/ServantRetentionPolicy.java, * generated/org/omg/PortableServer/ServantRetentionPolicyOperations.java, * generated/org/omg/PortableServer/ServantRetentionPolicyValue.java, * generated/org/omg/PortableServer/THREAD_POLICY_ID.java, * generated/org/omg/PortableServer/ThreadPolicy.java, * generated/org/omg/PortableServer/ThreadPolicyOperations.java, * generated/org/omg/PortableServer/ThreadPolicyValue.java, * generated/org/omg/PortableServer/_ServantActivatorStub.java, * generated/org/omg/PortableServer/_ServantLocatorStub.java, * generated/sun/awt/X11/AwtGraphicsConfigData.java, * generated/sun/awt/X11/AwtScreenData.java, * generated/sun/awt/X11/ColorData.java, * generated/sun/awt/X11/ColorEntry.java, * generated/sun/awt/X11/Depth.java, * generated/sun/awt/X11/PropMwmHints.java, * generated/sun/awt/X11/Screen.java, * generated/sun/awt/X11/ScreenFormat.java, * generated/sun/awt/X11/Visual.java, * generated/sun/awt/X11/XAWTIcon32_java_icon16_png.java, * generated/sun/awt/X11/XAWTIcon32_java_icon24_png.java, * generated/sun/awt/X11/XAWTIcon32_java_icon32_png.java, * generated/sun/awt/X11/XAWTIcon32_java_icon48_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_bw16_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_bw24_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_bw32_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_bw48_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_interim16_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_interim24_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_interim32_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_interim48_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_yellow16_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_yellow24_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_yellow32_png.java, * generated/sun/awt/X11/XAWTIcon32_security_icon_yellow48_png.java, * generated/sun/awt/X11/XAWTIcon64_java_icon16_png.java, * generated/sun/awt/X11/XAWTIcon64_java_icon24_png.java, * generated/sun/awt/X11/XAWTIcon64_java_icon32_png.java, * generated/sun/awt/X11/XAWTIcon64_java_icon48_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_bw16_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_bw24_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_bw32_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_bw48_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_interim16_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_interim24_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_interim32_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_interim48_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_yellow16_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_yellow24_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_yellow32_png.java, * generated/sun/awt/X11/XAWTIcon64_security_icon_yellow48_png.java, * generated/sun/awt/X11/XAnyEvent.java, * generated/sun/awt/X11/XArc.java, * generated/sun/awt/X11/XButtonEvent.java, * generated/sun/awt/X11/XChar2b.java, * generated/sun/awt/X11/XCharStruct.java, * generated/sun/awt/X11/XCirculateEvent.java, * generated/sun/awt/X11/XCirculateRequestEvent.java, * generated/sun/awt/X11/XClassHint.java, * generated/sun/awt/X11/XClientMessageEvent.java, * generated/sun/awt/X11/XColor.java, * generated/sun/awt/X11/XColormapEvent.java, * generated/sun/awt/X11/XComposeStatus.java, * generated/sun/awt/X11/XConfigureEvent.java, * generated/sun/awt/X11/XConfigureRequestEvent.java, * generated/sun/awt/X11/XCreateWindowEvent.java, * generated/sun/awt/X11/XCrossingEvent.java, * generated/sun/awt/X11/XDestroyWindowEvent.java, * generated/sun/awt/X11/XErrorEvent.java, * generated/sun/awt/X11/XEvent.java, * generated/sun/awt/X11/XExposeEvent.java, * generated/sun/awt/X11/XExtCodes.java, * generated/sun/awt/X11/XExtData.java, * generated/sun/awt/X11/XFocusChangeEvent.java, * generated/sun/awt/X11/XFontProp.java, * generated/sun/awt/X11/XFontSetExtents.java, * generated/sun/awt/X11/XFontStruct.java, * generated/sun/awt/X11/XGCValues.java, * generated/sun/awt/X11/XGraphicsExposeEvent.java, * generated/sun/awt/X11/XGravityEvent.java, * generated/sun/awt/X11/XHostAddress.java, * generated/sun/awt/X11/XIMCallback.java, * generated/sun/awt/X11/XIMHotKeyTrigger.java, * generated/sun/awt/X11/XIMHotKeyTriggers.java, * generated/sun/awt/X11/XIMPreeditCaretCallbackStruct.java, * generated/sun/awt/X11/XIMPreeditDrawCallbackStruct.java, * generated/sun/awt/X11/XIMPreeditStateNotifyCallbackStruct.java, * generated/sun/awt/X11/XIMStatusDrawCallbackStruct.java, * generated/sun/awt/X11/XIMStringConversionCallbackStruct.java, * generated/sun/awt/X11/XIMStringConversionText.java, * generated/sun/awt/X11/XIMStyles.java, * generated/sun/awt/X11/XIMText.java, * generated/sun/awt/X11/XIMValuesList.java, * generated/sun/awt/X11/XIconSize.java, * generated/sun/awt/X11/XImage.java, * generated/sun/awt/X11/XKeyEvent.java, * generated/sun/awt/X11/XKeyboardControl.java, * generated/sun/awt/X11/XKeyboardState.java, * generated/sun/awt/X11/XKeymapEvent.java, * generated/sun/awt/X11/XMapEvent.java, * generated/sun/awt/X11/XMapRequestEvent.java, * generated/sun/awt/X11/XMappingEvent.java, * generated/sun/awt/X11/XModifierKeymap.java, * generated/sun/awt/X11/XMotionEvent.java, * generated/sun/awt/X11/XNoExposeEvent.java, * generated/sun/awt/X11/XOMCharSetList.java, * generated/sun/awt/X11/XOMFontInfo.java, * generated/sun/awt/X11/XOMOrientation.java, * generated/sun/awt/X11/XPixmapFormatValues.java, * generated/sun/awt/X11/XPoint.java, * generated/sun/awt/X11/XPropertyEvent.java, * generated/sun/awt/X11/XRectangle.java, * generated/sun/awt/X11/XReparentEvent.java, * generated/sun/awt/X11/XResizeRequestEvent.java, * generated/sun/awt/X11/XSegment.java, * generated/sun/awt/X11/XSelectionClearEvent.java, * generated/sun/awt/X11/XSelectionEvent.java, * generated/sun/awt/X11/XSelectionRequestEvent.java, * generated/sun/awt/X11/XSetWindowAttributes.java, * generated/sun/awt/X11/XSizeHints.java, * generated/sun/awt/X11/XStandardColormap.java, * generated/sun/awt/X11/XTextItem.java, * generated/sun/awt/X11/XTextItem16.java, * generated/sun/awt/X11/XTextProperty.java, * generated/sun/awt/X11/XTimeCoord.java, * generated/sun/awt/X11/XUnmapEvent.java, * generated/sun/awt/X11/XVisibilityEvent.java, * generated/sun/awt/X11/XVisualInfo.java, * generated/sun/awt/X11/XWMHints.java, * generated/sun/awt/X11/XWindowAttributes.java, * generated/sun/awt/X11/XWindowChanges.java, * generated/sun/awt/X11/XdbeSwapInfo.java, * generated/sun/awt/X11/XkbAccessXNotifyEvent.java, * generated/sun/awt/X11/XkbActionMessageEvent.java, * generated/sun/awt/X11/XkbAnyEvent.java, * generated/sun/awt/X11/XkbBellNotifyEvent.java, * generated/sun/awt/X11/XkbCompatMapNotifyEvent.java, * generated/sun/awt/X11/XkbControlsNotifyEvent.java, * generated/sun/awt/X11/XkbEvent.java, * generated/sun/awt/X11/XkbExtensionDeviceNotifyEvent.java, * generated/sun/awt/X11/XkbIndicatorNotifyEvent.java, * generated/sun/awt/X11/XkbMapNotifyEvent.java, * generated/sun/awt/X11/XkbNamesNotifyEvent.java, * generated/sun/awt/X11/XkbNewKeyboardNotifyEvent.java, * generated/sun/awt/X11/XkbStateNotifyEvent.java, * generated/sun/awt/X11/XmbTextItem.java, * generated/sun/awt/X11/XwcTextItem.java, * generated/sun/awt/X11/awtImageData.java, * generated/sun/awt/X11/generator/sizer.32.c, * generated/sun/awt/X11/generator/sizer.64.c, * generated/sun/awt/X11/generator/sizes.32, * generated/sun/awt/X11/generator/sizes.64, * generated/sun/awt/resources/awt.java, * generated/sun/awt/resources/awt_de.java, * generated/sun/awt/resources/awt_es.java, * generated/sun/awt/resources/awt_fr.java, * generated/sun/awt/resources/awt_it.java, * generated/sun/awt/resources/awt_ja.java, * generated/sun/awt/resources/awt_ko.java, * generated/sun/awt/resources/awt_sv.java, * generated/sun/awt/resources/awt_zh_CN.java, * generated/sun/awt/resources/awt_zh_HK.java, * generated/sun/awt/resources/awt_zh_TW.java, * generated/sun/management/resources/agent.java, * generated/sun/management/resources/agent_de.java, * generated/sun/management/resources/agent_es.java, * generated/sun/management/resources/agent_fr.java, * generated/sun/management/resources/agent_it.java, * generated/sun/management/resources/agent_ja.java, * generated/sun/management/resources/agent_ko.java, * generated/sun/management/resources/agent_sv.java, * generated/sun/management/resources/agent_zh_CN.java, * generated/sun/management/resources/agent_zh_HK.java, * generated/sun/management/resources/agent_zh_TW.java, * generated/sun/misc/Version.java, * generated/sun/nio/ch/AlreadyBoundException.java, * generated/sun/nio/ch/SocketOptionRegistry.java, * generated/sun/nio/cs/StandardCharsets.java, * generated/sun/nio/cs/ext/HKSCS_XPMapping.java, * generated/sun/nio/cs/ext/MS950.java, * generated/sun/nio/fs/UnixConstants.java, * generated/sun/print/resources/serviceui.java, * generated/sun/print/resources/serviceui_de.java, * generated/sun/print/resources/serviceui_es.java, * generated/sun/print/resources/serviceui_fr.java, * generated/sun/print/resources/serviceui_it.java, * generated/sun/print/resources/serviceui_ja.java, * generated/sun/print/resources/serviceui_ko.java, * generated/sun/print/resources/serviceui_sv.java, * generated/sun/print/resources/serviceui_zh_CN.java, * generated/sun/print/resources/serviceui_zh_HK.java, * generated/sun/print/resources/serviceui_zh_TW.java, * generated/sun/tools/jar/resources/jar.java, * generated/sun/tools/jar/resources/jar_de.java, * generated/sun/tools/jar/resources/jar_es.java, * generated/sun/tools/jar/resources/jar_fr.java, * generated/sun/tools/jar/resources/jar_it.java, * generated/sun/tools/jar/resources/jar_ja.java, * generated/sun/tools/jar/resources/jar_ko.java, * generated/sun/tools/jar/resources/jar_sv.java, * generated/sun/tools/jar/resources/jar_zh_CN.java, * generated/sun/tools/jar/resources/jar_zh_HK.java, * generated/sun/tools/jar/resources/jar_zh_TW.java, * generated/sun/tools/jconsole/Version.java, * generated/sun/util/CoreResourceBundleControl.java, * generated/sun/util/LocaleDataMetaInfo.java, * generated/sun/util/logging/resources/logging.java, * generated/sun/util/logging/resources/logging_de.java, * generated/sun/util/logging/resources/logging_es.java, * generated/sun/util/logging/resources/logging_fr.java, * generated/sun/util/logging/resources/logging_it.java, * generated/sun/util/logging/resources/logging_ja.java, * generated/sun/util/logging/resources/logging_ko.java, * generated/sun/util/logging/resources/logging_sv.java, * generated/sun/util/logging/resources/logging_zh_CN.java, * generated/sun/util/logging/resources/logging_zh_HK.java, * generated/sun/util/logging/resources/logging_zh_TW.java, * generated/sun/util/resources/CalendarData.java, * generated/sun/util/resources/CalendarData_ar.java, * generated/sun/util/resources/CalendarData_be.java, * generated/sun/util/resources/CalendarData_bg.java, * generated/sun/util/resources/CalendarData_ca.java, * generated/sun/util/resources/CalendarData_cs.java, * generated/sun/util/resources/CalendarData_da.java, * generated/sun/util/resources/CalendarData_de.java, * generated/sun/util/resources/CalendarData_el.java, * generated/sun/util/resources/CalendarData_el_CY.java, * generated/sun/util/resources/CalendarData_en.java, * generated/sun/util/resources/CalendarData_en_GB.java, * generated/sun/util/resources/CalendarData_en_IE.java, * generated/sun/util/resources/CalendarData_en_MT.java, * generated/sun/util/resources/CalendarData_es.java, * generated/sun/util/resources/CalendarData_es_ES.java, * generated/sun/util/resources/CalendarData_es_US.java, * generated/sun/util/resources/CalendarData_et.java, * generated/sun/util/resources/CalendarData_fi.java, * generated/sun/util/resources/CalendarData_fr.java, * generated/sun/util/resources/CalendarData_fr_CA.java, * generated/sun/util/resources/CalendarData_hi.java, * generated/sun/util/resources/CalendarData_hr.java, * generated/sun/util/resources/CalendarData_hu.java, * generated/sun/util/resources/CalendarData_in_ID.java, * generated/sun/util/resources/CalendarData_is.java, * generated/sun/util/resources/CalendarData_it.java, * generated/sun/util/resources/CalendarData_iw.java, * generated/sun/util/resources/CalendarData_ja.java, * generated/sun/util/resources/CalendarData_ko.java, * generated/sun/util/resources/CalendarData_lt.java, * generated/sun/util/resources/CalendarData_lv.java, * generated/sun/util/resources/CalendarData_mk.java, * generated/sun/util/resources/CalendarData_ms_MY.java, * generated/sun/util/resources/CalendarData_mt.java, * generated/sun/util/resources/CalendarData_mt_MT.java, * generated/sun/util/resources/CalendarData_nl.java, * generated/sun/util/resources/CalendarData_no.java, * generated/sun/util/resources/CalendarData_pl.java, * generated/sun/util/resources/CalendarData_pt.java, * generated/sun/util/resources/CalendarData_pt_PT.java, * generated/sun/util/resources/CalendarData_ro.java, * generated/sun/util/resources/CalendarData_ru.java, * generated/sun/util/resources/CalendarData_sk.java, * generated/sun/util/resources/CalendarData_sl.java, * generated/sun/util/resources/CalendarData_sq.java, * generated/sun/util/resources/CalendarData_sr.java, * generated/sun/util/resources/CalendarData_sv.java, * generated/sun/util/resources/CalendarData_th.java, * generated/sun/util/resources/CalendarData_tr.java, * generated/sun/util/resources/CalendarData_uk.java, * generated/sun/util/resources/CalendarData_vi.java, * generated/sun/util/resources/CalendarData_zh.java, * generated/sun/util/resources/CurrencyNames.java, * generated/sun/util/resources/CurrencyNames_ar_AE.java, * generated/sun/util/resources/CurrencyNames_ar_BH.java, * generated/sun/util/resources/CurrencyNames_ar_DZ.java, * generated/sun/util/resources/CurrencyNames_ar_EG.java, * generated/sun/util/resources/CurrencyNames_ar_IQ.java, * generated/sun/util/resources/CurrencyNames_ar_JO.java, * generated/sun/util/resources/CurrencyNames_ar_KW.java, * generated/sun/util/resources/CurrencyNames_ar_LB.java, * generated/sun/util/resources/CurrencyNames_ar_LY.java, * generated/sun/util/resources/CurrencyNames_ar_MA.java, * generated/sun/util/resources/CurrencyNames_ar_OM.java, * generated/sun/util/resources/CurrencyNames_ar_QA.java, * generated/sun/util/resources/CurrencyNames_ar_SA.java, * generated/sun/util/resources/CurrencyNames_ar_SD.java, * generated/sun/util/resources/CurrencyNames_ar_SY.java, * generated/sun/util/resources/CurrencyNames_ar_TN.java, * generated/sun/util/resources/CurrencyNames_ar_YE.java, * generated/sun/util/resources/CurrencyNames_be_BY.java, * generated/sun/util/resources/CurrencyNames_bg_BG.java, * generated/sun/util/resources/CurrencyNames_ca_ES.java, * generated/sun/util/resources/CurrencyNames_cs_CZ.java, * generated/sun/util/resources/CurrencyNames_da_DK.java, * generated/sun/util/resources/CurrencyNames_de.java, * generated/sun/util/resources/CurrencyNames_de_AT.java, * generated/sun/util/resources/CurrencyNames_de_CH.java, * generated/sun/util/resources/CurrencyNames_de_DE.java, * generated/sun/util/resources/CurrencyNames_de_GR.java, * generated/sun/util/resources/CurrencyNames_de_LU.java, * generated/sun/util/resources/CurrencyNames_el_CY.java, * generated/sun/util/resources/CurrencyNames_el_GR.java, * generated/sun/util/resources/CurrencyNames_en_AU.java, * generated/sun/util/resources/CurrencyNames_en_CA.java, * generated/sun/util/resources/CurrencyNames_en_GB.java, * generated/sun/util/resources/CurrencyNames_en_IE.java, * generated/sun/util/resources/CurrencyNames_en_IN.java, * generated/sun/util/resources/CurrencyNames_en_MT.java, * generated/sun/util/resources/CurrencyNames_en_NZ.java, * generated/sun/util/resources/CurrencyNames_en_PH.java, * generated/sun/util/resources/CurrencyNames_en_SG.java, * generated/sun/util/resources/CurrencyNames_en_US.java, * generated/sun/util/resources/CurrencyNames_en_ZA.java, * generated/sun/util/resources/CurrencyNames_es.java, * generated/sun/util/resources/CurrencyNames_es_AR.java, * generated/sun/util/resources/CurrencyNames_es_BO.java, * generated/sun/util/resources/CurrencyNames_es_CL.java, * generated/sun/util/resources/CurrencyNames_es_CO.java, * generated/sun/util/resources/CurrencyNames_es_CR.java, * generated/sun/util/resources/CurrencyNames_es_DO.java, * generated/sun/util/resources/CurrencyNames_es_EC.java, * generated/sun/util/resources/CurrencyNames_es_ES.java, * generated/sun/util/resources/CurrencyNames_es_GT.java, * generated/sun/util/resources/CurrencyNames_es_HN.java, * generated/sun/util/resources/CurrencyNames_es_MX.java, * generated/sun/util/resources/CurrencyNames_es_NI.java, * generated/sun/util/resources/CurrencyNames_es_PA.java, * generated/sun/util/resources/CurrencyNames_es_PE.java, * generated/sun/util/resources/CurrencyNames_es_PR.java, * generated/sun/util/resources/CurrencyNames_es_PY.java, * generated/sun/util/resources/CurrencyNames_es_SV.java, * generated/sun/util/resources/CurrencyNames_es_US.java, * generated/sun/util/resources/CurrencyNames_es_UY.java, * generated/sun/util/resources/CurrencyNames_es_VE.java, * generated/sun/util/resources/CurrencyNames_et_EE.java, * generated/sun/util/resources/CurrencyNames_fi_FI.java, * generated/sun/util/resources/CurrencyNames_fr.java, * generated/sun/util/resources/CurrencyNames_fr_BE.java, * generated/sun/util/resources/CurrencyNames_fr_CA.java, * generated/sun/util/resources/CurrencyNames_fr_CH.java, * generated/sun/util/resources/CurrencyNames_fr_FR.java, * generated/sun/util/resources/CurrencyNames_fr_LU.java, * generated/sun/util/resources/CurrencyNames_ga_IE.java, * generated/sun/util/resources/CurrencyNames_hi_IN.java, * generated/sun/util/resources/CurrencyNames_hr_HR.java, * generated/sun/util/resources/CurrencyNames_hu_HU.java, * generated/sun/util/resources/CurrencyNames_in_ID.java, * generated/sun/util/resources/CurrencyNames_is_IS.java, * generated/sun/util/resources/CurrencyNames_it.java, * generated/sun/util/resources/CurrencyNames_it_CH.java, * generated/sun/util/resources/CurrencyNames_it_IT.java, * generated/sun/util/resources/CurrencyNames_iw_IL.java, * generated/sun/util/resources/CurrencyNames_ja.java, * generated/sun/util/resources/CurrencyNames_ja_JP.java, * generated/sun/util/resources/CurrencyNames_ko.java, * generated/sun/util/resources/CurrencyNames_ko_KR.java, * generated/sun/util/resources/CurrencyNames_lt_LT.java, * generated/sun/util/resources/CurrencyNames_lv_LV.java, * generated/sun/util/resources/CurrencyNames_mk_MK.java, * generated/sun/util/resources/CurrencyNames_ms_MY.java, * generated/sun/util/resources/CurrencyNames_mt_MT.java, * generated/sun/util/resources/CurrencyNames_nl_BE.java, * generated/sun/util/resources/CurrencyNames_nl_NL.java, * generated/sun/util/resources/CurrencyNames_no_NO.java, * generated/sun/util/resources/CurrencyNames_pl_PL.java, * generated/sun/util/resources/CurrencyNames_pt_BR.java, * generated/sun/util/resources/CurrencyNames_pt_PT.java, * generated/sun/util/resources/CurrencyNames_ro_RO.java, * generated/sun/util/resources/CurrencyNames_ru_RU.java, * generated/sun/util/resources/CurrencyNames_sk_SK.java, * generated/sun/util/resources/CurrencyNames_sl_SI.java, * generated/sun/util/resources/CurrencyNames_sq_AL.java, * generated/sun/util/resources/CurrencyNames_sr_BA.java, * generated/sun/util/resources/CurrencyNames_sr_CS.java, * generated/sun/util/resources/CurrencyNames_sr_ME.java, * generated/sun/util/resources/CurrencyNames_sv.java, * generated/sun/util/resources/CurrencyNames_sv_SE.java, * generated/sun/util/resources/CurrencyNames_th_TH.java, * generated/sun/util/resources/CurrencyNames_tr_TR.java, * generated/sun/util/resources/CurrencyNames_uk_UA.java, * generated/sun/util/resources/CurrencyNames_vi_VN.java, * generated/sun/util/resources/CurrencyNames_zh_CN.java, * generated/sun/util/resources/CurrencyNames_zh_TW.java, * generated/sun/util/resources/LocaleNames.java, * generated/sun/util/resources/LocaleNames_ar.java, * generated/sun/util/resources/LocaleNames_be.java, * generated/sun/util/resources/LocaleNames_bg.java, * generated/sun/util/resources/LocaleNames_ca.java, * generated/sun/util/resources/LocaleNames_cs.java, * generated/sun/util/resources/LocaleNames_da.java, * generated/sun/util/resources/LocaleNames_de.java, * generated/sun/util/resources/LocaleNames_el.java, * generated/sun/util/resources/LocaleNames_el_CY.java, * generated/sun/util/resources/LocaleNames_en.java, * generated/sun/util/resources/LocaleNames_en_MT.java, * generated/sun/util/resources/LocaleNames_en_PH.java, * generated/sun/util/resources/LocaleNames_en_SG.java, * generated/sun/util/resources/LocaleNames_es.java, * generated/sun/util/resources/LocaleNames_es_US.java, * generated/sun/util/resources/LocaleNames_et.java, * generated/sun/util/resources/LocaleNames_fi.java, * generated/sun/util/resources/LocaleNames_fr.java, * generated/sun/util/resources/LocaleNames_ga.java, * generated/sun/util/resources/LocaleNames_hi.java, * generated/sun/util/resources/LocaleNames_hr.java, * generated/sun/util/resources/LocaleNames_hu.java, * generated/sun/util/resources/LocaleNames_in.java, * generated/sun/util/resources/LocaleNames_is.java, * generated/sun/util/resources/LocaleNames_it.java, * generated/sun/util/resources/LocaleNames_iw.java, * generated/sun/util/resources/LocaleNames_ja.java, * generated/sun/util/resources/LocaleNames_ko.java, * generated/sun/util/resources/LocaleNames_lt.java, * generated/sun/util/resources/LocaleNames_lv.java, * generated/sun/util/resources/LocaleNames_mk.java, * generated/sun/util/resources/LocaleNames_ms.java, * generated/sun/util/resources/LocaleNames_mt.java, * generated/sun/util/resources/LocaleNames_nl.java, * generated/sun/util/resources/LocaleNames_no.java, * generated/sun/util/resources/LocaleNames_pl.java, * generated/sun/util/resources/LocaleNames_pt.java, * generated/sun/util/resources/LocaleNames_pt_BR.java, * generated/sun/util/resources/LocaleNames_pt_PT.java, * generated/sun/util/resources/LocaleNames_ro.java, * generated/sun/util/resources/LocaleNames_ru.java, * generated/sun/util/resources/LocaleNames_sk.java, * generated/sun/util/resources/LocaleNames_sl.java, * generated/sun/util/resources/LocaleNames_sq.java, * generated/sun/util/resources/LocaleNames_sr.java, * generated/sun/util/resources/LocaleNames_sv.java, * generated/sun/util/resources/LocaleNames_th.java, * generated/sun/util/resources/LocaleNames_tr.java, * generated/sun/util/resources/LocaleNames_uk.java, * generated/sun/util/resources/LocaleNames_vi.java, * generated/sun/util/resources/LocaleNames_zh.java, * generated/sun/util/resources/LocaleNames_zh_SG.java, * generated/sun/util/resources/LocaleNames_zh_TW.java, * patches/6592792.patch, * patches/6733959.patch, * patches/6755943.patch, * patches/alpha-fixes.patch, * patches/boot/ant-javac.patch, * patches/boot/break-processbuilder-dependency.patch, * patches/boot/compile-for-7.patch, * patches/boot/corba-defs.patch, * patches/boot/corba-dependencies.patch, * patches/boot/corba-idlj.patch, * patches/boot/corba-no-gen.patch, * patches/boot/corba-orb.patch, * patches/boot/demos.patch, * patches/boot/ecj-autoboxing.patch, * patches/boot/ecj-diamond.patch, * patches/boot/ecj-fphexconstants.patch, * patches/boot/ecj-multicatch.patch, * patches/boot/ecj-opts.patch, * patches/boot/ecj-stringswitch.patch, * patches/boot/ecj-trywithresources.patch, * patches/boot/fontconfig.patch, * patches/boot/generated-comments.patch, * patches/boot/genstubs-nofork.patch, * patches/boot/getannotation-cast.patch, * patches/boot/hotspot-jdk-dependency.patch, * patches/boot/icedteart.patch, * patches/boot/jar.patch, * patches/boot/javah.patch, * patches/boot/jaxp-dependency.patch, * patches/boot/jaxws-getdtdtype.patch, * patches/boot/jaxws-jdk-dependency.patch, * patches/boot/jaxws-langtools-dependency.patch, * patches/boot/jopt.patch, * patches/boot/langtools-force-old-jdk.patch, * patches/boot/pr39408.patch, * patches/boot/pr40188.patch, * patches/boot/pr40616.patch, * patches/boot/revert-6941137.patch, * patches/boot/revert-6973616.patch, * patches/boot/scanner-charsets.patch, * patches/boot/scanner-dbcs.patch, * patches/boot/scanner-sbcs.patch, * patches/boot/scanner-spp.patch, * patches/boot/symbols.patch, * patches/boot/test_gamma.patch, * patches/boot/tobin.patch, * patches/boot/tools.jar.patch, * patches/boot/xbootclasspath.patch, * patches/boot/xsltproc.patch, * patches/clean-crypto.patch, * patches/demos.patch, * patches/gcc-suffix.patch, * patches/headers.patch, * patches/hotspot-gcc-pr36917.patch, * patches/javafiles.patch, * patches/jpegclasses.patch, * patches/jtreg-httpTest.patch, * patches/jvmtiEnv.patch, * patches/lc_ctype.patch, * patches/libraries.patch, * patches/linker-libs-order.patch, * patches/params-cast-size_t.patch, * patches/parisc-opt.patch, * patches/parisc.patch, * patches/pr261.patch, * patches/print-lsb-release.patch, * patches/samejvm-safe.patch, * patches/security-updates.patch, * patches/security/6592792.patch, * patches/security/6733959.patch, * patches/security/6755943.patch, * patches/sh4-support.patch, * patches/signed-types.patch, * patches/sources.patch, * patches/sparc-ptracefix.patch, * patches/sparc-trapsfix.patch, * patches/sunsrc.patch, * patches/systemtap-alloc-size-workaround.patch, * patches/systemtap.patch, * patches/tests-jdk.patch, * patches/text-relocations.patch, * patches/update-bootclasspath.patch, * patches/use-idx_t.patch: Removed. * Makefile.am: Update aliases and remove dead ones. (OPENJDK_VERSION): Bump to b80. (CORBA_CHANGESET): Update to OpenJDK8 forest head. (JAXP_CHANGESET): Likewise. (JAXWS_CHANGESET): Likewise. (JDK_CHANGESET): Likewise. (LANGTOOLS_CHANGESET): Likewise. (OPENJDK_CHANGESET): Likewise. (CORBA_SHA256SUM): Likewise. (JAXP_SHA256SUM): Likewise. (JAXWS_SHA256SUM): Likewise. (JDK_SHA256SUM): Likewise. (LANGTOOLS_SHA256SUM): Likewise. (OPENJDK_SHA256SUM): Likewise. (HS_SHA256SUM): Always set. (HS_CHANGESET): Likewise. (HS_URL): Likewise. (HOTSPOT_CHANGESET): Removed. (HOTSPOT_SHA256SUM): Likewise. (JAXWS_DROP_URL): Likewise. (JAXWS_DROP_ZIP): Likewise. (JAXWS_DROP_SHA256SUM): Likewise. (JAF_DROP_URL): Likewise. (JAF_DROP_ZIP): Likewise. (JAF_DROP_SHA256SUM): Likewise. (JAXP_DROP_URL): Likewise. (JAXP_DROP_ZIP): Likewise. (JAXP_DROP_SHA256SUM): Likewise. (OPENJDK_URL): Use OpenJDK not IcedTea. (CORBA_URL): Likewise. (JAXP_URL): Likewise. (JAXWS_URL): Likewise. (JDK_URL): Likewise. (LANGTOOLS_URL): Likewise. (HOTSPOT_URL): Likewise. (BOOT_DIR): Rename as jdk1.7.0. (SERVER_DIR): Fix for results of new build. (BUILD_IMAGE_DIR): New variable pointing to images. (BUILD_JRE_ARCH_DIR): Redefine relative to BUILD_IMAGE_DIR. (BUILD_DEBUG_IMAGE_DIR): New variable for debug images. (BUILD_DEBUG_JRE_ACH_DIR): Redefine relative to BUILD_DEBUG_IMAGE_DIR. (BUILD_BOOT_IMAGE_DIR): New variable for bootstrap images. (JAXWS): Sources now back in OpenJDK itself. (NEED_JAXWS_SRC): Removed. (JAXWS_COND): Likewise. (SOURCEPATH_DIRS): Remove generated. (ICEDTEA_BOOTSTRAP_CLASSES): Set to empty. (ICEDTEA_BUILD_TARGET): Always set to images. Add docs if ENABLE_DOCS is set. (ICEDTEA_DEBUG_BUILD_TARGET): Removed. Debugging now set via configure options. (OPENJDK_BOOT_TREE): Switch to patch-boot.stamp. (ICEDTEA_PATCHES): Remove most patches, starting more or less fresh. (ICEDTEA_BOOT_PATCHES): Empty for now. (JAXWS_PATCHES): Removed. (ICEDTEA_NAME): Drop the '8' suffix. (ICEDTEA_CONFIGURE): New variable containing the arguments to OpenJDK's configure. (ICEDTEA_ENV): Update for 8 and remove most flags. Add LOG="debug" to get old-style build output. Set SCTP_WERROR empty to avoid setting -Werror. Set POST_STRIP_CMD empty to avoid stripping JDK libraries. Set STRIP_POLICY to no_strip to avoid stripping HotSpot libraries (ICEDTEA_CONFIGURE_BOOT): Arguments to configure for bootstrap. Same as ICEDTEA_CONFIGURE for now. (ICEDTEA_ENV_BOOT): Minimise. (GENERATED_FILES): Removed. (EXTRA_DIST): Remove GENERATED_FILES. (clean-local): Add clean-icedtea-debug. (.PHONY): Likewise and remove clean-drops. (download): Drop download-drops. (clean-download): Remove clean-drops. (download-jaxp-drop): Removed. (clean-download-jaxp-drop): Likewise. (download-jaf-drop): Likewise. (clean-download-jaf-drop): Likewise. (download-jaxws-drop): Likewise. (clean-download-jaxws-drop): Likewise. (download-drops): Likewise. (clean-drops): Likewise. (download-openjdk): Replace JDK7 cloning with IcedTea. Needs general forest replacement. (extract): Remove extract-jaxws. (clean-extract): Remove clean-extract-jaxws. (extract-openjdk): Replace $(ICEDTEA_PREFIX) with '*'. Remove broken javazic tool still in b80 (removed upstream in later changeset). (extract-jaxws): Removed. (clean-extract-jaxws): Likewise. (generated): Likewise. (clean-generated): Likewise. (versioning): Replace jdk7 with jdk8. Don't remove non-existent patch-jaxws.stamp. (patch-jaxws): Removed. (clean-patch-jaxws): Likewise. (bootstrap-directory-stage2): Use BUILD_BOOT_IMAGE_DIR not BOOT_BUILD_OUTPUT_DIR. (icedtea-configure): New target to run OpenJDK's configure. (icedtea): Replace 'openjdk' with BUILD_OUTPUT_DIR and BUILD_OUTPUT_DIR with BUILD_IMAGE_DIR throughout. (icedtea-debug-configure): Equivalent of icedtea-configure for debug build. (icedtea-debug): Likewise for icedtea. (clean-icedtea): Remove both configure and make targets. Move icedtea-debug removal to its own target. (clean-icedtea-debug): New target. Remove both configure and make debug targets. (icedtea-stage2): Rename icedtea to icedtea-make. (icedtea-debug-stage2): Likewise for icedtea-debug to icedtea-debug-make. (icedtea-boot-configure): Equivalent of icedtea-configure for bootstrap build. (icedtea-boot): Likewise for icedtea. (rebuild): Fix image path. (hotspot): Fix paths. (clean-icedtea-boot): Remove icedtea-boot-configure. (ADD_ZERO_CONFIGURE_ARGS): Replace BUILD_OUTPUT_DIR with BUILD_IMAGE_DIR. (ADD_ZERO_EXTRA_BUILD_ENV): Set ICEDTEA_BUILD_TARGET not ICEDTEA_DEBUG_BUILD_TARGET. (check-hotspot): Use BUILD_IMAGE_DIR rather than BUILD_OUTPUT_DIR. (check-langtools): Likewise. (check-jdk): Likewise. (rt-source-files.txt): Touch target so rt-source-files.txt always exists. * acinclude.m4: (IT_ENABLE_HG): Replace icedtea with jdk8. (IT_WITH_PROJECT): Make DEFAULT_PROJECT jdk8 and hardcoded 'icedtea' with DEFAULT_PROJECT. Remove USE_JDK7 conditional and add USE_ICEDTEA. (IT_WITH_JAXP_DROP_ZIP): Removed. (IT_WITH_JAF_DROP_ZIP): Likewise. (IT_WITH_JAXWS_DROP_ZIP): Likewise. (IT_DIAMOND_CHECK): Fail if diamond is not available, rather than patching. (IT_CHECK_FOR_LCMS): Default to using bundled version as system version not currently supported with b80. * configure.ac: Remove IT_WITH_JAXP_DROP_ZIP, IT_WITH_JAF_DROP_ZIP and IT_WITH_JAXWS_DROP_ZIP invocations. * hotspot.map: Add default option which will be used in place of a copy in Makefile.am. * patches/cacao/arch.patch: Regenerated. * patches/disable-intree-ec.patch: Change java.security to java.security-linux. * patches/memory-limits.patch: Regenerated. * patches/nss-config.patch: Change java.security to java.security-linux. * patches/rhino.patch, * patches/systemtap-gcc-4.5.patch: Regenerated. * remove-intree-libraries.sh.in: Update ZLIB_VERSION. Only remove JPEG, GIF and PNG sources if system version is enabled. diffstat: ChangeLog | 1428 + Makefile.am | 745 +- acinclude.m4 | 78 +- configure.ac | 3 - generated/com/sun/accessibility/internal/resources/accessibility.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_de.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_en.java | 107 - generated/com/sun/accessibility/internal/resources/accessibility_es.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_fr.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_it.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_ja.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_ko.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_sv.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_zh_CN.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_zh_HK.java | 108 - generated/com/sun/accessibility/internal/resources/accessibility_zh_TW.java | 108 - generated/com/sun/corba/se/PortableActivationIDL/Activator.java | 13 - generated/com/sun/corba/se/PortableActivationIDL/ActivatorHelper.java | 85 - generated/com/sun/corba/se/PortableActivationIDL/ActivatorHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ActivatorOperations.java | 73 - generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinition.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinitionHelper.java | 79 - generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinitionHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/EndPointInfo.java | 26 - generated/com/sun/corba/se/PortableActivationIDL/EndPointInfoHelper.java | 83 - generated/com/sun/corba/se/PortableActivationIDL/EndPointInfoHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/EndpointInfoListHelper.java | 65 - generated/com/sun/corba/se/PortableActivationIDL/EndpointInfoListHolder.java | 42 - generated/com/sun/corba/se/PortableActivationIDL/IIOP_CLEAR_TEXT.java | 20 - generated/com/sun/corba/se/PortableActivationIDL/InitialNameService.java | 17 - generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceHelper.java | 89 - generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceHolder.java | 42 - generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceOperations.java | 21 - generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBound.java | 25 - generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBoundHelper.java | 72 - generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBoundHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/InvalidORBid.java | 25 - generated/com/sun/corba/se/PortableActivationIDL/InvalidORBidHelper.java | 72 - generated/com/sun/corba/se/PortableActivationIDL/InvalidORBidHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/Locator.java | 13 - generated/com/sun/corba/se/PortableActivationIDL/LocatorHelper.java | 85 - generated/com/sun/corba/se/PortableActivationIDL/LocatorHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/LocatorOperations.java | 34 - generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORB.java | 26 - generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORBHelper.java | 84 - generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORBHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerType.java | 26 - generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerTypeHelper.java | 84 - generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerTypeHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPoint.java | 25 - generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPointHelper.java | 72 - generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPointHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegistered.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegisteredHelper.java | 80 - generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegisteredHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfo.java | 26 - generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoHelper.java | 84 - generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoListHelper.java | 65 - generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoListHolder.java | 42 - generated/com/sun/corba/se/PortableActivationIDL/ORBProxy.java | 16 - generated/com/sun/corba/se/PortableActivationIDL/ORBProxyHelper.java | 88 - generated/com/sun/corba/se/PortableActivationIDL/ORBProxyHolder.java | 41 - generated/com/sun/corba/se/PortableActivationIDL/ORBProxyOperations.java | 24 - generated/com/sun/corba/se/PortableActivationIDL/ORBidListHelper.java | 66 - generated/com/sun/corba/se/PortableActivationIDL/ORBidListHolder.java | 42 - generated/com/sun/corba/se/PortableActivationIDL/Repository.java | 13 - generated/com/sun/corba/se/PortableActivationIDL/RepositoryHelper.java | 85 - generated/com/sun/corba/se/PortableActivationIDL/RepositoryHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/RepositoryOperations.java | 54 - generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/AppNamesHelper.java | 65 - generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/AppNamesHolder.java | 42 - generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDef.java | 44 - generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDefHelper.java | 110 - generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDefHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActive.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActiveHelper.java | 80 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActiveHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalled.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalledHelper.java | 80 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalledHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegistered.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegisteredHelper.java | 80 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegisteredHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalled.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalledHelper.java | 80 - generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalledHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDown.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDownHelper.java | 80 - generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDownHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ServerIdsHelper.java | 66 - generated/com/sun/corba/se/PortableActivationIDL/ServerIdsHolder.java | 42 - generated/com/sun/corba/se/PortableActivationIDL/ServerManager.java | 18 - generated/com/sun/corba/se/PortableActivationIDL/ServerManagerHelper.java | 90 - generated/com/sun/corba/se/PortableActivationIDL/ServerManagerHolder.java | 43 - generated/com/sun/corba/se/PortableActivationIDL/ServerManagerOperations.java | 18 - generated/com/sun/corba/se/PortableActivationIDL/ServerNotActive.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/ServerNotActiveHelper.java | 80 - generated/com/sun/corba/se/PortableActivationIDL/ServerNotActiveHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegistered.java | 33 - generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegisteredHelper.java | 80 - generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegisteredHolder.java | 38 - generated/com/sun/corba/se/PortableActivationIDL/ServerProxy.java | 16 - generated/com/sun/corba/se/PortableActivationIDL/ServerProxyHelper.java | 88 - generated/com/sun/corba/se/PortableActivationIDL/ServerProxyHolder.java | 41 - generated/com/sun/corba/se/PortableActivationIDL/ServerProxyOperations.java | 30 - generated/com/sun/corba/se/PortableActivationIDL/TCPPortHelper.java | 62 - generated/com/sun/corba/se/PortableActivationIDL/_ActivatorImplBase.java | 288 - generated/com/sun/corba/se/PortableActivationIDL/_ActivatorStub.java | 368 - generated/com/sun/corba/se/PortableActivationIDL/_InitialNameServiceImplBase.java | 76 - generated/com/sun/corba/se/PortableActivationIDL/_InitialNameServiceStub.java | 71 - generated/com/sun/corba/se/PortableActivationIDL/_LocatorImplBase.java | 149 - generated/com/sun/corba/se/PortableActivationIDL/_LocatorStub.java | 160 - generated/com/sun/corba/se/PortableActivationIDL/_ORBProxyImplBase.java | 74 - generated/com/sun/corba/se/PortableActivationIDL/_ORBProxyStub.java | 70 - generated/com/sun/corba/se/PortableActivationIDL/_RepositoryImplBase.java | 220 - generated/com/sun/corba/se/PortableActivationIDL/_RepositoryStub.java | 274 - generated/com/sun/corba/se/PortableActivationIDL/_ServerManagerImplBase.java | 391 - generated/com/sun/corba/se/PortableActivationIDL/_ServerManagerStub.java | 495 - generated/com/sun/corba/se/PortableActivationIDL/_ServerProxyImplBase.java | 91 - generated/com/sun/corba/se/PortableActivationIDL/_ServerProxyStub.java | 108 - generated/com/sun/corba/se/impl/logging/ActivationSystemException.java | 265 - generated/com/sun/corba/se/impl/logging/ActivationSystemException.resource | 7 - generated/com/sun/corba/se/impl/logging/IORSystemException.java | 499 - generated/com/sun/corba/se/impl/logging/IORSystemException.resource | 15 - generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java | 965 - generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.resource | 31 - generated/com/sun/corba/se/impl/logging/LogStrings.properties | 605 - generated/com/sun/corba/se/impl/logging/NamingSystemException.java | 718 - generated/com/sun/corba/se/impl/logging/NamingSystemException.resource | 23 - generated/com/sun/corba/se/impl/logging/OMGSystemException.java | 3829 ---- generated/com/sun/corba/se/impl/logging/OMGSystemException.resource | 131 - generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java | 8587 --------- generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource | 298 - generated/com/sun/corba/se/impl/logging/POASystemException.java | 2094 -- generated/com/sun/corba/se/impl/logging/POASystemException.resource | 71 - generated/com/sun/corba/se/impl/logging/UtilSystemException.java | 935 - generated/com/sun/corba/se/impl/logging/UtilSystemException.resource | 29 - generated/com/sun/corba/se/spi/activation/Activator.java | 13 - generated/com/sun/corba/se/spi/activation/ActivatorHelper.java | 85 - generated/com/sun/corba/se/spi/activation/ActivatorHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ActivatorOperations.java | 37 - generated/com/sun/corba/se/spi/activation/BadServerDefinition.java | 33 - generated/com/sun/corba/se/spi/activation/BadServerDefinitionHelper.java | 79 - generated/com/sun/corba/se/spi/activation/BadServerDefinitionHolder.java | 38 - generated/com/sun/corba/se/spi/activation/EndPointInfo.java | 26 - generated/com/sun/corba/se/spi/activation/EndPointInfoHelper.java | 83 - generated/com/sun/corba/se/spi/activation/EndPointInfoHolder.java | 38 - generated/com/sun/corba/se/spi/activation/EndpointInfoListHelper.java | 62 - generated/com/sun/corba/se/spi/activation/EndpointInfoListHolder.java | 39 - generated/com/sun/corba/se/spi/activation/IIOP_CLEAR_TEXT.java | 16 - generated/com/sun/corba/se/spi/activation/InitialNameService.java | 13 - generated/com/sun/corba/se/spi/activation/InitialNameServiceHelper.java | 85 - generated/com/sun/corba/se/spi/activation/InitialNameServiceHolder.java | 38 - generated/com/sun/corba/se/spi/activation/InitialNameServiceOperations.java | 16 - generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBound.java | 25 - generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBoundHelper.java | 72 - generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBoundHolder.java | 38 - generated/com/sun/corba/se/spi/activation/InvalidORBid.java | 25 - generated/com/sun/corba/se/spi/activation/InvalidORBidHelper.java | 72 - generated/com/sun/corba/se/spi/activation/InvalidORBidHolder.java | 38 - generated/com/sun/corba/se/spi/activation/Locator.java | 13 - generated/com/sun/corba/se/spi/activation/LocatorHelper.java | 85 - generated/com/sun/corba/se/spi/activation/LocatorHolder.java | 38 - generated/com/sun/corba/se/spi/activation/LocatorOperations.java | 25 - generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocation.java | 26 - generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationHelper.java | 84 - generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationHolder.java | 38 - generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORB.java | 26 - generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORBHelper.java | 84 - generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORBHolder.java | 38 - generated/com/sun/corba/se/spi/activation/NoSuchEndPoint.java | 25 - generated/com/sun/corba/se/spi/activation/NoSuchEndPointHelper.java | 72 - generated/com/sun/corba/se/spi/activation/NoSuchEndPointHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ORBAlreadyRegistered.java | 33 - generated/com/sun/corba/se/spi/activation/ORBAlreadyRegisteredHelper.java | 80 - generated/com/sun/corba/se/spi/activation/ORBAlreadyRegisteredHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ORBPortInfo.java | 26 - generated/com/sun/corba/se/spi/activation/ORBPortInfoHelper.java | 84 - generated/com/sun/corba/se/spi/activation/ORBPortInfoHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ORBPortInfoListHelper.java | 62 - generated/com/sun/corba/se/spi/activation/ORBPortInfoListHolder.java | 39 - generated/com/sun/corba/se/spi/activation/ORBidHelper.java | 58 - generated/com/sun/corba/se/spi/activation/ORBidListHelper.java | 63 - generated/com/sun/corba/se/spi/activation/ORBidListHolder.java | 39 - generated/com/sun/corba/se/spi/activation/POANameHelper.java | 62 - generated/com/sun/corba/se/spi/activation/POANameHolder.java | 39 - generated/com/sun/corba/se/spi/activation/Repository.java | 13 - generated/com/sun/corba/se/spi/activation/RepositoryHelper.java | 85 - generated/com/sun/corba/se/spi/activation/RepositoryHolder.java | 38 - generated/com/sun/corba/se/spi/activation/RepositoryOperations.java | 40 - generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDef.java | 38 - generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDefHelper.java | 103 - generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDefHolder.java | 38 - generated/com/sun/corba/se/spi/activation/RepositoryPackage/StringSeqHelper.java | 62 - generated/com/sun/corba/se/spi/activation/RepositoryPackage/StringSeqHolder.java | 39 - generated/com/sun/corba/se/spi/activation/Server.java | 16 - generated/com/sun/corba/se/spi/activation/ServerAlreadyActive.java | 33 - generated/com/sun/corba/se/spi/activation/ServerAlreadyActiveHelper.java | 80 - generated/com/sun/corba/se/spi/activation/ServerAlreadyActiveHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalled.java | 33 - generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalledHelper.java | 80 - generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalledHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ServerAlreadyRegistered.java | 33 - generated/com/sun/corba/se/spi/activation/ServerAlreadyRegisteredHelper.java | 80 - generated/com/sun/corba/se/spi/activation/ServerAlreadyRegisteredHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalled.java | 33 - generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalledHelper.java | 80 - generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalledHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ServerHeldDown.java | 33 - generated/com/sun/corba/se/spi/activation/ServerHeldDownHelper.java | 80 - generated/com/sun/corba/se/spi/activation/ServerHeldDownHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ServerHelper.java | 88 - generated/com/sun/corba/se/spi/activation/ServerHolder.java | 41 - generated/com/sun/corba/se/spi/activation/ServerIdHelper.java | 56 - generated/com/sun/corba/se/spi/activation/ServerIdsHelper.java | 63 - generated/com/sun/corba/se/spi/activation/ServerIdsHolder.java | 39 - generated/com/sun/corba/se/spi/activation/ServerManager.java | 13 - generated/com/sun/corba/se/spi/activation/ServerManagerHelper.java | 85 - generated/com/sun/corba/se/spi/activation/ServerManagerHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ServerManagerOperations.java | 13 - generated/com/sun/corba/se/spi/activation/ServerNotActive.java | 33 - generated/com/sun/corba/se/spi/activation/ServerNotActiveHelper.java | 80 - generated/com/sun/corba/se/spi/activation/ServerNotActiveHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ServerNotRegistered.java | 33 - generated/com/sun/corba/se/spi/activation/ServerNotRegisteredHelper.java | 80 - generated/com/sun/corba/se/spi/activation/ServerNotRegisteredHolder.java | 38 - generated/com/sun/corba/se/spi/activation/ServerOperations.java | 30 - generated/com/sun/corba/se/spi/activation/TCPPortHelper.java | 56 - generated/com/sun/corba/se/spi/activation/_ActivatorImplBase.java | 209 - generated/com/sun/corba/se/spi/activation/_ActivatorStub.java | 251 - generated/com/sun/corba/se/spi/activation/_InitialNameServiceImplBase.java | 71 - generated/com/sun/corba/se/spi/activation/_InitialNameServiceStub.java | 66 - generated/com/sun/corba/se/spi/activation/_LocatorImplBase.java | 140 - generated/com/sun/corba/se/spi/activation/_LocatorStub.java | 151 - generated/com/sun/corba/se/spi/activation/_RepositoryImplBase.java | 206 - generated/com/sun/corba/se/spi/activation/_RepositoryStub.java | 260 - generated/com/sun/corba/se/spi/activation/_ServerImplBase.java | 91 - generated/com/sun/corba/se/spi/activation/_ServerManagerImplBase.java | 298 - generated/com/sun/corba/se/spi/activation/_ServerManagerStub.java | 364 - generated/com/sun/corba/se/spi/activation/_ServerStub.java | 108 - generated/com/sun/java/swing/plaf/gtk/resources/gtk.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_de.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_es.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_fr.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_it.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_ja.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_ko.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_sv.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_HK.java | 59 - generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.java | 59 - generated/com/sun/java/swing/plaf/motif/resources/motif.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_de.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_es.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_fr.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_it.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_ja.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_ko.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_sv.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_zh_CN.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_zh_HK.java | 29 - generated/com/sun/java/swing/plaf/motif/resources/motif_zh_TW.java | 29 - generated/com/sun/java/swing/plaf/windows/resources/windows.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_de.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_es.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_fr.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_it.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_ja.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_ko.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_sv.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_zh_CN.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_zh_HK.java | 37 - generated/com/sun/java/swing/plaf/windows/resources/windows_zh_TW.java | 37 - generated/com/sun/swing/internal/plaf/basic/resources/basic.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_de.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_es.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_fr.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_it.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_ja.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_ko.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_sv.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_HK.java | 124 - generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.java | 124 - generated/com/sun/swing/internal/plaf/metal/resources/metal.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_de.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_es.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_fr.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_it.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_ja.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_ko.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_sv.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_CN.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_HK.java | 43 - generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_TW.java | 43 - generated/com/sun/swing/internal/plaf/synth/resources/synth.java | 35 - generated/com/sun/swing/internal/plaf/synth/resources/synth_de.java | 30 - generated/com/sun/swing/internal/plaf/synth/resources/synth_es.java | 30 - generated/com/sun/swing/internal/plaf/synth/resources/synth_fr.java | 30 - generated/com/sun/swing/internal/plaf/synth/resources/synth_it.java | 30 - generated/com/sun/swing/internal/plaf/synth/resources/synth_ja.java | 35 - generated/com/sun/swing/internal/plaf/synth/resources/synth_ko.java | 35 - generated/com/sun/swing/internal/plaf/synth/resources/synth_sv.java | 30 - generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.java | 30 - generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_HK.java | 30 - generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.java | 30 - generated/com/sun/tools/apt/resources/apt.java | 58 - generated/com/sun/tools/apt/resources/apt_ja.java | 58 - generated/com/sun/tools/apt/resources/apt_zh_CN.java | 58 - generated/com/sun/tools/doclets/formats/html/resources/standard.java | 219 - generated/com/sun/tools/doclets/formats/html/resources/standard_ja.java | 219 - generated/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.java | 219 - generated/com/sun/tools/doclets/internal/toolkit/resources/doclets.java | 136 - generated/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.java | 136 - generated/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.java | 137 - generated/com/sun/tools/javac/resources/compiler.java | 418 - generated/com/sun/tools/javac/resources/compiler_ja.java | 414 - generated/com/sun/tools/javac/resources/compiler_zh_CN.java | 414 - generated/com/sun/tools/javac/resources/javac.java | 91 - generated/com/sun/tools/javac/resources/javac_ja.java | 90 - generated/com/sun/tools/javac/resources/javac_zh_CN.java | 90 - generated/com/sun/tools/javac/resources/legacy.java | 553 - generated/com/sun/tools/javac/resources/version.java | 40 - generated/com/sun/tools/javadoc/resources/javadoc.java | 67 - generated/com/sun/tools/javadoc/resources/javadoc_ja.java | 68 - generated/com/sun/tools/javadoc/resources/javadoc_zh_CN.java | 68 - generated/com/sun/tools/jdi/JDWP.java | 8609 ---------- generated/com/sun/tools/jdi/resources/jdi.java | 62 - generated/com/sun/tools/jdi/resources/jdi_ja.java | 62 - generated/com/sun/tools/jdi/resources/jdi_zh_CN.java | 62 - generated/fontconfig/fontconfig.Fedora.bfc | Bin generated/fontconfig/fontconfig.SuSE.bfc | Bin generated/fontconfig/fontconfig.Ubuntu.bfc | Bin generated/fontconfig/fontconfig.bfc | Bin generated/java/lang/CharacterData00.java | 1108 - generated/java/lang/CharacterData01.java | 451 - generated/java/lang/CharacterData02.java | 355 - generated/java/lang/CharacterData0E.java | 359 - generated/java/lang/CharacterDataLatin1.java | 285 - generated/java/lang/CharacterDataPrivateUse.java | 101 - generated/java/lang/CharacterDataUndefined.java | 95 - generated/java/lang/UNIXProcess.java | 339 - generated/java/nio/BufferOverflowException.java | 51 - generated/java/nio/BufferUnderflowException.java | 51 - generated/java/nio/ByteBuffer.java | 2015 -- generated/java/nio/ByteBufferAsCharBufferB.java | 216 - generated/java/nio/ByteBufferAsCharBufferL.java | 216 - generated/java/nio/ByteBufferAsCharBufferRB.java | 216 - generated/java/nio/ByteBufferAsCharBufferRL.java | 216 - generated/java/nio/ByteBufferAsDoubleBufferB.java | 216 - generated/java/nio/ByteBufferAsDoubleBufferL.java | 216 - generated/java/nio/ByteBufferAsDoubleBufferRB.java | 216 - generated/java/nio/ByteBufferAsDoubleBufferRL.java | 216 - generated/java/nio/ByteBufferAsFloatBufferB.java | 216 - generated/java/nio/ByteBufferAsFloatBufferL.java | 216 - generated/java/nio/ByteBufferAsFloatBufferRB.java | 216 - generated/java/nio/ByteBufferAsFloatBufferRL.java | 216 - generated/java/nio/ByteBufferAsIntBufferB.java | 216 - generated/java/nio/ByteBufferAsIntBufferL.java | 216 - generated/java/nio/ByteBufferAsIntBufferRB.java | 216 - generated/java/nio/ByteBufferAsIntBufferRL.java | 216 - generated/java/nio/ByteBufferAsLongBufferB.java | 216 - generated/java/nio/ByteBufferAsLongBufferL.java | 216 - generated/java/nio/ByteBufferAsLongBufferRB.java | 216 - generated/java/nio/ByteBufferAsLongBufferRL.java | 216 - generated/java/nio/ByteBufferAsShortBufferB.java | 216 - generated/java/nio/ByteBufferAsShortBufferL.java | 216 - generated/java/nio/ByteBufferAsShortBufferRB.java | 216 - generated/java/nio/ByteBufferAsShortBufferRL.java | 216 - generated/java/nio/CharBuffer.java | 1428 - generated/java/nio/DirectByteBuffer.java | 1009 - generated/java/nio/DirectByteBufferR.java | 1009 - generated/java/nio/DirectCharBufferRS.java | 463 - generated/java/nio/DirectCharBufferRU.java | 463 - generated/java/nio/DirectCharBufferS.java | 463 - generated/java/nio/DirectCharBufferU.java | 463 - generated/java/nio/DirectDoubleBufferRS.java | 463 - generated/java/nio/DirectDoubleBufferRU.java | 463 - generated/java/nio/DirectDoubleBufferS.java | 463 - generated/java/nio/DirectDoubleBufferU.java | 463 - generated/java/nio/DirectFloatBufferRS.java | 463 - generated/java/nio/DirectFloatBufferRU.java | 463 - generated/java/nio/DirectFloatBufferS.java | 463 - generated/java/nio/DirectFloatBufferU.java | 463 - generated/java/nio/DirectIntBufferRS.java | 463 - generated/java/nio/DirectIntBufferRU.java | 463 - generated/java/nio/DirectIntBufferS.java | 463 - generated/java/nio/DirectIntBufferU.java | 463 - generated/java/nio/DirectLongBufferRS.java | 463 - generated/java/nio/DirectLongBufferRU.java | 463 - generated/java/nio/DirectLongBufferS.java | 463 - generated/java/nio/DirectLongBufferU.java | 463 - generated/java/nio/DirectShortBufferRS.java | 463 - generated/java/nio/DirectShortBufferRU.java | 463 - generated/java/nio/DirectShortBufferS.java | 463 - generated/java/nio/DirectShortBufferU.java | 463 - generated/java/nio/DoubleBuffer.java | 1428 - generated/java/nio/FloatBuffer.java | 1428 - generated/java/nio/HeapByteBuffer.java | 592 - generated/java/nio/HeapByteBufferR.java | 592 - generated/java/nio/HeapCharBuffer.java | 592 - generated/java/nio/HeapCharBufferR.java | 592 - generated/java/nio/HeapDoubleBuffer.java | 592 - generated/java/nio/HeapDoubleBufferR.java | 592 - generated/java/nio/HeapFloatBuffer.java | 592 - generated/java/nio/HeapFloatBufferR.java | 592 - generated/java/nio/HeapIntBuffer.java | 592 - generated/java/nio/HeapIntBufferR.java | 592 - generated/java/nio/HeapLongBuffer.java | 592 - generated/java/nio/HeapLongBufferR.java | 592 - generated/java/nio/HeapShortBuffer.java | 592 - generated/java/nio/HeapShortBufferR.java | 592 - generated/java/nio/IntBuffer.java | 1428 - generated/java/nio/InvalidMarkException.java | 51 - generated/java/nio/LongBuffer.java | 1428 - generated/java/nio/ReadOnlyBufferException.java | 51 - generated/java/nio/ShortBuffer.java | 1428 - generated/java/nio/channels/AcceptPendingException.java | 51 - generated/java/nio/channels/AlreadyBoundException.java | 51 - generated/java/nio/channels/AlreadyConnectedException.java | 51 - generated/java/nio/channels/AsynchronousCloseException.java | 52 - generated/java/nio/channels/CancelledKeyException.java | 51 - generated/java/nio/channels/ClosedByInterruptException.java | 53 - generated/java/nio/channels/ClosedChannelException.java | 54 - generated/java/nio/channels/ClosedSelectorException.java | 51 - generated/java/nio/channels/ConnectionPendingException.java | 52 - generated/java/nio/channels/FileLockInterruptionException.java | 52 - generated/java/nio/channels/IllegalBlockingModeException.java | 51 - generated/java/nio/channels/IllegalChannelGroupException.java | 51 - generated/java/nio/channels/IllegalSelectorException.java | 52 - generated/java/nio/channels/InterruptedByTimeoutException.java | 51 - generated/java/nio/channels/NoConnectionPendingException.java | 52 - generated/java/nio/channels/NonReadableChannelException.java | 51 - generated/java/nio/channels/NonWritableChannelException.java | 51 - generated/java/nio/channels/NotYetBoundException.java | 51 - generated/java/nio/channels/NotYetConnectedException.java | 51 - generated/java/nio/channels/OverlappingFileLockException.java | 53 - generated/java/nio/channels/ReadPendingException.java | 51 - generated/java/nio/channels/ShutdownChannelGroupException.java | 52 - generated/java/nio/channels/UnresolvedAddressException.java | 51 - generated/java/nio/channels/UnsupportedAddressTypeException.java | 51 - generated/java/nio/channels/WritePendingException.java | 51 - generated/java/nio/charset/CharacterCodingException.java | 51 - generated/java/nio/charset/CharsetDecoder.java | 972 - generated/java/nio/charset/CharsetEncoder.java | 972 - generated/java/nio/charset/IllegalCharsetNameException.java | 68 - generated/java/nio/charset/UnsupportedCharsetException.java | 68 - generated/java/util/CurrencyData.java | 49 - generated/javax/management/remote/rmi/RMIConnectionImpl_Stub.java | 604 - generated/javax/management/remote/rmi/RMIServerImpl_Stub.java | 63 - generated/org/omg/CORBA/ParameterMode.java | 51 - generated/org/omg/CORBA/ParameterModeHelper.java | 62 - generated/org/omg/CORBA/ParameterModeHolder.java | 47 - generated/org/omg/CORBA/PolicyErrorCodeHelper.java | 62 - generated/org/omg/CORBA/PolicyErrorHelper.java | 85 - generated/org/omg/CORBA/PolicyErrorHolder.java | 43 - generated/org/omg/CORBA/StringSeqHelper.java | 64 - generated/org/omg/CORBA/StringSeqHolder.java | 41 - generated/org/omg/CORBA/WStringSeqHelper.java | 64 - generated/org/omg/CORBA/WStringSeqHolder.java | 41 - generated/org/omg/CosNaming/Binding.java | 28 - generated/org/omg/CosNaming/BindingHelper.java | 84 - generated/org/omg/CosNaming/BindingHolder.java | 38 - generated/org/omg/CosNaming/BindingIterator.java | 22 - generated/org/omg/CosNaming/BindingIteratorHelper.java | 94 - generated/org/omg/CosNaming/BindingIteratorHolder.java | 47 - generated/org/omg/CosNaming/BindingIteratorOperations.java | 44 - generated/org/omg/CosNaming/BindingIteratorPOA.java | 123 - generated/org/omg/CosNaming/BindingListHelper.java | 66 - generated/org/omg/CosNaming/BindingListHolder.java | 43 - generated/org/omg/CosNaming/BindingType.java | 45 - generated/org/omg/CosNaming/BindingTypeHelper.java | 58 - generated/org/omg/CosNaming/BindingTypeHolder.java | 43 - generated/org/omg/CosNaming/IstringHelper.java | 56 - generated/org/omg/CosNaming/NameComponent.java | 26 - generated/org/omg/CosNaming/NameComponentHelper.java | 84 - generated/org/omg/CosNaming/NameComponentHolder.java | 38 - generated/org/omg/CosNaming/NameHelper.java | 66 - generated/org/omg/CosNaming/NameHolder.java | 43 - generated/org/omg/CosNaming/NamingContext.java | 23 - generated/org/omg/CosNaming/NamingContextExt.java | 27 - generated/org/omg/CosNaming/NamingContextExtHelper.java | 99 - generated/org/omg/CosNaming/NamingContextExtHolder.java | 52 - generated/org/omg/CosNaming/NamingContextExtOperations.java | 83 - generated/org/omg/CosNaming/NamingContextExtPOA.java | 567 - generated/org/omg/CosNaming/NamingContextExtPackage/AddressHelper.java | 60 - generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.java | 25 - generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHelper.java | 72 - generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHolder.java | 38 - generated/org/omg/CosNaming/NamingContextExtPackage/StringNameHelper.java | 61 - generated/org/omg/CosNaming/NamingContextExtPackage/URLStringHelper.java | 61 - generated/org/omg/CosNaming/NamingContextHelper.java | 95 - generated/org/omg/CosNaming/NamingContextHolder.java | 48 - generated/org/omg/CosNaming/NamingContextOperations.java | 204 - generated/org/omg/CosNaming/NamingContextPOA.java | 436 - generated/org/omg/CosNaming/NamingContextPackage/AlreadyBound.java | 25 - generated/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHelper.java | 72 - generated/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHolder.java | 38 - generated/org/omg/CosNaming/NamingContextPackage/CannotProceed.java | 36 - generated/org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.java | 88 - generated/org/omg/CosNaming/NamingContextPackage/CannotProceedHolder.java | 38 - generated/org/omg/CosNaming/NamingContextPackage/InvalidName.java | 25 - generated/org/omg/CosNaming/NamingContextPackage/InvalidNameHelper.java | 72 - generated/org/omg/CosNaming/NamingContextPackage/InvalidNameHolder.java | 38 - generated/org/omg/CosNaming/NamingContextPackage/NotEmpty.java | 25 - generated/org/omg/CosNaming/NamingContextPackage/NotEmptyHelper.java | 72 - generated/org/omg/CosNaming/NamingContextPackage/NotEmptyHolder.java | 38 - generated/org/omg/CosNaming/NamingContextPackage/NotFound.java | 36 - generated/org/omg/CosNaming/NamingContextPackage/NotFoundHelper.java | 88 - generated/org/omg/CosNaming/NamingContextPackage/NotFoundHolder.java | 38 - generated/org/omg/CosNaming/NamingContextPackage/NotFoundReason.java | 46 - generated/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHelper.java | 57 - generated/org/omg/CosNaming/NamingContextPackage/NotFoundReasonHolder.java | 42 - generated/org/omg/CosNaming/_BindingIteratorStub.java | 127 - generated/org/omg/CosNaming/_NamingContextExtStub.java | 632 - generated/org/omg/CosNaming/_NamingContextStub.java | 476 - generated/org/omg/Dynamic/Parameter.java | 26 - generated/org/omg/DynamicAny/AnySeqHelper.java | 62 - generated/org/omg/DynamicAny/DynAny.java | 81 - generated/org/omg/DynamicAny/DynAnyFactory.java | 35 - generated/org/omg/DynamicAny/DynAnyFactoryHelper.java | 107 - generated/org/omg/DynamicAny/DynAnyFactoryOperations.java | 80 - generated/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCode.java | 25 - generated/org/omg/DynamicAny/DynAnyFactoryPackage/InconsistentTypeCodeHelper.java | 72 - generated/org/omg/DynamicAny/DynAnyHelper.java | 153 - generated/org/omg/DynamicAny/DynAnyOperations.java | 569 - generated/org/omg/DynamicAny/DynAnyPackage/InvalidValue.java | 25 - generated/org/omg/DynamicAny/DynAnyPackage/InvalidValueHelper.java | 72 - generated/org/omg/DynamicAny/DynAnyPackage/TypeMismatch.java | 25 - generated/org/omg/DynamicAny/DynAnyPackage/TypeMismatchHelper.java | 72 - generated/org/omg/DynamicAny/DynAnySeqHelper.java | 62 - generated/org/omg/DynamicAny/DynArray.java | 19 - generated/org/omg/DynamicAny/DynArrayHelper.java | 91 - generated/org/omg/DynamicAny/DynArrayOperations.java | 45 - generated/org/omg/DynamicAny/DynEnum.java | 18 - generated/org/omg/DynamicAny/DynEnumHelper.java | 90 - generated/org/omg/DynamicAny/DynEnumOperations.java | 46 - generated/org/omg/DynamicAny/DynFixed.java | 19 - generated/org/omg/DynamicAny/DynFixedHelper.java | 91 - generated/org/omg/DynamicAny/DynFixedOperations.java | 38 - generated/org/omg/DynamicAny/DynSequence.java | 17 - generated/org/omg/DynamicAny/DynSequenceHelper.java | 89 - generated/org/omg/DynamicAny/DynSequenceOperations.java | 77 - generated/org/omg/DynamicAny/DynStruct.java | 18 - generated/org/omg/DynamicAny/DynStructHelper.java | 90 - generated/org/omg/DynamicAny/DynStructOperations.java | 86 - generated/org/omg/DynamicAny/DynUnion.java | 24 - generated/org/omg/DynamicAny/DynUnionHelper.java | 96 - generated/org/omg/DynamicAny/DynUnionOperations.java | 101 - generated/org/omg/DynamicAny/DynValue.java | 26 - generated/org/omg/DynamicAny/DynValueBox.java | 21 - generated/org/omg/DynamicAny/DynValueBoxOperations.java | 53 - generated/org/omg/DynamicAny/DynValueCommon.java | 17 - generated/org/omg/DynamicAny/DynValueCommonOperations.java | 34 - generated/org/omg/DynamicAny/DynValueHelper.java | 98 - generated/org/omg/DynamicAny/DynValueOperations.java | 100 - generated/org/omg/DynamicAny/FieldNameHelper.java | 56 - generated/org/omg/DynamicAny/NameDynAnyPair.java | 34 - generated/org/omg/DynamicAny/NameDynAnyPairHelper.java | 83 - generated/org/omg/DynamicAny/NameDynAnyPairSeqHelper.java | 62 - generated/org/omg/DynamicAny/NameValuePair.java | 34 - generated/org/omg/DynamicAny/NameValuePairHelper.java | 83 - generated/org/omg/DynamicAny/NameValuePairSeqHelper.java | 62 - generated/org/omg/DynamicAny/_DynAnyFactoryStub.java | 131 - generated/org/omg/DynamicAny/_DynAnyStub.java | 1148 - generated/org/omg/DynamicAny/_DynArrayStub.java | 1157 - generated/org/omg/DynamicAny/_DynEnumStub.java | 1158 - generated/org/omg/DynamicAny/_DynFixedStub.java | 1128 - generated/org/omg/DynamicAny/_DynSequenceStub.java | 1211 - generated/org/omg/DynamicAny/_DynStructStub.java | 1220 - generated/org/omg/DynamicAny/_DynUnionStub.java | 1268 - generated/org/omg/DynamicAny/_DynValueStub.java | 1285 - generated/org/omg/IOP/CodeSets.java | 20 - generated/org/omg/IOP/Codec.java | 25 - generated/org/omg/IOP/CodecFactory.java | 19 - generated/org/omg/IOP/CodecFactoryHelper.java | 79 - generated/org/omg/IOP/CodecFactoryOperations.java | 29 - generated/org/omg/IOP/CodecFactoryPackage/UnknownEncoding.java | 25 - generated/org/omg/IOP/CodecFactoryPackage/UnknownEncodingHelper.java | 72 - generated/org/omg/IOP/CodecOperations.java | 77 - generated/org/omg/IOP/CodecPackage/FormatMismatch.java | 25 - generated/org/omg/IOP/CodecPackage/FormatMismatchHelper.java | 72 - generated/org/omg/IOP/CodecPackage/InvalidTypeForEncoding.java | 25 - generated/org/omg/IOP/CodecPackage/InvalidTypeForEncodingHelper.java | 72 - generated/org/omg/IOP/CodecPackage/TypeMismatch.java | 25 - generated/org/omg/IOP/CodecPackage/TypeMismatchHelper.java | 72 - generated/org/omg/IOP/ComponentIdHelper.java | 61 - generated/org/omg/IOP/ENCODING_CDR_ENCAPS.java | 19 - generated/org/omg/IOP/Encoding.java | 40 - generated/org/omg/IOP/ExceptionDetailMessage.java | 35 - generated/org/omg/IOP/IOR.java | 33 - generated/org/omg/IOP/IORHelper.java | 88 - generated/org/omg/IOP/IORHolder.java | 38 - generated/org/omg/IOP/MultipleComponentProfileHelper.java | 64 - generated/org/omg/IOP/MultipleComponentProfileHolder.java | 41 - generated/org/omg/IOP/ProfileIdHelper.java | 58 - generated/org/omg/IOP/RMICustomMaxStreamFormat.java | 22 - generated/org/omg/IOP/ServiceContext.java | 30 - generated/org/omg/IOP/ServiceContextHelper.java | 87 - generated/org/omg/IOP/ServiceContextHolder.java | 38 - generated/org/omg/IOP/ServiceContextListHelper.java | 64 - generated/org/omg/IOP/ServiceContextListHolder.java | 41 - generated/org/omg/IOP/ServiceIdHelper.java | 58 - generated/org/omg/IOP/TAG_ALTERNATE_IIOP_ADDRESS.java | 41 - generated/org/omg/IOP/TAG_CODE_SETS.java | 25 - generated/org/omg/IOP/TAG_INTERNET_IOP.java | 40 - generated/org/omg/IOP/TAG_JAVA_CODEBASE.java | 28 - generated/org/omg/IOP/TAG_MULTIPLE_COMPONENTS.java | 26 - generated/org/omg/IOP/TAG_ORB_TYPE.java | 33 - generated/org/omg/IOP/TAG_POLICIES.java | 19 - generated/org/omg/IOP/TAG_RMI_CUSTOM_MAX_STREAM_FORMAT.java | 24 - generated/org/omg/IOP/TaggedComponent.java | 30 - generated/org/omg/IOP/TaggedComponentHelper.java | 87 - generated/org/omg/IOP/TaggedComponentHolder.java | 38 - generated/org/omg/IOP/TaggedProfile.java | 30 - generated/org/omg/IOP/TaggedProfileHelper.java | 87 - generated/org/omg/IOP/TaggedProfileHolder.java | 38 - generated/org/omg/IOP/TransactionService.java | 20 - generated/org/omg/Messaging/SYNC_WITH_TRANSPORT.java | 19 - generated/org/omg/Messaging/SyncScopeHelper.java | 58 - generated/org/omg/PortableInterceptor/ACTIVE.java | 17 - generated/org/omg/PortableInterceptor/AdapterManagerIdHelper.java | 63 - generated/org/omg/PortableInterceptor/AdapterNameHelper.java | 62 - generated/org/omg/PortableInterceptor/AdapterStateHelper.java | 60 - generated/org/omg/PortableInterceptor/ClientRequestInfo.java | 228 - generated/org/omg/PortableInterceptor/ClientRequestInfoOperations.java | 345 - generated/org/omg/PortableInterceptor/ClientRequestInterceptor.java | 30 - generated/org/omg/PortableInterceptor/ClientRequestInterceptorOperations.java | 193 - generated/org/omg/PortableInterceptor/Current.java | 31 - generated/org/omg/PortableInterceptor/CurrentHelper.java | 91 - generated/org/omg/PortableInterceptor/CurrentOperations.java | 64 - generated/org/omg/PortableInterceptor/DISCARDING.java | 17 - generated/org/omg/PortableInterceptor/ForwardRequest.java | 37 - generated/org/omg/PortableInterceptor/ForwardRequestHelper.java | 79 - generated/org/omg/PortableInterceptor/HOLDING.java | 18 - generated/org/omg/PortableInterceptor/INACTIVE.java | 18 - generated/org/omg/PortableInterceptor/IORInfo.java | 22 - generated/org/omg/PortableInterceptor/IORInfoOperations.java | 106 - generated/org/omg/PortableInterceptor/IORInterceptor.java | 28 - generated/org/omg/PortableInterceptor/IORInterceptorOperations.java | 50 - generated/org/omg/PortableInterceptor/IORInterceptor_3_0.java | 13 - generated/org/omg/PortableInterceptor/IORInterceptor_3_0Helper.java | 73 - generated/org/omg/PortableInterceptor/IORInterceptor_3_0Holder.java | 38 - generated/org/omg/PortableInterceptor/IORInterceptor_3_0Operations.java | 47 - generated/org/omg/PortableInterceptor/Interceptor.java | 17 - generated/org/omg/PortableInterceptor/InterceptorOperations.java | 50 - generated/org/omg/PortableInterceptor/InvalidSlot.java | 25 - generated/org/omg/PortableInterceptor/InvalidSlotHelper.java | 72 - generated/org/omg/PortableInterceptor/LOCATION_FORWARD.java | 24 - generated/org/omg/PortableInterceptor/NON_EXISTENT.java | 17 - generated/org/omg/PortableInterceptor/ORBIdHelper.java | 58 - generated/org/omg/PortableInterceptor/ORBInitInfo.java | 27 - generated/org/omg/PortableInterceptor/ORBInitInfoOperations.java | 134 - generated/org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateName.java | 37 - generated/org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateNameHelper.java | 79 - generated/org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidName.java | 25 - generated/org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidNameHelper.java | 72 - generated/org/omg/PortableInterceptor/ORBInitInfoPackage/ObjectIdHelper.java | 58 - generated/org/omg/PortableInterceptor/ORBInitializer.java | 124 - generated/org/omg/PortableInterceptor/ORBInitializerOperations.java | 156 - generated/org/omg/PortableInterceptor/ObjectIdHelper.java | 62 - generated/org/omg/PortableInterceptor/ObjectReferenceFactory.java | 24 - generated/org/omg/PortableInterceptor/ObjectReferenceFactoryHelper.java | 74 - generated/org/omg/PortableInterceptor/ObjectReferenceFactoryHolder.java | 42 - generated/org/omg/PortableInterceptor/ObjectReferenceTemplate.java | 27 - generated/org/omg/PortableInterceptor/ObjectReferenceTemplateHelper.java | 78 - generated/org/omg/PortableInterceptor/ObjectReferenceTemplateHolder.java | 46 - generated/org/omg/PortableInterceptor/ObjectReferenceTemplateSeqHelper.java | 66 - generated/org/omg/PortableInterceptor/ObjectReferenceTemplateSeqHolder.java | 43 - generated/org/omg/PortableInterceptor/PolicyFactory.java | 27 - generated/org/omg/PortableInterceptor/PolicyFactoryOperations.java | 50 - generated/org/omg/PortableInterceptor/RequestInfo.java | 29 - generated/org/omg/PortableInterceptor/RequestInfoOperations.java | 292 - generated/org/omg/PortableInterceptor/SUCCESSFUL.java | 24 - generated/org/omg/PortableInterceptor/SYSTEM_EXCEPTION.java | 24 - generated/org/omg/PortableInterceptor/ServerIdHelper.java | 58 - generated/org/omg/PortableInterceptor/ServerRequestInfo.java | 226 - generated/org/omg/PortableInterceptor/ServerRequestInfoOperations.java | 336 - generated/org/omg/PortableInterceptor/ServerRequestInterceptor.java | 30 - generated/org/omg/PortableInterceptor/ServerRequestInterceptorOperations.java | 198 - generated/org/omg/PortableInterceptor/TRANSPORT_RETRY.java | 24 - generated/org/omg/PortableInterceptor/UNKNOWN.java | 18 - generated/org/omg/PortableInterceptor/USER_EXCEPTION.java | 24 - generated/org/omg/PortableServer/AdapterActivator.java | 21 - generated/org/omg/PortableServer/AdapterActivatorOperations.java | 36 - generated/org/omg/PortableServer/Current.java | 32 - generated/org/omg/PortableServer/CurrentOperations.java | 56 - generated/org/omg/PortableServer/CurrentPackage/NoContext.java | 25 - generated/org/omg/PortableServer/CurrentPackage/NoContextHelper.java | 72 - generated/org/omg/PortableServer/ForwardRequest.java | 33 - generated/org/omg/PortableServer/ForwardRequestHelper.java | 79 - generated/org/omg/PortableServer/ID_ASSIGNMENT_POLICY_ID.java | 18 - generated/org/omg/PortableServer/ID_UNIQUENESS_POLICY_ID.java | 18 - generated/org/omg/PortableServer/IMPLICIT_ACTIVATION_POLICY_ID.java | 18 - generated/org/omg/PortableServer/IdAssignmentPolicy.java | 19 - generated/org/omg/PortableServer/IdAssignmentPolicyOperations.java | 24 - generated/org/omg/PortableServer/IdAssignmentPolicyValue.java | 50 - generated/org/omg/PortableServer/IdUniquenessPolicy.java | 19 - generated/org/omg/PortableServer/IdUniquenessPolicyOperations.java | 24 - generated/org/omg/PortableServer/IdUniquenessPolicyValue.java | 48 - generated/org/omg/PortableServer/ImplicitActivationPolicy.java | 18 - generated/org/omg/PortableServer/ImplicitActivationPolicyOperations.java | 23 - generated/org/omg/PortableServer/ImplicitActivationPolicyValue.java | 50 - generated/org/omg/PortableServer/LIFESPAN_POLICY_ID.java | 18 - generated/org/omg/PortableServer/LifespanPolicy.java | 19 - generated/org/omg/PortableServer/LifespanPolicyOperations.java | 24 - generated/org/omg/PortableServer/LifespanPolicyValue.java | 49 - generated/org/omg/PortableServer/POA.java | 24 - generated/org/omg/PortableServer/POAManager.java | 20 - generated/org/omg/PortableServer/POAManagerOperations.java | 78 - generated/org/omg/PortableServer/POAManagerPackage/AdapterInactive.java | 25 - generated/org/omg/PortableServer/POAManagerPackage/AdapterInactiveHelper.java | 72 - generated/org/omg/PortableServer/POAManagerPackage/State.java | 48 - generated/org/omg/PortableServer/POAOperations.java | 467 - generated/org/omg/PortableServer/POAPackage/AdapterAlreadyExists.java | 25 - generated/org/omg/PortableServer/POAPackage/AdapterAlreadyExistsHelper.java | 72 - generated/org/omg/PortableServer/POAPackage/AdapterNonExistent.java | 25 - generated/org/omg/PortableServer/POAPackage/AdapterNonExistentHelper.java | 72 - generated/org/omg/PortableServer/POAPackage/InvalidPolicy.java | 33 - generated/org/omg/PortableServer/POAPackage/InvalidPolicyHelper.java | 79 - generated/org/omg/PortableServer/POAPackage/NoServant.java | 25 - generated/org/omg/PortableServer/POAPackage/NoServantHelper.java | 72 - generated/org/omg/PortableServer/POAPackage/ObjectAlreadyActive.java | 25 - generated/org/omg/PortableServer/POAPackage/ObjectAlreadyActiveHelper.java | 72 - generated/org/omg/PortableServer/POAPackage/ObjectNotActive.java | 25 - generated/org/omg/PortableServer/POAPackage/ObjectNotActiveHelper.java | 72 - generated/org/omg/PortableServer/POAPackage/ServantAlreadyActive.java | 25 - generated/org/omg/PortableServer/POAPackage/ServantAlreadyActiveHelper.java | 72 - generated/org/omg/PortableServer/POAPackage/ServantNotActive.java | 25 - generated/org/omg/PortableServer/POAPackage/ServantNotActiveHelper.java | 72 - generated/org/omg/PortableServer/POAPackage/WrongAdapter.java | 25 - generated/org/omg/PortableServer/POAPackage/WrongAdapterHelper.java | 72 - generated/org/omg/PortableServer/POAPackage/WrongPolicy.java | 25 - generated/org/omg/PortableServer/POAPackage/WrongPolicyHelper.java | 72 - generated/org/omg/PortableServer/REQUEST_PROCESSING_POLICY_ID.java | 18 - generated/org/omg/PortableServer/RequestProcessingPolicy.java | 19 - generated/org/omg/PortableServer/RequestProcessingPolicyOperations.java | 24 - generated/org/omg/PortableServer/RequestProcessingPolicyValue.java | 61 - generated/org/omg/PortableServer/SERVANT_RETENTION_POLICY_ID.java | 18 - generated/org/omg/PortableServer/ServantActivator.java | 18 - generated/org/omg/PortableServer/ServantActivatorHelper.java | 90 - generated/org/omg/PortableServer/ServantActivatorOperations.java | 60 - generated/org/omg/PortableServer/ServantActivatorPOA.java | 59 - generated/org/omg/PortableServer/ServantLocator.java | 32 - generated/org/omg/PortableServer/ServantLocatorHelper.java | 104 - generated/org/omg/PortableServer/ServantLocatorOperations.java | 67 - generated/org/omg/PortableServer/ServantLocatorPOA.java | 73 - generated/org/omg/PortableServer/ServantManager.java | 25 - generated/org/omg/PortableServer/ServantManagerOperations.java | 25 - generated/org/omg/PortableServer/ServantRetentionPolicy.java | 18 - generated/org/omg/PortableServer/ServantRetentionPolicyOperations.java | 23 - generated/org/omg/PortableServer/ServantRetentionPolicyValue.java | 49 - generated/org/omg/PortableServer/THREAD_POLICY_ID.java | 18 - generated/org/omg/PortableServer/ThreadPolicy.java | 19 - generated/org/omg/PortableServer/ThreadPolicyOperations.java | 24 - generated/org/omg/PortableServer/ThreadPolicyValue.java | 48 - generated/org/omg/PortableServer/_ServantActivatorStub.java | 112 - generated/org/omg/PortableServer/_ServantLocatorStub.java | 119 - generated/sun/awt/X11/AwtGraphicsConfigData.java | 103 - generated/sun/awt/X11/AwtScreenData.java | 77 - generated/sun/awt/X11/ColorData.java | 99 - generated/sun/awt/X11/ColorEntry.java | 69 - generated/sun/awt/X11/Depth.java | 67 - generated/sun/awt/X11/PropMwmHints.java | 72 - generated/sun/awt/X11/Screen.java | 121 - generated/sun/awt/X11/ScreenFormat.java | 70 - generated/sun/awt/X11/Visual.java | 82 - generated/sun/awt/X11/XAWTIcon32_java_icon16_png.java | 31 - generated/sun/awt/X11/XAWTIcon32_java_icon24_png.java | 61 - generated/sun/awt/X11/XAWTIcon32_java_icon32_png.java | 108 - generated/sun/awt/X11/XAWTIcon32_java_icon48_png.java | 236 - generated/sun/awt/X11/XAWTIcon32_security_icon_bw16_png.java | 31 - generated/sun/awt/X11/XAWTIcon32_security_icon_bw24_png.java | 63 - generated/sun/awt/X11/XAWTIcon32_security_icon_bw32_png.java | 108 - generated/sun/awt/X11/XAWTIcon32_security_icon_bw48_png.java | 236 - generated/sun/awt/X11/XAWTIcon32_security_icon_interim16_png.java | 31 - generated/sun/awt/X11/XAWTIcon32_security_icon_interim24_png.java | 63 - generated/sun/awt/X11/XAWTIcon32_security_icon_interim32_png.java | 108 - generated/sun/awt/X11/XAWTIcon32_security_icon_interim48_png.java | 236 - generated/sun/awt/X11/XAWTIcon32_security_icon_yellow16_png.java | 31 - generated/sun/awt/X11/XAWTIcon32_security_icon_yellow24_png.java | 63 - generated/sun/awt/X11/XAWTIcon32_security_icon_yellow32_png.java | 108 - generated/sun/awt/X11/XAWTIcon32_security_icon_yellow48_png.java | 236 - generated/sun/awt/X11/XAWTIcon64_java_icon16_png.java | 31 - generated/sun/awt/X11/XAWTIcon64_java_icon24_png.java | 61 - generated/sun/awt/X11/XAWTIcon64_java_icon32_png.java | 108 - generated/sun/awt/X11/XAWTIcon64_java_icon48_png.java | 236 - generated/sun/awt/X11/XAWTIcon64_security_icon_bw16_png.java | 31 - generated/sun/awt/X11/XAWTIcon64_security_icon_bw24_png.java | 63 - generated/sun/awt/X11/XAWTIcon64_security_icon_bw32_png.java | 108 - generated/sun/awt/X11/XAWTIcon64_security_icon_bw48_png.java | 236 - generated/sun/awt/X11/XAWTIcon64_security_icon_interim16_png.java | 31 - generated/sun/awt/X11/XAWTIcon64_security_icon_interim24_png.java | 63 - generated/sun/awt/X11/XAWTIcon64_security_icon_interim32_png.java | 108 - generated/sun/awt/X11/XAWTIcon64_security_icon_interim48_png.java | 236 - generated/sun/awt/X11/XAWTIcon64_security_icon_yellow16_png.java | 31 - generated/sun/awt/X11/XAWTIcon64_security_icon_yellow24_png.java | 63 - generated/sun/awt/X11/XAWTIcon64_security_icon_yellow32_png.java | 108 - generated/sun/awt/X11/XAWTIcon64_security_icon_yellow48_png.java | 236 - generated/sun/awt/X11/XAnyEvent.java | 72 - generated/sun/awt/X11/XArc.java | 75 - generated/sun/awt/X11/XButtonEvent.java | 102 - generated/sun/awt/X11/XChar2b.java | 63 - generated/sun/awt/X11/XCharStruct.java | 75 - generated/sun/awt/X11/XCirculateEvent.java | 78 - generated/sun/awt/X11/XCirculateRequestEvent.java | 78 - generated/sun/awt/X11/XClassHint.java | 65 - generated/sun/awt/X11/XClientMessageEvent.java | 82 - generated/sun/awt/X11/XColor.java | 75 - generated/sun/awt/X11/XColormapEvent.java | 81 - generated/sun/awt/X11/XComposeStatus.java | 64 - generated/sun/awt/X11/XConfigureEvent.java | 96 - generated/sun/awt/X11/XConfigureRequestEvent.java | 99 - generated/sun/awt/X11/XCreateWindowEvent.java | 93 - generated/sun/awt/X11/XCrossingEvent.java | 108 - generated/sun/awt/X11/XDestroyWindowEvent.java | 75 - generated/sun/awt/X11/XErrorEvent.java | 78 - generated/sun/awt/X11/XEvent.java | 126 - generated/sun/awt/X11/XExposeEvent.java | 87 - generated/sun/awt/X11/XExtCodes.java | 69 - generated/sun/awt/X11/XExtData.java | 72 - generated/sun/awt/X11/XFocusChangeEvent.java | 78 - generated/sun/awt/X11/XFontProp.java | 63 - generated/sun/awt/X11/XFontSetExtents.java | 61 - generated/sun/awt/X11/XFontStruct.java | 103 - generated/sun/awt/X11/XGCValues.java | 126 - generated/sun/awt/X11/XGraphicsExposeEvent.java | 93 - generated/sun/awt/X11/XGravityEvent.java | 81 - generated/sun/awt/X11/XHostAddress.java | 67 - generated/sun/awt/X11/XIMCallback.java | 65 - generated/sun/awt/X11/XIMHotKeyTrigger.java | 66 - generated/sun/awt/X11/XIMHotKeyTriggers.java | 64 - generated/sun/awt/X11/XIMPreeditCaretCallbackStruct.java | 66 - generated/sun/awt/X11/XIMPreeditDrawCallbackStruct.java | 70 - generated/sun/awt/X11/XIMPreeditStateNotifyCallbackStruct.java | 60 - generated/sun/awt/X11/XIMStatusDrawCallbackStruct.java | 63 - generated/sun/awt/X11/XIMStringConversionCallbackStruct.java | 73 - generated/sun/awt/X11/XIMStringConversionText.java | 71 - generated/sun/awt/X11/XIMStyles.java | 64 - generated/sun/awt/X11/XIMText.java | 71 - generated/sun/awt/X11/XIMValuesList.java | 64 - generated/sun/awt/X11/XIconSize.java | 75 - generated/sun/awt/X11/XImage.java | 131 - generated/sun/awt/X11/XKeyEvent.java | 102 - generated/sun/awt/X11/XKeyboardControl.java | 81 - generated/sun/awt/X11/XKeyboardState.java | 79 - generated/sun/awt/X11/XKeymapEvent.java | 76 - generated/sun/awt/X11/XMapEvent.java | 78 - generated/sun/awt/X11/XMapRequestEvent.java | 75 - generated/sun/awt/X11/XMappingEvent.java | 81 - generated/sun/awt/X11/XModifierKeymap.java | 64 - generated/sun/awt/X11/XMotionEvent.java | 102 - generated/sun/awt/X11/XNoExposeEvent.java | 78 - generated/sun/awt/X11/XOMCharSetList.java | 64 - generated/sun/awt/X11/XOMFontInfo.java | 68 - generated/sun/awt/X11/XOMOrientation.java | 64 - generated/sun/awt/X11/XPixmapFormatValues.java | 66 - generated/sun/awt/X11/XPoint.java | 63 - generated/sun/awt/X11/XPropertyEvent.java | 81 - generated/sun/awt/X11/XRectangle.java | 69 - generated/sun/awt/X11/XReparentEvent.java | 87 - generated/sun/awt/X11/XResizeRequestEvent.java | 78 - generated/sun/awt/X11/XSegment.java | 69 - generated/sun/awt/X11/XSelectionClearEvent.java | 78 - generated/sun/awt/X11/XSelectionEvent.java | 84 - generated/sun/awt/X11/XSelectionRequestEvent.java | 87 - generated/sun/awt/X11/XSetWindowAttributes.java | 102 - generated/sun/awt/X11/XSizeHints.java | 111 - generated/sun/awt/X11/XStandardColormap.java | 87 - generated/sun/awt/X11/XTextItem.java | 70 - generated/sun/awt/X11/XTextItem16.java | 70 - generated/sun/awt/X11/XTextProperty.java | 70 - generated/sun/awt/X11/XTimeCoord.java | 66 - generated/sun/awt/X11/XUnmapEvent.java | 78 - generated/sun/awt/X11/XVisibilityEvent.java | 75 - generated/sun/awt/X11/XVisualInfo.java | 88 - generated/sun/awt/X11/XWMHints.java | 85 - generated/sun/awt/X11/XWindowAttributes.java | 128 - generated/sun/awt/X11/XWindowChanges.java | 78 - generated/sun/awt/X11/XdbeSwapInfo.java | 63 - generated/sun/awt/X11/XkbAccessXNotifyEvent.java | 90 - generated/sun/awt/X11/XkbActionMessageEvent.java | 97 - generated/sun/awt/X11/XkbAnyEvent.java | 78 - generated/sun/awt/X11/XkbBellNotifyEvent.java | 102 - generated/sun/awt/X11/XkbCompatMapNotifyEvent.java | 90 - generated/sun/awt/X11/XkbControlsNotifyEvent.java | 102 - generated/sun/awt/X11/XkbEvent.java | 86 - generated/sun/awt/X11/XkbExtensionDeviceNotifyEvent.java | 105 - generated/sun/awt/X11/XkbIndicatorNotifyEvent.java | 84 - generated/sun/awt/X11/XkbMapNotifyEvent.java | 135 - generated/sun/awt/X11/XkbNamesNotifyEvent.java | 114 - generated/sun/awt/X11/XkbNewKeyboardNotifyEvent.java | 102 - generated/sun/awt/X11/XkbStateNotifyEvent.java | 135 - generated/sun/awt/X11/XmbTextItem.java | 71 - generated/sun/awt/X11/XwcTextItem.java | 71 - generated/sun/awt/X11/awtImageData.java | 70 - generated/sun/awt/X11/generator/sizer.32 | Bin generated/sun/awt/X11/generator/sizer.32.c | 1009 - generated/sun/awt/X11/generator/sizer.64 | Bin generated/sun/awt/X11/generator/sizer.64.c | 1247 - generated/sun/awt/X11/generator/sizes.32 | 789 - generated/sun/awt/X11/generator/sizes.64 | 1000 - generated/sun/awt/resources/awt.java | 180 - generated/sun/awt/resources/awt_de.java | 180 - generated/sun/awt/resources/awt_es.java | 180 - generated/sun/awt/resources/awt_fr.java | 180 - generated/sun/awt/resources/awt_it.java | 180 - generated/sun/awt/resources/awt_ja.java | 180 - generated/sun/awt/resources/awt_ko.java | 180 - generated/sun/awt/resources/awt_sv.java | 180 - generated/sun/awt/resources/awt_zh_CN.java | 180 - generated/sun/awt/resources/awt_zh_HK.java | 180 - generated/sun/awt/resources/awt_zh_TW.java | 180 - generated/sun/management/resources/agent.java | 61 - generated/sun/management/resources/agent_de.java | 55 - generated/sun/management/resources/agent_es.java | 55 - generated/sun/management/resources/agent_fr.java | 55 - generated/sun/management/resources/agent_it.java | 55 - generated/sun/management/resources/agent_ja.java | 55 - generated/sun/management/resources/agent_ko.java | 55 - generated/sun/management/resources/agent_sv.java | 55 - generated/sun/management/resources/agent_zh_CN.java | 55 - generated/sun/management/resources/agent_zh_HK.java | 55 - generated/sun/management/resources/agent_zh_TW.java | 55 - generated/sun/misc/Version.java | 327 - generated/sun/nio/ch/AlreadyBoundException.java | 51 - generated/sun/nio/ch/SocketOptionRegistry.java | 83 - generated/sun/nio/cs/StandardCharsets.java | 703 - generated/sun/nio/cs/ext/HKSCS_XPMapping.java | 1054 - generated/sun/nio/cs/ext/MS950.java | 3295 --- generated/sun/nio/fs/UnixConstants.java | 79 - generated/sun/print/resources/serviceui.java | 201 - generated/sun/print/resources/serviceui_de.java | 201 - generated/sun/print/resources/serviceui_es.java | 201 - generated/sun/print/resources/serviceui_fr.java | 201 - generated/sun/print/resources/serviceui_it.java | 201 - generated/sun/print/resources/serviceui_ja.java | 201 - generated/sun/print/resources/serviceui_ko.java | 201 - generated/sun/print/resources/serviceui_sv.java | 201 - generated/sun/print/resources/serviceui_zh_CN.java | 201 - generated/sun/print/resources/serviceui_zh_HK.java | 201 - generated/sun/print/resources/serviceui_zh_TW.java | 201 - generated/sun/tools/jar/resources/jar.java | 31 - generated/sun/tools/jar/resources/jar_de.java | 31 - generated/sun/tools/jar/resources/jar_es.java | 31 - generated/sun/tools/jar/resources/jar_fr.java | 31 - generated/sun/tools/jar/resources/jar_it.java | 31 - generated/sun/tools/jar/resources/jar_ja.java | 31 - generated/sun/tools/jar/resources/jar_ko.java | 31 - generated/sun/tools/jar/resources/jar_sv.java | 31 - generated/sun/tools/jar/resources/jar_zh_CN.java | 31 - generated/sun/tools/jar/resources/jar_zh_HK.java | 31 - generated/sun/tools/jar/resources/jar_zh_TW.java | 31 - generated/sun/tools/jconsole/Version.java | 55 - generated/sun/util/CoreResourceBundleControl.java | 114 - generated/sun/util/LocaleDataMetaInfo.java | 82 - generated/sun/util/logging/resources/logging.java | 19 - generated/sun/util/logging/resources/logging_de.java | 19 - generated/sun/util/logging/resources/logging_es.java | 19 - generated/sun/util/logging/resources/logging_fr.java | 19 - generated/sun/util/logging/resources/logging_it.java | 19 - generated/sun/util/logging/resources/logging_ja.java | 19 - generated/sun/util/logging/resources/logging_ko.java | 19 - generated/sun/util/logging/resources/logging_sv.java | 19 - generated/sun/util/logging/resources/logging_zh_CN.java | 19 - generated/sun/util/logging/resources/logging_zh_HK.java | 19 - generated/sun/util/logging/resources/logging_zh_TW.java | 19 - generated/sun/util/resources/CalendarData.java | 12 - generated/sun/util/resources/CalendarData_ar.java | 12 - generated/sun/util/resources/CalendarData_be.java | 10 - generated/sun/util/resources/CalendarData_bg.java | 10 - generated/sun/util/resources/CalendarData_ca.java | 12 - generated/sun/util/resources/CalendarData_cs.java | 12 - generated/sun/util/resources/CalendarData_da.java | 12 - generated/sun/util/resources/CalendarData_de.java | 12 - generated/sun/util/resources/CalendarData_el.java | 12 - generated/sun/util/resources/CalendarData_el_CY.java | 11 - generated/sun/util/resources/CalendarData_en.java | 10 - generated/sun/util/resources/CalendarData_en_GB.java | 12 - generated/sun/util/resources/CalendarData_en_IE.java | 12 - generated/sun/util/resources/CalendarData_en_MT.java | 11 - generated/sun/util/resources/CalendarData_es.java | 12 - generated/sun/util/resources/CalendarData_es_ES.java | 12 - generated/sun/util/resources/CalendarData_es_US.java | 11 - generated/sun/util/resources/CalendarData_et.java | 12 - generated/sun/util/resources/CalendarData_fi.java | 12 - generated/sun/util/resources/CalendarData_fr.java | 12 - generated/sun/util/resources/CalendarData_fr_CA.java | 12 - generated/sun/util/resources/CalendarData_hi.java | 10 - generated/sun/util/resources/CalendarData_hr.java | 11 - generated/sun/util/resources/CalendarData_hu.java | 12 - generated/sun/util/resources/CalendarData_in_ID.java | 11 - generated/sun/util/resources/CalendarData_is.java | 12 - generated/sun/util/resources/CalendarData_it.java | 12 - generated/sun/util/resources/CalendarData_iw.java | 10 - generated/sun/util/resources/CalendarData_ja.java | 10 - generated/sun/util/resources/CalendarData_ko.java | 10 - generated/sun/util/resources/CalendarData_lt.java | 12 - generated/sun/util/resources/CalendarData_lv.java | 10 - generated/sun/util/resources/CalendarData_mk.java | 10 - generated/sun/util/resources/CalendarData_ms_MY.java | 11 - generated/sun/util/resources/CalendarData_mt.java | 11 - generated/sun/util/resources/CalendarData_mt_MT.java | 11 - generated/sun/util/resources/CalendarData_nl.java | 12 - generated/sun/util/resources/CalendarData_no.java | 12 - generated/sun/util/resources/CalendarData_pl.java | 12 - generated/sun/util/resources/CalendarData_pt.java | 12 - generated/sun/util/resources/CalendarData_pt_PT.java | 12 - generated/sun/util/resources/CalendarData_ro.java | 10 - generated/sun/util/resources/CalendarData_ru.java | 12 - generated/sun/util/resources/CalendarData_sk.java | 12 - generated/sun/util/resources/CalendarData_sl.java | 10 - generated/sun/util/resources/CalendarData_sq.java | 10 - generated/sun/util/resources/CalendarData_sr.java | 11 - generated/sun/util/resources/CalendarData_sv.java | 12 - generated/sun/util/resources/CalendarData_th.java | 10 - generated/sun/util/resources/CalendarData_tr.java | 12 - generated/sun/util/resources/CalendarData_uk.java | 12 - generated/sun/util/resources/CalendarData_vi.java | 10 - generated/sun/util/resources/CalendarData_zh.java | 10 - generated/sun/util/resources/CurrencyNames.java | 431 - generated/sun/util/resources/CurrencyNames_ar_AE.java | 11 - generated/sun/util/resources/CurrencyNames_ar_BH.java | 11 - generated/sun/util/resources/CurrencyNames_ar_DZ.java | 11 - generated/sun/util/resources/CurrencyNames_ar_EG.java | 11 - generated/sun/util/resources/CurrencyNames_ar_IQ.java | 11 - generated/sun/util/resources/CurrencyNames_ar_JO.java | 11 - generated/sun/util/resources/CurrencyNames_ar_KW.java | 11 - generated/sun/util/resources/CurrencyNames_ar_LB.java | 11 - generated/sun/util/resources/CurrencyNames_ar_LY.java | 11 - generated/sun/util/resources/CurrencyNames_ar_MA.java | 11 - generated/sun/util/resources/CurrencyNames_ar_OM.java | 11 - generated/sun/util/resources/CurrencyNames_ar_QA.java | 11 - generated/sun/util/resources/CurrencyNames_ar_SA.java | 11 - generated/sun/util/resources/CurrencyNames_ar_SD.java | 12 - generated/sun/util/resources/CurrencyNames_ar_SY.java | 11 - generated/sun/util/resources/CurrencyNames_ar_TN.java | 11 - generated/sun/util/resources/CurrencyNames_ar_YE.java | 11 - generated/sun/util/resources/CurrencyNames_be_BY.java | 11 - generated/sun/util/resources/CurrencyNames_bg_BG.java | 11 - generated/sun/util/resources/CurrencyNames_ca_ES.java | 12 - generated/sun/util/resources/CurrencyNames_cs_CZ.java | 11 - generated/sun/util/resources/CurrencyNames_da_DK.java | 12 - generated/sun/util/resources/CurrencyNames_de.java | 205 - generated/sun/util/resources/CurrencyNames_de_AT.java | 12 - generated/sun/util/resources/CurrencyNames_de_CH.java | 11 - generated/sun/util/resources/CurrencyNames_de_DE.java | 12 - generated/sun/util/resources/CurrencyNames_de_GR.java | 12 - generated/sun/util/resources/CurrencyNames_de_LU.java | 12 - generated/sun/util/resources/CurrencyNames_el_CY.java | 12 - generated/sun/util/resources/CurrencyNames_el_GR.java | 12 - generated/sun/util/resources/CurrencyNames_en_AU.java | 11 - generated/sun/util/resources/CurrencyNames_en_CA.java | 11 - generated/sun/util/resources/CurrencyNames_en_GB.java | 12 - generated/sun/util/resources/CurrencyNames_en_IE.java | 12 - generated/sun/util/resources/CurrencyNames_en_IN.java | 11 - generated/sun/util/resources/CurrencyNames_en_MT.java | 12 - generated/sun/util/resources/CurrencyNames_en_NZ.java | 11 - generated/sun/util/resources/CurrencyNames_en_PH.java | 11 - generated/sun/util/resources/CurrencyNames_en_SG.java | 11 - generated/sun/util/resources/CurrencyNames_en_US.java | 11 - generated/sun/util/resources/CurrencyNames_en_ZA.java | 11 - generated/sun/util/resources/CurrencyNames_es.java | 214 - generated/sun/util/resources/CurrencyNames_es_AR.java | 12 - generated/sun/util/resources/CurrencyNames_es_BO.java | 11 - generated/sun/util/resources/CurrencyNames_es_CL.java | 11 - generated/sun/util/resources/CurrencyNames_es_CO.java | 11 - generated/sun/util/resources/CurrencyNames_es_CR.java | 11 - generated/sun/util/resources/CurrencyNames_es_DO.java | 11 - generated/sun/util/resources/CurrencyNames_es_EC.java | 11 - generated/sun/util/resources/CurrencyNames_es_ES.java | 12 - generated/sun/util/resources/CurrencyNames_es_GT.java | 11 - generated/sun/util/resources/CurrencyNames_es_HN.java | 11 - generated/sun/util/resources/CurrencyNames_es_MX.java | 12 - generated/sun/util/resources/CurrencyNames_es_NI.java | 11 - generated/sun/util/resources/CurrencyNames_es_PA.java | 11 - generated/sun/util/resources/CurrencyNames_es_PE.java | 11 - generated/sun/util/resources/CurrencyNames_es_PR.java | 11 - generated/sun/util/resources/CurrencyNames_es_PY.java | 11 - generated/sun/util/resources/CurrencyNames_es_SV.java | 11 - generated/sun/util/resources/CurrencyNames_es_US.java | 11 - generated/sun/util/resources/CurrencyNames_es_UY.java | 11 - generated/sun/util/resources/CurrencyNames_es_VE.java | 12 - generated/sun/util/resources/CurrencyNames_et_EE.java | 11 - generated/sun/util/resources/CurrencyNames_fi_FI.java | 12 - generated/sun/util/resources/CurrencyNames_fr.java | 209 - generated/sun/util/resources/CurrencyNames_fr_BE.java | 12 - generated/sun/util/resources/CurrencyNames_fr_CA.java | 11 - generated/sun/util/resources/CurrencyNames_fr_CH.java | 11 - generated/sun/util/resources/CurrencyNames_fr_FR.java | 12 - generated/sun/util/resources/CurrencyNames_fr_LU.java | 12 - generated/sun/util/resources/CurrencyNames_ga_IE.java | 11 - generated/sun/util/resources/CurrencyNames_hi_IN.java | 11 - generated/sun/util/resources/CurrencyNames_hr_HR.java | 11 - generated/sun/util/resources/CurrencyNames_hu_HU.java | 11 - generated/sun/util/resources/CurrencyNames_in_ID.java | 11 - generated/sun/util/resources/CurrencyNames_is_IS.java | 11 - generated/sun/util/resources/CurrencyNames_it.java | 207 - generated/sun/util/resources/CurrencyNames_it_CH.java | 11 - generated/sun/util/resources/CurrencyNames_it_IT.java | 12 - generated/sun/util/resources/CurrencyNames_iw_IL.java | 11 - generated/sun/util/resources/CurrencyNames_ja.java | 206 - generated/sun/util/resources/CurrencyNames_ja_JP.java | 11 - generated/sun/util/resources/CurrencyNames_ko.java | 193 - generated/sun/util/resources/CurrencyNames_ko_KR.java | 11 - generated/sun/util/resources/CurrencyNames_lt_LT.java | 11 - generated/sun/util/resources/CurrencyNames_lv_LV.java | 11 - generated/sun/util/resources/CurrencyNames_mk_MK.java | 11 - generated/sun/util/resources/CurrencyNames_ms_MY.java | 11 - generated/sun/util/resources/CurrencyNames_mt_MT.java | 12 - generated/sun/util/resources/CurrencyNames_nl_BE.java | 12 - generated/sun/util/resources/CurrencyNames_nl_NL.java | 12 - generated/sun/util/resources/CurrencyNames_no_NO.java | 11 - generated/sun/util/resources/CurrencyNames_pl_PL.java | 11 - generated/sun/util/resources/CurrencyNames_pt_BR.java | 12 - generated/sun/util/resources/CurrencyNames_pt_PT.java | 12 - generated/sun/util/resources/CurrencyNames_ro_RO.java | 12 - generated/sun/util/resources/CurrencyNames_ru_RU.java | 11 - generated/sun/util/resources/CurrencyNames_sk_SK.java | 11 - generated/sun/util/resources/CurrencyNames_sl_SI.java | 12 - generated/sun/util/resources/CurrencyNames_sq_AL.java | 11 - generated/sun/util/resources/CurrencyNames_sr_BA.java | 12 - generated/sun/util/resources/CurrencyNames_sr_CS.java | 11 - generated/sun/util/resources/CurrencyNames_sr_ME.java | 11 - generated/sun/util/resources/CurrencyNames_sv.java | 198 - generated/sun/util/resources/CurrencyNames_sv_SE.java | 12 - generated/sun/util/resources/CurrencyNames_th_TH.java | 11 - generated/sun/util/resources/CurrencyNames_tr_TR.java | 12 - generated/sun/util/resources/CurrencyNames_uk_UA.java | 11 - generated/sun/util/resources/CurrencyNames_vi_VN.java | 11 - generated/sun/util/resources/CurrencyNames_zh_CN.java | 214 - generated/sun/util/resources/CurrencyNames_zh_TW.java | 207 - generated/sun/util/resources/LocaleNames.java | 449 - generated/sun/util/resources/LocaleNames_ar.java | 28 - generated/sun/util/resources/LocaleNames_be.java | 12 - generated/sun/util/resources/LocaleNames_bg.java | 12 - generated/sun/util/resources/LocaleNames_ca.java | 348 - generated/sun/util/resources/LocaleNames_cs.java | 12 - generated/sun/util/resources/LocaleNames_da.java | 12 - generated/sun/util/resources/LocaleNames_de.java | 440 - generated/sun/util/resources/LocaleNames_el.java | 310 - generated/sun/util/resources/LocaleNames_el_CY.java | 309 - generated/sun/util/resources/LocaleNames_en.java | 10 - generated/sun/util/resources/LocaleNames_en_MT.java | 40 - generated/sun/util/resources/LocaleNames_en_PH.java | 40 - generated/sun/util/resources/LocaleNames_en_SG.java | 40 - generated/sun/util/resources/LocaleNames_es.java | 440 - generated/sun/util/resources/LocaleNames_es_US.java | 131 - generated/sun/util/resources/LocaleNames_et.java | 12 - generated/sun/util/resources/LocaleNames_fi.java | 63 - generated/sun/util/resources/LocaleNames_fr.java | 440 - generated/sun/util/resources/LocaleNames_ga.java | 343 - generated/sun/util/resources/LocaleNames_hi.java | 14 - generated/sun/util/resources/LocaleNames_hr.java | 12 - generated/sun/util/resources/LocaleNames_hu.java | 12 - generated/sun/util/resources/LocaleNames_in.java | 163 - generated/sun/util/resources/LocaleNames_is.java | 12 - generated/sun/util/resources/LocaleNames_it.java | 440 - generated/sun/util/resources/LocaleNames_iw.java | 12 - generated/sun/util/resources/LocaleNames_ja.java | 440 - generated/sun/util/resources/LocaleNames_ko.java | 440 - generated/sun/util/resources/LocaleNames_lt.java | 12 - generated/sun/util/resources/LocaleNames_lv.java | 12 - generated/sun/util/resources/LocaleNames_mk.java | 12 - generated/sun/util/resources/LocaleNames_ms.java | 79 - generated/sun/util/resources/LocaleNames_mt.java | 332 - generated/sun/util/resources/LocaleNames_nl.java | 13 - generated/sun/util/resources/LocaleNames_no.java | 14 - generated/sun/util/resources/LocaleNames_pl.java | 348 - generated/sun/util/resources/LocaleNames_pt.java | 374 - generated/sun/util/resources/LocaleNames_pt_BR.java | 22 - generated/sun/util/resources/LocaleNames_pt_PT.java | 72 - generated/sun/util/resources/LocaleNames_ro.java | 12 - generated/sun/util/resources/LocaleNames_ru.java | 348 - generated/sun/util/resources/LocaleNames_sk.java | 12 - generated/sun/util/resources/LocaleNames_sl.java | 12 - generated/sun/util/resources/LocaleNames_sq.java | 12 - generated/sun/util/resources/LocaleNames_sr.java | 307 - generated/sun/util/resources/LocaleNames_sv.java | 440 - generated/sun/util/resources/LocaleNames_th.java | 348 - generated/sun/util/resources/LocaleNames_tr.java | 12 - generated/sun/util/resources/LocaleNames_uk.java | 12 - generated/sun/util/resources/LocaleNames_vi.java | 257 - generated/sun/util/resources/LocaleNames_zh.java | 440 - generated/sun/util/resources/LocaleNames_zh_SG.java | 103 - generated/sun/util/resources/LocaleNames_zh_TW.java | 440 - hotspot.map | 1 + patches/6592792.patch | 297 - patches/6733959.patch | 225 - patches/6755943.patch | 373 - patches/alpha-fixes.patch | 33 - patches/boot/ant-javac.patch | 26 - patches/boot/break-processbuilder-dependency.patch | 136 - patches/boot/compile-for-7.patch | 42 - patches/boot/corba-defs.patch | 35 - patches/boot/corba-dependencies.patch | 39 - patches/boot/corba-idlj.patch | 98 - patches/boot/corba-no-gen.patch | 12 - patches/boot/corba-orb.patch | 42 - patches/boot/demos.patch | 32 - patches/boot/ecj-autoboxing.patch | 287 - patches/boot/ecj-diamond.patch | 5765 ------ patches/boot/ecj-fphexconstants.patch | 60 - patches/boot/ecj-multicatch.patch | 115 - patches/boot/ecj-opts.patch | 12 - patches/boot/ecj-stringswitch.patch | 303 - patches/boot/ecj-trywithresources.patch | 928 - patches/boot/fontconfig.patch | 16 - patches/boot/generated-comments.patch | 21 - patches/boot/genstubs-nofork.patch | 12 - patches/boot/getannotation-cast.patch | 12 - patches/boot/hotspot-jdk-dependency.patch | 25 - patches/boot/icedteart.patch | 41 - patches/boot/jar.patch | 43 - patches/boot/javah.patch | 92 - patches/boot/jaxp-dependency.patch | 25 - patches/boot/jaxws-getdtdtype.patch | 27 - patches/boot/jaxws-jdk-dependency.patch | 43 - patches/boot/jaxws-langtools-dependency.patch | 48 - patches/boot/jopt.patch | 26 - patches/boot/langtools-force-old-jdk.patch | 16 - patches/boot/pr39408.patch | 18 - patches/boot/pr40188.patch | 15 - patches/boot/pr40616.patch | 52 - patches/boot/revert-6941137.patch | 12 - patches/boot/revert-6973616.patch | 12 - patches/boot/scanner-charsets.patch | 69 - patches/boot/scanner-dbcs.patch | 40 - patches/boot/scanner-sbcs.patch | 38 - patches/boot/scanner-spp.patch | 65 - patches/boot/symbols.patch | 23 - patches/boot/test_gamma.patch | 47 - patches/boot/tobin.patch | 39 - patches/boot/tools.jar.patch | 14 - patches/boot/xbootclasspath.patch | 116 - patches/boot/xsltproc.patch | 54 - patches/cacao/arch.patch | 86 +- patches/clean-crypto.patch | 1078 - patches/demos.patch | 317 - patches/disable-intree-ec.patch | 4 +- patches/gcc-suffix.patch | 61 - patches/headers.patch | 39 - patches/hotspot-gcc-pr36917.patch | 9 - patches/javafiles.patch | 164 - patches/jpegclasses.patch | 647 - patches/jtreg-httpTest.patch | 37 - patches/jvmtiEnv.patch | 12 - patches/lc_ctype.patch | 31 - patches/libraries.patch | 1277 - patches/linker-libs-order.patch | 54 - patches/memory-limits.patch | 12 - patches/nss-config.patch | 4 +- patches/params-cast-size_t.patch | 103 - patches/parisc-opt.patch | 28 - patches/parisc.patch | 14 - patches/pr261.patch | 40 - patches/print-lsb-release.patch | 49 - patches/rhino.patch | 125 +- patches/samejvm-safe.patch | 12 - patches/security-updates.patch | 101 - patches/security/6592792.patch | 69 - patches/security/6733959.patch | 19 - patches/security/6755943.patch | 373 - patches/sh4-support.patch | 162 - patches/signed-types.patch | 36 - patches/sources.patch | 17 - patches/sparc-ptracefix.patch | 34 - patches/sparc-trapsfix.patch | 20 - patches/sunsrc.patch | 59 - patches/systemtap-alloc-size-workaround.patch | 12 - patches/systemtap-gcc-4.5.patch | 17 +- patches/systemtap.patch | 162 - patches/tests-jdk.patch | 14 - patches/text-relocations.patch | 63 - patches/update-bootclasspath.patch | 13 - patches/use-idx_t.patch | 45 - remove-intree-libraries.sh.in | 116 +- 1278 files changed, 1780 insertions(+), 180126 deletions(-) diffs (truncated from 187659 to 500 lines): diff -r 2eb479d57f25 -r 14ea939ddd75 ChangeLog --- a/ChangeLog Wed Sep 05 11:41:19 2012 +0200 +++ b/ChangeLog Fri Mar 15 19:22:26 2013 +0000 @@ -1,3 +1,1431 @@ +2013-03-14 Andrew John Hughes + + Bump to OpenJDK b80. + * generated/com/sun/accessibility/internal/resources/accessibility.java, + * generated/com/sun/accessibility/internal/resources/accessibility_de.java, + * generated/com/sun/accessibility/internal/resources/accessibility_en.java, + * generated/com/sun/accessibility/internal/resources/accessibility_es.java, + * generated/com/sun/accessibility/internal/resources/accessibility_fr.java, + * generated/com/sun/accessibility/internal/resources/accessibility_it.java, + * generated/com/sun/accessibility/internal/resources/accessibility_ja.java, + * generated/com/sun/accessibility/internal/resources/accessibility_ko.java, + * generated/com/sun/accessibility/internal/resources/accessibility_sv.java, + * generated/com/sun/accessibility/internal/resources/accessibility_zh_CN.java, + * generated/com/sun/accessibility/internal/resources/accessibility_zh_HK.java, + * generated/com/sun/accessibility/internal/resources/accessibility_zh_TW.java, + * generated/com/sun/corba/se/PortableActivationIDL/Activator.java, + * generated/com/sun/corba/se/PortableActivationIDL/ActivatorHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ActivatorHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ActivatorOperations.java, + * generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinition.java, + * generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinitionHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/BadServerDefinitionHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/EndPointInfo.java, + * generated/com/sun/corba/se/PortableActivationIDL/EndPointInfoHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/EndPointInfoHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/EndpointInfoListHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/EndpointInfoListHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/IIOP_CLEAR_TEXT.java, + * generated/com/sun/corba/se/PortableActivationIDL/InitialNameService.java, + * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServiceOperations.java, + * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBound.java, + * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBoundHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/InitialNameServicePackage/NameAlreadyBoundHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/InvalidORBid.java, + * generated/com/sun/corba/se/PortableActivationIDL/InvalidORBidHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/InvalidORBidHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/Locator.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorOperations.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORB.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORBHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerORBHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerType.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerTypeHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/LocatorPackage/ServerLocationPerTypeHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPoint.java, + * generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPointHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/NoSuchEndPointHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegistered.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegisteredHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBAlreadyRegisteredHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfo.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoListHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBPortInfoListHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBProxy.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBProxyHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBProxyHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBProxyOperations.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBidListHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ORBidListHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/Repository.java, + * generated/com/sun/corba/se/PortableActivationIDL/RepositoryHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/RepositoryHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/RepositoryOperations.java, + * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/AppNamesHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/AppNamesHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDef.java, + * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDefHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/RepositoryPackage/ServerDefHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActive.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActiveHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyActiveHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalled.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalledHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyInstalledHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegistered.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegisteredHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyRegisteredHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalled.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalledHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerAlreadyUninstalledHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDown.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDownHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerHeldDownHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerIdsHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerIdsHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerManager.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerManagerHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerManagerHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerManagerOperations.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerNotActive.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerNotActiveHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerNotActiveHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegistered.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegisteredHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerNotRegisteredHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerProxy.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerProxyHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerProxyHolder.java, + * generated/com/sun/corba/se/PortableActivationIDL/ServerProxyOperations.java, + * generated/com/sun/corba/se/PortableActivationIDL/TCPPortHelper.java, + * generated/com/sun/corba/se/PortableActivationIDL/_ActivatorImplBase.java, + * generated/com/sun/corba/se/PortableActivationIDL/_ActivatorStub.java, + * generated/com/sun/corba/se/PortableActivationIDL/_InitialNameServiceImplBase.java, + * generated/com/sun/corba/se/PortableActivationIDL/_InitialNameServiceStub.java, + * generated/com/sun/corba/se/PortableActivationIDL/_LocatorImplBase.java, + * generated/com/sun/corba/se/PortableActivationIDL/_LocatorStub.java, + * generated/com/sun/corba/se/PortableActivationIDL/_ORBProxyImplBase.java, + * generated/com/sun/corba/se/PortableActivationIDL/_ORBProxyStub.java, + * generated/com/sun/corba/se/PortableActivationIDL/_RepositoryImplBase.java, + * generated/com/sun/corba/se/PortableActivationIDL/_RepositoryStub.java, + * generated/com/sun/corba/se/PortableActivationIDL/_ServerManagerImplBase.java, + * generated/com/sun/corba/se/PortableActivationIDL/_ServerManagerStub.java, + * generated/com/sun/corba/se/PortableActivationIDL/_ServerProxyImplBase.java, + * generated/com/sun/corba/se/PortableActivationIDL/_ServerProxyStub.java, + * generated/com/sun/corba/se/impl/logging/ActivationSystemException.java, + * generated/com/sun/corba/se/impl/logging/ActivationSystemException.resource, + * generated/com/sun/corba/se/impl/logging/IORSystemException.java, + * generated/com/sun/corba/se/impl/logging/IORSystemException.resource, + * generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java, + * generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.resource, + * generated/com/sun/corba/se/impl/logging/LogStrings.properties, + * generated/com/sun/corba/se/impl/logging/NamingSystemException.java, + * generated/com/sun/corba/se/impl/logging/NamingSystemException.resource, + * generated/com/sun/corba/se/impl/logging/OMGSystemException.java, + * generated/com/sun/corba/se/impl/logging/OMGSystemException.resource, + * generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.java, + * generated/com/sun/corba/se/impl/logging/ORBUtilSystemException.resource, + * generated/com/sun/corba/se/impl/logging/POASystemException.java, + * generated/com/sun/corba/se/impl/logging/POASystemException.resource, + * generated/com/sun/corba/se/impl/logging/UtilSystemException.java, + * generated/com/sun/corba/se/impl/logging/UtilSystemException.resource, + * generated/com/sun/corba/se/spi/activation/Activator.java, + * generated/com/sun/corba/se/spi/activation/ActivatorHelper.java, + * generated/com/sun/corba/se/spi/activation/ActivatorHolder.java, + * generated/com/sun/corba/se/spi/activation/ActivatorOperations.java, + * generated/com/sun/corba/se/spi/activation/BadServerDefinition.java, + * generated/com/sun/corba/se/spi/activation/BadServerDefinitionHelper.java, + * generated/com/sun/corba/se/spi/activation/BadServerDefinitionHolder.java, + * generated/com/sun/corba/se/spi/activation/EndPointInfo.java, + * generated/com/sun/corba/se/spi/activation/EndPointInfoHelper.java, + * generated/com/sun/corba/se/spi/activation/EndPointInfoHolder.java, + * generated/com/sun/corba/se/spi/activation/EndpointInfoListHelper.java, + * generated/com/sun/corba/se/spi/activation/EndpointInfoListHolder.java, + * generated/com/sun/corba/se/spi/activation/IIOP_CLEAR_TEXT.java, + * generated/com/sun/corba/se/spi/activation/InitialNameService.java, + * generated/com/sun/corba/se/spi/activation/InitialNameServiceHelper.java, + * generated/com/sun/corba/se/spi/activation/InitialNameServiceHolder.java, + * generated/com/sun/corba/se/spi/activation/InitialNameServiceOperations.java, + * generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBound.java, + * generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBoundHelper.java, + * generated/com/sun/corba/se/spi/activation/InitialNameServicePackage/NameAlreadyBoundHolder.java, + * generated/com/sun/corba/se/spi/activation/InvalidORBid.java, + * generated/com/sun/corba/se/spi/activation/InvalidORBidHelper.java, + * generated/com/sun/corba/se/spi/activation/InvalidORBidHolder.java, + * generated/com/sun/corba/se/spi/activation/Locator.java, + * generated/com/sun/corba/se/spi/activation/LocatorHelper.java, + * generated/com/sun/corba/se/spi/activation/LocatorHolder.java, + * generated/com/sun/corba/se/spi/activation/LocatorOperations.java, + * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocation.java, + * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationHelper.java, + * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationHolder.java, + * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORB.java, + * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORBHelper.java, + * generated/com/sun/corba/se/spi/activation/LocatorPackage/ServerLocationPerORBHolder.java, + * generated/com/sun/corba/se/spi/activation/NoSuchEndPoint.java, + * generated/com/sun/corba/se/spi/activation/NoSuchEndPointHelper.java, + * generated/com/sun/corba/se/spi/activation/NoSuchEndPointHolder.java, + * generated/com/sun/corba/se/spi/activation/ORBAlreadyRegistered.java, + * generated/com/sun/corba/se/spi/activation/ORBAlreadyRegisteredHelper.java, + * generated/com/sun/corba/se/spi/activation/ORBAlreadyRegisteredHolder.java, + * generated/com/sun/corba/se/spi/activation/ORBPortInfo.java, + * generated/com/sun/corba/se/spi/activation/ORBPortInfoHelper.java, + * generated/com/sun/corba/se/spi/activation/ORBPortInfoHolder.java, + * generated/com/sun/corba/se/spi/activation/ORBPortInfoListHelper.java, + * generated/com/sun/corba/se/spi/activation/ORBPortInfoListHolder.java, + * generated/com/sun/corba/se/spi/activation/ORBidHelper.java, + * generated/com/sun/corba/se/spi/activation/ORBidListHelper.java, + * generated/com/sun/corba/se/spi/activation/ORBidListHolder.java, + * generated/com/sun/corba/se/spi/activation/POANameHelper.java, + * generated/com/sun/corba/se/spi/activation/POANameHolder.java, + * generated/com/sun/corba/se/spi/activation/Repository.java, + * generated/com/sun/corba/se/spi/activation/RepositoryHelper.java, + * generated/com/sun/corba/se/spi/activation/RepositoryHolder.java, + * generated/com/sun/corba/se/spi/activation/RepositoryOperations.java, + * generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDef.java, + * generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDefHelper.java, + * generated/com/sun/corba/se/spi/activation/RepositoryPackage/ServerDefHolder.java, + * generated/com/sun/corba/se/spi/activation/RepositoryPackage/StringSeqHelper.java, + * generated/com/sun/corba/se/spi/activation/RepositoryPackage/StringSeqHolder.java, + * generated/com/sun/corba/se/spi/activation/Server.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyActive.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyActiveHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyActiveHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalled.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalledHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyInstalledHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyRegistered.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyRegisteredHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyRegisteredHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalled.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalledHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerAlreadyUninstalledHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerHeldDown.java, + * generated/com/sun/corba/se/spi/activation/ServerHeldDownHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerHeldDownHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerIdHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerIdsHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerIdsHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerManager.java, + * generated/com/sun/corba/se/spi/activation/ServerManagerHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerManagerHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerManagerOperations.java, + * generated/com/sun/corba/se/spi/activation/ServerNotActive.java, + * generated/com/sun/corba/se/spi/activation/ServerNotActiveHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerNotActiveHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerNotRegistered.java, + * generated/com/sun/corba/se/spi/activation/ServerNotRegisteredHelper.java, + * generated/com/sun/corba/se/spi/activation/ServerNotRegisteredHolder.java, + * generated/com/sun/corba/se/spi/activation/ServerOperations.java, + * generated/com/sun/corba/se/spi/activation/TCPPortHelper.java, + * generated/com/sun/corba/se/spi/activation/_ActivatorImplBase.java, + * generated/com/sun/corba/se/spi/activation/_ActivatorStub.java, + * generated/com/sun/corba/se/spi/activation/_InitialNameServiceImplBase.java, + * generated/com/sun/corba/se/spi/activation/_InitialNameServiceStub.java, + * generated/com/sun/corba/se/spi/activation/_LocatorImplBase.java, + * generated/com/sun/corba/se/spi/activation/_LocatorStub.java, + * generated/com/sun/corba/se/spi/activation/_RepositoryImplBase.java, + * generated/com/sun/corba/se/spi/activation/_RepositoryStub.java, + * generated/com/sun/corba/se/spi/activation/_ServerImplBase.java, + * generated/com/sun/corba/se/spi/activation/_ServerManagerImplBase.java, + * generated/com/sun/corba/se/spi/activation/_ServerManagerStub.java, + * generated/com/sun/corba/se/spi/activation/_ServerStub.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_de.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_es.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_fr.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_it.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_ja.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_ko.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_sv.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_CN.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_HK.java, + * generated/com/sun/java/swing/plaf/gtk/resources/gtk_zh_TW.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_de.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_es.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_fr.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_it.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_ja.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_ko.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_sv.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_zh_CN.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_zh_HK.java, + * generated/com/sun/java/swing/plaf/motif/resources/motif_zh_TW.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_de.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_es.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_fr.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_it.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_ja.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_ko.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_sv.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_zh_CN.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_zh_HK.java, + * generated/com/sun/java/swing/plaf/windows/resources/windows_zh_TW.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_de.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_es.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_fr.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_it.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_ja.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_ko.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_sv.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_CN.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_HK.java, + * generated/com/sun/swing/internal/plaf/basic/resources/basic_zh_TW.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_de.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_es.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_fr.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_it.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_ja.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_ko.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_sv.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_CN.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_HK.java, + * generated/com/sun/swing/internal/plaf/metal/resources/metal_zh_TW.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_de.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_es.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_fr.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_it.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_ja.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_ko.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_sv.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_CN.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_HK.java, + * generated/com/sun/swing/internal/plaf/synth/resources/synth_zh_TW.java, + * generated/com/sun/tools/apt/resources/apt.java, + * generated/com/sun/tools/apt/resources/apt_ja.java, + * generated/com/sun/tools/apt/resources/apt_zh_CN.java, + * generated/com/sun/tools/doclets/formats/html/resources/standard.java, + * generated/com/sun/tools/doclets/formats/html/resources/standard_ja.java, + * generated/com/sun/tools/doclets/formats/html/resources/standard_zh_CN.java, + * generated/com/sun/tools/doclets/internal/toolkit/resources/doclets.java, + * generated/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.java, + * generated/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.java, + * generated/com/sun/tools/javac/resources/compiler.java, + * generated/com/sun/tools/javac/resources/compiler_ja.java, + * generated/com/sun/tools/javac/resources/compiler_zh_CN.java, + * generated/com/sun/tools/javac/resources/javac.java, + * generated/com/sun/tools/javac/resources/javac_ja.java, + * generated/com/sun/tools/javac/resources/javac_zh_CN.java, + * generated/com/sun/tools/javac/resources/legacy.java, + * generated/com/sun/tools/javac/resources/version.java, + * generated/com/sun/tools/javadoc/resources/javadoc.java, + * generated/com/sun/tools/javadoc/resources/javadoc_ja.java, + * generated/com/sun/tools/javadoc/resources/javadoc_zh_CN.java, + * generated/com/sun/tools/jdi/JDWP.java, + * generated/com/sun/tools/jdi/resources/jdi.java, + * generated/com/sun/tools/jdi/resources/jdi_ja.java, + * generated/com/sun/tools/jdi/resources/jdi_zh_CN.java, + * generated/java/lang/CharacterData00.java, + * generated/java/lang/CharacterData01.java, + * generated/java/lang/CharacterData02.java, + * generated/java/lang/CharacterData0E.java, + * generated/java/lang/CharacterDataLatin1.java, + * generated/java/lang/CharacterDataPrivateUse.java, + * generated/java/lang/CharacterDataUndefined.java, + * generated/java/lang/UNIXProcess.java, + * generated/java/nio/BufferOverflowException.java, + * generated/java/nio/BufferUnderflowException.java, + * generated/java/nio/ByteBuffer.java, + * generated/java/nio/ByteBufferAsCharBufferB.java, + * generated/java/nio/ByteBufferAsCharBufferL.java, + * generated/java/nio/ByteBufferAsCharBufferRB.java, + * generated/java/nio/ByteBufferAsCharBufferRL.java, + * generated/java/nio/ByteBufferAsDoubleBufferB.java, + * generated/java/nio/ByteBufferAsDoubleBufferL.java, + * generated/java/nio/ByteBufferAsDoubleBufferRB.java, + * generated/java/nio/ByteBufferAsDoubleBufferRL.java, + * generated/java/nio/ByteBufferAsFloatBufferB.java, + * generated/java/nio/ByteBufferAsFloatBufferL.java, + * generated/java/nio/ByteBufferAsFloatBufferRB.java, + * generated/java/nio/ByteBufferAsFloatBufferRL.java, + * generated/java/nio/ByteBufferAsIntBufferB.java, + * generated/java/nio/ByteBufferAsIntBufferL.java, + * generated/java/nio/ByteBufferAsIntBufferRB.java, + * generated/java/nio/ByteBufferAsIntBufferRL.java, + * generated/java/nio/ByteBufferAsLongBufferB.java, + * generated/java/nio/ByteBufferAsLongBufferL.java, + * generated/java/nio/ByteBufferAsLongBufferRB.java, + * generated/java/nio/ByteBufferAsLongBufferRL.java, + * generated/java/nio/ByteBufferAsShortBufferB.java, + * generated/java/nio/ByteBufferAsShortBufferL.java, + * generated/java/nio/ByteBufferAsShortBufferRB.java, + * generated/java/nio/ByteBufferAsShortBufferRL.java, + * generated/java/nio/CharBuffer.java, + * generated/java/nio/DirectByteBuffer.java, + * generated/java/nio/DirectByteBufferR.java, + * generated/java/nio/DirectCharBufferRS.java, + * generated/java/nio/DirectCharBufferRU.java, + * generated/java/nio/DirectCharBufferS.java, + * generated/java/nio/DirectCharBufferU.java, + * generated/java/nio/DirectDoubleBufferRS.java, + * generated/java/nio/DirectDoubleBufferRU.java, + * generated/java/nio/DirectDoubleBufferS.java, + * generated/java/nio/DirectDoubleBufferU.java, + * generated/java/nio/DirectFloatBufferRS.java, + * generated/java/nio/DirectFloatBufferRU.java, + * generated/java/nio/DirectFloatBufferS.java, + * generated/java/nio/DirectFloatBufferU.java, + * generated/java/nio/DirectIntBufferRS.java, + * generated/java/nio/DirectIntBufferRU.java, + * generated/java/nio/DirectIntBufferS.java, + * generated/java/nio/DirectIntBufferU.java, + * generated/java/nio/DirectLongBufferRS.java, + * generated/java/nio/DirectLongBufferRU.java, + * generated/java/nio/DirectLongBufferS.java, + * generated/java/nio/DirectLongBufferU.java, + * generated/java/nio/DirectShortBufferRS.java, + * generated/java/nio/DirectShortBufferRU.java, + * generated/java/nio/DirectShortBufferS.java, + * generated/java/nio/DirectShortBufferU.java, + * generated/java/nio/DoubleBuffer.java, + * generated/java/nio/FloatBuffer.java, + * generated/java/nio/HeapByteBuffer.java, + * generated/java/nio/HeapByteBufferR.java, + * generated/java/nio/HeapCharBuffer.java, + * generated/java/nio/HeapCharBufferR.java, + * generated/java/nio/HeapDoubleBuffer.java, + * generated/java/nio/HeapDoubleBufferR.java, + * generated/java/nio/HeapFloatBuffer.java, + * generated/java/nio/HeapFloatBufferR.java, + * generated/java/nio/HeapIntBuffer.java, + * generated/java/nio/HeapIntBufferR.java, + * generated/java/nio/HeapLongBuffer.java, + * generated/java/nio/HeapLongBufferR.java, + * generated/java/nio/HeapShortBuffer.java, + * generated/java/nio/HeapShortBufferR.java, + * generated/java/nio/IntBuffer.java, + * generated/java/nio/InvalidMarkException.java, + * generated/java/nio/LongBuffer.java, + * generated/java/nio/ReadOnlyBufferException.java, + * generated/java/nio/ShortBuffer.java, + * generated/java/nio/channels/AcceptPendingException.java, + * generated/java/nio/channels/AlreadyBoundException.java, + * generated/java/nio/channels/AlreadyConnectedException.java, + * generated/java/nio/channels/AsynchronousCloseException.java, + * generated/java/nio/channels/CancelledKeyException.java, + * generated/java/nio/channels/ClosedByInterruptException.java, + * generated/java/nio/channels/ClosedChannelException.java, + * generated/java/nio/channels/ClosedSelectorException.java, + * generated/java/nio/channels/ConnectionPendingException.java, + * generated/java/nio/channels/FileLockInterruptionException.java, + * generated/java/nio/channels/IllegalBlockingModeException.java, + * generated/java/nio/channels/IllegalChannelGroupException.java, + * generated/java/nio/channels/IllegalSelectorException.java, + * generated/java/nio/channels/InterruptedByTimeoutException.java, + * generated/java/nio/channels/NoConnectionPendingException.java, + * generated/java/nio/channels/NonReadableChannelException.java, + * generated/java/nio/channels/NonWritableChannelException.java, + * generated/java/nio/channels/NotYetBoundException.java, + * generated/java/nio/channels/NotYetConnectedException.java, + * generated/java/nio/channels/OverlappingFileLockException.java, + * generated/java/nio/channels/ReadPendingException.java, + * generated/java/nio/channels/ShutdownChannelGroupException.java, + * generated/java/nio/channels/UnresolvedAddressException.java, + * generated/java/nio/channels/UnsupportedAddressTypeException.java, + * generated/java/nio/channels/WritePendingException.java, + * generated/java/nio/charset/CharacterCodingException.java, + * generated/java/nio/charset/CharsetDecoder.java, + * generated/java/nio/charset/CharsetEncoder.java, + * generated/java/nio/charset/IllegalCharsetNameException.java, + * generated/java/nio/charset/UnsupportedCharsetException.java, + * generated/java/util/CurrencyData.java, + * generated/javax/management/remote/rmi/RMIConnectionImpl_Stub.java, + * generated/javax/management/remote/rmi/RMIServerImpl_Stub.java, + * generated/org/omg/CORBA/ParameterMode.java, + * generated/org/omg/CORBA/ParameterModeHelper.java, + * generated/org/omg/CORBA/ParameterModeHolder.java, + * generated/org/omg/CORBA/PolicyErrorCodeHelper.java, + * generated/org/omg/CORBA/PolicyErrorHelper.java, + * generated/org/omg/CORBA/PolicyErrorHolder.java, + * generated/org/omg/CORBA/StringSeqHelper.java, + * generated/org/omg/CORBA/StringSeqHolder.java, + * generated/org/omg/CORBA/WStringSeqHelper.java, + * generated/org/omg/CORBA/WStringSeqHolder.java, + * generated/org/omg/CosNaming/Binding.java, + * generated/org/omg/CosNaming/BindingHelper.java, + * generated/org/omg/CosNaming/BindingHolder.java, + * generated/org/omg/CosNaming/BindingIterator.java, + * generated/org/omg/CosNaming/BindingIteratorHelper.java, + * generated/org/omg/CosNaming/BindingIteratorHolder.java, + * generated/org/omg/CosNaming/BindingIteratorOperations.java, + * generated/org/omg/CosNaming/BindingIteratorPOA.java, + * generated/org/omg/CosNaming/BindingListHelper.java, + * generated/org/omg/CosNaming/BindingListHolder.java, + * generated/org/omg/CosNaming/BindingType.java, + * generated/org/omg/CosNaming/BindingTypeHelper.java, + * generated/org/omg/CosNaming/BindingTypeHolder.java, + * generated/org/omg/CosNaming/IstringHelper.java, + * generated/org/omg/CosNaming/NameComponent.java, + * generated/org/omg/CosNaming/NameComponentHelper.java, + * generated/org/omg/CosNaming/NameComponentHolder.java, + * generated/org/omg/CosNaming/NameHelper.java, + * generated/org/omg/CosNaming/NameHolder.java, + * generated/org/omg/CosNaming/NamingContext.java, + * generated/org/omg/CosNaming/NamingContextExt.java, + * generated/org/omg/CosNaming/NamingContextExtHelper.java, + * generated/org/omg/CosNaming/NamingContextExtHolder.java, + * generated/org/omg/CosNaming/NamingContextExtOperations.java, + * generated/org/omg/CosNaming/NamingContextExtPOA.java, + * generated/org/omg/CosNaming/NamingContextExtPackage/AddressHelper.java, + * generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddress.java, + * generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHelper.java, + * generated/org/omg/CosNaming/NamingContextExtPackage/InvalidAddressHolder.java, + * generated/org/omg/CosNaming/NamingContextExtPackage/StringNameHelper.java, + * generated/org/omg/CosNaming/NamingContextExtPackage/URLStringHelper.java, + * generated/org/omg/CosNaming/NamingContextHelper.java, + * generated/org/omg/CosNaming/NamingContextHolder.java, + * generated/org/omg/CosNaming/NamingContextOperations.java, + * generated/org/omg/CosNaming/NamingContextPOA.java, + * generated/org/omg/CosNaming/NamingContextPackage/AlreadyBound.java, + * generated/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHelper.java, + * generated/org/omg/CosNaming/NamingContextPackage/AlreadyBoundHolder.java, + * generated/org/omg/CosNaming/NamingContextPackage/CannotProceed.java, + * generated/org/omg/CosNaming/NamingContextPackage/CannotProceedHelper.java, From gnu.andrew at redhat.com Fri Mar 15 12:25:25 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Fri, 15 Mar 2013 15:25:25 -0400 (EDT) Subject: IcedTea for OpenJDK 8 Updated Message-ID: <344276796.19497532.1363375525332.JavaMail.root@redhat.com> I've just pushed a changeset which does a mass update / cleanup of IcedTea for OpenJDK 8, allowing it to build the latest b80 from upstream OpenJDK. Most patches have been removed to give us a clean start and there's a lot of build change, including the use of OpenJDK's new build system, so no doubt things will be broken / missing at first. Things as basic as system library support have yet to be added back in. But this is a start. Please file bugs at http://icedtea.classpath.org/bugzilla for issues you encounter or just supply a patch if it's something simple. Let's see how quickly the autobuilders break on this :-) -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From jaicserao at gmail.com Tue Mar 12 02:38:41 2013 From: jaicserao at gmail.com (jaicserao) Date: Tue, 12 Mar 2013 02:38:41 -0700 (PDT) Subject: OpenJdk1.7 crashes in Debian 6.0 Message-ID: <1363081121310-122062.post@n7.nabble.com> Hi, I have a small web application developed using spring framework and deployed in tomcat6.0 in debian (6.0 )enviornment. Java used: JRE version: 7.0_03-b21 # Java VM: OpenJDK Zero VM (22.0-b10 interpreted mode linux-mips ) # Derivative: IcedTea7 2.1.3 # Distribution: Debian GNU/Linux unstable (sid), package 7u3-2.1.3-1 Architecture: MIPS The below is the output of hs_err_pid19519.log ...Can anyone help to find out what has happened? and what fatal error:caught unhandled signal 1o mean?How to dubug further? # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (os_linux_zero.cpp:285), pid=19519, tid=1444410544 # fatal error: caught unhandled signal 10 # # JRE version: 7.0_03-b21 # Java VM: OpenJDK Zero VM (22.0-b10 interpreted mode linux-mips ) # Derivative: IcedTea7 2.1.3 # Distribution: Debian GNU/Linux unstable (sid), package 7u3-2.1.3-1 # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # If you would like to submit a bug report, please include # instructions on how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # --------------- T H R E A D --------------- Current thread (0x539f9230): JavaThread "org.springframework.jms.listener.DefaultMessageListenerContainer#2-1" [_thread_in_Java, id=28245, stack(0x56000000,0x56180000)] Stack: [0x56000000,0x56180000], sp=0x560c1060, free space=772k Java frames: 0x5617e73c: stack_word[2] = 0x5617e790 0x5617e740: stack_word[1] = 0x2df3af00 0x5617e744: stack_word[0] = 0x88000000 0x5617e748: istate->_thread = 0x539f9230 0x5617e74c: istate->_bcp = 0x4eb472e0 (bci 0) 0x5617e750: istate->_locals = 0x5617e7a0 0x5617e754: istate->_constants = 0x4eb48628 0x5617e758: istate->_method = org.apache.activemq.management.JMSEndpointStatsImpl.setParent(Lorg/apache/activemq/management/CountStatisticImpl;Lorg/apache/activemq/management/CountStatisticImpl;)V 0x5617e75c: istate->_mdx = 0x00000000 0x5617e760: istate->_stack = 0x5617e744 0x5617e764: istate->_msg = 0x00000002 0x5617e768: istate->_result = 0x00000000 0x5617e76c: (istate->_result) = 0x2b6aa140 0x5617e770: (istate->_result) = 0x00000003 0x5617e774: istate->_prev_link = 0x00000000 0x5617e778: istate->_oop_temp = 0x00000000 0x5617e77c: istate->_stack_base = 0x5617e748 0x5617e780: istate->_stack_limit = 0x5617e738 0x5617e784: istate->_monitor_base = 0x5617e748 0x5617e788: istate->_self_link = 0x5617e748 0x5617e78c: frame_type = INTERPRETER_FRAME 0x5617e790: next_frame = 0x5617e7ec 0x5617e794: local[3] = 0x00000000 0x5617e798: local[2] = 0x88000000 0x5617e79c: local[1] = 0x2dfd3198 0x5617e7a0: local[0] = 0x2dfd3010 0x5617e7a4: istate->_thread = 0x539f9230 0x5617e7a8: istate->_bcp = 0x4eb46989 (bci 25) 0x5617e7ac: istate->_locals = 0x5617e7f4 0x5617e7b0: istate->_constants = 0x4eb48628 0x5617e7b4: istate->_method = org.apache.activemq.management.JMSEndpointStatsImpl.(Lorg/apache/activemq/management/JMSSessionStatsImpl;)V 0x5617e7b8: istate->_mdx = 0x00000000 0x5617e7bc: istate->_stack = 0x5617e794 0x5617e7c0: istate->_msg = 0x00000008 0x5617e7c4: istate->_result = 0x4eb47360 0x5617e7c8: (istate->_result) = 0x2b6aa140 0x5617e7cc: (istate->_result) = 0x00000003 0x5617e7d0: istate->_prev_link = 0x00000000 0x5617e7d4: istate->_oop_temp = 0x00000000 0x5617e7d8: istate->_stack_base = 0x5617e7a4 0x5617e7dc: istate->_stack_limit = 0x5617e794 0x5617e7e0: istate->_monitor_base = 0x5617e7a4 0x5617e7e4: istate->_self_link = 0x5617e7a4 0x5617e7e8: frame_type = INTERPRETER_FRAME 0x5617e7ec: next_frame = 0x5617e840 0x5617e7f0: local[1] = 0x2df3aaa8 0x5617e7f4: local[0] = 0x2dfd3010 0x5617e7f8: istate->_thread = 0x539f9230 0x5617e7fc: istate->_bcp = 0x4eb460e2 (bci 2) 0x5617e800: istate->_locals = 0x5617e84c 0x5617e804: istate->_constants = 0x4eb488b8 0x5617e808: istate->_method = org.apache.activemq.management.JMSConsumerStatsImpl.(Lorg/apache/activemq/management/JMSSessionStatsImpl;Ljavax/jms/Destination;)V 0x5617e80c: istate->_mdx = 0x00000000 0x5617e810: istate->_stack = 0x5617e7ec 0x5617e814: istate->_msg = 0x00000008 0x5617e818: istate->_result = 0x4eb469d8 0x5617e81c: (istate->_result) = 0x2b6aa140 0x5617e820: (istate->_result) = 0x00000003 0x5617e824: istate->_prev_link = 0x00000000 0x5617e828: istate->_oop_temp = 0x00000000 0x5617e82c: istate->_stack_base = 0x5617e7f8 0x5617e830: istate->_stack_limit = 0x5617e7ec 0x5617e834: istate->_monitor_base = 0x5617e7f8 0x5617e838: istate->_self_link = 0x5617e7f8 0x5617e83c: frame_type = INTERPRETER_FRAME 0x5617e840: next_frame = 0x5617e8a0 0x5617e844: local[4] = 0x2df3de68 0x5617e848: local[3] = 0x2df3aaa8 0x5617e84c: local[2] = 0x2dfd3010 0x5617e850: local[1] = 0x2dfd3010 0x5617e854: local[0] = 0x2dfd2540 0x5617e858: istate->_thread = 0x539f9230 0x5617e85c: istate->_bcp = 0x4eb418d4 (bci 492) 0x5617e860: istate->_locals = 0x5617e8d8 0x5617e864: istate->_constants = 0x4eb47948 0x5617e868: istate->_method = org.apache.activemq.ActiveMQMessageConsumer.(Lorg/apache/activemq/ActiveMQSession;Lorg/apache/activemq/command/ConsumerId;Lorg/apache/activemq/command/ActiveMQDestination;Ljava/lang/String;Ljava/lang/String;IIZZZLjavax/jms/MessageListener;)V 0x5617e86c: istate->_mdx = 0x00000000 0x5617e870: istate->_stack = 0x5617e840 0x5617e874: istate->_msg = 0x00000008 0x5617e878: istate->_result = 0x4eb46120 0x5617e87c: (istate->_result) = 0x2b6aa140 0x5617e880: (istate->_result) = 0x00000003 0x5617e884: istate->_prev_link = 0x00000000 0x5617e888: istate->_oop_temp = 0x00000000 0x5617e88c: istate->_stack_base = 0x5617e858 0x5617e890: istate->_stack_limit = 0x5617e840 0x5617e894: istate->_monitor_base = 0x5617e858 0x5617e898: istate->_self_link = 0x5617e858 0x5617e89c: frame_type = INTERPRETER_FRAME 0x5617e8a0: next_frame = 0x5617e928 0x5617e8a4: local[14] = 0x00000000 0x5617e8a8: local[13] = 0x00000000 0x5617e8ac: local[12] = 0x00000000 0x5617e8b0: local[11] = 0x00000001 0x5617e8b4: local[10] = 0x00000000 0x5617e8b8: local[9] = 0x00000000 0x5617e8bc: local[8] = 0x00000000 0x5617e8c0: local[7] = 0x00007ffe 0x5617e8c4: local[6] = 0x00000000 0x5617e8c8: local[5] = 0x00000000 0x5617e8cc: local[4] = 0x2df3de68 0x5617e8d0: local[3] = 0x2dfd25a0 0x5617e8d4: local[2] = 0x2de2fd28 0x5617e8d8: local[1] = 0x2dfd2540 0x5617e8dc: local[0] = 0x2dfd2540 0x5617e8e0: istate->_thread = 0x539f9230 0x5617e8e4: istate->_bcp = 0x4eb15de2 (bci 98) 0x5617e8e8: istate->_locals = 0x5617e948 0x5617e8ec: istate->_constants = 0x4eb33638 0x5617e8f0: istate->_method = org.apache.activemq.ActiveMQSession.createConsumer(Ljavax/jms/Destination;Ljava/lang/String;ZLjavax/jms/MessageListener;)Ljavax/jms/MessageConsumer; 0x5617e8f4: istate->_mdx = 0x00000000 0x5617e8f8: istate->_stack = 0x5617e8a8 0x5617e8fc: istate->_msg = 0x00000008 0x5617e900: istate->_result = 0x4eb41a58 0x5617e904: (istate->_result) = 0x2b6aa140 0x5617e908: (istate->_result) = 0x00000003 0x5617e90c: istate->_prev_link = 0x00000000 0x5617e910: istate->_oop_temp = 0x00000000 0x5617e914: istate->_stack_base = 0x5617e8e0 0x5617e918: istate->_stack_limit = 0x5617e8a8 0x5617e91c: istate->_monitor_base = 0x5617e8e0 0x5617e920: istate->_self_link = 0x5617e8e0 0x5617e924: frame_type = INTERPRETER_FRAME 0x5617e928: next_frame = 0x5617e994 0x5617e92c: local[7] = 0x2df3de68 0x5617e930: local[6] = 0x00007ffe 0x5617e934: local[5] = 0x388fd9b8 0x5617e938: local[4] = 0x00000000 0x5617e93c: local[3] = 0x00000000 0x5617e940: local[2] = 0x00000000 0x5617e944: local[1] = 0x2df3de68 0x5617e948: local[0] = 0x2de2fd28 0x5617e94c: istate->_thread = 0x539f9230 0x5617e950: istate->_bcp = 0x4eb15cbd (bci 5) 0x5617e954: istate->_locals = 0x5617e9a4 0x5617e958: istate->_constants = 0x4eb33638 0x5617e95c: istate->_method = org.apache.activemq.ActiveMQSession.createConsumer(Ljavax/jms/Destination;Ljava/lang/String;Z)Ljavax/jms/MessageConsumer; 0x5617e960: istate->_mdx = 0x00000000 0x5617e964: istate->_stack = 0x5617e934 0x5617e968: istate->_msg = 0x00000008 0x5617e96c: istate->_result = 0x4eb15e68 0x5617e970: (istate->_result) = 0x2b6aa140 0x5617e974: (istate->_result) = 0x00000003 0x5617e978: istate->_prev_link = 0x00000000 0x5617e97c: istate->_oop_temp = 0x00000000 0x5617e980: istate->_stack_base = 0x5617e94c 0x5617e984: istate->_stack_limit = 0x5617e934 0x5617e988: istate->_monitor_base = 0x5617e94c 0x5617e98c: istate->_self_link = 0x5617e94c 0x5617e990: frame_type = INTERPRETER_FRAME 0x5617e994: next_frame = 0x5617e9f0 0x5617e998: local[3] = 0x00000000 0x5617e99c: local[2] = 0x00000000 0x5617e9a0: local[1] = 0x2df3de68 0x5617e9a4: local[0] = 0x2de2fd28 0x5617e9a8: istate->_thread = 0x539f9230 0x5617e9ac: istate->_bcp = 0x4e252dce (bci 54) 0x5617e9b0: istate->_locals = 0x5617e9fc 0x5617e9b4: istate->_constants = 0x4e75a620 0x5617e9b8: istate->_method = org.springframework.jms.listener.AbstractPollingMessageListenerContainer.createConsumer(Ljavax/jms/Session;Ljavax/jms/Destination;)Ljavax/jms/MessageConsumer; 0x5617e9bc: istate->_mdx = 0x00000000 0x5617e9c0: istate->_stack = 0x5617e994 0x5617e9c4: istate->_msg = 0x00000008 0x5617e9c8: istate->_result = 0x4eb15d00 0x5617e9cc: (istate->_result) = 0x2b6aa140 0x5617e9d0: (istate->_result) = 0x00000005 0x5617e9d4: istate->_prev_link = 0x00000000 0x5617e9d8: istate->_oop_temp = 0x00000000 0x5617e9dc: istate->_stack_base = 0x5617e9a8 0x5617e9e0: istate->_stack_limit = 0x5617e990 0x5617e9e4: istate->_monitor_base = 0x5617e9a8 0x5617e9e8: istate->_self_link = 0x5617e9a8 0x5617e9ec: frame_type = INTERPRETER_FRAME 0x5617e9f0: next_frame = 0x5617ea48 0x5617e9f4: local[2] = 0x2df3de68 0x5617e9f8: local[1] = 0x2de2fd28 0x5617e9fc: local[0] = 0x38fa9c28 0x5617ea00: istate->_thread = 0x539f9230 0x5617ea04: istate->_bcp = 0x4e25207e (bci 22) 0x5617ea08: istate->_locals = 0x5617ea54 0x5617ea0c: istate->_constants = 0x4e75a620 0x5617ea10: istate->_method = org.springframework.jms.listener.AbstractPollingMessageListenerContainer.createListenerConsumer(Ljavax/jms/Session;)Ljavax/jms/MessageConsumer; 0x5617ea14: istate->_mdx = 0x00000000 0x5617ea18: istate->_stack = 0x5617e9f0 0x5617ea1c: istate->_msg = 0x00000008 0x5617ea20: istate->_result = 0x4e252e18 0x5617ea24: (istate->_result) = 0x2b6aa140 0x5617ea28: (istate->_result) = 0x00000003 0x5617ea2c: istate->_prev_link = 0x00000000 0x5617ea30: istate->_oop_temp = 0x00000000 0x5617ea34: istate->_stack_base = 0x5617ea00 0x5617ea38: istate->_stack_limit = 0x5617e9f0 0x5617ea3c: istate->_monitor_base = 0x5617ea00 0x5617ea40: istate->_self_link = 0x5617ea00 0x5617ea44: frame_type = INTERPRETER_FRAME 0x5617ea48: next_frame = 0x5617eaa4 0x5617ea4c: local[3] = 0x2df3de68 0x5617ea50: local[2] = 0x2de2fd28 0x5617ea54: local[1] = 0x38fa9c28 0x5617ea58: local[0] = 0x38fc7108 0x5617ea5c: istate->_thread = 0x539f9230 0x5617ea60: istate->_bcp = 0x4e7699ad (bci 85) 0x5617ea64: istate->_locals = 0x5617eaac 0x5617ea68: istate->_constants = 0x4e76a0e8 0x5617ea6c: istate->_method = org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.initResourcesIfNecessary()V 0x5617ea70: istate->_mdx = 0x00000000 0x5617ea74: istate->_stack = 0x5617ea4c 0x5617ea78: istate->_msg = 0x00000008 0x5617ea7c: istate->_result = 0x4e2520b8 0x5617ea80: (istate->_result) = 0x2b6aa140 0x5617ea84: (istate->_result) = 0x00000003 0x5617ea88: istate->_prev_link = 0x00000000 0x5617ea8c: istate->_oop_temp = 0x00000000 0x5617ea90: istate->_stack_base = 0x5617ea5c 0x5617ea94: istate->_stack_limit = 0x5617ea4c 0x5617ea98: istate->_monitor_base = 0x5617ea5c 0x5617ea9c: istate->_self_link = 0x5617ea5c 0x5617eaa0: frame_type = INTERPRETER_FRAME 0x5617eaa4: next_frame = 0x5617eaf8 0x5617eaa8: local[1] = 0x00000000 0x5617eaac: local[0] = 0x38fc7108 0x5617eab0: istate->_thread = 0x539f9230 0x5617eab4: istate->_bcp = 0x4e769791 (bci 1) 0x5617eab8: istate->_locals = 0x5617eb00 0x5617eabc: istate->_constants = 0x4e76a0e8 0x5617eac0: istate->_method = org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener()Z 0x5617eac4: istate->_mdx = 0x00000000 0x5617eac8: istate->_stack = 0x5617eaa8 0x5617eacc: istate->_msg = 0x00000008 0x5617ead0: istate->_result = 0x4e7699f8 0x5617ead4: (istate->_result) = 0x2b6aa140 0x5617ead8: (istate->_result) = 0x00000003 0x5617eadc: istate->_prev_link = 0x00000000 0x5617eae0: istate->_oop_temp = 0x00000000 0x5617eae4: istate->_stack_base = 0x5617eab0 0x5617eae8: istate->_stack_limit = 0x5617ea9c 0x5617eaec: istate->_monitor_base = 0x5617eab0 0x5617eaf0: istate->_self_link = 0x5617eab0 0x5617eaf4: frame_type = INTERPRETER_FRAME 0x5617eaf8: next_frame = 0x5617eb54 0x5617eafc: local[1] = 0x00000000 0x5617eb00: local[0] = 0x38fc7108 0x5617eb04: monitor[0]->_lock = 0x00000003 0x5617eb08: monitor[0]->_obj = 0x00000000 0x5617eb0c: istate->_thread = 0x539f9230 0x5617eb10: istate->_bcp = 0x4e769689 (bci 153) 0x5617eb14: istate->_locals = 0x5617eb6c 0x5617eb18: istate->_constants = 0x4e76a0e8 0x5617eb1c: istate->_method = org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop()Z 0x5617eb20: istate->_mdx = 0x00000000 0x5617eb24: istate->_stack = 0x5617eafc 0x5617eb28: istate->_msg = 0x00000008 0x5617eb2c: istate->_result = 0x4e7697d8 0x5617eb30: (istate->_result) = 0x2b6aa140 0x5617eb34: (istate->_result) = 0x00000003 0x5617eb38: istate->_prev_link = 0x00000000 0x5617eb3c: istate->_oop_temp = 0x00000000 0x5617eb40: istate->_stack_base = 0x5617eb04 0x5617eb44: istate->_stack_limit = 0x5617eaf4 0x5617eb48: istate->_monitor_base = 0x5617eb0c 0x5617eb4c: istate->_self_link = 0x5617eb0c 0x5617eb50: frame_type = INTERPRETER_FRAME 0x5617eb54: next_frame = 0x5617ebc0 0x5617eb58: local[5] = 0x00000000 0x5617eb5c: local[4] = 0x00000000 0x5617eb60: local[3] = 0x38fb3878 0x5617eb64: local[2] = 0x00000001 0x5617eb68: local[1] = 0x00000000 0x5617eb6c: local[0] = 0x38fc7108 0x5617eb70: monitor[0]->_lock = 0x00000003 0x5617eb74: monitor[0]->_obj = 0x00000000 0x5617eb78: istate->_thread = 0x539f9230 0x5617eb7c: istate->_bcp = 0x4e769086 (bci 54) 0x5617eb80: istate->_locals = 0x5617ebe0 0x5617eb84: istate->_constants = 0x4e76a0e8 0x5617eb88: istate->_method = org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run()V 0x5617eb8c: istate->_mdx = 0x00000000 0x5617eb90: istate->_stack = 0x5617eb68 0x5617eb94: istate->_msg = 0x00000008 0x5617eb98: istate->_result = 0x4e769710 0x5617eb9c: (istate->_result) = 0x2b6aa140 0x5617eba0: (istate->_result) = 0x00000003 0x5617eba4: istate->_prev_link = 0x00000000 0x5617eba8: istate->_oop_temp = 0x00000000 0x5617ebac: istate->_stack_base = 0x5617eb70 0x5617ebb0: istate->_stack_limit = 0x5617eb5c 0x5617ebb4: istate->_monitor_base = 0x5617eb78 0x5617ebb8: istate->_self_link = 0x5617eb78 0x5617ebbc: frame_type = INTERPRETER_FRAME 0x5617ebc0: next_frame = 0x5617ec2c 0x5617ebc4: local[7] = 0x00000000 0x5617ebc8: local[6] = 0x00000000 0x5617ebcc: local[5] = 0x00000000 0x5617ebd0: local[4] = 0x00000000 0x5617ebd4: local[3] = 0x00000000 0x5617ebd8: local[2] = 0x00000000 0x5617ebdc: local[1] = 0x00000000 0x5617ebe0: local[0] = 0x38fc7108 0x5617ebe4: istate->_thread = 0x539f9230 0x5617ebe8: istate->_bcp = 0x4d757bc3 (bci 11) 0x5617ebec: istate->_locals = 0x5617ec30 0x5617ebf0: istate->_constants = 0x4d7b51d0 0x5617ebf4: istate->_method = java.lang.Thread.run()V 0x5617ebf8: istate->_mdx = 0x00000000 0x5617ebfc: istate->_stack = 0x5617ebdc 0x5617ec00: istate->_msg = 0x00000008 0x5617ec04: istate->_result = 0x4e769530 0x5617ec08: (istate->_result) = 0x2b6aa140 0x5617ec0c: (istate->_result) = 0x00000005 0x5617ec10: istate->_prev_link = 0x00000000 0x5617ec14: istate->_oop_temp = 0x00000000 0x5617ec18: istate->_stack_base = 0x5617ebe4 0x5617ec1c: istate->_stack_limit = 0x5617ebdc 0x5617ec20: istate->_monitor_base = 0x5617ebe4 0x5617ec24: istate->_self_link = 0x5617ebe4 0x5617ec28: frame_type = INTERPRETER_FRAME 0x5617ec2c: next_frame = 0x5617ec3c 0x5617ec30: local[0] = 0x2dd4d090 0x5617ec34: call_wrapper = 0x5617ecc8 0x5617ec38: frame_type = ENTRY_FRAME 0x5617ec3c: next_frame = 0x00000000 --------------- P R O C E S S --------------- Java Threads: ( => current thread ) 0x53960f18 JavaThread "org.springframework.jms.listener.DefaultMessageListenerContainer#4-1" [_thread_blocked, id=28261, stack(0x56300000,0x56480000)] 0x53983770 JavaThread "org.springframework.jms.listener.DefaultMessageListenerContainer#3-1" [_thread_blocked, id=28253, stack(0x56180000,0x56300000)] =>0x539f9230 JavaThread "org.springframework.jms.listener.DefaultMessageListenerContainer#2-1" [_thread_in_Java, id=28245, stack(0x56000000,0x56180000)] 0x53992388 JavaThread "org.springframework.jms.listener.DefaultMessageListenerContainer#1-1" [_thread_blocked, id=28238, stack(0x55e80000,0x56000000)] 0x5397d7a0 JavaThread "org.springframework.jms.listener.DefaultMessageListenerContainer#0-1" [_thread_blocked, id=28019, stack(0x54f80000,0x55100000)] 0x00c3cfc0 JavaThread "BrokerService" daemon [_thread_blocked, id=28018, stack(0x55d00000,0x55e80000)] 0x00a7f698 JavaThread "VMTransport" daemon [_thread_blocked, id=28017, stack(0x55b80000,0x55d00000)] 0x00c53000 JavaThread "VMTransport" daemon [_thread_in_Java, id=28016, stack(0x55a00000,0x55b80000)] 0x00acca60 JavaThread "RMI TCP Connection(2)-127.0.0.1" daemon [_thread_in_native, id=27789, stack(0x55880000,0x55a00000)] 0x00acb318 JavaThread "RMI RenewClean-[127.0.0.1:39593]" daemon [_thread_blocked, id=27785, stack(0x55700000,0x55880000)] 0x53993248 JavaThread "RMI Scheduler(0)" daemon [_thread_blocked, id=27759, stack(0x55580000,0x55700000)] 0x0096e438 JavaThread "RMI TCP Connection(1)-127.0.0.1" daemon [_thread_in_native, id=27709, stack(0x55400000,0x55580000)] 0x0092d570 JavaThread "RMI Reaper" [_thread_blocked, id=27648, stack(0x55280000,0x55400000)] 0x0092be88 JavaThread "RMI TCP Accept-0" daemon [_thread_in_native, id=27646, stack(0x55100000,0x55280000)] 0x523da6e8 JavaThread "RMI TCP Accept-1099" daemon [_thread_in_native, id=27613, stack(0x54e00000,0x54f80000)] 0x539de190 JavaThread "[Trap Filter]" [_thread_blocked, id=23512, stack(0x54c80000,0x54e00000)] 0x539e1fa8 JavaThread "SNMP TRAP Session Thread [2]" [_thread_in_native, id=23511, stack(0x54b00000,0x54c80000)] 0x539e1468 JavaThread "[Alarm Observer]" [_thread_blocked, id=22904, stack(0x54980000,0x54b00000)] 0x53932338 JavaThread "Thread-14" [_thread_blocked, id=22569, stack(0x54800000,0x54980000)] 0x539362b0 JavaThread "Alarm Profile Executor" [_thread_blocked, id=22323, stack(0x53536000,0x536b6000)] 0x00ade6d0 JavaThread "pool-2-thread-1" [_thread_blocked, id=15599, stack(0x54680000,0x54800000)] 0x5394f010 JavaThread "SNMP Request Holder - Timer" [_thread_blocked, id=13966, stack(0x54500000,0x54680000)] 0x53ed55c0 JavaThread "SNMP Request Holder - Timer" [_thread_blocked, id=10580, stack(0x54380000,0x54500000)] 0x53ed47a8 JavaThread "SNMP Request Holder - Timer" [_thread_blocked, id=7565, stack(0x54200000,0x54380000)] 0x523ac200 JavaThread "SNMP Session Thread [1]" [_thread_in_native, id=4337, stack(0x54080000,0x54200000)] 0x53951320 JavaThread "SNMP Request Holder - Timer" [_thread_blocked, id=4314, stack(0x53f00000,0x54080000)] 0x5391cba0 JavaThread "SNMP Session Thread [0]" [_thread_in_native, id=28211, stack(0x53b80000,0x53d00000)] 0x53900e98 JavaThread "JmsMessageProducer" [_thread_blocked, id=26667, stack(0x53a00000,0x53b80000)] 0x523be368 JavaThread "Thread-5" [_thread_blocked, id=23880, stack(0x536b6000,0x53836000)] 0x523cdd90 JavaThread "Purge Worker" [_thread_blocked, id=22345, stack(0x533b6000,0x53536000)] 0x523d0c08 JavaThread "FileWatchdog" daemon [_thread_blocked, id=21150, stack(0x53236000,0x533b6000)] 0x52377958 JavaThread "SNMP API Thread" [_thread_blocked, id=19667, stack(0x530b6000,0x53236000)] 0x006fe078 JavaThread "GC Daemon" daemon [_thread_blocked, id=22198, stack(0x527b1000,0x52931000)] 0x004e8698 JavaThread "Service Thread" daemon [_thread_blocked, id=19587, stack(0x5203a000,0x521ba000)] 0x004e6af8 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=19586, stack(0x51eba000,0x5203a000)] 0x004a5b18 JavaThread "Finalizer" daemon [_thread_blocked, id=19541, stack(0x51d3a000,0x51eba000)] 0x004a0bf8 JavaThread "Reference Handler" daemon [_thread_blocked, id=19540, stack(0x51bba000,0x51d3a000)] 0x004176e8 JavaThread "main" [_thread_in_Java, id=19523, stack(0x2b40f000,0x2b58e000)] Other Threads: 0x0049b600 VMThread [stack: 0x51b3b000,0x51bba000] [id=19537] 0x004ea388 WatcherThread [stack: 0x521bb000,0x5223a000] [id=19588] VM state:not at safepoint (normal execution) VM Mutex/Monitor currently owned by a thread: None Heap def new generation total 10688K, used 9753K [0x2d730000, 0x2e2c0000, 0x381d0000) eden space 9536K, 92% used [0x2d730000, 0x2dfd8ce0, 0x2e080000) from space 1152K, 76% used [0x2e080000, 0x2e15d7e8, 0x2e1a0000) to space 1152K, 0% used [0x2e1a0000, 0x2e1a0000, 0x2e2c0000) tenured generation total 23468K, used 15376K [0x381d0000, 0x398bb000, 0x4d730000) the space 23468K, 65% used [0x381d0000, 0x390d43c0, 0x390d4400, 0x398bb000) compacting perm gen total 20736K, used 20578K [0x4d730000, 0x4eb70000, 0x51730000) the space 20736K, 99% used [0x4d730000, 0x4eb489a8, 0x4eb48a00, 0x4eb70000) No shared spaces configured. Code Cache [0x2b6aa000, 0x2b6d2000, 0x2d6aa000) total_blobs=119 nmethods=0 adapters=112 free_code_cache=32695Kb largest_free_block=33480256 Dynamic libraries: 00400000-00401000 r-xp 00000000 08:03 880935 /usr/lib/jvm/java-7-openjdk-mips/jre/bin/java 00410000-00411000 r--p 00000000 08:03 880935 /usr/lib/jvm/java-7-openjdk-mips/jre/bin/java 00411000-00412000 rw-p 00001000 08:03 880935 /usr/lib/jvm/java-7-openjdk-mips/jre/bin/java 00412000-00c70000 rwxp 00412000 00:00 0 [heap] 2aaa8000-2aacb000 r-xp 00000000 08:03 277234 /lib/mips-linux-gnu/ld-2.13.so 2aacb000-2aacd000 rw-p 2aacb000 00:00 0 2aacd000-2aace000 r--p 2aacd000 00:00 0 2aace000-2aacf000 rw-p 2aace000 00:00 0 2aacf000-2aad2000 r--s 0000f000 08:03 880870 /usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/pulse-java.jar 2aad2000-2aad3000 r--s 00002000 08:03 880868 /usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/dnsns.jar 2aad3000-2aad4000 r--s 00005000 08:03 100578 /usr/share/tomcat6/bin/bootstrap.jar 2aad4000-2aad6000 rw-p 2aad4000 00:00 0 2aad6000-2aad9000 r--s 00085000 08:03 880867 /usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/localedata.jar 2aad9000-2aadb000 r--s 00012000 08:03 880872 /usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/zipfs.jar 2aadb000-2aadc000 r--p 00023000 08:03 277234 /lib/mips-linux-gnu/ld-2.13.so 2aadc000-2aadd000 rw-p 00024000 08:03 277234 /lib/mips-linux-gnu/ld-2.13.so 2aadd000-2aaf5000 r-xp 00000000 08:03 277220 /lib/mips-linux-gnu/libpthread-2.13.so 2aaf5000-2ab04000 ---p 00018000 08:03 277220 /lib/mips-linux-gnu/libpthread-2.13.so 2ab04000-2ab05000 r--p 00017000 08:03 277220 /lib/mips-linux-gnu/libpthread-2.13.so 2ab05000-2ab06000 rw-p 00018000 08:03 277220 /lib/mips-linux-gnu/libpthread-2.13.so 2ab06000-2ab08000 rw-p 2ab06000 00:00 0 2ab08000-2ab17000 r-xp 00000000 08:03 880948 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/jli/libjli.so 2ab17000-2ab26000 ---p 0000f000 08:03 880948 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/jli/libjli.so 2ab26000-2ab27000 r--p 0000e000 08:03 880948 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/jli/libjli.so 2ab27000-2ab28000 rw-p 0000f000 08:03 880948 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/jli/libjli.so 2ab28000-2ab3d000 r-xp 00000000 08:03 848910 /usr/lib/libz.so.1.2.3.4 2ab3d000-2ab4c000 ---p 00015000 08:03 848910 /usr/lib/libz.so.1.2.3.4 2ab4c000-2ab4d000 rw-p 00014000 08:03 848910 /usr/lib/libz.so.1.2.3.4 2ab4d000-2ab50000 r-xp 00000000 08:03 277233 /lib/mips-linux-gnu/libdl-2.13.so 2ab50000-2ab5f000 ---p 00003000 08:03 277233 /lib/mips-linux-gnu/libdl-2.13.so 2ab5f000-2ab60000 r--p 00002000 08:03 277233 /lib/mips-linux-gnu/libdl-2.13.so 2ab60000-2ab61000 rw-p 00003000 08:03 277233 /lib/mips-linux-gnu/libdl-2.13.so 2ab61000-2acca000 r-xp 00000000 08:03 277235 /lib/mips-linux-gnu/libc-2.13.so 2acca000-2acda000 ---p 00169000 08:03 277235 /lib/mips-linux-gnu/libc-2.13.so 2acda000-2ace3000 r--p 00169000 08:03 277235 /lib/mips-linux-gnu/libc-2.13.so 2ace3000-2ace5000 rw-p 00172000 08:03 277235 /lib/mips-linux-gnu/libc-2.13.so 2ace5000-2ace8000 rw-p 2ace5000 00:00 0 2ace8000-2b1f4000 r-xp 00000000 08:03 880957 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/server/libjvm.so 2b1f4000-2b203000 ---p 0050c000 08:03 880957 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/server/libjvm.so 2b203000-2b211000 r--p 0050b000 08:03 880957 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/server/libjvm.so 2b211000-2b228000 rw-p 00519000 08:03 880957 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/server/libjvm.so 2b228000-2b237000 rw-p 2b228000 00:00 0 2b237000-2b31d000 r-xp 00000000 08:03 880325 /usr/lib/mips-linux-gnu/libstdc++.so.6.0.17 2b31d000-2b32c000 ---p 000e6000 08:03 880325 /usr/lib/mips-linux-gnu/libstdc++.so.6.0.17 2b32c000-2b334000 r--p 000e5000 08:03 880325 /usr/lib/mips-linux-gnu/libstdc++.so.6.0.17 2b334000-2b337000 rw-p 000ed000 08:03 880325 /usr/lib/mips-linux-gnu/libstdc++.so.6.0.17 2b337000-2b33d000 rw-p 2b337000 00:00 0 2b33d000-2b3c1000 r-xp 00000000 08:03 277237 /lib/mips-linux-gnu/libm-2.13.so 2b3c1000-2b3d0000 ---p 00084000 08:03 277237 /lib/mips-linux-gnu/libm-2.13.so 2b3d0000-2b3d1000 r--p 00083000 08:03 277237 /lib/mips-linux-gnu/libm-2.13.so 2b3d1000-2b3d2000 rw-p 00084000 08:03 277237 /lib/mips-linux-gnu/libm-2.13.so 2b3d2000-2b3fd000 r-xp 00000000 08:03 277258 /lib/mips-linux-gnu/libgcc_s.so.1 2b3fd000-2b40d000 ---p 0002b000 08:03 277258 /lib/mips-linux-gnu/libgcc_s.so.1 2b40d000-2b40e000 rw-p 0002b000 08:03 277258 /lib/mips-linux-gnu/libgcc_s.so.1 2b40e000-2b412000 ---p 2b40e000 00:00 0 2b412000-2b58e000 rwxp 2b412000 00:00 0 2b58e000-2b596000 r-xp 00000000 08:03 277216 /lib/mips-linux-gnu/librt-2.13.so 2b596000-2b5a5000 ---p 00008000 08:03 277216 /lib/mips-linux-gnu/librt-2.13.so 2b5a5000-2b5a6000 r--p 00007000 08:03 277216 /lib/mips-linux-gnu/librt-2.13.so 2b5a6000-2b5a7000 rw-p 00008000 08:03 277216 /lib/mips-linux-gnu/librt-2.13.so 2b5a7000-2b5b4000 r-xp 00000000 08:03 880964 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libverify.so 2b5b4000-2b5c4000 ---p 0000d000 08:03 880964 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libverify.so 2b5c4000-2b5c5000 r--p 0000d000 08:03 880964 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libverify.so 2b5c5000-2b5c6000 rw-p 0000e000 08:03 880964 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libverify.so 2b5c6000-2b5f4000 r-xp 00000000 08:03 880973 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libjava.so 2b5f4000-2b603000 ---p 0002e000 08:03 880973 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libjava.so 2b603000-2b604000 r--p 0002d000 08:03 880973 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libjava.so 2b604000-2b605000 rw-p 0002e000 08:03 880973 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libjava.so 2b605000-2b608000 r--s 0003c000 08:03 880869 /usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/sunpkcs11.jar 2b608000-2b60b000 r--s 00032000 08:03 880871 /usr/lib/jvm/java-7-openjdk-common/jre/lib/ext/sunjce_provider.jar 2b60b000-2b60c000 r--s 00007000 08:03 52201 /usr/share/java/tomcat-juli-6.0.35.jar 2b60c000-2b615000 r-xp 00000000 08:03 277226 /lib/mips-linux-gnu/libnss_compat-2.13.so 2b615000-2b624000 ---p 00009000 08:03 277226 /lib/mips-linux-gnu/libnss_compat-2.13.so 2b624000-2b625000 r--p 00008000 08:03 277226 /lib/mips-linux-gnu/libnss_compat-2.13.so 2b625000-2b626000 rw-p 00009000 08:03 277226 /lib/mips-linux-gnu/libnss_compat-2.13.so 2b626000-2b63c000 r-xp 00000000 08:03 277225 /lib/mips-linux-gnu/libnsl-2.13.so 2b63c000-2b64b000 ---p 00016000 08:03 277225 /lib/mips-linux-gnu/libnsl-2.13.so 2b64b000-2b64c000 r--p 00015000 08:03 277225 /lib/mips-linux-gnu/libnsl-2.13.so 2b64c000-2b64d000 rw-p 00016000 08:03 277225 /lib/mips-linux-gnu/libnsl-2.13.so 2b64d000-2b64f000 rw-p 2b64d000 00:00 0 2b64f000-2b65a000 r-xp 00000000 08:03 277217 /lib/mips-linux-gnu/libnss_nis-2.13.so 2b65a000-2b669000 ---p 0000b000 08:03 277217 /lib/mips-linux-gnu/libnss_nis-2.13.so 2b669000-2b66a000 r--p 0000a000 08:03 277217 /lib/mips-linux-gnu/libnss_nis-2.13.so 2b66a000-2b66b000 rw-p 0000b000 08:03 277217 /lib/mips-linux-gnu/libnss_nis-2.13.so 2b66b000-2b678000 r-xp 00000000 08:03 277213 /lib/mips-linux-gnu/libnss_files-2.13.so 2b678000-2b687000 ---p 0000d000 08:03 277213 /lib/mips-linux-gnu/libnss_files-2.13.so 2b687000-2b688000 r--p 0000c000 08:03 277213 /lib/mips-linux-gnu/libnss_files-2.13.so 2b688000-2b689000 rw-p 0000d000 08:03 277213 /lib/mips-linux-gnu/libnss_files-2.13.so 2b689000-2b691000 rw-s 00000000 08:03 457832 /tmp/hsperfdata_root/19519 2b691000-2b699000 r-xp 00000000 08:03 880960 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libzip.so 2b699000-2b6a8000 ---p 00008000 08:03 880960 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libzip.so 2b6a8000-2b6a9000 r--p 00007000 08:03 880960 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libzip.so 2b6a9000-2b6aa000 rw-p 00008000 08:03 880960 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libzip.so 2b6aa000-2b6d2000 rwxp 2b6aa000 00:00 0 2b6d2000-2d6aa000 rw-p 2b6d2000 00:00 0 2d6aa000-2d6ab000 rw-p 2d6aa000 00:00 0 2d6ab000-2d72a000 rw-p 2d6ab000 00:00 0 2d72a000-2d72b000 r--s 00003000 08:03 52207 /usr/share/java/annotations-api-6.0.35.jar 2d72b000-2d72e000 r--s 0001e000 08:03 52205 /usr/share/java/catalina-ha-6.0.35.jar 2d72e000-2d730000 r--s 00011000 08:03 52108 /usr/share/java/jsp-api-2.1.jar 2d730000-2e2c0000 rw-p 2d730000 00:00 0 2e2c0000-381d0000 rw-p 2e2c0000 00:00 0 381d0000-398bb000 rw-p 381d0000 00:00 0 398bb000-4d730000 rw-p 398bb000 00:00 0 4d730000-4eb70000 rw-p 4d730000 00:00 0 4eb70000-51730000 rw-p 4eb70000 00:00 0 51730000-51736000 rw-p 51730000 00:00 0 51736000-51785000 rw-p 51736000 00:00 0 51785000-51791000 rw-p 51785000 00:00 0 51791000-51830000 rw-p 51791000 00:00 0 51830000-5183b000 rw-p 51830000 00:00 0 5183b000-51850000 rw-p 5183b000 00:00 0 51850000-5185d000 rw-p 51850000 00:00 0 5185d000-518fc000 rw-p 5185d000 00:00 0 518fc000-51907000 rw-p 518fc000 00:00 0 51907000-5191d000 rw-p 51907000 00:00 0 5191d000-51acd000 r--s 03e9e000 08:03 880991 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/rt.jar 51acd000-51b3a000 rw-p 51acd000 00:00 0 51b3a000-51b3b000 ---p 51b3a000 00:00 0 51b3b000-51bba000 rwxp 51b3b000 00:00 0 51bba000-51bbd000 ---p 51bba000 00:00 0 51bbd000-51d3a000 rwxp 51bbd000 00:00 0 51d3a000-51d3d000 ---p 51d3a000 00:00 0 51d3d000-51eba000 rwxp 51d3d000 00:00 0 51eba000-51ebd000 ---p 51eba000 00:00 0 51ebd000-5203a000 rwxp 51ebd000 00:00 0 5203a000-5203d000 ---p 5203a000 00:00 0 5203d000-521ba000 rwxp 5203d000 00:00 0 521ba000-521bb000 ---p 521ba000 00:00 0 521bb000-5223a000 rwxp 521bb000 00:00 0 5223a000-5224b000 r-xp 00000000 08:03 880967 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libnio.so 5224b000-5225a000 ---p 00011000 08:03 880967 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libnio.so 5225a000-5225b000 r--p 00010000 08:03 880967 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libnio.so 5225b000-5225c000 rw-p 00011000 08:03 880967 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libnio.so 5225c000-52273000 r-xp 00000000 08:03 880950 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libnet.so 52273000-52282000 ---p 00017000 08:03 880950 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libnet.so 52282000-52283000 r--p 00016000 08:03 880950 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libnet.so 52283000-52284000 rw-p 00017000 08:03 880950 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libnet.so 52284000-52288000 r--s 00036000 08:03 52204 /usr/share/java/catalina-tribes-6.0.35.jar 52288000-5228b000 r--s 00019000 08:03 52202 /usr/share/java/jasper-el-6.0.35.jar 5228b000-522dd000 r-xp 00000000 08:03 880417 /usr/lib/mips-linux-gnu/libgobject-2.0.so.0.3200.4 522dd000-522ec000 ---p 00052000 08:03 880417 /usr/lib/mips-linux-gnu/libgobject-2.0.so.0.3200.4 522ec000-522ed000 r--p 00051000 08:03 880417 /usr/lib/mips-linux-gnu/libgobject-2.0.so.0.3200.4 522ed000-522ee000 rw-p 00052000 08:03 880417 /usr/lib/mips-linux-gnu/libgobject-2.0.so.0.3200.4 522ee000-522ef000 r-xp 00000000 08:03 880415 /usr/lib/mips-linux-gnu/libgthread-2.0.so.0.3200.4 522ef000-522fe000 ---p 00001000 08:03 880415 /usr/lib/mips-linux-gnu/libgthread-2.0.so.0.3200.4 522fe000-522ff000 r--p 00000000 08:03 880415 /usr/lib/mips-linux-gnu/libgthread-2.0.so.0.3200.4 522ff000-52300000 rw-p 00001000 08:03 880415 /usr/lib/mips-linux-gnu/libgthread-2.0.so.0.3200.4 52300000-52400000 rw-p 52300000 00:00 0 52400000-5255a000 r-xp 00000000 08:03 880416 /usr/lib/mips-linux-gnu/libgio-2.0.so.0.3200.4 5255a000-52569000 ---p 0015a000 08:03 880416 /usr/lib/mips-linux-gnu/libgio-2.0.so.0.3200.4 52569000-5256b000 r--p 00159000 08:03 880416 /usr/lib/mips-linux-gnu/libgio-2.0.so.0.3200.4 5256b000-5256e000 rw-p 0015b000 08:03 880416 /usr/lib/mips-linux-gnu/libgio-2.0.so.0.3200.4 5256e000-5256f000 rw-p 5256e000 00:00 0 5256f000-5266f000 r-xp 00000000 08:03 277264 /lib/mips-linux-gnu/libglib-2.0.so.0.3200.4 5266f000-5267e000 ---p 00100000 08:03 277264 /lib/mips-linux-gnu/libglib-2.0.so.0.3200.4 5267e000-5267f000 r--p 000ff000 08:03 277264 /lib/mips-linux-gnu/libglib-2.0.so.0.3200.4 5267f000-52681000 rw-p 00100000 08:03 277264 /lib/mips-linux-gnu/libglib-2.0.so.0.3200.4 52681000-52684000 r-xp 00000000 08:03 880428 /usr/lib/mips-linux-gnu/libgmodule-2.0.so.0.3200.4 52684000-52693000 ---p 00003000 08:03 880428 /usr/lib/mips-linux-gnu/libgmodule-2.0.so.0.3200.4 52693000-52694000 r--p 00002000 08:03 880428 /usr/lib/mips-linux-gnu/libgmodule-2.0.so.0.3200.4 52694000-52695000 rw-p 00003000 08:03 880428 /usr/lib/mips-linux-gnu/libgmodule-2.0.so.0.3200.4 52695000-526b3000 r-xp 00000000 08:03 277121 /lib/libselinux.so.1 526b3000-526c2000 ---p 0001e000 08:03 277121 /lib/libselinux.so.1 526c2000-526c3000 r--p 0001d000 08:03 277121 /lib/libselinux.so.1 526c3000-526c4000 rw-p 0001e000 08:03 277121 /lib/libselinux.so.1 526c4000-526d7000 r-xp 00000000 08:03 277218 /lib/mips-linux-gnu/libresolv-2.13.so 526d7000-526e7000 ---p 00013000 08:03 277218 /lib/mips-linux-gnu/libresolv-2.13.so 526e7000-526e8000 r--p 00013000 08:03 277218 /lib/mips-linux-gnu/libresolv-2.13.so 526e8000-526e9000 rw-p 00014000 08:03 277218 /lib/mips-linux-gnu/libresolv-2.13.so 526e9000-526eb000 rw-p 526e9000 00:00 0 526eb000-526f2000 r-xp 00000000 08:03 851652 /usr/lib/libffi.so.5.0.8 526f2000-52702000 ---p 00007000 08:03 851652 /usr/lib/libffi.so.5.0.8 52702000-52703000 rw-p 00007000 08:03 851652 /usr/lib/libffi.so.5.0.8 52703000-52740000 r-xp 00000000 08:03 277267 /lib/mips-linux-gnu/libpcre.so.3.13.1 52740000-5274f000 ---p 0003d000 08:03 277267 /lib/mips-linux-gnu/libpcre.so.3.13.1 5274f000-52750000 rw-p 0003c000 08:03 277267 /lib/mips-linux-gnu/libpcre.so.3.13.1 52750000-52757000 r-xp 00000000 08:03 880938 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libmanagement.so 52757000-52766000 ---p 00007000 08:03 880938 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libmanagement.so 52766000-52767000 r--p 00006000 08:03 880938 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libmanagement.so 52767000-52768000 rw-p 00007000 08:03 880938 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libmanagement.so 52768000-52778000 r--s 0011d000 08:03 52200 /usr/share/java/catalina-6.0.35.jar 52778000-52782000 r--s 000b2000 08:03 52211 /usr/share/java/tomcat-coyote-6.0.35.jar 52782000-52789000 r--s 0007f000 08:03 52203 /usr/share/java/jasper-6.0.35.jar 52789000-5278b000 r--s 0000c000 08:03 52210 /usr/share/java/tomcat-i18n-ja-6.0.35.jar 5278b000-5278e000 r--s 0000f000 08:03 52199 /usr/share/java/tomcat-i18n-es-6.0.35.jar 5278e000-52790000 r--s 00015000 08:03 52194 /usr/share/java/commons-pool-1.5.4.jar 52790000-52792000 r--s 0000b000 08:03 52198 /usr/share/java/tomcat-i18n-fr-6.0.35.jar 52792000-5279f000 r--s 0012d000 08:03 52065 /usr/share/java/eclipse-ecj.jar 5279f000-527a1000 r--s 00014000 08:03 52132 /usr/share/java/servlet-api-2.5.jar 527a1000-527a4000 r--s 00024000 08:03 52128 /usr/share/java/commons-dbcp-1.4.jar 527a4000-527a6000 r--s 0000c000 08:03 52208 /usr/share/java/catalina-ant-6.0.35.jar 527a6000-527a8000 r--s 00007000 08:03 52145 /usr/share/java/el-api-2.1.jar 527a8000-527b1000 r--s 00263000 08:03 880891 /usr/lib/jvm/java-7-openjdk-common/jre/lib/resources.jar 527b1000-527b4000 ---p 527b1000 00:00 0 527b4000-52931000 rwxp 527b4000 00:00 0 52931000-52935000 r--s 000a0000 08:03 880894 /usr/lib/jvm/java-7-openjdk-common/jre/lib/jsse.jar 52935000-52938000 r--s 00014000 08:03 880874 /usr/lib/jvm/java-7-openjdk-common/jre/lib/jce.jar 52938000-5294a000 r-xp 00000000 08:03 880951 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libj2pkcs11.so 5294a000-52959000 ---p 00012000 08:03 880951 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libj2pkcs11.so 52959000-5295a000 r--p 00011000 08:03 880951 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libj2pkcs11.so 5295a000-5295b000 rw-p 00012000 08:03 880951 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/libj2pkcs11.so 5295b000-5295c000 r--s 00008000 08:03 98333 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/AdventNetLogging.jar 5295c000-5295e000 r--s 0000b000 08:03 98335 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/SessionLogger.jar 5295e000-52960000 r--s 00000000 08:03 98338 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/aopalliance-1.0.jar 52960000-52961000 r--s 0000a000 08:03 98340 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/asm-3.2.jar 52961000-52962000 r--s 00006000 08:03 98342 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/asm.jar 52962000-52a7f000 r-xp 00000000 08:03 880445 /usr/lib/mips-linux-gnu/libnss3.so 52a7f000-52a8e000 ---p 0011d000 08:03 880445 /usr/lib/mips-linux-gnu/libnss3.so 52a8e000-52a90000 r--p 0011c000 08:03 880445 /usr/lib/mips-linux-gnu/libnss3.so 52a90000-52a93000 rw-p 0011e000 08:03 880445 /usr/lib/mips-linux-gnu/libnss3.so 52a93000-52a94000 rw-p 52a93000 00:00 0 52a94000-52aae000 r-xp 00000000 08:03 880441 /usr/lib/mips-linux-gnu/libnssutil3.so 52aae000-52abe000 ---p 0001a000 08:03 880441 /usr/lib/mips-linux-gnu/libnssutil3.so 52abe000-52ac1000 r--p 0001a000 08:03 880441 /usr/lib/mips-linux-gnu/libnssutil3.so 52ac1000-52ac2000 rw-p 0001d000 08:03 880441 /usr/lib/mips-linux-gnu/libnssutil3.so 52ac2000-52ac6000 r-xp 00000000 08:03 880353 /usr/lib/mips-linux-gnu/libplc4.so 52ac6000-52ad5000 ---p 00004000 08:03 880353 /usr/lib/mips-linux-gnu/libplc4.so 52ad5000-52ad6000 r--p 00003000 08:03 880353 /usr/lib/mips-linux-gnu/libplc4.so 52ad6000-52ad7000 rw-p 00004000 08:03 880353 /usr/lib/mips-linux-gnu/libplc4.so 52ad7000-52ada000 r-xp 00000000 08:03 880355 /usr/lib/mips-linux-gnu/libplds4.so 52ada000-52ae9000 ---p 00003000 08:03 880355 /usr/lib/mips-linux-gnu/libplds4.so 52ae9000-52aea000 r--p 00002000 08:03 880355 /usr/lib/mips-linux-gnu/libplds4.so 52aea000-52aeb000 rw-p 00003000 08:03 880355 /usr/lib/mips-linux-gnu/libplds4.so 52aeb000-52b23000 r-xp 00000000 08:03 880354 /usr/lib/mips-linux-gnu/libnspr4.so 52b23000-52b32000 ---p 00038000 08:03 880354 /usr/lib/mips-linux-gnu/libnspr4.so 52b32000-52b33000 r--p 00037000 08:03 880354 /usr/lib/mips-linux-gnu/libnspr4.so 52b33000-52b34000 rw-p 00038000 08:03 880354 /usr/lib/mips-linux-gnu/libnspr4.so 52b34000-52b36000 rw-p 52b34000 00:00 0 52b36000-52b75000 r-xp 00000000 08:03 880365 /usr/lib/mips-linux-gnu/nss/libsoftokn3.so 52b75000-52b84000 ---p 0003f000 08:03 880365 /usr/lib/mips-linux-gnu/nss/libsoftokn3.so 52b84000-52b85000 r--p 0003e000 08:03 880365 /usr/lib/mips-linux-gnu/nss/libsoftokn3.so 52b85000-52b86000 rw-p 0003f000 08:03 880365 /usr/lib/mips-linux-gnu/nss/libsoftokn3.so 52b86000-52c3a000 r-xp 00000000 08:03 880567 /usr/lib/mips-linux-gnu/libsqlite3.so.0.8.6 52c3a000-52c4a000 ---p 000b4000 08:03 880567 /usr/lib/mips-linux-gnu/libsqlite3.so.0.8.6 52c4a000-52c4b000 r--p 000b4000 08:03 880567 /usr/lib/mips-linux-gnu/libsqlite3.so.0.8.6 52c4b000-52c4d000 rw-p 000b5000 08:03 880567 /usr/lib/mips-linux-gnu/libsqlite3.so.0.8.6 52c4d000-52cb0000 r-xp 00000000 08:03 880370 /usr/lib/mips-linux-gnu/nss/libfreebl3.so 52cb0000-52cbf000 ---p 00063000 08:03 880370 /usr/lib/mips-linux-gnu/nss/libfreebl3.so 52cbf000-52cc0000 r--p 00062000 08:03 880370 /usr/lib/mips-linux-gnu/nss/libfreebl3.so 52cc0000-52cc1000 rw-p 00063000 08:03 880370 /usr/lib/mips-linux-gnu/nss/libfreebl3.so 52cc1000-52cc5000 rw-p 52cc1000 00:00 0 52cc5000-52cd4000 r--s 001a1000 08:03 98334 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/AdventNetSnmp.jar 52cd4000-52cfb000 r--s 0020f000 08:03 98336 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/activemq-core-5.2.0.jar 52cfb000-52d01000 r--s 00067000 08:03 98337 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/antlr-2.7.6.jar 52d01000-52d07000 r--s 0004f000 08:03 98339 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/apache-log4j-extras-1.1.jar 52d07000-52d09000 r--s 00003000 08:03 98341 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/asm-attrs.jar 52d09000-52d0e000 r--s 0002e000 08:03 98343 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/aspectjrt-1.6.0.jar 52d0e000-52d79000 r--s 008e3000 08:03 98344 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/aspectjtools-1.6.0.jar 52d79000-52d96000 r--s 001f2000 08:03 98345 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/aspectjweaver-1.6.0 (1).jar 52d96000-52db3000 r--s 001f2000 08:03 98346 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/aspectjweaver-1.6.0.jar 52db3000-52db5000 r--s 00002000 08:03 98347 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/atlassian-xml-cleaner-0.1.jar 52db5000-52dbc000 r--s 00036000 08:03 98348 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/backport-util-concurrent.jar 52dbc000-52dc7000 r--s 0008a000 08:03 98349 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/c3p0-0.9.1.1.jar 52dc7000-52dcb000 r--s 00026000 08:03 98350 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/cas-client-core-3.2.1.jar 52dcb000-52dcc000 r--s 00003000 08:03 98351 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/cfgatewayadapter.jar 52dcc000-52dd3000 r--s 0003e000 08:03 98352 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/cglib-2.2.jar 52dd3000-52dd9000 r--s 00049000 08:03 98353 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/cglib-nodep-2.2.jar 52dd9000-52ddb000 r--s 0000a000 08:03 98354 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-codec-1.3.jar 52ddb000-52de1000 r--s 00025000 08:03 98355 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-collections-2.1.1.jar 52de1000-52dee000 r--s 0007c000 08:03 98356 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-collections-3.1.jar 52dee000-52df1000 r--s 00022000 08:03 98357 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-dbcp-1.3.jar 52df1000-52df6000 r--s 00040000 08:03 98358 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-httpclient-3.0.1.jar 52df6000-52df9000 r--s 00027000 08:03 98359 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-lang-2.0.jar 52df9000-52dfb000 r--s 0000d000 08:03 98360 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-logging-1.1.1.jar 52dfb000-52dfc000 r--s 0000c000 08:03 98361 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-logging-1.1.jar 52dfc000-52dfe000 r--s 00008000 08:03 98362 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-logging.jar 52dfe000-52e01000 r--s 00015000 08:03 98364 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/commons-pool-1.5.4.jar 52e01000-52e29000 r--s 0025a000 08:03 98365 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/derby.jar 52e29000-52e2f000 r--s 0007c000 08:03 98366 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/derbyclient.jar 52e2f000-52e30000 r--s 00001000 08:03 98367 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/derbyrun.jar 52e30000-52e33000 r--s 00027000 08:03 98368 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/derbytools.jar 52e33000-52e38000 r--s 00048000 08:03 98369 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/dom4j-1.6.1.jar 52e38000-52e3e000 r--s 0004e000 08:03 98370 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/dom4j-2.0.0-ALPHA-2.jar 52e3e000-52e3f000 r--s 00000000 08:03 98371 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/ds.jar 52e3f000-52e44000 r--s 0004f000 08:03 98372 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/ehcache-1.2.2.jar 52e44000-52e46000 r--s 00016000 08:03 98373 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/flex-messaging-common.jar 52e46000-52e51000 r--s 0009d000 08:03 98374 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/flex-messaging-core.jar 52e51000-52e53000 r--s 00004000 08:03 98375 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/flex-messaging-opt.jar 52e53000-52e56000 r--s 0000e000 08:03 98376 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/flex-messaging-proxy.jar 52e56000-52e58000 r--s 00003000 08:03 98377 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/flex-messaging-remoting.jar 52e58000-52e5a000 r--s 0000c000 08:03 98378 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/flex-rds-server.jar 52e5a000-52e5c000 r--s 00002000 08:03 98379 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/geronimo-j2ee-management_1.0_spec-1.0.jar 52e5c000-52e5e000 r--s 00003000 08:03 98380 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/geronimo-j2ee-management_1.1_spec-1.0.1.jar 52e5e000-52e60000 r--s 00006000 08:03 98381 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/geronimo-jms_1.1_spec-1.1.1.jar 52e60000-52e81000 r--s 001fe000 08:03 98382 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/hibernate3.jar 52e81000-52e8a000 r--s 000a7000 08:03 98383 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/hsqldb.jar 52e8a000-52e8f000 r--s 0003b000 08:03 98384 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jackson-asl-0.9.4.jar 52e8f000-52e97000 r--s 0008a000 08:03 98385 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/javassist-3.9.0.GA.jar 52e97000-52e99000 r--s 00005000 08:03 98386 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/javax.jms-1.1.jar 52e99000-52e9f000 r--s 00056000 08:03 102344 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jaxme2-0.5.2.jar 52e9f000-52ea1000 r--s 00011000 08:03 102345 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jaxme2-rt-0.5.2.jar 52ea1000-52ea3000 r--s 00007000 08:03 102346 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jaxmeapi-0.5.2.jar 52ea3000-52eab000 r--s 0005a000 08:03 102347 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jaxmejs-0.5.2.jar 52eab000-52eac000 r--s 0000c000 08:03 102348 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jaxmepm-0.5.2.jar 52eac000-52eb7000 r--s 0006a000 08:03 102349 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jaxmexs-0.5.2.jar 52eb7000-52eb8000 r--s 00002000 08:03 102350 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jta-1.1.jar 52eb8000-52eba000 r--s 00003000 08:03 102351 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/jta_1.0.1.jar 52eba000-52ebd000 r--s 0001b000 08:03 102352 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/junit-3.8.1.jar 52ebd000-52ec4000 r--s 00035000 08:03 102353 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/junit-4.9b1.jar 52ec4000-52ecb000 r--s 00051000 08:03 102354 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/log4j-1.2.13.jar 52ecb000-52ed2000 r--s 00059000 08:03 102355 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/log4j-1.2.15.jar 52ed2000-52ed9000 r--s 000b7000 08:03 102358 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/mysql-connector-java-5.1.14-bin.jar 52ed9000-52ee2000 r--s 00046000 08:03 102359 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.aop-3.0.5.RELEASE.jar 52ee2000-52ee3000 r--s 0000c000 08:03 102360 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.asm-3.0.5.RELEASE.jar 52ee3000-52ee5000 r--s 00007000 08:03 102361 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.aspects-3.0.5.RELEASE.jar 52ee5000-52ef1000 r--s 0007c000 08:03 102362 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.beans-3.0.5.RELEASE.jar 52ef1000-52f03000 r--s 00092000 08:03 102363 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.context-3.0.5.RELEASE.jar 52f03000-52f06000 r--s 00016000 08:03 102364 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.context.support-3.0.5.RELEASE.jar 52f06000-52f0f000 r--s 00055000 08:03 102365 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.core-3.0.5.RELEASE.jar 52f0f000-52f13000 r--s 00026000 08:03 102366 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.expression-3.0.5.RELEASE.jar 52f13000-52f17000 r--s 0001c000 08:03 102367 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.flex-1.0.3.RELEASE.jar 52f17000-52f18000 r--s 00000000 08:03 102368 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.instrument-3.0.5.RELEASE.jar 52f18000-52f19000 r--s 00001000 08:03 102369 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.instrument.tomcat-3.0.5.RELEASE.jar 52f19000-52f23000 r--s 00055000 08:03 102370 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.jdbc-3.0.5.RELEASE.jar 52f23000-52f28000 r--s 00029000 08:03 102371 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.jms-3.0.5.RELEASE.jar 52f28000-52f30000 r--s 0004a000 08:03 102372 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.orm-3.0.5.RELEASE.jar 52f30000-52f32000 r--s 0000d000 08:03 102373 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.oxm-3.0.5.RELEASE.jar 52f32000-52f38000 r--s 0002d000 08:03 102375 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.test-3.0.5.RELEASE.jar 52f38000-52f3f000 r--s 00032000 08:03 102376 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.transaction-3.0.5.RELEASE.jar 52f3f000-52f49000 r--s 00057000 08:03 102377 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.web-3.0.5.RELEASE.jar 52f49000-52f4d000 r--s 00027000 08:03 102378 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.web.portlet-3.0.5.RELEASE.jar 52f4d000-52f56000 r--s 0005e000 08:03 102379 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.web.servlet-3.0.5.RELEASE.jar 52f56000-52f58000 r--s 00006000 08:03 102380 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/org.springframework.web.struts-3.0.5.RELEASE.jar 52f58000-52f78000 r--s 0019d000 08:03 102381 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/poi-3.8-20120326.jar 52f78000-52f7e000 r--s 00044000 08:03 102382 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/poi-examples-3.8-20120326.jar 52f7e000-52f80000 r--s 00006000 08:03 102383 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/poi-excelant-3.8-20120326.jar 52f80000-52f8c000 r--s 000d8000 08:03 102384 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/poi-ooxml-3.8-20120326.jar 52f8c000-5301e000 r--s 003ec000 08:03 102385 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/poi-ooxml-schemas-3.8-20120326.jar 5301e000-5302e000 r--s 00112000 08:03 102386 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/poi-scratchpad-3.8-20120326.jar 53030000-53032000 r--s 00005000 08:03 102388 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/slf4j-api-1.6.1.jar 53032000-53033000 r--s 00002000 08:03 102389 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/slf4j-log4j12-1.6.1.jar 53033000-53039000 r--s 00038000 08:03 102390 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/spring-aop-1.2.jar 53039000-5303c000 r--s 0002f000 08:03 102391 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/spring-security-config-3.1.0.RELEASE.jar 5303c000-53048000 r--s 0004a000 08:03 102392 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/spring-security-core-3.1.0.RELEASE.jar 53048000-53050000 r--s 00037000 08:03 102393 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/spring-security-web-3.1.0.RELEASE.jar 53050000-53052000 r--s 00005000 08:03 102394 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/stax-api-1.0.1.jar 53052000-53054000 r--s 00008000 08:03 102395 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/tracemanager.jar 53054000-53079000 r--s 002dc000 08:03 102396 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/xalan.jar 53079000-530b6000 r--s 0024f000 08:03 102397 /usr/share/tomcat6/webapps/WII-EMW-Server/WEB-INF/lib/xmlbeans-2.3.0.jar 530b6000-530b9000 ---p 530b6000 00:00 0 530b9000-53236000 rwxp 530b9000 00:00 0 53236000-53239000 ---p 53236000 00:00 0 53239000-533b6000 rwxp 53239000 00:00 0 533b6000-533b9000 ---p 533b6000 00:00 0 533b9000-53536000 rwxp 533b9000 00:00 0 53536000-53539000 ---p 53536000 00:00 0 53539000-536b6000 rwxp 53539000 00:00 0 536b6000-536b9000 ---p 536b6000 00:00 0 536b9000-53836000 rwxp 536b9000 00:00 0 53836000-53837000 r-xp 00000000 08:03 880963 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/librmi.so 53837000-53846000 ---p 00001000 08:03 880963 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/librmi.so 53846000-53847000 r--p 00000000 08:03 880963 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/librmi.so 53847000-53848000 rw-p 00001000 08:03 880963 /usr/lib/jvm/java-7-openjdk-mips/jre/lib/mips/librmi.so 53900000-539fa000 rw-p 53900000 00:00 0 539fa000-53a00000 ---p 539fa000 00:00 0 53a00000-53a03000 ---p 53a00000 00:00 0 53a03000-53b80000 rwxp 53a03000 00:00 0 53b80000-53b83000 ---p 53b80000 00:00 0 53b83000-53d00000 rwxp 53b83000 00:00 0 53d00000-53dfd000 rw-p 53d00000 00:00 0 53dfd000-53e00000 ---p 53dfd000 00:00 0 53e00000-53eff000 rw-p 53e00000 00:00 0 53eff000-53f00000 ---p 53eff000 00:00 0 53f00000-53f03000 ---p 53f00000 00:00 0 53f03000-54080000 rwxp 53f03000 00:00 0 54080000-54083000 ---p 54080000 00:00 0 54083000-54200000 rwxp 54083000 00:00 0 54200000-54203000 ---p 54200000 00:00 0 54203000-54380000 rwxp 54203000 00:00 0 54380000-54383000 ---p 54380000 00:00 0 54383000-54500000 rwxp 54383000 00:00 0 54500000-54503000 ---p 54500000 00:00 0 54503000-54680000 rwxp 54503000 00:00 0 54680000-54683000 ---p 54680000 00:00 0 54683000-54800000 rwxp 54683000 00:00 0 54800000-54803000 ---p 54800000 00:00 0 54803000-54980000 rwxp 54803000 00:00 0 54980000-54983000 ---p 54980000 00:00 0 54983000-54b00000 rwxp 54983000 00:00 0 54b00000-54b03000 ---p 54b00000 00:00 0 54b03000-54c80000 rwxp 54b03000 00:00 0 54c80000-54c83000 ---p 54c80000 00:00 0 54c83000-54e00000 rwxp 54c83000 00:00 0 54e00000-54e03000 ---p 54e00000 00:00 0 54e03000-54f80000 rwxp 54e03000 00:00 0 54f80000-54f83000 ---p 54f80000 00:00 0 54f83000-55100000 rwxp 54f83000 00:00 0 55100000-55103000 ---p 55100000 00:00 0 55103000-55280000 rwxp 55103000 00:00 0 55280000-55283000 ---p 55280000 00:00 0 55283000-55400000 rwxp 55283000 00:00 0 55400000-55403000 ---p 55400000 00:00 0 55403000-55580000 rwxp 55403000 00:00 0 55580000-55583000 ---p 55580000 00:00 0 55583000-55700000 rwxp 55583000 00:00 0 55700000-55703000 ---p 55700000 00:00 0 55703000-55880000 rwxp 55703000 00:00 0 55880000-55883000 ---p 55880000 00:00 0 55883000-55a00000 rwxp 55883000 00:00 0 55a00000-55a03000 ---p 55a00000 00:00 0 55a03000-55b80000 rwxp 55a03000 00:00 0 55b80000-55b83000 ---p 55b80000 00:00 0 55b83000-55d00000 rwxp 55b83000 00:00 0 55d00000-55d03000 ---p 55d00000 00:00 0 55d03000-55e80000 rwxp 55d03000 00:00 0 55e80000-55e83000 ---p 55e80000 00:00 0 55e83000-56000000 rwxp 55e83000 00:00 0 56000000-56003000 ---p 56000000 00:00 0 56003000-56180000 rwxp 56003000 00:00 0 56180000-56183000 ---p 56180000 00:00 0 56183000-56300000 rwxp 56183000 00:00 0 56300000-56303000 ---p 56300000 00:00 0 56303000-56480000 rwxp 56303000 00:00 0 7f997000-7f9ac000 rwxp fffffeb000 00:00 0 [stack] VM Arguments: jvm_args: -Djava.util.logging.config.file=/usr/share/tomcat6/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/share/tomcat6/endorsed -Dcatalina.base=/usr/share/tomcat6 -Dcatalina.home=/usr/share/tomcat6 -Djava.io.tmpdir=/usr/share/tomcat6/temp java_command: org.apache.catalina.startup.Bootstrap start Launcher Type: SUN_STANDARD Environment Variables: JAVA_HOME=/usr PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin LD_LIBRARY_PATH=/usr/local/lib/:/wanc/running/lib SHELL=/bin/bash Signal Handlers: SIGSEGV: [libjvm.so+0x4ab290], sa_mask[0]=0x7fbffeff, sa_flags=0x10000008 SIGBUS: [libjvm.so+0x4ab290], sa_mask[0]=0x7fbffeff, sa_flags=0x10000008 SIGFPE: [libjvm.so+0x3b153c], sa_mask[0]=0x7fbffeff, sa_flags=0x10000008 SIGPIPE: SIG_IGN, sa_mask[0]=0x00000000, sa_flags=0x00000000 SIGXFSZ: [libjvm.so+0x3b153c], sa_mask[0]=0x7fbffeff, sa_flags=0x10000008 SIGILL: [libjvm.so+0x3b153c], sa_mask[0]=0x7fbffeff, sa_flags=0x10000008 SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000 SIGUSR2: [libjvm.so+0x3b0e70], sa_mask[0]=0x00000000, sa_flags=0x10000008 SIGHUP: [libjvm.so+0x3b66d4], sa_mask[0]=0x7fbffeff, sa_flags=0x10000008 SIGINT: SIG_IGN, sa_mask[0]=0x00000000, sa_flags=0x00000000 SIGTERM: [libjvm.so+0x3b66d4], sa_mask[0]=0x7fbffeff, sa_flags=0x10000008 SIGQUIT: [libjvm.so+0x3b66d4], sa_mask[0]=0x7fbffeff, sa_flags=0x10000008 --------------- S Y S T E M --------------- OS:6.0.6 uname:Linux 2.6.27.7-Cavium-Octeon #40 SMP Mon Jan 28 19:53:34 IST 2013 mips64 libc:glibc 2.13 NPTL 2.13 rlimit: STACK 8192k, CORE 0k, NPROC 16288, NOFILE 1024, AS infinity load average:2.29 2.34 1.76 /proc/meminfo: MemTotal: 4105760 kB MemFree: 2776864 kB Buffers: 12336 kB Cached: 540256 kB SwapCached: 0 kB Active: 742308 kB Inactive: 487704 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 92 kB Writeback: 0 kB AnonPages: 677748 kB Mapped: 189760 kB Slab: 58732 kB SReclaimable: 25644 kB SUnreclaim: 33088 kB PageTables: 3824 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 2052880 kB Committed_AS: 2444216 kB VmallocTotal: 1073741824 kB VmallocUsed: 504 kB VmallocChunk: 1073740648 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB CPU:total 12 /proc/cpuinfo: system type : CUST_KONTRON_T5516 (CN5650p2.1-600-NSP) processor : 0 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 1 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 2 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 3 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 4 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 5 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 6 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 7 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 8 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 9 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 10 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available processor : 11 cpu model : Cavium Octeon V0.9 BogoMIPS : 1201.01 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : yes hardware watchpoint : yes, count: 2, address/irw mask: [0x0ffc, 0x0ffb] ASEs implemented : shadow register sets : 1 core : 0 VCED exceptions : not available VCEI exceptions : not available Memory: 4k page, physical 4105760k(2777060k free), swap 0k(0k free) vm_info: OpenJDK Zero VM (22.0-b10) for linux-mips JRE (1.7.0_03-b21), built on Oct 18 2012 03:16:41 by "buildd" with gcc 4.4.7 time: Mon Mar 4 12:46:19 2013 elapsed time: 976 seconds -- View this message in context: http://openjdk.5641.n7.nabble.com/OpenJdk1-7-crashes-in-Debian-6-0-tp122062.html Sent from the OpenJDK Distribution-specific Packaging mailing list archive at Nabble.com. From aph at redhat.com Sat Mar 16 03:20:20 2013 From: aph at redhat.com (Andrew Haley) Date: Sat, 16 Mar 2013 10:20:20 +0000 Subject: OpenJdk1.7 crashes in Debian 6.0 In-Reply-To: <1363081121310-122062.post@n7.nabble.com> References: <1363081121310-122062.post@n7.nabble.com> Message-ID: <51444764.3010708@redhat.com> Hi, On 03/12/2013 09:38 AM, jaicserao wrote: > I have a small web application developed using spring framework and deployed > in tomcat6.0 in debian (6.0 )enviornment. > > Java used: > > JRE version: 7.0_03-b21 > # Java VM: OpenJDK Zero VM (22.0-b10 interpreted mode linux-mips ) > # Derivative: IcedTea7 2.1.3 > # Distribution: Debian GNU/Linux unstable (sid), package 7u3-2.1.3-1 > > Architecture: > MIPS > > The below is the output of hs_err_pid19519.log ...Can anyone help to find > out what has happened? > and what fatal error:caught unhandled signal 1o mean?How to dubug further? Can you replicate this bug? Andrew. From ptisnovs at icedtea.classpath.org Mon Mar 18 02:48:35 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 18 Mar 2013 09:48:35 +0000 Subject: /hg/gfx-test: Added four new helper methods into ImageFactory cl... Message-ID: changeset 0cc7ef24c42e in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=0cc7ef24c42e author: Pavel Tisnovsky date: Mon Mar 18 10:51:36 2013 +0100 Added four new helper methods into ImageFactory class. diffstat: ChangeLog | 5 + src/org/gfxtest/framework/ImageFactory.java | 173 ++++++++++++++++++++++++++++ 2 files changed, 178 insertions(+), 0 deletions(-) diffs (207 lines): diff -r 9cc875576c6f -r 0cc7ef24c42e ChangeLog --- a/ChangeLog Fri Mar 15 10:19:53 2013 +0100 +++ b/ChangeLog Mon Mar 18 10:51:36 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-18 Pavel Tisnovsky + + * src/org/gfxtest/framework/ImageFactory.java: + Added four new helper methods into ImageFactory class. + 2013-03-15 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltBasicTests.java: diff -r 9cc875576c6f -r 0cc7ef24c42e src/org/gfxtest/framework/ImageFactory.java --- a/src/org/gfxtest/framework/ImageFactory.java Fri Mar 15 10:19:53 2013 +0100 +++ b/src/org/gfxtest/framework/ImageFactory.java Mon Mar 18 10:51:36 2013 +0100 @@ -1256,6 +1256,7 @@ if (rgb < 0) rgb = 0; if (rgb > 255) rgb = 255; int invrgb = 255 - rgb; + // alpha red (green) blue int color = (0xff << 24) | (rgb << 16) | invrgb; // for all columns on a line for (int x = 0; x < width; x++) @@ -1301,6 +1302,7 @@ if (rgb < 0) rgb = 0; if (rgb > 255) rgb = 255; int invrgb = 255 - rgb; + // alpha red (green) blue int color = (0xff << 24) | (rgb << 16) | invrgb; image.setRGB(x, y, color); } @@ -1309,4 +1311,175 @@ // return buffered image containing computed color pattern return image; } + + /** + * Create image containing red to green gradient. + * + * @param width + * width of a buffered image + * @param height + * height of a buffered image + * @param imageType + * buffered image type + * @return buffered image containing checker pattern + */ + public static BufferedImage createHorizontalRedToGreenGradientImage(int width, int height, int imageType) + { + // check for proper image dimensions + if (width <= 0 || height <= 0) + { + return null; + } + + // create new image + BufferedImage image = new BufferedImage(width, height, imageType); + + // for all lines in a raster image + for (int y = 0; y < height; y++) + { + // compute color for each pixel + int rgb = (int) Math.round(y * 256.0 / height); + if (rgb < 0) rgb = 0; + if (rgb > 255) rgb = 255; + int invrgb = 255 - rgb; + // alpha red green blue + int color = (0xff << 24) | (rgb << 16) | (invrgb << 8); + // for all columns on a line + for (int x = 0; x < width; x++) + { + image.setRGB(x, y, color); + } + } + + // return buffered image containing computed color pattern + return image; + } + + /** + * Create image containing red to green gradient. + * + * @param width + * width of a buffered image + * @param height + * height of a buffered image + * @param imageType + * buffered image type + * @return buffered image containing checker pattern + */ + public static BufferedImage createVerticalRedToGreenGradientImage(int width, int height, int imageType) + { + // check for proper image dimensions + if (width <= 0 || height <= 0) + { + return null; + } + + // create new image + BufferedImage image = new BufferedImage(width, height, imageType); + + // for all lines in a raster image + for (int y = 0; y < height; y++) + { + // for all columns on a line + for (int x = 0; x < width; x++) + { + // compute color for each pixel + int rgb = (int) Math.round(x * 256.0 / width); + if (rgb < 0) rgb = 0; + if (rgb > 255) rgb = 255; + int invrgb = 255 - rgb; + // alpha red green blue + int color = (0xff << 24) | (rgb << 16) | (invrgb << 8); + image.setRGB(x, y, color); + } + } + + // return buffered image containing computed color pattern + return image; + } + + /** + * Create image containing red to white gradient. + * + * @param width + * width of a buffered image + * @param height + * height of a buffered image + * @param imageType + * buffered image type + * @return buffered image containing checker pattern + */ + public static BufferedImage createHorizontalRedToWhiteGradientImage(int width, int height, int imageType) + { + // check for proper image dimensions + if (width <= 0 || height <= 0) + { + return null; + } + + // create new image + BufferedImage image = new BufferedImage(width, height, imageType); + + // for all lines in a raster image + for (int y = 0; y < height; y++) + { + // compute color for each pixel + int rgb = (int) Math.round(y * 256.0 / height); + if (rgb < 0) rgb = 0; + if (rgb > 255) rgb = 255; + // alpha red green blue + int color = (0xff << 24) | (0xff << 16) | (rgb << 8) | rgb; + // for all columns on a line + for (int x = 0; x < width; x++) + { + image.setRGB(x, y, color); + } + } + + // return buffered image containing computed color pattern + return image; + } + + /** + * Create image containing red to white gradient. + * + * @param width + * width of a buffered image + * @param height + * height of a buffered image + * @param imageType + * buffered image type + * @return buffered image containing checker pattern + */ + public static BufferedImage createVerticalRedToWhiteGradientImage(int width, int height, int imageType) + { + // check for proper image dimensions + if (width <= 0 || height <= 0) + { + return null; + } + + // create new image + BufferedImage image = new BufferedImage(width, height, imageType); + + // for all lines in a raster image + for (int y = 0; y < height; y++) + { + // for all columns on a line + for (int x = 0; x < width; x++) + { + // compute color for each pixel + int rgb = (int) Math.round(x * 256.0 / width); + if (rgb < 0) rgb = 0; + if (rgb > 255) rgb = 255; + // alpha red green blue + int color = (0xff << 24) | (0xff << 16) | (rgb << 8) | rgb; + image.setRGB(x, y, color); + } + } + + // return buffered image containing computed color pattern + return image; + } + } From ptisnovs at icedtea.classpath.org Mon Mar 18 03:04:13 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 18 Mar 2013 10:04:13 +0000 Subject: /hg/rhino-tests: New tests added into ScriptExceptionClassTest t... Message-ID: changeset 6832982188e2 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=6832982188e2 author: Pavel Tisnovsky date: Mon Mar 18 11:07:23 2013 +0100 New tests added into ScriptExceptionClassTest test suite. diffstat: ChangeLog | 5 + src/org/RhinoTests/ScriptExceptionClassTest.java | 81 ++++++++++++++++++++++++ 2 files changed, 86 insertions(+), 0 deletions(-) diffs (103 lines): diff -r 7ea64ea424ed -r 6832982188e2 ChangeLog --- a/ChangeLog Fri Mar 15 09:58:16 2013 +0100 +++ b/ChangeLog Mon Mar 18 11:07:23 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-18 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptExceptionClassTest.java: + New tests added into ScriptExceptionClassTest test suite. + 2013-03-15 Pavel Tisnovsky * src/org/RhinoTests/CompiledScriptClassTest.java: diff -r 7ea64ea424ed -r 6832982188e2 src/org/RhinoTests/ScriptExceptionClassTest.java --- a/src/org/RhinoTests/ScriptExceptionClassTest.java Fri Mar 15 09:58:16 2013 +0100 +++ b/src/org/RhinoTests/ScriptExceptionClassTest.java Mon Mar 18 11:07:23 2013 +0100 @@ -824,6 +824,87 @@ } /** + * Test for method javax.script.ScriptException.getClass().getAnnotation() + */ + protected void testGetAnnotation() { + Annotation annotation; + annotation = this.scriptExceptionClass.getAnnotation(java.lang.annotation.Annotation.class); + assertNull(annotation, "annotation java.lang.annotation.Annotation should not be returned"); + annotation = this.scriptExceptionClass.getAnnotation(java.lang.annotation.Documented.class); + assertNull(annotation, "annotation java.lang.annotation.Documented should not be returned"); + annotation = this.scriptExceptionClass.getAnnotation(java.lang.annotation.Inherited.class); + assertNull(annotation, "annotation java.lang.annotation.Inherited should not be returned"); + annotation = this.scriptExceptionClass.getAnnotation(java.lang.annotation.Retention.class); + assertNull(annotation, "annotation java.lang.annotation.Retention should not be returned"); + annotation = this.scriptExceptionClass.getAnnotation(java.lang.annotation.Target.class); + assertNull(annotation, "annotation java.lang.annotation.Target should not be returned"); + annotation = this.scriptExceptionClass.getAnnotation(java.lang.Deprecated.class); + assertNull(annotation, "annotation java.lang.Deprecated should not be returned"); + annotation = this.scriptExceptionClass.getAnnotation(java.lang.Override.class); + assertNull(annotation, "annotation java.lang.Override should not be returned"); + annotation = this.scriptExceptionClass.getAnnotation(java.lang.SuppressWarnings.class); + assertNull(annotation, "annotation java.lang.SuppressWarnings should not be returned"); + } + + /** + * Test for method javax.script.ScriptException.getClass().getComponentType() + */ + protected void testGetComponentType() { + Class cls = this.scriptExceptionClass.getComponentType(); + assertNull(cls, "getComponentType() should returns null"); + } + + /** + * Test for method javax.script.ScriptException.getClass().getClasses() + */ + protected void testGetClasses() { + Class[] cls = this.scriptExceptionClass.getClasses(); + assertNotNull(cls, "getClasses() returns null"); + assertEquals(cls.length, 0, "getClasses() returns wrong value!"); + } + + /** + * Test for method javax.script.ScriptException.getClass().getDeclaredClasses() + */ + protected void testGetDeclaredClasses() { + Class[] cls = this.scriptExceptionClass.getDeclaredClasses(); + assertNotNull(cls, "getDeclaredClasses() returns null"); + assertEquals(cls.length, 0, "getDeclaredClasses() returns wrong value!"); + } + + /** + * Test for method javax.script.ScriptException.getClass().getDeclaringClass() + */ + protected void testGetDeclaringClass() { + Class cls = this.scriptExceptionClass.getDeclaringClass(); + assertNull(cls, "getDeclaringClass() does not return null"); + } + + /** + * Test for method javax.script.ScriptException.getClass().getEnclosingClass() + */ + protected void testGetEnclosingClass() { + Class cls = this.scriptExceptionClass.getEnclosingClass(); + assertNull(cls, "getEnclosingClass() does not return null"); + } + + /** + * Test for method javax.script.ScriptException.getClass().getEnclosingConstructor() + */ + protected void testGetEnclosingConstructor() { + Constructor cons = this.scriptExceptionClass.getEnclosingConstructor(); + assertNull(cons, "getEnclosingConstructor() does not return null"); + } + + /** + * Test for method javax.script.ScriptException.getClass().getEnclosingMethod() + */ + protected void testGetEnclosingMethod() { + Method m = this.scriptExceptionClass.getEnclosingMethod(); + assertNull(m, "getEnclosingMethod() does not return null"); + } + + /** * Test for instanceof operator applied to a class javax.script.ScriptException */ @SuppressWarnings("cast") From jfabriko at redhat.com Mon Mar 18 08:11:25 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Mon, 18 Mar 2013 16:11:25 +0100 Subject: [rfc][icedtea-web] KnownToFailInBrowsers annotation patch In-Reply-To: <5140AD15.8090606@redhat.com> References: <5140A5B0.6080008@redhat.com> <5140AD15.8090606@redhat.com> Message-ID: <51472E9D.2040305@redhat.com> Hi Jiri and Adam, as Jiri suggested I have modified the annotation (this time no new annotation KnownToFailInBrowsers, only a new optional parameter Browsers[] failsIn() added to the old KnownToFail annotation). I have modified the JunitLikeXmlOutputListener and LessVerboseTextListener also, they identify the combinations of testcase+browser that are declared to fail and write known-to-fail="true" into the xml file, which is then processed by the same xslt as usual. I have run one reproducer (modification of JToJSEval) in opera, midori and epiphany with a combination of failing/passing testcases. The results in terminal were (screenshot1): -For the testcase that really failed in midori and epiphany but was annotated with @KnownToFail(failsIn={}) : Passed: JToJSEvalTest.AppletJToJSEval_AnnotatedAsFailsInAll_1plus1_Test - opera - WARNING This test is known to fail, but have passed! FAILED: AppletJToJSEval_AnnotatedAsFailsInAll_1plus1_Test - midori(JToJSEvalTest) JToJSEval: the J and JS outputs are not equal! - This test is known to fail FAILED: AppletJToJSEval_AnnotatedAsFailsInAll_1plus1_Test - epiphany(JToJSEvalTest) JToJSEval: the J and JS outputs are not equal! - This test is known to fail -For the testcase that really failed in midori and epiphany but was annotated with @KnownToFail : Passed: JToJSEvalTest.AppletJToJSEval_AnnotatedAsDefaultFailsInAll_1plus1_Test - opera - WARNING This test is known to fail, but have passed! FAILED: AppletJToJSEval_AnnotatedAsDefaultFailsInAll_1plus1_Test - midori(JToJSEvalTest) JToJSEval: the J and JS outputs are not equal! - This test is known to fail FAILED: AppletJToJSEval_AnnotatedAsDefaultFailsInAll_1plus1_Test - epiphany(JToJSEvalTest) JToJSEval: the J and JS outputs are not equal! - This test is known to fail -For the testcase that really failed in midori and epiphany and was annotated with @KnownToFail(failsIn={Browsers.midori, Browsers.epiphany}) Passed: JToJSEvalTest.AppletJToJSEval_FailsInSomeBrowsers_1plus1_Test - opera FAILED: AppletJToJSEval_FailsInSomeBrowsers_1plus1_Test - midori(JToJSEvalTest) JToJSEval: the J and JS outputs are not equal! - This test is known to fail FAILED: AppletJToJSEval_FailsInSomeBrowsers_1plus1_Test - epiphany(JToJSEvalTest) JToJSEval: the J and JS outputs are not equal! - This test is known to fail -For the testcase that really failed in opera (only because opera crashed, it does not normally fail) and was not annotated: FAILED: AppletJToJSEval_typeof_Test - opera(JToJSEvalTest) JToJSEvalTest stdout should contain JToJSEval applet initialized. but it didnt. Passed: JToJSEvalTest.AppletJToJSEval_typeof_Test - midori Passed: JToJSEvalTest.AppletJToJSEval_typeof_Test - epiphany -For the testcase that passes in all browsers and was not annotated: Passed: JToJSEvalTest.AppletJToJSEval_location_Test - opera Passed: JToJSEvalTest.AppletJToJSEval_location_Test - midori Passed: JToJSEvalTest.AppletJToJSEval_location_Test - epiphany -Total summary: Total tests run: 15; From those : 8 known to fail Test known to fail: passed: 2; failed: 6; ignored: 0 Test results: passed: 8; failed: 7; ignored: 0 The results in html are attached as index_reproducers.html and screenshot2). Please see the attached patch, cheers, Jana On 03/13/2013 05:45 PM, Jiri Vanek wrote: > On 03/13/2013 05:13 PM, Jana Fabrikova wrote: >> Hello, >> >> I am sending for your consideration a patch that introduces the >> @KnownToFailInBrowsers annotation, which may be useful in some of the >> reproducers (namely passing arrays from JS->J does work in opera and >> firefox and does not work in google-chrome, chromium, midori and >> epiphany, and i think it is more problem of the browsers than of >> icedtea-web plugin). >> >> The annotation is detected in >> junit-runner/JunitLikeXmlOutputListener.java and >> junit-runner/LessVerboseTextListener.java and reflected in the console >> and xml output of run-netx-dist-tests. >> >> Cheers, >> Jana >> >> 2013-03-13 Jana Fabrikova >> >> * >> /tests/test-extensions/net/sourceforge/jnlp/annotations/KnownToFailInBrowsers.java >> >> the implementation of new annotation, which has an array of >> browsers of type Browsers[] named failsIn >> >> * /tests/junit-runner/JunitLikeXmlOutputListener.java >> in method (testDone) the testcases that are known to fail in >> current browser are detected in addition to the tests that are >> k2f in all browsers >> >> * /tests/junit-runner/LessVerboseTextListener.java >> added method (getK2FinB) reading the annotion, >> in method (printK2F) the testcases that are known to fail in >> current browser are detected in addition to the tests that are >> k2f in all browsers > > hmhm... I'm not sure If new type of annotation is needed. I would prefer > extension of KnownTofail as it is. > Now it have no parameter. In your new implementation it will have > optional Browsers[] failsIn(). If it will be null/empty, then it will > behave as we are used now. Otherwise it will be more sophisticated > What do you think? > > For the implementation itself - uless I missed something, I'm terribly > missing the browser recognition handling in xml/plaintext generation > and in xslt sheet. > Also some example usage of annotaion would be nice and as a top candy > the screenshots of outputs can be attached. > > > J. -------------- next part -------------- A non-text attachment was scrubbed... Name: annotk2f-version2.patch Type: text/x-patch Size: 7039 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130318/05c7e3b1/annotk2f-version2.patch -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130318/05c7e3b1/index_reproducers.html -------------- next part -------------- A non-text attachment was scrubbed... Name: screenshot1.png Type: image/png Size: 183774 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130318/05c7e3b1/screenshot1.png -------------- next part -------------- A non-text attachment was scrubbed... Name: screenshot2.png Type: image/png Size: 147489 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130318/05c7e3b1/screenshot2.png From jfabriko at redhat.com Mon Mar 18 10:18:05 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Mon, 18 Mar 2013 18:18:05 +0100 Subject: [rfc][icedtea-web] LiveConnect tests which crash Opera Message-ID: <51474C4D.4020102@redhat.com> Hello, we have discussed with Jiri the testing of Java<->JavaScript communication via make run-netx-dist-tests and it appears that the LiveConnect tests crash the Opera browsers in such a way that it is not reasonable to run them every time. I have added several lines of code to the testcase files of all the pushed reproducers using LiveConnect (JSToJGet, JSToJSet, JSToJFuncParam and JSToJTypeConv) which let the tests in Opera pass without running the browser test, whenever the attribute doNotRunInOpera is set to "true" inside the testcase class, please see the attached patch, best regards, Jana -------------- next part -------------- A non-text attachment was scrubbed... Name: doNotRunJavascriptTestsInOpera.patch Type: text/x-patch Size: 5746 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130318/78463f8b/doNotRunJavascriptTestsInOpera.patch From jvanek at redhat.com Mon Mar 18 10:24:35 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Mon, 18 Mar 2013 18:24:35 +0100 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <512A360E.4060007@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> Message-ID: <51474DD3.7080003@redhat.com> On 02/24/2013 04:47 PM, Jiri Vanek wrote: > On 02/24/2013 04:32 PM, Jiri Vanek wrote: >> On 02/22/2013 07:01 PM, Adam Domurad wrote: >>> On 02/22/2013 08:40 AM, Jiri Vanek wrote: >>>> Replacing harcoded jre path - part 3, intermezzo. >>>> >>>> This code should allow to parse properties from plugin side. As I can not find jvm by launching >>>> jvm O:) - as Saad did. >>>> >>>> Please be kind to me, I'm removing dust from my C coding just slowly ;) >>>> >>>> Later the empty getPluginExecutbale and getPluginRtJar from "[rfc][icedtea-web] replacing of >>>> hardcoded jre path by function" should call the findCustomJre and provide its value(if found) >>>> instead of default one (but still provide default as fallback) >>>> >>>> I will probably also substitute Saad's code (which is launching jvm to get property. It is >>>> significant performance drop) with this new getDeployProperty method later. >>>> >>>> J. >>>> >>>> ps: this is part of make-jredir-configurable after install effort >>> >>> I take it from our IRC discussion that you mixed up the fact that 0 is the only false value / >>> everything else is true ? >>> I'll comment mostly on best practice for now :-) >>> >>> First of all, function naming convention on our C++ side is 'this_is_a_function'. Class methods >>> remain camelCase. It not bad once you are use to it :-) >>> Functions named eg 'getDefaultSomething()' are as well not as common, particularly in top level >>> functions. More common is just 'default_something()' >>> >>> However I am quite happy that you are dusting off your C :-) >>> >>>> #include >>>> #include >>>> #include >>>> #include >>>> #include >>>> #include >>> >>> Actually I've never seen this wordexp header. I don't think we should use GNUisms if we don't >>> need to. removed and repalced by better one >>> >>>> #include >>> >>> In C++, you should use #include , #include , #include -- pretty much >>> no '.h' for the standard libra ugh. I'm afraid I need more hints what to replace with what and what will be impact to the code:( ry. >>> >>>> >>>> //public api >>>> char* getUserPropertiesFile(); >>>> int findSystemConfigFile(char* dest); >>>> int findCustomJre(char* dest); >>>> int getDeployProperty(char* property, char* dest); >>>> //end of public api >>>> >>>> static void popChar(char *c, int x){ >>>> int i; >>>> for ( i = x; i <= strlen(c); i++){//moving also \0 >>> >>> 'strlen' is a relatively expensive operation and should not be used in a loop condition. >>> This is more of a 'delete' than a pop. >>> >>> I strongly recommend using std::string, which defines this, eg: done, but teh benefit is lesser then expected :(( >>> >>> std::string str = ; >>> int x = ; >>> str.erase( x, 1 ); >>> >>>> if (i > x){ >>>> c[i-1] = c[i]; >>>> } >>>> } >>>> } >>>> >>>> static void removeSpaces(char *c){ >>> >>> >>>> int i; >>>> for ( i = 0; i < strlen(c); i++){ >>>> if ( c[i] == ' ') { >>>> popChar(c,i); >>>> i--; >>>> } >>>> } >>>> } >>>> >>>> static void removeStartSpaces(char *c){ >>>> int i; >>>> for ( i = 0; i < strlen(c); i++){ >>>> if ( c[i] == ' ' || c[i] == '\n' ) { >>>> popChar(c,i); >>>> i--; >>>> } else return; >>>> } >>>> } >>>> >>>> static void removeTailSpaces(char *c){ >>>> int i; >>>> for ( i = strlen(c)-1 ; i >- 0; i--){ >>>> if ( c[i] == ' ' || c[i] == '\n' ) { >>>> popChar(c,i); >>>> } else return; >>>> } >>>> } >>>> >>>> static void trim(char *c){ >>>> removeTailSpaces(c); >>>> removeStartSpaces(c); >>>> } >>>> >>>> static void clean(char *c){ >>> >>> Whats funny is that in this function, it will set c[0] to '\0' and then strlen will return 0 and >>> it will exit. >>> Anyway, for std::string you have your choice of string.clear(), or string = ""; >>> >>>> int i; >>>> for ( i = 0; i < strlen(c); i++){ >>>> c[i] = '\0'; >>>> } >>>> } >>>> >>>> >>>> static int equalsPos(char *c){ >>>> int i; >>>> for ( i = 0; i < strlen(c); i++){ >>>> if ( c[i] == '=') { >>>> return i; >>>> } >>>> } >>>> return -1; >>>> } >>>> >>>> static char* getPropertyValue(char* c, char* dest){ >>>> int i = equalsPos(c); >>>> if (i == -1) c; >>> >>> ^ This line does nothing :-)) >>> >>>> int l = strlen(c); >>>> strncpy(dest, c+i+1, l-i); >>>> trim(dest); >>>> return dest; >>>> } >>>> >>>> >>>> static int startsWith(char *c1, char* c2){ >>> >>> Even in plain C you can do strncmp(c1, c2, strlen(c2) ) to achieve this. >>> >>> With std::string I still like to use strncmp as follows: >>> std::string str = ; >>> strncmp( str.c_str(), str2.c_str(), str2.size() ); >>> >>>> int i; >>>> int l1 = strlen(c1); >>>> int l2 = strlen(c2); >>>> int min = l1; >>>> if (l1 > l2) min = l2; >>>> for ( i = 0; i < min; i++){ >>>> if ( c1[i] != c2[i]) { >>>> return 1; //fasle >>> >>> :-)) Use bool, true & false. >>> >>>> } >>>> } >>>> return 0;//true >>>> } >>>> >>>> >>>> char* getUserPropertiesFile(){ >>>> struct passwd *pw = getpwuid(getuid()); >>>> wordexp_t exp_result; >>>> wordexp("~/.icedtea/deployment.properties", &exp_result, 0); >>>> return exp_result.we_wordv[0]; >>> >>> I would like to avoid using these GNU specific functions if possible. >>> This has the potential to leak memory as wordfree is never called. >>> We can instead use the standard function getenv("HOME") like so: nope, home can not be defined. It is not an rule. i have used standard function reading from psswd. >>> >>> std::string user_properties_file = std::string(getenv("HOME")) + /.icedtea/deployment.properties"; >>> Note for '+' to work properly on C++ strings, one side of the expression must be an std::string. >>> (Similar to Java -- except unfortunately string constants are not std::string's in C++) >>> >>> You can also check if the returned environment variable is empty as follows: >>> >>> std::string homedir = getenv("HOME"); >>> if (homedir.empty()) { >>> ... fallback code ... (concatenate HOMEDRIVE and HOMEPATH environment variables if you want to >>> pretend we support Windows :-) >>> } >>> std::string user_properties_file = homedir + "/.icedtea/deployment.properties" >>> >>>> } >>>> >>>> >>>> static char* getMainPropertiesFile(){ >>>> return "/etc/.java/deployment/deployment.properties"; >>> >>> const char* should always be used for strings that should not be modified. This is in fact not >>> valid C++ as-is. as SString have come to this place, I hope it is better now :( >>> >>>> } >>>> >>>> static char * getDefaultJavaPropertiesFile(){ >>>> return ICEDTEA_WEB_JRE "/lib/deployment.properties"; >>>> } >>>> >>>> >>>> //this is reimplemntation as icedtea-web settings do this (Also name of function is the same): >>>> //try the main file in /etc/.java/deployment >>>> //if found, then return this file >>>> //try to find setUp jre >>>> // if found, then try if this file exists and end >>>> //if no jre custom jvm is set, then tryes default jre >>>> // if its deploy file exists, then return >>>> //not dound otherwise >>>> int findSystemConfigFile(char* dest){ >>>> if(access(getMainPropertiesFile(), F_OK ) != -1 ) { >>>> strcpy(dest, getMainPropertiesFile()); >>>> return 0;//file found >>>> } else { >>>> char jDest[512]; >>> >>> Bad Jiri! This is 2013, don't use fixed size arrays! :-) >>> std::string will make your life easier. have not, but is done :) >>> >>>> int customJre = findCustomJre(jDest); >>>> if (customJre == 0){ >>>> strncat(jDest,"/lib/deployment.properties",50); >>> >>> It is good that you're using strncat, but you're just guessing a size. >>> std::string will make your life easier. >>> >>>> if(access(jDest, F_OK ) != -1 ) { >>>> strcpy(dest, jDest); >>>> return 0; //file found >>>> } >>>> } else { >>>> if(access(getDefaultJavaPropertiesFile(), F_OK ) != -1 ) { >>> >>> 'access' is (unfortunately) not a standard function. More idiomatic is to try and open the file >>> for reading and see if we get NULL back, or in the case of an fstream, if the fstream is empty. hmm.. I let it in, I like the function. .What is th ereason for not using it? >>> >>>> strcpy(dest, getDefaultJavaPropertiesFile()); >>>> return 0; //file found >>>> } >>>> } >>>> } >>>> return 1; //nothing of above found >>>> } >>>> >>>> //returns true if found, false otherwise >>>> static int findProperty(char* fileName, char* property, char* dest){ >>>> char nwprpty[strlen(property) + 2]; >>> >>> This is C99 only! This is not valid in C89 or C++. You may only specify constants for static >>> arrays (use std::string, etc, etc). >>> >>>> strcpy(nwprpty, property); >>>> strcat(nwprpty, "="); >>>> FILE *file = fopen ( fileName, "r" ); >>>> if ( file != NULL ){ >>>> char line [ 512 ]; /* or other suitable maximum line size */ >>>> while ( fgets ( line, sizeof line, file ) != NULL ){ /* read a line */ >>>> char copy[512]; >>>> strcpy(copy, line); >>>> //java tolerates sapces arround = char, remove them for matching >>>> removeSpaces(copy); >>> >>> IMO we should match the property name, skip to the character just past this property, loop until >>> we hit the = sign, loop until we hit a non-space character. >>> >>>> //printf(line); >>>> //printf(copy); >>>> if (startsWith(copy,nwprpty) == 0) { >>>> fclose (file); >>>> //provide non-sapced value, triming is done in getPropertyValue >>>> getPropertyValue(line,dest); >>>> return 0;//found! >>>> } >>>> } >>>> >>>> }else{ >>>> perror (fileName); /* why didn't the file open? */ >>>> } >>>> return 1;//not found:( >>>> } >>> >>> Something like: >>> >>> static bool find_property(const char* filename, const char* property, std::string& dest) { >>> std::fstream file(filename, std::fstream::in); >>> >>> if (!file) { >>> ... >>> } >>> >>> std::string line; >>> while (!file.eof()) { >>> std::getline(file, line); >>> ... >>> } >>> >>> return false; // Not found >>> } >>> >>> , would be more idiomatic. >>> >>> Note that const char* is frequently passed as a parameter in C++ because it can be both an >>> std::string (via c_str()) or a string literal. >>> Note that fstream needs no close call at all, it is cleaned up once it goes out of scope -- this >>> is IMHO one of the strongest features of C++ (its resource management is handled exactly like its >>> memory management). >>> Is it still valid? >>>> >>>> >>>> //this is reimplmentation of itw-settings operations >>>> //first check in user's settings, if found, return >>>> //then check in global file (see the magic of findSystemConfigFile) >>>> int getDeployProperty(char* property, char* dest){ >>>> //is it in user's file? >>>> int a = findProperty(getUserPropertiesFile(), property, dest); >>>> if (a == 0) return 0; >>>> //is it in global file? >>>> char file[512]; >>>> int b = findSystemConfigFile(file); >>>> if (b == 0) { >>>> return findProperty(file, property, dest); >>>> } >>>> return 1; >>>> } >>>> >>>> //This is different from common get property, as it is avoiding to search in *java* >>>> //properties files >>>> int findCustomJre(char* dest){ >>>> char* key = "deployment.jre.dir"; >>>> int a = findProperty(getUserPropertiesFile(),key, dest); >>>> if (a == 0) return 0; >>>> int b = findProperty(getMainPropertiesFile(),key, dest); >>>> return b; >>>> >>>> } >>>> >>>> >>>> >>>> int main(void){ >>>> printf(getUserPropertiesFile()); >>>> printf("\n"); >>>> printf(getMainPropertiesFile()); >>>> printf("\n"); >>>> printf(getDefaultJavaPropertiesFile()); >>>> printf("\n"); >>>> char dest1[512]; >>>> clean(dest1); >>>> int i1 = findSystemConfigFile(dest1); >>>> printf(dest1); >>>> printf("\n"); >>>> char dest2[512]; >>>> clean(dest2); >>>> int i2 = findCustomJre(dest2); >>>> printf(dest2); >>>> printf("\n"); >>>> char dest3[512]; >>>> clean(dest3); >>>> int i3 = getDeployProperty("deployment.security.level", dest3); >>>> printf(dest3); >>>> printf("\n"); >>>> return 0; >>>> } >>> >>>> OK enough nits. Glad you are dusting off your C -- next dust off some C++ please :-) I already >>>> am looking to eradicate the existing string fiddling in ITW, don't introduce more :-). >>>> Anyway, see my comments in other review, we may want to go a simpler route of having the JRE/JRE >>>> arguments just sitting in a file. But -- it does make sense to have them in deployment >>>> properties, so if we can get a small, tested, C++ implementation running I'm fine with it. >>>> >>>> I can do the testing if you like once you're done, but the C++ unit tests really aren't any >>>> harder than writing C++. >>> >> > >> >> static char* getPropertyValue(char* c, char* dest) >> >> > static int findProperty(char* fileName, char* property, char* dest) >> >> Please consinder that these functions have to handle u encoded and any other escape character >> encoded property names and values correctly. >> >> Trimming off white spaces at the end of values does not comply with the property file >> specification. Just consider paths to files or folders that have trailing white spaces in their >> names. In this case getPropertyValue() will return wrong values. >> > Hi! > > I'm aware of most of the stuff you are describing. I'm also aware that there can be different > delimiter (instead of = char). But: > My implementation do not need this right now, as C code should read just path to jre - which > should be "strange characters free" and on one line, and Launching params of applet's jvm - with > same predicate. > Also itw-settings is using the equals char to store the properties. > > Well the triming is discutable - that is what I'm not aware.... I thought tha "KEY= value " should > be evaluated at least to to "value ". And I thought also about full trimming (wrongly appearently) > I would like to let this as subject to further discussion - I'm not against abandoning the trimming. > The discussion should be focussed on - Is bigger evil to trim, and so fix accidentally wrongly > typed path, or not trim and so expect path with spaces at the end? > Imho the spaces at the end of jre dir, however correct by OS possibilities, ar unlikely to appear. > > In case that native plugin will go beyond the reading of those two "commandline" properties, then > I would like to abandon my custom code, and to find some more suitable library. > > I hope my reply have made you little bit more optimistic :) > > Thanx for opinions, > J. > Ok, here we go with c++, string version.... /me terrified -------------- next part -------------- #include #include #include #include #include #include #include #include #include #include #include using namespace std; //public api string user_properties_file(); bool find_system_config_file(string& dest); bool find_custom_jre(string& dest); bool read_deploy_property_value(string property, string& dest); //end of public api // trim from start static inline string <rim(string &s) { s.erase(s.begin(), find_if(s.begin(), s.end(), not1(ptr_fun(isspace)))); return s; } // trim from end static inline string &rtrim(string &s) { s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun(isspace))).base(), s.end()); return s; } // trim from both ends static inline string &trim(string &s) { return ltrim(rtrim(s)); } static void remove_all_spaces(string& str) { for(int i=0; ipw_dir)+"/.icedtea/deployment.properties"; } static string main_properties_file(){ return "/etc/.java/deployment/deployment.properties"; } static string getDefaultJavaPropertiesFile(){ return ICEDTEA_WEB_JRE "/lib/deployment.properties"; } //this is reimplemntation as icedtea-web settings do this (Also name of function is the same): //try the main file in /etc/.java/deployment //if found, then return this file //try to find setUp jre // if found, then try if this file exists and end //if no jre custom jvm is set, then tryes default jre // if its deploy file exists, then return //not dound otherwise bool find_system_config_file(string& dest){ if(access(main_properties_file().c_str(), F_OK ) != -1 ) { dest = main_properties_file(); return true; } else { string jdest; bool found = find_custom_jre(jdest); if (found){ jdest = jdest + "/lib/deployment.properties"; if(access(jdest.c_str(), F_OK ) != -1 ) { dest = jdest; return true; } } else { if(access(getDefaultJavaPropertiesFile().c_str(), F_OK ) != -1 ) { dest = getDefaultJavaPropertiesFile(); return true; } } } return false; //nothing of above found } //returns false if not found, true otherwise static bool find_property(string fileName, string property, string& dest){ string nwproperty(property); trim(nwproperty); nwproperty=nwproperty+"="; FILE *file = fopen ( fileName.c_str(), "r" ); if ( file != NULL ){ char line [ 512 ]; /* or other suitable maximum line size */ while ( fgets ( line, sizeof line, file ) != NULL ){ /* read a line */ string copy = string(line); //java tolerates spaces arround = char, remove them for matching remove_all_spaces(copy); //printf(line); //printf(copy.c_str()); if (starts_with(copy,nwproperty)) { fclose (file); //provide non-spaced value, triming is done in get_property_value get_property_value(copy, dest); return true; } } }else{ perror(fileName.c_str()); /* why didn't the file open? */ } return false; } //this is reimplmentation of itw-settings operations //first check in user's settings, if found, return //then check in global file (see the magic of find_system_config_file) bool read_deploy_property_value(string property, string& dest){ //is it in user's file? string keeper; bool a = find_property(user_properties_file(), property, keeper); if (a) { dest=keeper; return true; } //is it in global file? bool b = find_system_config_file(keeper); if (b) { return find_property(keeper, property, dest); } return false; } //This is different from common get property, as it is avoiding to search in *java* //properties files bool find_custom_jre(string& dest){ string key("deployment.jre.dir"); string keeper; if(access(user_properties_file().c_str(), F_OK ) != -1 ) { bool a = find_property(user_properties_file(),key, keeper); if (a) { dest = keeper; return true; } } if(access(main_properties_file().c_str(), F_OK ) != -1 ) { return find_property(main_properties_file(),key, keeper); } return false; } int main(void){ printf("user's settings file\n"); cout << user_properties_file(); printf("\nmain settings file:\n"); cout << (main_properties_file()); printf("\njava settings file \n"); cout << (getDefaultJavaPropertiesFile()); printf("\nsystem config file\n"); string a1; find_system_config_file(a1); cout << a1; printf("\ncustom jre\n"); string a2; find_custom_jre(a2); cout << a2; printf("\nsome custom property\n"); string a3; read_deploy_property_value("deployment.security.level", a3); cout << a3; printf("\n"); return 0; } From adomurad at redhat.com Mon Mar 18 12:09:08 2013 From: adomurad at redhat.com (Adam Domurad) Date: Mon, 18 Mar 2013 15:09:08 -0400 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <51474DD3.7080003@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> Message-ID: <51476654.3070908@redhat.com> Thanks for sticking with this :-) On 03/18/2013 01:24 PM, Jiri Vanek wrote: > [..snip..] >>>> >>>>> #include >>>> >>>> In C++, you should use #include , #include , >>>> #include -- pretty much >>>> no '.h' for the standard libra > > ugh. I'm afraid I need more hints what to replace with what and what > will be impact to the code:( > ry. No problem. GCC will accept both, but you should use 'c' to prefix standard C library headers in C++. It's part of the C++ standard. (I don't think we should do something non-compliant just because the compiler lets us) >>>> >>>>> >>>>> //public api >>>>> char* getUserPropertiesFile(); >>>>> int findSystemConfigFile(char* dest); >>>>> int findCustomJre(char* dest); >>>>> int getDeployProperty(char* property, char* dest); >>>>> //end of public api >>>>> >>>>> static void popChar(char *c, int x){ >>>>> int i; >>>>> for ( i = x; i <= strlen(c); i++){//moving also \0 >>>> >>>> 'strlen' is a relatively expensive operation and should not be used >>>> in a loop condition. >>>> This is more of a 'delete' than a pop. >>>> >>>> I strongly recommend using std::string, which defines this, eg: > > done, but teh benefit is lesser then expected :(( Using char* by itself is very bug-prone; I see plenty benefit. > >>>>> >>>>> >>>>> char* getUserPropertiesFile(){ >>>>> struct passwd *pw = getpwuid(getuid()); >>>>> wordexp_t exp_result; >>>>> wordexp("~/.icedtea/deployment.properties", &exp_result, 0); >>>>> return exp_result.we_wordv[0]; >>>> >>>> I would like to avoid using these GNU specific functions if possible. >>>> This has the potential to leak memory as wordfree is never called. >>>> We can instead use the standard function getenv("HOME") like so: > > nope, home can not be defined. It is not an rule. i have used standard > function reading from psswd. This is a *POSIX function*, not a *standard C/C++ function* :-). Anyway, I am fine with this because it truly is architecture specific. >>>> >>>> std::string user_properties_file = std::string(getenv("HOME")) + >>>> /.icedtea/deployment.properties"; >>>> Note for '+' to work properly on C++ strings, one side of the >>>> expression must be an std::string. >>>> (Similar to Java -- except unfortunately string constants are not >>>> std::string's in C++) >>>> >>>> You can also check if the returned environment variable is empty as >>>> follows: >>>> >>>> std::string homedir = getenv("HOME"); >>>> if (homedir.empty()) { >>>> ... fallback code ... (concatenate HOMEDRIVE and HOMEPATH >>>> environment variables if you want to >>>> pretend we support Windows :-) >>>> } >>>> std::string user_properties_file = homedir + >>>> "/.icedtea/deployment.properties" >>>> >>>>> } >>>>> >>>>> >>>>> static char* getMainPropertiesFile(){ >>>>> return "/etc/.java/deployment/deployment.properties"; >>>> >>>> const char* should always be used for strings that should not be >>>> modified. This is in fact not >>>> valid C++ as-is. > > as SString have come to this place, I hope it is better now :( yes >>>> >>>> [..snip..] >>>> Bad Jiri! This is 2013, don't use fixed size arrays! :-) >>>> std::string will make your life easier. > > have not, but is done :) :) >>>> >>>>> int customJre = findCustomJre(jDest); >>>>> if (customJre == 0){ >>>>> strncat(jDest,"/lib/deployment.properties",50); >>>> >>>> It is good that you're using strncat, but you're just guessing a size. >>>> std::string will make your life easier. >>>> >>>>> if(access(jDest, F_OK ) != -1 ) { >>>>> strcpy(dest, jDest); >>>>> return 0; //file found >>>>> } >>>>> } else { >>>>> if(access(getDefaultJavaPropertiesFile(), F_OK ) != -1 ) { >>>> >>>> 'access' is (unfortunately) not a standard function. More idiomatic >>>> is to try and open the file >>>> for reading and see if we get NULL back, or in the case of an >>>> fstream, if the fstream is empty. > > hmm.. I let it in, I like the function. .What is th ereason for not > using it? It is not a standard C/C++ function, it's a POSIX function. While we don't support non-POSIX platforms as a target officially, please just check if FILE* is null or if the fstream is empty when opened. >>>> Note that const char* is frequently passed as a parameter in C++ >>>> because it can be both an >>>> std::string (via c_str()) or a string literal. >>>> Note that fstream needs no close call at all, it is cleaned up once >>>> it goes out of scope -- this >>>> is IMHO one of the strongest features of C++ (its resource >>>> management is handled exactly like its >>>> memory management). >>>> > > Is it still valid? > > Ok, here we go with c++, string version.... > > /me terrified Terrified of what ? A friendly patch review from an intern ? :-) > #include > #include > #include > #include > #include > #include > #include > #include > #include > #include > #include > > using namespace std; > > //public api > string user_properties_file(); > bool find_system_config_file(string& dest); > bool find_custom_jre(string& dest); > bool read_deploy_property_value(string property, string& dest); > //end of public api > > > // trim from start > static inline string <rim(string &s) { > s.erase(s.begin(), find_if(s.begin(), s.end(), > not1(ptr_fun(isspace)))); > return s; > } > // trim from end > static inline string &rtrim(string &s) { > s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun int>(isspace))).base(), s.end()); > return s; > } > // trim from both ends > static inline string &trim(string &s) { > return ltrim(rtrim(s)); > } Don't use inline here, it's not necessary or useful. Well these are funny, they look pasted from stack overflow :-). You only use trim(), here's something more readable from Stackoverflow that doesn't need : |std::string trim(const std::string& str) { size_t start = str.find_first_not_of(|||" \t"),||||end = str.find_last_not_of(|||" \t");| | if (start == std::string::npos) { return ""; } return str.substr(start, end - start + 1); } | Why are you returning the reference? In-effect the function signature is a lie :) Either mutate it or assign a copy (like my version does) |[nit] 'string& s' preferably over 'string &s'. 'string&' is read as the type, not part of the variable name. | > > > > static void remove_all_spaces(string& str) > { > for(int i=0; i if(str[i] == ' ' || str[i] == '\n' ) str.erase(i,1); > } Some braces /indenting would be nice. > > static bool get_property_value(string c, string& dest){ > int i = c.find("="); > if (i < 0) return false; > int l = c.length(); > dest = c.substr(i+1, l-i); > trim(dest); > return true; > } > > > static bool starts_with(string c1, string c2){ > return (c1.find(c2) == 0); > } > > > string user_properties_file(){ > int myuid = getuid(); > struct passwd *mypasswd = getpwuid(myuid); > return string(mypasswd->pw_dir)+"/.icedtea/deployment.properties"; > } > > > static string main_properties_file(){ > return "/etc/.java/deployment/deployment.properties"; > } > > static string getDefaultJavaPropertiesFile(){ > return ICEDTEA_WEB_JRE "/lib/deployment.properties"; > } This camel-case is out of place. > > > //this is reimplemntation as icedtea-web settings do this (Also name > of function is the same): > //try the main file in /etc/.java/deployment > //if found, then return this file > //try to find setUp jre > // if found, then try if this file exists and end > //if no jre custom jvm is set, then tryes default jre > // if its deploy file exists, then return > //not dound otherwise > bool find_system_config_file(string& dest){ > if(access(main_properties_file().c_str(), F_OK ) != -1 ) { Please create a utility function that attempts to open a file and sees if it is NULL (and closes it if it does open it) to emulate this behaviour. > dest = main_properties_file(); > return true; > } else { > string jdest; > bool found = find_custom_jre(jdest); > if (found){ > jdest = jdest + "/lib/deployment.properties"; > if(access(jdest.c_str(), F_OK ) != -1 ) { > dest = jdest; > return true; > } > } else { > if(access(getDefaultJavaPropertiesFile().c_str(), F_OK ) > != -1 ) { > dest = getDefaultJavaPropertiesFile(); > return true; > } > } > } > return false; //nothing of above found > } > > //returns false if not found, true otherwise > static bool find_property(string fileName, string property, string& > dest){ Nit: Don't use camel-case. Note that you can still take eg filename as a const char* if it makes your code cleaner. You do not need to use std::string strictly if you are taking an unchanged string parameter. > string nwproperty(property); > trim(nwproperty); > nwproperty=nwproperty+"="; > FILE *file = fopen ( fileName.c_str(), "r" ); > if ( file != NULL ){ > char line [ 512 ]; /* or other suitable maximum line size */ I already gave you a solution that does not require a static size buffer. > while ( fgets ( line, sizeof line, file ) != NULL ){ /* read a > line */ > string copy = string(line); > //java tolerates spaces arround = char, remove them for > matching s/arround/around/ > remove_all_spaces(copy); > //printf(line); > //printf(copy.c_str()); > if (starts_with(copy,nwproperty)) { > fclose (file); > //provide non-spaced value, triming is done in > get_property_value s/triming/trimming/ > get_property_value(copy, dest); > return true; > } > } > > }else{ > perror(fileName.c_str()); /* why didn't the file open? */ > } > return false; > } > > > //this is reimplmentation of itw-settings operations > //first check in user's settings, if found, return > //then check in global file (see the magic of find_system_config_file) > bool read_deploy_property_value(string property, string& dest){ > //is it in user's file? > string keeper; > bool a = find_property(user_properties_file(), property, keeper); > if (a) { > dest=keeper; > return true; > } > //is it in global file? > bool b = find_system_config_file(keeper); > if (b) { > return find_property(keeper, property, dest); > } > return false; > } > > //This is different from common get property, as it is avoiding to > search in *java* > //properties files > bool find_custom_jre(string& dest){ > string key("deployment.jre.dir"); It is fine to just use a const char* here (and have find_property take a const char*). std::string is mainly a benefit for mutable strings. It's correct, at least. > string keeper; > if(access(user_properties_file().c_str(), F_OK ) != -1 ) { > bool a = find_property(user_properties_file(),key, keeper); Nice variable name :-) ... you can embed this right in the if statement if you don't have a good name for it. > if (a) { > dest = keeper; Pass 'dest' instead of 'keeper' to find_property and this will not be required. > return true; > } > } > if(access(main_properties_file().c_str(), F_OK ) != -1 ) { > return find_property(main_properties_file(),key, keeper); Bug: this does not modify 'dest'. Pass 'dest' instead of 'keeper'. > } > return false; > } > > > > int main(void){ > printf("user's settings file\n"); > cout << user_properties_file(); > printf("\nmain settings file:\n"); > cout << (main_properties_file()); > printf("\njava settings file \n"); > cout << (getDefaultJavaPropertiesFile()); > printf("\nsystem config file\n"); > string a1; > find_system_config_file(a1); > cout << a1; > printf("\ncustom jre\n"); > string a2; > find_custom_jre(a2); > cout << a2; > printf("\nsome custom property\n"); > string a3; > read_deploy_property_value("deployment.security.level", a3); > cout << a3; > printf("\n"); > return 0; > } Not too bad :-) Keep at it! Just friendly review from intern etc etc Happy hacking, -Adam -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130318/204cb080/attachment.html From andrew at icedtea.classpath.org Mon Mar 18 14:34:55 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 18 Mar 2013 21:34:55 +0000 Subject: /hg/icedtea6: 2 new changesets Message-ID: changeset 0bca9bac254b in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=0bca9bac254b author: Andrew John Hughes date: Mon Mar 18 17:45:37 2013 +0000 Sync with IcedTea7 2.3 HotSpot tree again following u17b02 sync. 2013-03-18 Andrew John Hughes * hotspot.map: Sync with IcedTea7 2.3 tree again following u17b02 sync. changeset 18b6e9eaf3e8 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=18b6e9eaf3e8 author: Andrew John Hughes date: Mon Mar 18 21:34:40 2013 +0000 Backport of 7197906 (bundled HotSpot only) and addition of a simpler fix for the 7017193 memory leak. 2013-03-18 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patches to appropriate HotSpot builds. * patches/hotspot/hs23/revert-7017193.patch: Backport from 2.x series. Revert the upstream fix for 7017193 and add a much simpler fix using free which doesn't suffer from performance issues. https://bugzilla.redhat.com/show_bug.cgi?id=902004 For HotSpot 23 only. * patches/hotspot/original/7197906-handle_32_bit_shifts.patch: Backport from OpenJDK 7 for bundled HotSpot only. * patches/hotspot/original/fix_get_stack_bounds_leak.patch: Same fix for 7017193 as in patch above, but for bundled HotSpot, which doesn't have the upstream fix. * NEWS: Updated. diffstat: ChangeLog | 23 ++ Makefile.am | 7 +- NEWS | 3 + hotspot.map | 2 +- patches/hotspot/hs23/revert-7017193.patch | 138 ++++++++++++ patches/hotspot/original/7197906-handle_32_bit_shifts.patch | 33 ++ patches/hotspot/original/fix_get_stack_bounds_leak.patch | 12 + 7 files changed, 215 insertions(+), 3 deletions(-) diffs (271 lines): diff -r e162a16dad26 -r 18b6e9eaf3e8 ChangeLog --- a/ChangeLog Thu Mar 07 15:49:50 2013 +0000 +++ b/ChangeLog Mon Mar 18 21:34:40 2013 +0000 @@ -1,3 +1,26 @@ +2013-03-18 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patches to appropriate + HotSpot builds. + * patches/hotspot/hs23/revert-7017193.patch: + Backport from 2.x series. Revert the upstream + fix for 7017193 and add a much simpler fix using + free which doesn't suffer from performance issues. + https://bugzilla.redhat.com/show_bug.cgi?id=902004 + For HotSpot 23 only. + * patches/hotspot/original/7197906-handle_32_bit_shifts.patch: + Backport from OpenJDK 7 for bundled HotSpot only. + * patches/hotspot/original/fix_get_stack_bounds_leak.patch: + Same fix for 7017193 as in patch above, but for bundled HotSpot, + which doesn't have the upstream fix. + * NEWS: Updated. + +2013-03-18 Andrew John Hughes + + * hotspot.map: Sync with IcedTea7 2.3 tree + again following u17b02 sync. + 2013-03-07 Andrew John Hughes * hotspot.map: Sync with IcedTea7 2.3 tree; diff -r e162a16dad26 -r 18b6e9eaf3e8 Makefile.am --- a/Makefile.am Thu Mar 07 15:49:50 2013 +0000 +++ b/Makefile.am Mon Mar 18 21:34:40 2013 +0000 @@ -482,7 +482,8 @@ if WITH_ALT_HSBUILD ICEDTEA_PATCHES += \ - patches/hotspot/hs23/remove_jsr292_tests.patch + patches/hotspot/hs23/remove_jsr292_tests.patch \ + patches/hotspot/hs23/revert-7017193.patch else # stdc-limit-macros is part of 7032458 # pr690-shark-jit-hs20.patch is part of 7032458 @@ -524,7 +525,9 @@ patches/pr690-shark-jit-hs20.patch \ patches/pr696-zero-fast_aldc-hs20.patch \ patches/arm-debug.patch \ - patches/openjdk/7010849-modernise_sa.patch + patches/openjdk/7010849-modernise_sa.patch \ + patches/hotspot/original/7197906-handle_32_bit_shifts.patch \ + patches/hotspot/original/fix_get_stack_bounds_leak.patch endif if WITH_RHINO diff -r e162a16dad26 -r 18b6e9eaf3e8 NEWS --- a/NEWS Thu Mar 07 15:49:50 2013 +0000 +++ b/NEWS Mon Mar 18 21:34:40 2013 +0000 @@ -16,8 +16,11 @@ - PR1317: Provide an option to build with a more up-to-date HotSpot * Backports - S8009641: OpenJDK 6 build broken via 8007675 fix + - S7197906: BlockOffsetArray::power_to_cards_back() needs to handle > 32 bit shifts (bundled HotSpot only) * Bug fixes - PR1318: Fix automatic enabling of the Zero build on non-JIT architectures which don't use CACAO or JamVM. + - RH902004: very bad performance with E-Porto Add-In f??r OpenOffice Writer installed (hs23 only) + - Fix get_stack_bounds memory leak (alternate fix for S7197906, bundled HotSpot only) New in release 1.12.4 (2013-03-04): diff -r e162a16dad26 -r 18b6e9eaf3e8 hotspot.map --- a/hotspot.map Thu Mar 07 15:49:50 2013 +0000 +++ b/hotspot.map Mon Mar 18 21:34:40 2013 +0000 @@ -1,2 +1,2 @@ # version url changeset sha256sum -hs23 http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot a152dced63a1 eac2313e3012653afa7549257765d56e4348c775363eee0733968d32a7c1eeae +hs23 http://icedtea.classpath.org/hg/release/icedtea7-forest-2.3/hotspot 23888f3dec52 6d77e26134d47e62621a35b259c70d8e98070724af9a718ec2b85cf84b954614 diff -r e162a16dad26 -r 18b6e9eaf3e8 patches/hotspot/hs23/revert-7017193.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/hs23/revert-7017193.patch Mon Mar 18 21:34:40 2013 +0000 @@ -0,0 +1,138 @@ +diff --git a/src/os/linux/vm/os_linux.cpp b/src/os/linux/vm/os_linux.cpp +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp +@@ -2763,39 +2763,47 @@ + // writing thread stacks don't use growable mappings (i.e. those + // creeated with MAP_GROWSDOWN), and aren't marked "[stack]", so this + // only applies to the main thread. +- +-static +-bool get_stack_bounds(uintptr_t *bottom, uintptr_t *top) { +- +- char buf[128]; +- int fd, sz; +- +- if ((fd = ::open("/proc/self/maps", O_RDONLY)) < 0) { ++static bool ++get_stack_bounds(uintptr_t *bottom, uintptr_t *top) ++{ ++ FILE *f = fopen("/proc/self/maps", "r"); ++ if (f == NULL) + return false; +- } +- +- const char kw[] = "[stack]"; +- const int kwlen = sizeof(kw)-1; +- +- // Address part of /proc/self/maps couldn't be more than 128 bytes +- while ((sz = os::get_line_chars(fd, buf, sizeof(buf))) > 0) { +- if (sz > kwlen && ::memcmp(buf+sz-kwlen, kw, kwlen) == 0) { +- // Extract addresses +- if (sscanf(buf, "%" SCNxPTR "-%" SCNxPTR, bottom, top) == 2) { +- uintptr_t sp = (uintptr_t) __builtin_frame_address(0); +- if (sp >= *bottom && sp <= *top) { +- ::close(fd); +- return true; +- } ++ ++ while (!feof(f)) { ++ size_t dummy; ++ char *str = NULL; ++ ssize_t len = getline(&str, &dummy, f); ++ if (len == -1) { ++ fclose(f); ++ if (str != NULL) ++ free(str); ++ return false; ++ } ++ ++ if (len > 0 && str[len-1] == '\n') { ++ str[len-1] = 0; ++ len--; ++ } ++ ++ static const char *stack_str = "[stack]"; ++ if (len > (ssize_t)strlen(stack_str) ++ && (strcmp(str + len - strlen(stack_str), stack_str) == 0)) { ++ if (sscanf(str, "%" SCNxPTR "-%" SCNxPTR, bottom, top) == 2) { ++ uintptr_t sp = (uintptr_t)__builtin_frame_address(0); ++ if (sp >= *bottom && sp <= *top) { ++ free(str); ++ fclose(f); ++ return true; + } +- } +- } +- +- ::close(fd); ++ } ++ } ++ free(str); ++ } ++ fclose(f); + return false; + } + +- + // If the (growable) stack mapping already extends beyond the point + // where we're going to put our guard pages, truncate the mapping at + // that point by munmap()ping it. This ensures that when we later +diff --git a/src/share/vm/runtime/os.cpp b/src/share/vm/runtime/os.cpp +--- openjdk/hotspot/src/share/vm/runtime/os.cpp ++++ openjdk/hotspot/src/share/vm/runtime/os.cpp +@@ -1331,41 +1331,3 @@ + } + return result; + } +- +-// Read file line by line, if line is longer than bsize, +-// skip rest of line. +-int os::get_line_chars(int fd, char* buf, const size_t bsize){ +- size_t sz, i = 0; +- +- // read until EOF, EOL or buf is full +- while ((sz = (int) read(fd, &buf[i], 1)) == 1 && i < (bsize-2) && buf[i] != '\n') { +- ++i; +- } +- +- if (buf[i] == '\n') { +- // EOL reached so ignore EOL character and return +- +- buf[i] = 0; +- return (int) i; +- } +- +- buf[i+1] = 0; +- +- if (sz != 1) { +- // EOF reached. if we read chars before EOF return them and +- // return EOF on next call otherwise return EOF +- +- return (i == 0) ? -1 : (int) i; +- } +- +- // line is longer than size of buf, skip to EOL +- char ch; +- while (read(fd, &ch, 1) == 1 && ch != '\n') { +- // Do nothing +- } +- +- // return initial part of line that fits in buf. +- // If we reached EOF, it will be returned on next call. +- +- return (int) i; +-} +diff --git a/src/share/vm/runtime/os.hpp b/src/share/vm/runtime/os.hpp +--- openjdk/hotspot/src/share/vm/runtime/os.hpp ++++ openjdk/hotspot/src/share/vm/runtime/os.hpp +@@ -672,10 +672,6 @@ + // Hook for os specific jvm options that we don't want to abort on seeing + static bool obsolete_option(const JavaVMOption *option); + +- // Read file line by line. If line is longer than bsize, +- // rest of line is skipped. Returns number of bytes read or -1 on EOF +- static int get_line_chars(int fd, char *buf, const size_t bsize); +- + // Extensions + #include "runtime/os_ext.hpp" + diff -r e162a16dad26 -r 18b6e9eaf3e8 patches/hotspot/original/7197906-handle_32_bit_shifts.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/original/7197906-handle_32_bit_shifts.patch Mon Mar 18 21:34:40 2013 +0000 @@ -0,0 +1,33 @@ +--- openjdk/hotspot/src/share/vm/memory/blockOffsetTable.hpp 2012-09-13 21:22:37.897456500 +0200 ++++ openjdk/hotspot/src/share/vm/memory/blockOffsetTable.hpp 2012-09-13 21:22:34.345253300 +0200 +@@ -285,7 +285,7 @@ + }; + + static size_t power_to_cards_back(uint i) { +- return (size_t)(1 << (LogBase * i)); ++ return (size_t)1 << (LogBase * i); + } + static size_t power_to_words_back(uint i) { + return power_to_cards_back(i) * N_words; +--- openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2012-09-13 21:22:37.901456800 +0200 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2012-09-13 21:22:34.354253900 +0200 +@@ -110,7 +110,7 @@ + #ifndef PRODUCT + bool CMBitMapRO::covers(ReservedSpace rs) const { + // assert(_bm.map() == _virtual_space.low(), "map inconsistency"); +- assert(((size_t)_bm.size() * (size_t)(1 << _shifter)) == _bmWordSize, ++ assert(((size_t)_bm.size() * ((size_t)1 << _shifter)) == _bmWordSize, + "size inconsistency"); + return _bmStartWord == (HeapWord*)(rs.base()) && + _bmWordSize == rs.size()>>LogHeapWordSize; +--- openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2012-09-13 21:22:37.898456600 +0200 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2012-09-13 21:22:34.346253400 +0200 +@@ -273,7 +273,7 @@ + if (_max_fine_entries == 0) { + assert(_mod_max_fine_entries_mask == 0, "Both or none."); + size_t max_entries_log = (size_t)log2_long((jlong)G1RSetRegionEntries); +- _max_fine_entries = (size_t)(1 << max_entries_log); ++ _max_fine_entries = (size_t)1 << max_entries_log; + _mod_max_fine_entries_mask = _max_fine_entries - 1; + + assert(_fine_eviction_sample_size == 0 diff -r e162a16dad26 -r 18b6e9eaf3e8 patches/hotspot/original/fix_get_stack_bounds_leak.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/original/fix_get_stack_bounds_leak.patch Mon Mar 18 21:34:40 2013 +0000 @@ -0,0 +1,12 @@ +diff --git a/src/os/linux/vm/os_linux.cpp b/src/os/linux/vm/os_linux.cpp +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp +@@ -2650,6 +2650,8 @@ + ssize_t len = getline(&str, &dummy, f); + if (len == -1) { + fclose(f); ++ if (str != NULL) ++ free(str); + return false; + } + From jvanek at redhat.com Tue Mar 19 06:41:28 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 19 Mar 2013 14:41:28 +0100 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <51476654.3070908@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> Message-ID: <51486B08.10005@redhat.com> So another round. I think all is fixed excet the c x c+++ headers. Do you mind t write little bit more what you need from me? Also unittests will be needed. I would like to wrote them, ..will need probably some code snippet and general advices from you when I will integrate (next round?) this "library" inside ITW. Thanx for patient and detailed review! J. On 03/18/2013 08:09 PM, Adam Domurad wrote: > Thanks for sticking with this :-) > > On 03/18/2013 01:24 PM, Jiri Vanek wrote: >> [..snip..] >>>>> >>>>>> #include >>>>> >>>>> In C++, you should use #include , #include , #include -- pretty much >>>>> no '.h' for the standard libra >> >> ugh. I'm afraid I need more hints what to replace with what and what will be impact to the code:( >> ry. > > No problem. GCC will accept both, but you should use 'c' to prefix standard C library headers in C++. It's part of the C++ standard. (I don't think we should do something non-compliant just because the compiler lets us) > >>>>> >>>>>> >>>>>> //public api >>>>>> char* getUserPropertiesFile(); >>>>>> int findSystemConfigFile(char* dest); >>>>>> int findCustomJre(char* dest); >>>>>> int getDeployProperty(char* property, char* dest); >>>>>> //end of public api >>>>>> >>>>>> static void popChar(char *c, int x){ >>>>>> int i; >>>>>> for ( i = x; i <= strlen(c); i++){//moving also \0 >>>>> >>>>> 'strlen' is a relatively expensive operation and should not be used in a loop condition. >>>>> This is more of a 'delete' than a pop. >>>>> >>>>> I strongly recommend using std::string, which defines this, eg: >> >> done, but teh benefit is lesser then expected :(( > > Using char* by itself is very bug-prone; I see plenty benefit. > >> >>>>>> >>>>>> >>>>>> char* getUserPropertiesFile(){ >>>>>> struct passwd *pw = getpwuid(getuid()); >>>>>> wordexp_t exp_result; >>>>>> wordexp("~/.icedtea/deployment.properties", &exp_result, 0); >>>>>> return exp_result.we_wordv[0]; >>>>> >>>>> I would like to avoid using these GNU specific functions if possible. >>>>> This has the potential to leak memory as wordfree is never called. >>>>> We can instead use the standard function getenv("HOME") like so: >> >> nope, home can not be defined. It is not an rule. i have used standard function reading from psswd. > > This is a *POSIX function*, not a *standard C/C++ function* :-). > Anyway, I am fine with this because it truly is architecture specific. > >>>>> >>>>> std::string user_properties_file = std::string(getenv("HOME")) + /.icedtea/deployment.properties"; >>>>> Note for '+' to work properly on C++ strings, one side of the expression must be an std::string. >>>>> (Similar to Java -- except unfortunately string constants are not std::string's in C++) >>>>> >>>>> You can also check if the returned environment variable is empty as follows: >>>>> >>>>> std::string homedir = getenv("HOME"); >>>>> if (homedir.empty()) { >>>>> ... fallback code ... (concatenate HOMEDRIVE and HOMEPATH environment variables if you want to >>>>> pretend we support Windows :-) >>>>> } >>>>> std::string user_properties_file = homedir + "/.icedtea/deployment.properties" >>>>> >>>>>> } >>>>>> >>>>>> >>>>>> static char* getMainPropertiesFile(){ >>>>>> return "/etc/.java/deployment/deployment.properties"; >>>>> >>>>> const char* should always be used for strings that should not be modified. This is in fact not >>>>> valid C++ as-is. >> >> as SString have come to this place, I hope it is better now :( > > yes > >>>>> >>>>> [..snip..] >>>>> Bad Jiri! This is 2013, don't use fixed size arrays! :-) >>>>> std::string will make your life easier. >> >> have not, but is done :) > > :) > >>>>> >>>>>> int customJre = findCustomJre(jDest); >>>>>> if (customJre == 0){ >>>>>> strncat(jDest,"/lib/deployment.properties",50); >>>>> >>>>> It is good that you're using strncat, but you're just guessing a size. >>>>> std::string will make your life easier. >>>>> >>>>>> if(access(jDest, F_OK ) != -1 ) { >>>>>> strcpy(dest, jDest); >>>>>> return 0; //file found >>>>>> } >>>>>> } else { >>>>>> if(access(getDefaultJavaPropertiesFile(), F_OK ) != -1 ) { >>>>> >>>>> 'access' is (unfortunately) not a standard function. More idiomatic is to try and open the file >>>>> for reading and see if we get NULL back, or in the case of an fstream, if the fstream is empty. >> >> hmm.. I let it in, I like the function. .What is th ereason for not using it? > > It is not a standard C/C++ function, it's a POSIX function. While we don't support non-POSIX platforms as a target officially, please just check if FILE* is null or if the fstream is empty when opened. > >>>>> Note that const char* is frequently passed as a parameter in C++ because it can be both an >>>>> std::string (via c_str()) or a string literal. >>>>> Note that fstream needs no close call at all, it is cleaned up once it goes out of scope -- this >>>>> is IMHO one of the strongest features of C++ (its resource management is handled exactly like its >>>>> memory management). >>>>> >> >> Is it still valid? >> >> Ok, here we go with c++, string version.... >> >> /me terrified > > Terrified of what ? A friendly patch review from an intern ? :-) > >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> >> using namespace std; >> >> //public api >> string user_properties_file(); >> bool find_system_config_file(string& dest); >> bool find_custom_jre(string& dest); >> bool read_deploy_property_value(string property, string& dest); >> //end of public api >> >> >> // trim from start >> static inline string <rim(string &s) { >> s.erase(s.begin(), find_if(s.begin(), s.end(), not1(ptr_fun(isspace)))); >> return s; >> } >> // trim from end >> static inline string &rtrim(string &s) { >> s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun(isspace))).base(), s.end()); >> return s; >> } >> // trim from both ends >> static inline string &trim(string &s) { >> return ltrim(rtrim(s)); >> } > > Don't use inline here, it's not necessary or useful. > Well these are funny, they look pasted from stack overflow :-). You only use trim(), here's something more readable from Stackoverflow that doesn't need : > > |std::string trim(const std::string& str) { > size_t start = str.find_first_not_of(|||" \t"),||||end = str.find_last_not_of(|||" \t");| > | > if (start == std::string::npos) { > return ""; > } > > return str.substr(start, end - start + 1); > } > | > Why are you returning the reference? In-effect the function signature is a lie :) Either mutate it or assign a copy (like my version does) > > |[nit] 'string& s' preferably over 'string &s'. 'string&' is read as the type, not part of the variable name. > > | >> >> >> >> static void remove_all_spaces(string& str) >> { >> for(int i=0; i> if(str[i] == ' ' || str[i] == '\n' ) str.erase(i,1); >> } > > Some braces /indenting would be nice. > >> >> static bool get_property_value(string c, string& dest){ >> int i = c.find("="); >> if (i < 0) return false; >> int l = c.length(); >> dest = c.substr(i+1, l-i); >> trim(dest); >> return true; >> } >> >> >> static bool starts_with(string c1, string c2){ >> return (c1.find(c2) == 0); >> } >> >> >> string user_properties_file(){ >> int myuid = getuid(); >> struct passwd *mypasswd = getpwuid(myuid); >> return string(mypasswd->pw_dir)+"/.icedtea/deployment.properties"; >> } >> >> >> static string main_properties_file(){ >> return "/etc/.java/deployment/deployment.properties"; >> } >> >> static string getDefaultJavaPropertiesFile(){ >> return ICEDTEA_WEB_JRE "/lib/deployment.properties"; >> } > > This camel-case is out of place. > >> >> >> //this is reimplemntation as icedtea-web settings do this (Also name of function is the same): >> //try the main file in /etc/.java/deployment >> //if found, then return this file >> //try to find setUp jre >> // if found, then try if this file exists and end >> //if no jre custom jvm is set, then tryes default jre >> // if its deploy file exists, then return >> //not dound otherwise >> bool find_system_config_file(string& dest){ >> if(access(main_properties_file().c_str(), F_OK ) != -1 ) { > > Please create a utility function that attempts to open a file and sees if it is NULL (and closes it if it does open it) to emulate this behaviour. > >> dest = main_properties_file(); >> return true; >> } else { >> string jdest; >> bool found = find_custom_jre(jdest); >> if (found){ >> jdest = jdest + "/lib/deployment.properties"; >> if(access(jdest.c_str(), F_OK ) != -1 ) { >> dest = jdest; >> return true; >> } >> } else { >> if(access(getDefaultJavaPropertiesFile().c_str(), F_OK ) != -1 ) { >> dest = getDefaultJavaPropertiesFile(); >> return true; >> } >> } >> } >> return false; //nothing of above found >> } >> >> //returns false if not found, true otherwise >> static bool find_property(string fileName, string property, string& dest){ > > Nit: Don't use camel-case. > Note that you can still take eg filename as a const char* if it makes your code cleaner. You do not need to use std::string strictly if you are taking an unchanged string parameter. > >> string nwproperty(property); >> trim(nwproperty); >> nwproperty=nwproperty+"="; >> FILE *file = fopen ( fileName.c_str(), "r" ); >> if ( file != NULL ){ >> char line [ 512 ]; /* or other suitable maximum line size */ > > I already gave you a solution that does not require a static size buffer. > >> while ( fgets ( line, sizeof line, file ) != NULL ){ /* read a line */ >> string copy = string(line); >> //java tolerates spaces arround = char, remove them for matching > > s/arround/around/ > >> remove_all_spaces(copy); >> //printf(line); >> //printf(copy.c_str()); >> if (starts_with(copy,nwproperty)) { >> fclose (file); >> //provide non-spaced value, triming is done in get_property_value > > s/triming/trimming/ > >> get_property_value(copy, dest); >> return true; >> } >> } >> >> }else{ >> perror(fileName.c_str()); /* why didn't the file open? */ >> } >> return false; >> } >> >> >> //this is reimplmentation of itw-settings operations >> //first check in user's settings, if found, return >> //then check in global file (see the magic of find_system_config_file) >> bool read_deploy_property_value(string property, string& dest){ >> //is it in user's file? >> string keeper; >> bool a = find_property(user_properties_file(), property, keeper); >> if (a) { >> dest=keeper; >> return true; >> } >> //is it in global file? >> bool b = find_system_config_file(keeper); >> if (b) { >> return find_property(keeper, property, dest); >> } >> return false; >> } >> >> //This is different from common get property, as it is avoiding to search in *java* >> //properties files >> bool find_custom_jre(string& dest){ >> string key("deployment.jre.dir"); > > It is fine to just use a const char* here (and have find_property take a const char*). std::string is mainly a benefit for mutable strings. It's correct, at least. > >> string keeper; >> if(access(user_properties_file().c_str(), F_OK ) != -1 ) { >> bool a = find_property(user_properties_file(),key, keeper); > > Nice variable name :-) ... you can embed this right in the if statement if you don't have a good name for it. > >> if (a) { >> dest = keeper; > > Pass 'dest' instead of 'keeper' to find_property and this will not be required. > >> return true; >> } >> } >> if(access(main_properties_file().c_str(), F_OK ) != -1 ) { >> return find_property(main_properties_file(),key, keeper); > > Bug: this does not modify 'dest'. Pass 'dest' instead of 'keeper'. > >> } >> return false; >> } >> >> >> >> int main(void){ >> printf("user's settings file\n"); >> cout << user_properties_file(); >> printf("\nmain settings file:\n"); >> cout << (main_properties_file()); >> printf("\njava settings file \n"); >> cout << (getDefaultJavaPropertiesFile()); >> printf("\nsystem config file\n"); >> string a1; >> find_system_config_file(a1); >> cout << a1; >> printf("\ncustom jre\n"); >> string a2; >> find_custom_jre(a2); >> cout << a2; >> printf("\nsome custom property\n"); >> string a3; >> read_deploy_property_value("deployment.security.level", a3); >> cout << a3; >> printf("\n"); >> return 0; >> } > > Not too bad :-) > > Keep at it! Just friendly review from intern etc etc > > Happy hacking, > -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: parsePropeties.cc Type: text/x-csrc Size: 4896 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130319/39178a78/parsePropeties.cc From adomurad at redhat.com Tue Mar 19 07:44:37 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 19 Mar 2013 10:44:37 -0400 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <51486B08.10005@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> Message-ID: <514879D5.6090109@redhat.com> On 03/19/2013 09:41 AM, Jiri Vanek wrote: > So another round. I think all is fixed excet the c x c+++ headers. Do > you mind t write little bit more what you need from me? > > Also unittests will be needed. I would like to wrote them, ..will need > probably some code snippet and general advices from you when I will > integrate (next round?) this "library" inside ITW. Doesn't look half bad this time :-) Feel free to propose an integrated version. Note that it seems the naming scheme for the CPP side is *.cc files using camelcase & starting capital, so name it ParseProperties.cc, and give a header called ParseProperties.h. (Side note: Actually, they all have the form IcedTea*.cc, but I think this is too noisy. I'd be in favour of removing this prefix for all the files actually, any thoughts on this ?) re unit tests: Examples can be found in tests/cpp-unit-tests. Steps: 1. Create a file called ParsePropertiesTest.cc 2. Include ParseProperties.h 3. Use the SUITE and TEST macros. Here's a suggested layout (Disclaimer: I *did not* compile this): #include #include "ParseProperties.h" /* Creates a temporary file with the specified contents */ static std::string temporary_file(const std::string& contents) { std::string path = *tmpnam(NULL);* /* POSIX function, fine for test suite */ fstream file(path.c_str(), fstream::in); file << contents; return path; } SUITE(ParseProperties) { TEST(read_deploy_property_value) { std::string value; bool found = read_deploy_property_value("test", value); CHECK(found); CHECK(value == "foobar"); } } Although after writing this it occurred to me it is a bit tricky to read from a dummy file. Possibly you want to design some way to direct these functions to read dummy files. Other options, back up these files and replace them (dangerous), use some chroot tricks? (never tried). Anyway feel free to ask more questions, I think the concept is simple. Once you have a .cc file in the test directory, and the TEST macro, the test system will pick up all your TEST's. > > Thanx for patient and detailed review! > > J. > > [..snip..] re new version: > #include > #include > #include > #include > #include #include -> #include #include -> #include I suppose it is easier if I just tell you what to do :-) Not a huge point anyway. > #include > #include > #include > #include > #include > #include > #include > > using namespace std; > > //public api > string user_properties_file(); > bool find_system_config_file(string& dest); > bool find_custom_jre(string& dest); > bool read_deploy_property_value(string property, string& dest); > //end of public api Just a note, this will be extracted to header file. Maybe for next iteration you should do this (you can test that the header works with a test main in a separate .cpp file) > > > // trim from start > static string <rim(string& s) { > s.erase(s.begin(), find_if(s.begin(), s.end(), > not1(ptr_fun(isspace)))); > return s; > } > // trim from end > static string &rtrim(string& s) { > s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun int>(isspace))).base(), s.end()); > return s; > } > // trim from both ends > static string &trim(string& s) { > return ltrim(rtrim(s)); > } Ok you don't need to use my version but IMO you must: 1. Make this more readable. It is a simple operation, I would rather not use the rather complex templated algorithm & functional library in C++ 2. Either return 'string' and take 'string' (not 'string&') OR take 'string&' but do not return it. Returning a string makes it seem like the original string is unchanged. > > > > > static void remove_all_spaces(string& str) > { > for(int i=0; i if(str[i] == ' ' || str[i] == '\n' || str[i] == '\t') { > str.erase(i,1); > } > } > } > > static bool get_property_value(string c, string& dest){ > int i = c.find("="); > if (i < 0) return false; > int l = c.length(); > dest = c.substr(i+1, l-i); > trim(dest); > return true; > } > > > static bool starts_with(string c1, string c2){ > return (c1.find(c2) == 0); > } > > static bool file_exists(string filename) > { > ifstream infile(filename.c_str()); > return infile.good(); > } This is good, thanks. > > > string user_properties_file(){ > int myuid = getuid(); > struct passwd *mypasswd = getpwuid(myuid); > return string(mypasswd->pw_dir)+"/.icedtea/deployment.properties"; > } > > > static string main_properties_file(){ > return "/etc/.java/deployment/deployment.properties"; > } > > static string default_java_properties_file(){ > return ICEDTEA_WEB_JRE "/lib/deployment.properties"; > } > > > //this is reimplemntation as icedtea-web settings do this (Also name > of function is the same): s/ reimplemntation / reimplementation / May be better worded as eg 'this is the same search done by icedtea-web settings' > //try the main file in /etc/.java/deployment > //if found, then return this file > //try to find setUp jre > // if found, then try if this file exists and end > //if no jre custom jvm is set, then tryes default jre s/tryes/tries/ > // if its deploy file exists, then return > //not dound otherwise s/dound/found/ [Nit] Could you put the whole thing in a /**/ quote ? > bool find_system_config_file(string& dest){ > if(file_exists(main_properties_file())) { > dest = main_properties_file(); > return true; > } else { > string jdest; > bool found = find_custom_jre(jdest); > if (found){ > jdest = jdest + "/lib/deployment.properties"; > if(file_exists(jdest) ) { > dest = jdest; > return true; > } > } else { > if(file_exists(default_java_properties_file())) { > dest = default_java_properties_file(); > return true; > } > } > } > return false; //nothing of above found > } > > //returns false if not found, true otherwise [nit] "Returns whether property was found, if found stores result in 'dest'" is more descriptive. > static bool find_property(string filename, string property, string& > dest){ > string nwproperty(property); > trim(nwproperty); > nwproperty=nwproperty+"="; [nit] It'd be clearer if this was something like string property_matcher = trim(property) + "="; (assuming a trim that returns a copy)) > ifstream input( filename.c_str() ); > for( string line; getline( input, line ); ){ /* read a line */ > string copy = string(line); string(line) is redundant. > //java tolerates spaces around = char, remove them for matching > remove_all_spaces(copy); > //printf(line.c_str()); > //printf(copy.c_str()); Remember to drop these. > if (starts_with(copy,nwproperty)) { > //provide non-spaced value, trimming is done in > get_property_value > get_property_value(line, dest); > return true; > } > } > > return false; > } > > > //this is reimplmentation of itw-settings operations s/ reimplemntation / reimplementation / May be better worded as eg 'this is the same search done by icedtea-web settings' > //first check in user's settings, if found, return > //then check in global file (see the magic of find_system_config_file) [nit] I'd prefer a /**/ quote > bool read_deploy_property_value(string property, string& dest){ > //is it in user's file? > bool a = find_property(user_properties_file(), property, dest); > if (a) { > return true; > } > //is it in global file? > string futurefile; > bool b = find_system_config_file(futurefile); > if (b) { > return find_property(futurefile, property, dest); > } > return false; > } > > //This is different from common get property, as it is avoiding to > search in *java* > //properties files > bool find_custom_jre(string& dest){ > string key("deployment.jre.dir"); > if(file_exists(user_properties_file())) { > bool a = find_property(user_properties_file(),key, dest); [nit] I still do not like this 'a' variable. (it makes some sense in read_deploy_property_value, but not here) > if (a) { > return true; > } > } > if(file_exists(main_properties_file())) { > return find_property(main_properties_file(),key, dest); > } > return false; > } > > > > int main(void){ > printf("user's settings file\n"); > cout << user_properties_file(); > printf("\nmain settings file:\n"); > cout << (main_properties_file()); > printf("\njava settings file \n"); > cout << (default_java_properties_file()); > printf("\nsystem config file\n"); > string a1; > find_system_config_file(a1); > cout << a1; > printf("\ncustom jre\n"); > string a2; > find_custom_jre(a2); > cout << a2; > printf("\nsome custom property\n"); > string a3; > read_deploy_property_value("deployment.security.level", a3); > cout << a3; > printf("\n"); > return 0; > } Good work! -Adam -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130319/f831e455/attachment.html From jvanek at redhat.com Tue Mar 19 08:08:51 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 19 Mar 2013 16:08:51 +0100 Subject: [rfc][icedtea-web] replacing of hardcoded jre path by function In-Reply-To: <513F4CE1.4000506@redhat.com> References: <51276C90.5040903@redhat.com> <513F4CE1.4000506@redhat.com> Message-ID: <51487F83.7050601@redhat.com> On 03/12/2013 04:42 PM, Adam Domurad wrote: > On 02/22/2013 08:03 AM, Jiri Vanek wrote: >> Hi! >> >> This is replacing of hardoced path part 2. This is replacing the constants ICEDTEA_WEB_JRE by functions. However those functions are just returning the (ICEDTEA_WEB_JRE) consatnts now :) But they should prepare path for another parts... >> >> The goal is to have logic in those functions, which will provide the value from deploy.propertie file(s) (or use default (As is as now) if property will not exists.... >> >> J >> >> >> ps: this is part of make-jredir-configurable after install effort > >> diff -r 5501859497c2 plugin/icedteanp/IcedTeaNPPlugin.cc >> --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Feb 22 11:43:19 2013 +0100 >> +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Feb 22 13:51:39 2013 +0100 >> @@ -156,8 +156,14 @@ >> // Data directory for plugin. >> static std::string data_directory; >> >> -// Fully-qualified appletviewer executable. >> -static const char* appletviewer_executable = ICEDTEA_WEB_JRE "/bin/java"; >> +// Fully-qualified appletviewer default executable and rt.jar >> +static const char* appletviewer_default_executable = ICEDTEA_WEB_JRE "/bin/java"; >> +static const char* appletviewer_default_rtjar = ICEDTEA_WEB_JRE "/lib/rt.jar"; >> +// Fully-qualified appletviewer default executable and rt.jar >> +// resolved by methods in runtime. It is expected they will be the same during >> +//whole runtime >> +static char appletviewer_executable[256]; >> +static char appletviewer_rtjar[256]; > > Java user afraid of the heap ? :-) These static buffers are not needed. > I'm must admint I'm not sure how to achive this without static buffer and with new std::string :( >> >> // Applet viewer input channel (needs to be static because it is used in plugin_in_pipe_callback) >> static GIOChannel* in_from_appletviewer = NULL; >> @@ -284,6 +290,16 @@ >> >> #endif >> >> +static char* getPluginExecutbale(char* dest){ > > s/Executbale/Executable/ > > >> + strcpy(dest, appletviewer_default_executable); >> + return dest; >> +} >> + >> +static char* getPluginRtJar(char* dest){ >> + strcpy(dest, appletviewer_default_rtjar); >> + return dest; >> +} > > I prefer get_plugin_java_executable() & get_plugin_java_runtime_jar(). No big deal though, but I would use underscores for consistency however you name it. > > Also please use the signature: > > static std::string whatever_name() { > return ICEDTEA_WEB_JRE "/bin/java"; // or lib/rt.jar > } > > You can get rid of the constant this way, too. Note that char* is valid wherever std::string is taken (but not the other way around). > Note that for now the signature *could* be const char* -- but I strongly encourage std::string for when this becomes read from the properties. > > >> + >> >> /* >> * Find first member in GHashTable* depending on version of glib >> @@ -1517,13 +1533,14 @@ >> static NPError >> plugin_test_appletviewer () >> { >> - PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", appletviewer_executable); >> + >> + PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", getPluginExecutbale(appletviewer_executable)); > > Just a hint, this will need a c_str() here when changed to std::string > >> NPError error = NPERR_NO_ERROR; >> >> gchar* command_line[3] = { NULL, NULL, NULL }; >> gchar** environment; >> >> - command_line[0] = g_strdup (appletviewer_executable); >> + command_line[0] = g_strdup (getPluginExecutbale(appletviewer_executable)); > > Same > >> command_line[1] = g_strdup("-version"); >> command_line[2] = NULL; >> >> @@ -1570,7 +1587,7 @@ >> >> // Construct command line parameters >> >> - command_line.push_back(appletviewer_executable); >> + command_line.push_back(getPluginExecutbale(appletviewer_executable)); > > Same > >> >> //Add JVM args to command_line >> for (int i = 0; i < jvm_args->size(); i++) >> @@ -1581,7 +1598,7 @@ >> command_line.push_back(PLUGIN_BOOTCLASSPATH); >> // set the classpath to avoid using the default (cwd). >> command_line.push_back("-classpath"); >> - command_line.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); >> + command_line.push_back(getPluginRtJar(appletviewer_rtjar)); >> >> // Enable coverage agent if we are running instrumented plugin >> #ifdef COVERAGE_AGENT >> @@ -1652,10 +1669,10 @@ >> gchar *output = NULL; >> std::vector* tokenOutput = NULL; >> >> - commands.push_back(appletviewer_executable); >> + commands.push_back(getPluginExecutbale(appletviewer_executable)); >> commands.push_back(PLUGIN_BOOTCLASSPATH); >> commands.push_back("-classpath"); >> - commands.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); >> + commands.push_back(getPluginRtJar(appletviewer_rtjar)); >> commands.push_back("net.sourceforge.jnlp.controlpanel.CommandLine"); >> commands.push_back("get"); >> commands.push_back("deployment.plugin.jvm.arguments"); >> @@ -2175,11 +2192,11 @@ >> } >> >> // Set appletviewer_executable. >> - PLUGIN_DEBUG("Executing java at %s\n", appletviewer_executable); >> + PLUGIN_DEBUG("Executing java at %s\n", getPluginExecutbale(appletviewer_executable)); > > Same > >> np_error = plugin_test_appletviewer (); >> if (np_error != NPERR_NO_ERROR) >> { >> - fprintf(stderr, "Unable to find java executable %s\n", appletviewer_executable); >> + fprintf(stderr, "Unable to find java executable %s\n", getPluginExecutbale(appletviewer_executable)); > > Same > >> return np_error; >> } >> >> @@ -2191,7 +2208,7 @@ >> >> plugin_instance_mutex = g_mutex_new (); >> >> - PLUGIN_DEBUG ("NP_Initialize: using %s\n", appletviewer_executable); >> + PLUGIN_DEBUG ("NP_Initialize: using %s\n", getPluginExecutbale(appletviewer_executable)); > > Same > >> >> plugin_req_proc = new PluginRequestProcessor(); >> java_req_proc = new JavaMessageSender(); > > The commands vector will not need the c_str(), because it is a vector of std::string (things are much nicer when everything uses std::string, we should move towards that!) Hmmm.. I can not see the difference...:( Itteration 2 attached. Thanx for patience! J. -------------- next part -------------- A non-text attachment was scrubbed... Name: replacingConstWithFunction_2.diff Type: text/x-patch Size: 4356 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130319/1e775167/replacingConstWithFunction_2.diff From jvanek at redhat.com Tue Mar 19 08:12:03 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 19 Mar 2013 16:12:03 +0100 Subject: [rfc][icedtea-web] Fix run-cpp-unit-tests on F18 In-Reply-To: <513E57B3.3020104@redhat.com> References: <513E57B3.3020104@redhat.com> Message-ID: <51488043.7010807@redhat.com> On 03/11/2013 11:16 PM, Adam Domurad wrote: > Hi. It doesn't seem like the gcc flags used bring in the needed dependencies on F18 anymore. > NB: Duplicate flags are harmless, so it shouldn't break any other systems. > > ChangeLog: > 2013-XX-XX Adam Domurad > * Makefile.am > (CPP_UNITTEST_EXECUTABLE): Add -lrt & -lpthread flags, which do not > seem to be brought in on all systems. > > OK to push? > -Adam Well I'm not able to judge this 100% but looks harmless. J. From adomurad at redhat.com Tue Mar 19 08:28:46 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 19 Mar 2013 11:28:46 -0400 Subject: [rfc][icedtea-web] replacing of hardcoded jre path by function In-Reply-To: <51487F83.7050601@redhat.com> References: <51276C90.5040903@redhat.com> <513F4CE1.4000506@redhat.com> <51487F83.7050601@redhat.com> Message-ID: <5148842E.9050509@redhat.com> On 03/19/2013 11:08 AM, Jiri Vanek wrote: > On 03/12/2013 04:42 PM, Adam Domurad wrote: >> [ .. snip .. ] >> The commands vector will not need the c_str(), because it is a vector >> of std::string (things are much nicer when everything uses >> std::string, we should move towards that!) > > Hmmm.. I can not see the difference...:( See notes in-line > > > Itteration 2 attached. Thanx for patience! > J. Thanks for the new iteration! > diff -r 1024198de51f plugin/icedteanp/IcedTeaNPPlugin.cc > --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Tue Mar 19 15:44:43 2013 > +0100 > +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Tue Mar 19 16:02:11 2013 > +0100 > @@ -43,6 +43,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -156,8 +157,14 @@ > // Data directory for plugin. > static std::string data_directory; > > -// Fully-qualified appletviewer executable. > -static const char* appletviewer_executable = ICEDTEA_WEB_JRE "/bin/java"; > +// Fully-qualified appletviewer default executable and rt.jar > +static const char* appletviewer_default_executable = ICEDTEA_WEB_JRE > "/bin/java"; > +static const char* appletviewer_default_rtjar = ICEDTEA_WEB_JRE > "/lib/rt.jar"; > +// Fully-qualified appletviewer default executable and rt.jar > +// resolved by methods in runtime. It is expected they will be the > same during > +//whole runtime > +static std::string appletviewer_executable; > +static std::string appletviewer_rtjar; You can get rid of these if you just have get_plugin_executable & get_plugin_rt_jar return values, and use the return value whenever you need it. > > // Applet viewer input channel (needs to be static because it is used > in plugin_in_pipe_callback) > static GIOChannel* in_from_appletviewer = NULL; > @@ -284,6 +291,16 @@ > > #endif > > +static std::string get_plugin_executable(std::string& dest){ > + dest = std::string (appletviewer_default_executable); > + return dest; > +} Why do you take an argument here ? You should just return the value? > + > +static std::string get_plugin_rt_jar(std::string& dest){ > + dest = std::string (appletviewer_default_rtjar); > + return dest; > +} > + Same > > /* > * Find first member in GHashTable* depending on version of glib > @@ -1517,13 +1534,14 @@ > static NPError > plugin_test_appletviewer () > { > - PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", > appletviewer_executable); > + > + PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", > get_plugin_executable(appletviewer_executable).c_str()); > NPError error = NPERR_NO_ERROR; > > gchar* command_line[3] = { NULL, NULL, NULL }; > gchar** environment; > > - command_line[0] = g_strdup (appletviewer_executable); > + command_line[0] = g_strdup > (get_plugin_executable(appletviewer_executable).c_str()); > command_line[1] = g_strdup("-version"); > command_line[2] = NULL; > > @@ -1570,7 +1588,7 @@ > > // Construct command line parameters > > - command_line.push_back(appletviewer_executable); > + > command_line.push_back(get_plugin_executable(appletviewer_executable).c_str()); As I mentioned earlier, the .c_str() is redundant here and causes an unnecessary string copy (if you're curious why, normally std::string can be passed around and share string data, but it is not able to do this simply given a char*). > > //Add JVM args to command_line > for (int i = 0; i < jvm_args->size(); i++) > @@ -1581,7 +1599,7 @@ > command_line.push_back(PLUGIN_BOOTCLASSPATH); > // set the classpath to avoid using the default (cwd). > command_line.push_back("-classpath"); > - command_line.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); > + command_line.push_back(get_plugin_rt_jar(appletviewer_rtjar).c_str()); Same (drop c_str()) > > // Enable coverage agent if we are running instrumented plugin > #ifdef COVERAGE_AGENT > @@ -1652,10 +1670,10 @@ > gchar *output = NULL; > std::vector* tokenOutput = NULL; > > - commands.push_back(appletviewer_executable); > + > commands.push_back(get_plugin_executable(appletviewer_executable).c_str()); Same (drop c_str()) > commands.push_back(PLUGIN_BOOTCLASSPATH); > commands.push_back("-classpath"); > - commands.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); > + commands.push_back(get_plugin_rt_jar(appletviewer_rtjar).c_str()); Same (drop c_str()) > commands.push_back("net.sourceforge.jnlp.controlpanel.CommandLine"); > commands.push_back("get"); > commands.push_back("deployment.plugin.jvm.arguments"); > @@ -2175,11 +2193,11 @@ > } > > // Set appletviewer_executable. > - PLUGIN_DEBUG("Executing java at %s\n", appletviewer_executable); > + PLUGIN_DEBUG("Executing java at %s\n", > get_plugin_executable(appletviewer_executable).c_str()); > np_error = plugin_test_appletviewer (); > if (np_error != NPERR_NO_ERROR) > { > - fprintf(stderr, "Unable to find java executable %s\n", > appletviewer_executable); > + fprintf(stderr, "Unable to find java executable %s\n", > get_plugin_executable(appletviewer_executable).c_str()); > return np_error; > } > > @@ -2191,7 +2209,7 @@ > > plugin_instance_mutex = g_mutex_new (); > > - PLUGIN_DEBUG ("NP_Initialize: using %s\n", appletviewer_executable); > + PLUGIN_DEBUG ("NP_Initialize: using %s\n", > get_plugin_executable(appletviewer_executable).c_str()); > > plugin_req_proc = new PluginRequestProcessor(); > java_req_proc = new JavaMessageSender(); Looks ok otherwise. Thanks, -Adam From adomurad at redhat.com Tue Mar 19 09:00:10 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 19 Mar 2013 12:00:10 -0400 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError Message-ID: <51488B8A.9050904@redhat.com> I think this is worthy because it would have saved me a lot of time investigating a recent bug. This will continue as normal, but ClassFormatError's really should be logged. It will make resulting ClassNotFoundException's less mysterious. 2013-19-03 Adam Domurad * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java (findClass): Print stacktrace for ClassFormatError -------------- next part -------------- A non-text attachment was scrubbed... Name: log-on-CFE.patch Type: text/x-patch Size: 668 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130319/6008319a/log-on-CFE.patch From adomurad at icedtea.classpath.org Tue Mar 19 09:24:15 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Tue, 19 Mar 2013 16:24:15 +0000 Subject: /hg/icedtea-web: Fix run-cpp-unit-tests on F18 Message-ID: changeset 1a6aed3d44dd in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=1a6aed3d44dd author: Adam Domurad date: Tue Mar 19 12:25:12 2013 -0400 Fix run-cpp-unit-tests on F18 diffstat: ChangeLog | 6 ++++++ Makefile.am | 2 ++ 2 files changed, 8 insertions(+), 0 deletions(-) diffs (25 lines): diff -r e6c51c4b4d20 -r 1a6aed3d44dd ChangeLog --- a/ChangeLog Wed Mar 13 14:51:20 2013 +0100 +++ b/ChangeLog Tue Mar 19 12:25:12 2013 -0400 @@ -1,3 +1,9 @@ +2013-19-03 Adam Domurad + + * Makefile.am + (CPP_UNITTEST_EXECUTABLE): Add -lrt & -lpthread flags, which do not + seem to be brought in on all systems. + 2012-13-03 Jiri Vanek * NEWS: mentioned de translation diff -r e6c51c4b4d20 -r 1a6aed3d44dd Makefile.am --- a/Makefile.am Wed Mar 13 14:51:20 2013 +0100 +++ b/Makefile.am Tue Mar 19 12:25:12 2013 -0400 @@ -367,6 +367,8 @@ $(CXX) $(CXXFLAGS) \ $(addprefix $(PLUGIN_DIR)/,$(PLUGIN_OBJECTS)) \ $(CPP_UNITTEST_DIR)/*.o \ + -lrt \ + -lpthread \ $(GLIB_LIBS) \ $(MOZILLA_LIBS) \ $(CPP_UNITTEST_FRAMEWORK_LIB)\ From adomurad at redhat.com Tue Mar 19 09:31:05 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 19 Mar 2013 12:31:05 -0400 Subject: [RFC][icedtea-web] Fix NumberFormatException in PluginParameters In-Reply-To: <513F0A27.3090803@redhat.com> References: <1362851464.1220.5.camel@localhost.localdomain> <513F0A27.3090803@redhat.com> Message-ID: <514892C9.6010305@redhat.com> On 03/12/2013 06:57 AM, Jiri Vanek wrote: > On 03/09/2013 06:51 PM, Thomas Meyer wrote: >> Hi, >> >> Maybe introduced by changeset 741a105054af (Remove redundant HTML-tag >> scanner from ITW. Do not reconstruct tags.) >> >> Handling message: GetJavaObject instance 3 Worker >> #1/IsPriority=false/IsFree=false/Message=instance 3 reference -161 >> GetJavaObject >> Exception in thread "NetXPanel initializer" >> java.lang.NumberFormatException: For input string: "4294967295" >> at >> java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) >> at java.lang.Integer.parseInt(Integer.java:495) >> at java.lang.Integer.valueOf(Integer.java:582) >> at >> net.sourceforge.jnlp.PluginParameters.getWidth(PluginParameters.java:154) >> at >> sun.applet.PluginAppletPanelFactory$2.run(PluginAppletPanelFactory.java:104) >> at java.lang.Thread.run(Thread.java:722) >> >> Proposed fix: >> >> diff -r e19fe33c82df >> plugin/icedteanp/java/sun/applet/PluginParameterParser.java >> --- a/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Tue >> Mar 05 16:35:40 2013 -0500 >> +++ b/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Sat >> Mar 09 18:50:17 2013 +0100 >> @@ -1,6 +1,5 @@ >> package sun.applet; >> >> -import java.util.Arrays; >> import java.util.HashMap; >> import java.util.Map; >> >> @@ -60,7 +59,12 @@ >> } >> >> static boolean isInt(String s) { >> - return s.matches("^-?\\d+$"); >> + try{ >> + Integer.parseInt(s); >> + return true; >> + } catch(NumberFormatException e) { >> + return false; >> + } >> } >> >> /** >> >> > > Yes please. > Althoug I do not like the exception-driven method, this appears much > better then reinvite more spherical circle where (my) original > approach had to lead after (just little bit) deeper investigations... > > J:( Thomas, shall Jiri or myself push this on your behalf? Thanks for the patch, -Adam From jvanek at redhat.com Tue Mar 19 12:19:48 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 19 Mar 2013 20:19:48 +0100 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <51488B8A.9050904@redhat.com> References: <51488B8A.9050904@redhat.com> Message-ID: <5148BA54.6020900@redhat.com> On 03/19/2013 05:00 PM, Adam Domurad wrote: > I think this is worthy because it would have saved me a lot of time investigating a recent bug. > This will continue as normal, but ClassFormatError's really should be logged. It will make resulting ClassNotFoundException's less mysterious. > > 2013-19-03 Adam Domurad > > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > (findClass): Print stacktrace for ClassFormatError > > Hmm... why keep other ones silent? Why do not rethrow? J. From adomurad at redhat.com Tue Mar 19 12:42:54 2013 From: adomurad at redhat.com (Adam Domurad) Date: Tue, 19 Mar 2013 15:42:54 -0400 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <5148BA54.6020900@redhat.com> References: <51488B8A.9050904@redhat.com> <5148BA54.6020900@redhat.com> Message-ID: <5148BFBE.1010001@redhat.com> On 03/19/2013 03:19 PM, Jiri Vanek wrote: > On 03/19/2013 05:00 PM, Adam Domurad wrote: >> I think this is worthy because it would have saved me a lot of time >> investigating a recent bug. >> This will continue as normal, but ClassFormatError's really should be >> logged. It will make resulting ClassNotFoundException's less mysterious. >> >> 2013-19-03 Adam Domurad >> >> * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java >> (findClass): Print stacktrace for ClassFormatError >> >> > Hmm... why keep other ones silent? You mean PrivilegedActionException? It is worthy perhaps, shall I include it when I push ? (NullJnlpFileException already stores the exception and rethrows, and CNFE represents a failure that we fully expect when we fail to load a classs.) > Why do not rethrow? Well my logic was simply to be as lenient as possible, eg in case we ever pick something up that isn't really a class. However rethrow sounds good to me too. If you prefer this I can do it (I do not expect it to break anything, especially anything sanely organized). I looked at the history of this catch and it is present in the initial commit, so no telling why it was added. > > J. -Adam From gitne at excite.co.jp Tue Mar 19 15:20:05 2013 From: gitne at excite.co.jp (=?ISO-2022-JP?B?SmFjb2IgV2lzb3I=?=) Date: Wed, 20 Mar 2013 07:20:05 +0900 Subject: =?ISO-2022-JP?B?UmU6IFtyZmNdW2ljZWR0ZWEtd2ViXSByZWFkIHByb3BlcnRpZXMgdmFsdWVzIGZyb20gQyBwYXJ0IC0gbGlicmFyeWVkaXRpb24gOik=?= Message-ID: <201303192220.r2JMK5YP017751@mail-web03.excite.co.jp> "Adam Domurad" wrote: > On 03/19/2013 09:41 AM, Jiri Vanek wrote: > > So another round. I think all is fixed excet the c x c+++ headers. Do > > you mind t write little bit more what you need from me? > > > > Also unittests will be needed. I would like to wrote them, ..will need > > probably some code snippet and general advices from you when I will > > integrate (next round?) this "library" inside ITW. > > Doesn't look half bad this time :-) Feel free to propose an integrated > version. > Note that it seems the naming scheme for the CPP side is *.cc files > using camelcase & starting capital, so name it ParseProperties.cc, and > give a header called ParseProperties.h. > (Side note: Actually, they all have the form IcedTea*.cc, but I think > this is too noisy. I'd be in favour of removing this prefix for all the > files actually, any thoughts on this ?) Removing the prefix should be fine, I guess. While at it, I would suggest to change the extension to .cpp as well. AFAIK the MSVC compiler does not recognize .cc files as C++ (perhaps MSVC 11 does, I have not checked yet and I am not into the standards either). Not that it really matters in the context of IcedTea, but there might be somebody in the future who would like to build IcedTea-Web on Windows with a proprietary toolchain. I am currently tring to build the IcedTea-Web Plugin with MinGW64-w64 on Windows. So far, most of the code seams to be okay, despite a few necessary adjustments. Though, I found a specific dependency on glibc with the mkfifo() function. I am not sure whether to replace it with Windows specific code or whether there is a suitable implementation in Cygwin (could not check because the cygwin website was down lately). Any hints or ideas on that? Thanks! Jacob From andrew at icedtea.classpath.org Tue Mar 19 17:03:15 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 20 Mar 2013 00:03:15 +0000 Subject: /hg/icedtea6-hg: 16 new changesets Message-ID: changeset a31bd9ed229b in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=a31bd9ed229b author: Andrew John Hughes date: Thu Feb 14 00:01:03 2013 +0000 Update NEWS with recent releases. 2013-02-14 Andrew John Hughes * NEWS: Add 1.11.6, 1.11.7, 1.12.1 & 1.12.2 releases. changeset 06c8caca7d7c in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=06c8caca7d7c author: Andrew John Hughes date: Fri Feb 15 00:02:19 2013 +0000 PR1317: Provide an option to build with a more up-to-date HotSpot 2013-02-14 Andrew John Hughes PR1317: Provide an option to build with a more up-to-date HotSpot * patches/no-static-linking.patch: Dropped; unneeded if STATIC_CXX is set to false. * INSTALL: Update HotSpot build documentation. * Makefile.am: (SECURITY_PATCHES): Exclude patches in hs23 HotSpot if building with it. (ICEDTEA_PATCHES): Likewise, and exclude the ARM32 port which doesn't work with hs23. Also specialise some patches which differ depending on HotSpot version. (ICEDTEA_ECJ_PATCHES): Specialise hotspot-jdk-dependency.patch depending on version of HotSpot being built. (ICEDTEA_ENV): Pass STATIC_CXX=false to avoid patching. Pass BUILD_GCC and BUILD_CXX in place of suffix patch if building hs23. * NEWS: List this new feature and also the bug fix, PR1318. * acinclude.m4: (IT_ENABLE_ZERO_BUILD): Define only once. Depend on CACAO, Zero and Shark. (IT_SET_SHARK_BUILD): Define only once. (IT_ENABLE_JAMVM): Likewise. (IT_ENABLE_CACAO): Likewise. (IT_WITH_HOTSPOT_BUILD): Likewise. Set ALTERNATE_BUILD to hs23. Depend on Zero build determination and use to pick default. Error out if hs23 is enabled with Zero. * hotspot.map: Add reference to hs23 from the 2.3 tree. * patches/ecj/hotspot/hs23/hotspot-jdk-dependency.patch: Added for hs23 build. * patches/ecj/hotspot/original/hotspot-jdk-dependency.patch: Moved from patches/ecj/hotspot-jdk-dependency.patch. * patches/gcc-suffix-hotspot.patch: Split out for original HotSpot builds. * patches/gcc-suffix.patch: Original version minus HotSpot chunk. * patches/hotspot/hs23/arm-hsdis.patch, * patches/hotspot/hs23/pr639-broken_shark_build.patch: hs23 versions of these patches which don't appear upstream. * patches/hotspot/original/arm-hsdis.patch, * patches/hotspot/original/pr639-broken_shark_build.patch: Moved from patches. * patches/hotspot/hs23/remove_jsr292_tests.patch: Remove JSR292 tests from hs23 HotSpot when building on 6. changeset 3439277534e3 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=3439277534e3 author: Andrew John Hughes date: Fri Feb 15 01:09:35 2013 +0000 PR1319: Support GIF lib v5. 2013-02-14 Andrew John Hughes PR1319: Support GIF lib v5. * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * patches/pr1319-support_giflib_5.patch: Support building with giflib 5.x. changeset 8b08136ed5c1 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=8b08136ed5c1 author: Andrew John Hughes date: Sat Feb 16 14:49:07 2013 +0000 Fix build with/without hs23 for CACAO and SystemTap options. 2013-02-15 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Specialise HotSpot segment of CACAO memory patch and some SystemTap patches. Split remaining SystemTap patches between hs23 and original builds. * patches/cacao/memory.patch: Remove HotSpot fragments. * patches/hotspot/hs23/systemtap-alloc-size-workaround.patch: hs23 version of existing patch. * patches/hotspot/hs23/systemtap.patch: Taken from IcedTea7 2.3. * patches/hotspot/hs23/systemtap_gc.patch: hs23 version of existing patch. * patches/hotspot/original/sdt-arguments.patch * patches/hotspot/original/sdt-dtrace-hpp.patch * patches/hotspot/original/sdt-jni.patch * patches/hotspot/original/sdt-make.patch: * patches/hotspot/original/systemtap-alloc-size-workaround.patch * patches/hotspot/original/systemtap_gc.patch: Moved from.... * patches/sdt-arguments.patch * patches/sdt-dtrace-hpp.patch * patches/sdt-jni.patch * patches/sdt-make.patch * patches/systemtap-alloc-size-workaround.patch * patches/systemtap_gc.patch: ...here. changeset 9b60104392f1 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=9b60104392f1 author: Andrew John Hughes date: Sun Feb 17 16:27:54 2013 +0000 Fix .hgignore not to hide patches and add missing ones. 2013-02-17 Andrew John Hughes * .hgignore: Fix so the cacao patches directory isn't hidden. * patches/cacao/hotspot/hs23/memory.patch, * patches/cacao/hotspot/original/memory.patch: Add patches missed from last commit. changeset ed710bbd6305 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=ed710bbd6305 author: Andrew John Hughes date: Wed Feb 20 13:11:53 2013 +1100 Add release notes for 1.11.8 & 1.12.3. 2013-02-20 Andrew John Hughes * NEWS: Add 1.11.8 & 1.12.3 release notes. changeset 9389cc43b7b8 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=9389cc43b7b8 author: Andrew John Hughes date: Wed Mar 06 19:22:19 2013 +0000 Add 2013/02/19 security patches. 2013-02-15 Andrew John Hughes * Makefile.am: (SECURITY_PATCHES): Add latest security patches. * patches/security/20130219/8006446.patch, * patches/security/20130219/8006777.patch, * patches/security/20130219/8007688.patch: New patches for next security update. changeset 076acbb953a5 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=076acbb953a5 author: Andrew John Hughes date: Wed Mar 06 19:28:09 2013 +0000 Add LogManager regression fixes. 2013-02-17 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patches. * patches/openjdk/8007393.patch, * patches/openjdk/8007611.patch: Regression fixes for LogManager. changeset 1ecedefb66fa in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=1ecedefb66fa author: Andrew John Hughes date: Thu Mar 07 13:16:01 2013 +0000 Add 2013/03/04 security patches. 2013-03-07 Andrew John Hughes * Makefile.am: (SECURITY_PATCHES): List new patches. * patches/security/20130304/8007014.patch, * patches/security/20130304/8007675.patch: Patches from upstream. * patches/security/20130304/declaration_correction.patch: Correct bad code added to LCMSTransform.java which fails with ecj. changeset 7088315fb75f in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=7088315fb75f author: Andrew John Hughes date: Thu Mar 07 13:21:49 2013 +0000 Add 1.11.9 & 1.12.4 release notes. 2013-03-07 Andrew John Hughes * NEWS: Add 1.11.9 & 1.12.4 release notes. changeset 0f212e1c6cb4 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=0f212e1c6cb4 author: Andrew John Hughes date: Thu Mar 07 15:48:35 2013 +0000 S8009641: OpenJDK 6 build broken via 8007675 fix 2013-03-07 Andrew John Hughes * patches/security/20130304/declaration_correction.patch: Remove local patch... * Makefile.am: Swap patches. * NEWS: Updated. * patches/openjdk/8009641-8007675_build_fix.patch: ...replaced by this from upstream. changeset e162a16dad26 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=e162a16dad26 author: Andrew John Hughes date: Thu Mar 07 15:49:50 2013 +0000 Sync hs23 build with IcedTea7 2.3. Only changes are release tags. 2013-03-07 Andrew John Hughes * hotspot.map: Sync with IcedTea7 2.3 tree; only changes are new release tags. changeset 0bca9bac254b in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=0bca9bac254b author: Andrew John Hughes date: Mon Mar 18 17:45:37 2013 +0000 Sync with IcedTea7 2.3 HotSpot tree again following u17b02 sync. 2013-03-18 Andrew John Hughes * hotspot.map: Sync with IcedTea7 2.3 tree again following u17b02 sync. changeset 18b6e9eaf3e8 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=18b6e9eaf3e8 author: Andrew John Hughes date: Mon Mar 18 21:34:40 2013 +0000 Backport of 7197906 (bundled HotSpot only) and addition of a simpler fix for the 7017193 memory leak. 2013-03-18 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patches to appropriate HotSpot builds. * patches/hotspot/hs23/revert-7017193.patch: Backport from 2.x series. Revert the upstream fix for 7017193 and add a much simpler fix using free which doesn't suffer from performance issues. https://bugzilla.redhat.com/show_bug.cgi?id=902004 For HotSpot 23 only. * patches/hotspot/original/7197906-handle_32_bit_shifts.patch: Backport from OpenJDK 7 for bundled HotSpot only. * patches/hotspot/original/fix_get_stack_bounds_leak.patch: Same fix for 7017193 as in patch above, but for bundled HotSpot, which doesn't have the upstream fix. * NEWS: Updated. changeset 6415ddeeeb09 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=6415ddeeeb09 author: Andrew John Hughes date: Tue Mar 19 00:21:31 2013 +0000 Merge changeset c01c31ed2f60 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=c01c31ed2f60 author: Andrew John Hughes date: Wed Mar 20 00:03:03 2013 +0000 Sync with upstream availability of latest security patches. 2013-03-19 Andrew John Hughes * patches/openjdk/8004341-jck_dialog_failure.patch, * patches/openjdk/8005615-failure_to_load_logger_implementation.patch, * patches/openjdk/8007393.patch, * patches/openjdk/8007611.patch, * patches/openjdk/8009641-8007675_build_fix.patch, * patches/security/20130201/6563318.patch, * patches/security/20130201/6664509.patch, * patches/security/20130201/6776941.patch, * patches/security/20130201/7141694.patch, * patches/security/20130201/7173145.patch, * patches/security/20130201/7186945.patch, * patches/security/20130201/7186948.patch, * patches/security/20130201/7186952.patch, * patches/security/20130201/7186954.patch, * patches/security/20130201/7192392.patch, * patches/security/20130201/7192393.patch, * patches/security/20130201/7192977.patch, * patches/security/20130201/7197546.patch, * patches/security/20130201/7200491.patch, * patches/security/20130201/7200500.patch, * patches/security/20130201/7201064.patch, * patches/security/20130201/7201066.patch, * patches/security/20130201/7201068.patch, * patches/security/20130201/7201070.patch, * patches/security/20130201/7201071.patch, * patches/security/20130201/8000210.patch, * patches/security/20130201/8000537.patch, * patches/security/20130201/8000540.patch, * patches/security/20130201/8000631.patch, * patches/security/20130201/8001235.patch, * patches/security/20130201/8001242.patch, * patches/security/20130201/8001307.patch, * patches/security/20130201/8001972.patch, * patches/security/20130201/8002325.patch, * patches/security/20130219/8006446.patch, * patches/security/20130219/8006777.patch, * patches/security/20130219/8007688.patch, * patches/security/20130304/8007014.patch, * patches/security/20130304/8007675.patch: Remove patches available upstream. * Makefile.am: (JAXP_DROP_ZIP): Update to jaxp144_05.zip with latest security fix included. (JAXP_DROP_SHA256SUM): Likewise. (SECURITY_PATCHES): Remove ones available upstream (all from 2013/02/01, 2013/02/19 and 2013/03/04). (ICEDTEA_PATCHES): Remove patches for 8005615, 8004341, 8007393 & 8007611 available upstream. * patches/ecj/override.patch: Add new case introduced by upstream version of security patches (sigh...) diffstat: .hgignore | 7 +- ChangeLog | 233 + INSTALL | 18 +- Makefile.am | 163 +- NEWS | 141 +- acinclude.m4 | 27 +- hotspot.map | 1 + patches/arm-hsdis.patch | 90 - patches/cacao/hotspot/hs23/memory.patch | 36 + patches/cacao/hotspot/original/memory.patch | 36 + patches/cacao/memory.patch | 36 - patches/ecj/hotspot-jdk-dependency.patch | 25 - patches/ecj/hotspot/hs23/hotspot-jdk-dependency.patch | 23 + patches/ecj/hotspot/original/hotspot-jdk-dependency.patch | 25 + patches/ecj/override.patch | 51 + patches/gcc-suffix-hotspot.patch | 31 + patches/gcc-suffix.patch | 31 - patches/hotspot/hs23/arm-hsdis.patch | 72 + patches/hotspot/hs23/pr639-broken_shark_build.patch | 27 + patches/hotspot/hs23/remove_jsr292_tests.patch | 199 + patches/hotspot/hs23/revert-7017193.patch | 138 + patches/hotspot/hs23/systemtap-alloc-size-workaround.patch | 12 + patches/hotspot/hs23/systemtap.patch | 140 + patches/hotspot/hs23/systemtap_gc.patch | 378 + patches/hotspot/original/7197906-handle_32_bit_shifts.patch | 33 + patches/hotspot/original/arm-hsdis.patch | 90 + patches/hotspot/original/fix_get_stack_bounds_leak.patch | 12 + patches/hotspot/original/pr639-broken_shark_build.patch | 44 + patches/hotspot/original/sdt-arguments.patch | 24 + patches/hotspot/original/sdt-dtrace-hpp.patch | 103 + patches/hotspot/original/sdt-jni.patch | 37 + patches/hotspot/original/sdt-make.patch | 51 + patches/hotspot/original/systemtap-alloc-size-workaround.patch | 17 + patches/hotspot/original/systemtap_gc.patch | 369 + patches/no-static-linking.patch | 44 - patches/openjdk/8004341-jck_dialog_failure.patch | 26 - patches/openjdk/8005615-failure_to_load_logger_implementation.patch | 542 - patches/pr1319-support_giflib_5.patch | 29 + patches/pr639-broken_shark_build.patch | 44 - patches/sdt-arguments.patch | 24 - patches/sdt-dtrace-hpp.patch | 103 - patches/sdt-jni.patch | 37 - patches/sdt-make.patch | 51 - patches/security/20130201/6563318.patch | 36 - patches/security/20130201/6664509.patch | 1322 - patches/security/20130201/6776941.patch | 272 - patches/security/20130201/7141694.patch | 87 - patches/security/20130201/7173145.patch | 22 - patches/security/20130201/7186945.patch | 10819 ---------- patches/security/20130201/7186948.patch | 20 - patches/security/20130201/7186952.patch | 127 - patches/security/20130201/7186954.patch | 81 - patches/security/20130201/7192392.patch | 695 - patches/security/20130201/7192393.patch | 60 - patches/security/20130201/7192977.patch | 444 - patches/security/20130201/7197546.patch | 479 - patches/security/20130201/7200491.patch | 49 - patches/security/20130201/7200500.patch | 60 - patches/security/20130201/7201064.patch | 125 - patches/security/20130201/7201066.patch | 66 - patches/security/20130201/7201068.patch | 83 - patches/security/20130201/7201070.patch | 31 - patches/security/20130201/7201071.patch | 553 - patches/security/20130201/8000210.patch | 104 - patches/security/20130201/8000537.patch | 334 - patches/security/20130201/8000540.patch | 187 - patches/security/20130201/8000631.patch | 3964 --- patches/security/20130201/8001235.patch | 37 - patches/security/20130201/8001242.patch | 61 - patches/security/20130201/8001307.patch | 27 - patches/security/20130201/8001972.patch | 438 - patches/security/20130201/8002325.patch | 59 - patches/systemtap-alloc-size-workaround.patch | 17 - patches/systemtap_gc.patch | 369 - 74 files changed, 2466 insertions(+), 22182 deletions(-) diffs (truncated from 25215 to 500 lines): diff -r 7d578c967e3d -r c01c31ed2f60 .hgignore --- a/.hgignore Wed Feb 13 18:26:57 2013 +0000 +++ b/.hgignore Wed Mar 20 00:03:03 2013 +0000 @@ -4,10 +4,6 @@ missing aclocal.m4 autom4te.cache -cacao -netbeans -visualvm -bootstrap build debian lib @@ -52,3 +48,6 @@ syntax: regexp ^openjdk +^cacao +^bootstrap +^jamvm diff -r 7d578c967e3d -r c01c31ed2f60 ChangeLog --- a/ChangeLog Wed Feb 13 18:26:57 2013 +0000 +++ b/ChangeLog Wed Mar 20 00:03:03 2013 +0000 @@ -1,3 +1,231 @@ +2013-03-19 Andrew John Hughes + + * patches/openjdk/8004341-jck_dialog_failure.patch, + * patches/openjdk/8005615-failure_to_load_logger_implementation.patch, + * patches/openjdk/8007393.patch, + * patches/openjdk/8007611.patch, + * patches/openjdk/8009641-8007675_build_fix.patch, + * patches/security/20130201/6563318.patch, + * patches/security/20130201/6664509.patch, + * patches/security/20130201/6776941.patch, + * patches/security/20130201/7141694.patch, + * patches/security/20130201/7173145.patch, + * patches/security/20130201/7186945.patch, + * patches/security/20130201/7186948.patch, + * patches/security/20130201/7186952.patch, + * patches/security/20130201/7186954.patch, + * patches/security/20130201/7192392.patch, + * patches/security/20130201/7192393.patch, + * patches/security/20130201/7192977.patch, + * patches/security/20130201/7197546.patch, + * patches/security/20130201/7200491.patch, + * patches/security/20130201/7200500.patch, + * patches/security/20130201/7201064.patch, + * patches/security/20130201/7201066.patch, + * patches/security/20130201/7201068.patch, + * patches/security/20130201/7201070.patch, + * patches/security/20130201/7201071.patch, + * patches/security/20130201/8000210.patch, + * patches/security/20130201/8000537.patch, + * patches/security/20130201/8000540.patch, + * patches/security/20130201/8000631.patch, + * patches/security/20130201/8001235.patch, + * patches/security/20130201/8001242.patch, + * patches/security/20130201/8001307.patch, + * patches/security/20130201/8001972.patch, + * patches/security/20130201/8002325.patch, + * patches/security/20130219/8006446.patch, + * patches/security/20130219/8006777.patch, + * patches/security/20130219/8007688.patch, + * patches/security/20130304/8007014.patch, + * patches/security/20130304/8007675.patch: + Remove patches available upstream. + * Makefile.am: + (JAXP_DROP_ZIP): Update to jaxp144_05.zip + with latest security fix included. + (JAXP_DROP_SHA256SUM): Likewise. + (SECURITY_PATCHES): Remove ones available + upstream (all from 2013/02/01, 2013/02/19 + and 2013/03/04). + (ICEDTEA_PATCHES): Remove patches for + 8005615, 8004341, 8007393 & 8007611 + available upstream. + * patches/ecj/override.patch: + Add new case introduced by upstream version + of security patches (sigh...) + +2013-03-18 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patches to appropriate + HotSpot builds. + * patches/hotspot/hs23/revert-7017193.patch: + Backport from 2.x series. Revert the upstream + fix for 7017193 and add a much simpler fix using + free which doesn't suffer from performance issues. + https://bugzilla.redhat.com/show_bug.cgi?id=902004 + For HotSpot 23 only. + * patches/hotspot/original/7197906-handle_32_bit_shifts.patch: + Backport from OpenJDK 7 for bundled HotSpot only. + * patches/hotspot/original/fix_get_stack_bounds_leak.patch: + Same fix for 7017193 as in patch above, but for bundled HotSpot, + which doesn't have the upstream fix. + * NEWS: Updated. + +2013-03-18 Andrew John Hughes + + * hotspot.map: Sync with IcedTea7 2.3 tree + again following u17b02 sync. + +2013-03-07 Andrew John Hughes + + * hotspot.map: Sync with IcedTea7 2.3 tree; + only changes are new release tags. + +2013-03-07 Andrew John Hughes + + * patches/security/20130304/declaration_correction.patch: + Remove local patch... + * Makefile.am: Swap patches. + * NEWS: Updated. + * patches/openjdk/8009641-8007675_build_fix.patch: + ...replaced by this from upstream. + +2013-03-07 Andrew John Hughes + + * NEWS: + Add 1.11.9 & 1.12.4 release notes. + +2013-03-07 Andrew John Hughes + + * Makefile.am: + (SECURITY_PATCHES): List new patches. + * patches/security/20130304/8007014.patch, + * patches/security/20130304/8007675.patch: + Patches from upstream. + * patches/security/20130304/declaration_correction.patch: + Correct bad code added to LCMSTransform.java + which fails with ecj. + +2013-02-17 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patches. + * patches/openjdk/8007393.patch, + * patches/openjdk/8007611.patch: + Regression fixes for LogManager. + +2013-02-15 Andrew John Hughes + + * Makefile.am: + (SECURITY_PATCHES): Add latest security patches. + * patches/security/20130219/8006446.patch, + * patches/security/20130219/8006777.patch, + * patches/security/20130219/8007688.patch: + New patches for next security update. + +2013-02-20 Andrew John Hughes + + * NEWS: + Add 1.11.8 & 1.12.3 release notes. + +2013-02-17 Andrew John Hughes + + * .hgignore: Fix so the cacao patches directory + isn't hidden. + * patches/cacao/hotspot/hs23/memory.patch, + * patches/cacao/hotspot/original/memory.patch: + Add patches missed from last commit. + +2013-02-15 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Specialise HotSpot segment of + CACAO memory patch and some SystemTap patches. + Split remaining SystemTap patches between hs23 + and original builds. + * patches/cacao/memory.patch: + Remove HotSpot fragments. + * patches/hotspot/hs23/systemtap-alloc-size-workaround.patch: + hs23 version of existing patch. + * patches/hotspot/hs23/systemtap.patch: + Taken from IcedTea7 2.3. + * patches/hotspot/hs23/systemtap_gc.patch: + hs23 version of existing patch. + * patches/hotspot/original/sdt-arguments.patch + * patches/hotspot/original/sdt-dtrace-hpp.patch + * patches/hotspot/original/sdt-jni.patch + * patches/hotspot/original/sdt-make.patch: + * patches/hotspot/original/systemtap-alloc-size-workaround.patch + * patches/hotspot/original/systemtap_gc.patch: + Moved from.... + * patches/sdt-arguments.patch + * patches/sdt-dtrace-hpp.patch + * patches/sdt-jni.patch + * patches/sdt-make.patch + * patches/systemtap-alloc-size-workaround.patch + * patches/systemtap_gc.patch: + ...here. + +2013-02-14 Andrew John Hughes + + PR1319: Support GIF lib v5. + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * patches/pr1319-support_giflib_5.patch: + Support building with giflib 5.x. + +2013-02-14 Andrew John Hughes + + PR1317: Provide an option to build with a more up-to-date HotSpot + * patches/no-static-linking.patch: + Dropped; unneeded if STATIC_CXX is set to false. + * INSTALL: Update HotSpot build documentation. + * Makefile.am: + (SECURITY_PATCHES): Exclude patches in hs23 HotSpot + if building with it. + (ICEDTEA_PATCHES): Likewise, and exclude the ARM32 + port which doesn't work with hs23. Also specialise + some patches which differ depending on HotSpot version. + (ICEDTEA_ECJ_PATCHES): Specialise hotspot-jdk-dependency.patch + depending on version of HotSpot being built. + (ICEDTEA_ENV): Pass STATIC_CXX=false to avoid patching. + Pass BUILD_GCC and BUILD_CXX in place of suffix patch if + building hs23. + * NEWS: + List this new feature and also the bug fix, PR1318. + * acinclude.m4: + (IT_ENABLE_ZERO_BUILD): Define only once. Depend on + CACAO, Zero and Shark. + (IT_SET_SHARK_BUILD): Define only once. + (IT_ENABLE_JAMVM): Likewise. + (IT_ENABLE_CACAO): Likewise. + (IT_WITH_HOTSPOT_BUILD): Likewise. Set ALTERNATE_BUILD + to hs23. Depend on Zero build determination and use to + pick default. Error out if hs23 is enabled with Zero. + * hotspot.map: Add reference to hs23 from the 2.3 tree. + * patches/ecj/hotspot/hs23/hotspot-jdk-dependency.patch: + Added for hs23 build. + * patches/ecj/hotspot/original/hotspot-jdk-dependency.patch: + Moved from patches/ecj/hotspot-jdk-dependency.patch. + * patches/gcc-suffix-hotspot.patch: + Split out for original HotSpot builds. + * patches/gcc-suffix.patch: Original version minus HotSpot + chunk. + * patches/hotspot/hs23/arm-hsdis.patch, + * patches/hotspot/hs23/pr639-broken_shark_build.patch: + hs23 versions of these patches which don't appear upstream. + * patches/hotspot/original/arm-hsdis.patch, + * patches/hotspot/original/pr639-broken_shark_build.patch: + Moved from patches. + * patches/hotspot/hs23/remove_jsr292_tests.patch: + Remove JSR292 tests from hs23 HotSpot when building on 6. + +2013-02-14 Andrew John Hughes + + * NEWS: Add 1.11.6, 1.11.7, 1.12.1 & 1.12.2 + releases. + 2013-02-08 Andrew John Hughes PR1301: PR1171 causes Zero builds to fail @@ -427,6 +655,11 @@ 2012-10-31 Andrew John Hughes + * Makefile.am: + (OPENJDK_VERSION): Bump to next release, b28. + +2012-10-31 Andrew John Hughes + * generated/com/sun/corba/se/impl/logging/ActivationSystemException.java, * generated/com/sun/corba/se/impl/logging/IORSystemException.java, * generated/com/sun/corba/se/impl/logging/InterceptorsSystemException.java, diff -r 7d578c967e3d -r c01c31ed2f60 INSTALL --- a/INSTALL Wed Feb 13 18:26:57 2013 +0000 +++ b/INSTALL Wed Mar 20 00:03:03 2013 +0000 @@ -319,12 +319,18 @@ of the requested build. At present, IcedTea6 supports the 'original' HotSpot 20 provided as -part of the upstream tarball. Note that the norm. is for up to one -alternate (non-default) build to be supported and just passing ---with-hotspot-build (equivalent to --with-hotspot-build=yes) will -always provide the alternate build. Conversely, passing ---without-hotspot-build (equivalent to --with-hotspot-build=no) -provides the original build from the OpenJDK tarball. +part of the upstream tarball and 'hs23', the HotSpot used by the IcedTea +2.3.x series. Note that the norm. is for up to one alternate (non-default) +build to be supported and just passing --with-hotspot-build +(equivalent to --with-hotspot-build=yes) will always provide the alternate +build. Conversely, passing --without-hotspot-build (equivalent to +--with-hotspot-build=no) provides the original build from the OpenJDK tarball. + +When no option is specified, the default build is used. At present, +this is 'hs23' unless the user is building Zero or Shark (either by +choice, or because the build has default to this on architectures +other than x86/x86_64/sparc). As 'hs23' is known not to work with +Zero or Shark, 'original' is still the default for these builds. Javascript Support ================== diff -r 7d578c967e3d -r c01c31ed2f60 Makefile.am --- a/Makefile.am Wed Feb 13 18:26:57 2013 +0000 +++ b/Makefile.am Wed Mar 20 00:03:03 2013 +0000 @@ -2,7 +2,7 @@ OPENJDK_DATE = 26_oct_2012 OPENJDK_SHA256SUM = 044c3877b15940ff04f8aa817337f2878a00cc89674854557f1a02f15b1802a0 -OPENJDK_VERSION = b27 +OPENJDK_VERSION = b28 OPENJDK_URL = http://download.java.net/openjdk/jdk6/promoted/$(OPENJDK_VERSION)/ CACAO_VERSION = 68fe50ac34ec @@ -24,8 +24,8 @@ JAF_DROP_ZIP = jdk6-jaf-b20.zip JAF_DROP_SHA256SUM = 78c7b5c9d6271e88ee46abadd018a61f1e9645f8936cc8df1617e5f4f5074012 JAXP_DROP_URL = http://icedtea.classpath.org/download/drops -JAXP_DROP_ZIP = jaxp144_04.zip -JAXP_DROP_SHA256SUM = 490f696218c1fed9cb180680af883fe309b414fec232e9cec19645e12ad0b43c +JAXP_DROP_ZIP = jaxp144_05.zip +JAXP_DROP_SHA256SUM = c1a8a5a219fa55ecbf2ad43b66514335a3e96ccad40bd2ec9165a821343b2bff OPENJDK_HG_URL = http://hg.openjdk.java.net/jdk6/jdk6 HOTSPOT_SRC_ZIP = hotspot.tar.gz @@ -245,42 +245,12 @@ ICEDTEA_FSG_PATCHES = SECURITY_PATCHES = \ - patches/security/20120830/7182135-impossible_to_use_some_editors_directly.patch \ - patches/security/20130201/7201068.patch \ - patches/security/20130201/6563318.patch \ - patches/security/20130201/6664509.patch \ - patches/security/20130201/6776941.patch \ - patches/security/20130201/7141694.patch \ - patches/security/20130201/7173145.patch \ - patches/security/20130201/7186945.patch \ - patches/security/20130201/7186948.patch \ - patches/security/20130201/7186952.patch \ - patches/security/20130201/7186954.patch \ - patches/security/20130201/7192392.patch \ - patches/security/20130201/7192393.patch \ - patches/security/20130201/7192977.patch \ - patches/security/20130201/7197546.patch \ - patches/security/20130201/7200491.patch \ - patches/security/20130201/7200500.patch \ - patches/security/20130201/7201064.patch \ - patches/security/20130201/7201066.patch \ - patches/security/20130201/7201070.patch \ - patches/security/20130201/7201071.patch \ - patches/security/20130201/8000210.patch \ - patches/security/20130201/8000537.patch \ - patches/security/20130201/8000540.patch \ - patches/security/20130201/8000631.patch \ - patches/security/20130201/8001242.patch \ - patches/security/20130201/8001307.patch \ - patches/security/20130201/8001972.patch \ - patches/security/20130201/8002325.patch \ - patches/security/20130201/8001235.patch + patches/security/20120830/7182135-impossible_to_use_some_editors_directly.patch SPECIAL_SECURITY_PATCH = patches/security/20120214/7112642.patch ICEDTEA_PATCHES = \ $(SECURITY_PATCHES) \ - patches/stdc-limit-macros.patch \ patches/openjdk/4993545-nativeinlightfixer.patch \ patches/openjdk/6637796-set_bounds.patch \ patches/openjdk/6607660-treelock.patch \ @@ -303,27 +273,20 @@ patches/parisc-opt.patch \ patches/lucene-crash.patch \ patches/version.patch \ - patches/version-hotspot.patch \ - patches/text-relocations.patch \ patches/openjdk/7043921-java_rmi_cgi.patch \ patches/use-system-tzdata.patch \ patches/headers.patch \ patches/gcc-suffix.patch \ - patches/memory-limits.patch \ patches/libraries.patch \ patches/jvmtiEnv.patch \ patches/lcms.patch \ - patches/print_lsb_release.patch \ patches/uname.patch \ patches/freetypeversion.patch \ patches/nomotif-6706121.patch \ patches/nomotif.patch \ patches/nomotif-mtoolkit.patch \ - patches/alpha-fixes.patch \ patches/alt-jar.patch \ patches/jdk-use-ssize_t.patch \ - patches/use-idx_t.patch \ - patches/params-cast-size_t.patch \ patches/clean-crypto.patch \ patches/arch.patch \ patches/lc_ctype.patch \ @@ -334,8 +297,6 @@ patches/pr261.patch \ patches/sparc-buildfixes.patch \ patches/sparc64-linux.patch \ - patches/sparc-ptracefix.patch \ - patches/sparc-trapsfix.patch \ patches/jtreg-6592792.patch \ patches/s390-noinline.patch \ patches/jtreg-dnd.patch \ @@ -344,15 +305,11 @@ patches/dnd-filelists.patch \ patches/disable-cc-incompatible-sanity-checks.patch \ patches/explicit-target-arch.patch \ - patches/openjdk/7019808-stack_noexec.patch \ patches/parisc.patch \ - patches/sh4-support.patch \ patches/policy-evaluation.patch \ - patches/update-bootclasspath.patch \ patches/openjdk/6959123-libpng_14.patch \ patches/applet_hole.patch \ patches/jtreg-httpTest.patch \ - patches/arm.patch \ patches/debug-dir.patch \ patches/override-redirect-metacity.patch \ patches/openjdk/6967533-pre_epoch.patch \ @@ -363,18 +320,15 @@ patches/openjdk/6510892-httpserver_test.patch \ patches/openjdk/6638712-wildcard_types.patch \ patches/openjdk/6650759-missing_inference.patch \ - patches/numa_on_early_glibc.patch \ patches/jtreg-international-fonts.patch \ patches/f14-fonts.patch \ patches/jtreg-T6638712-fix.patch \ patches/jtreg-T6650759m-fix.patch \ patches/openjdk/7003777-bad-html-entity-parse.patch \ - patches/jtreg-6929067-fix.patch \ patches/rendering-engine-tests.patch \ patches/openjdk/6800846-printing-quality.patch \ patches/rh661505-jpeg.patch \ patches/6703377-freetypescaler.patch \ - patches/ia64-fix.patch \ patches/openjdk/6642612-filechooser_button_sizes.patch \ patches/jtreg-international-fonts-styles.patch \ patches/openjdk/6736649-text_bearings.patch \ @@ -384,8 +338,6 @@ patches/openjdk/4724552-CubicCurve2D.patch \ patches/openjdk/4493128-CubicCurve2D.patch \ patches/openjdk/4645692-CubicCurve2D.solveCubic.patch \ - patches/no-static-linking.patch \ - patches/openjdk/7041156-gcc_export_dynamic.patch \ patches/g344659-sparc_fix.patch \ patches/openjdk/6728834-blurred-lcd-aa-text.patch \ patches/openjdk/6749060-bad-lcd-aa-non-opaque-dest.patch \ @@ -409,14 +361,9 @@ patches/openjdk/7027667-AAShapePipeRegTest.patch \ patches/openjdk/7019861-AA-regression-fix.patch \ patches/g356743-libpng-1.5.patch \ - patches/openjdk/7032388-work_without_cmov_instruction.patch \ - patches/openjdk/7031385-gcc-register-allocation-fix.patch \ patches/openjdk/6986968-crash_on_xim_restart.patch \ patches/openjdk/7036754-stroker-nan.patch \ patches/openjdk/pgram-pipe-regression.patch \ - patches/openjdk/7034464-transparent_huge_pages.patch \ - patches/openjdk/7037939-disable_adaptive_resizing_with_large_pages.patch \ - patches/openjdk/7043564-hugepage.patch \ patches/openjdk/mutter.patch \ patches/fonts-rhel-version.patch \ patches/openjdk/7036148-npe-null-jmenu-name.patch \ @@ -431,30 +378,21 @@ patches/openjdk/6818312-com.sun.awt.SecurityWarning.getSize.patch \ patches/jtreg-MappedByteBuffer-Basic.patch \ patches/openjdk/7008106-WindowOpacity.patch \ - patches/openjdk/6956668-misbehavior_of_XOR_operator_with_int.patch \ patches/openjdk/6699843-IllegalArgumentException_drawString.patch \ patches/openjdk/6918065-Crash_in_Java2D_blit_loop.patch \ patches/openjdk/6623219-Font_canDisplayUpTo_does_not_work.patch \ patches/openjdk/6783910-java_awt_Color_brighter_darker_fix.patch \ patches/openjdk/6785424-SecurityException_locating_physical_fonts.patch \ - patches/openjdk/7047069-Array_can_dynamically_change_size.patch \ - patches/openjdk/6796786-invalid_FP_identity_transform.patch \ - patches/openjdk/7042070-Typo_in_Test6796786.patch \ patches/openjdk/6679308-Poor_text_rendering_on_translucent_image.patch \ patches/openjdk/6842838-64-bit_failure_in_handling_invalid_manifest.patch \ patches/openjdk/6882768-test_for_6842838_is_broken.patch \ - patches/pr639-broken_shark_build.patch \ + patches/hotspot/$(HSBUILD)/pr639-broken_shark_build.patch \ patches/powerpc-stacksize.patch \ - patches/jtreg-remove-test-6987555.patch \ - patches/jtreg-remove-test-6991596.patch \ - patches/openjdk/7036220-shark_llvm_29_headers.patch \ - patches/openjdk/7029152-String_intrinsics_miss_optimization.patch \ patches/openjdk/6711682-JCheckBox_in_JTable_does_not_respond_to_click.patch \ patches/openjdk/6758179-D3D_AlphaComposite_is_applied_incorrectly.patch \ patches/jtreg-ConstructDeflaterInput-fix.patch \ patches/openjdk/6613904-GroupLayout_createParallelGroup_null_arg.patch \ patches/openjdk/7049339-anyblit-broken.patch \ - patches/jtreg-hotspot-Test7020373-fix.patch \ patches/openjdk/4917091-javac_rejects_array_over_128_in_length.patch \ patches/openjdk/6390045-error_cannot_access_java_lang_void.patch \ patches/openjdk/6752638-preferLocaleFonts_throws_NPE.patch \ @@ -462,15 +400,12 @@ patches/openjdk/6669869-Beans_isDesignTime_should_be_per-AppContext.patch \ patches/openjdk/6934356-Vector_writeObject_serialization_DL.patch \ patches/openjdk/7036582-Improve_test_coverage_of_BigDecimal.patch \ - patches/pr690-shark-jit-hs20.patch \ - patches/pr696-zero-fast_aldc-hs20.patch \ patches/openjdk/6806261-BigDecimal_longValueExact_throws_NPE.patch \ patches/openjdk/6371401-BigInteger.shift_throws_StackOverflowError.patch \ patches/openjdk/6826104-npe_on_app_and_toolkit_modal_dialog_click.patch \ From andrew at icedtea.classpath.org Wed Mar 20 02:27:28 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 20 Mar 2013 09:27:28 +0000 Subject: /hg/release/icedtea6-1.11: Add backport of 7197906 and alternate... Message-ID: changeset deabc521f9d2 in /hg/release/icedtea6-1.11 details: http://icedtea.classpath.org/hg/release/icedtea6-1.11?cmd=changeset;node=deabc521f9d2 author: Andrew John Hughes date: Wed Mar 20 09:27:20 2013 +0000 Add backport of 7197906 and alternate memory leak fix for 7017193. 2013-03-19 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patches. * patches/openjdk/7197906-handle_32_bit_shifts.patch: Backport from OpenJDK 7. * patches/fix_get_stack_bounds_leak.patch: Add a much simpler fix for 7017193 using free which doesn't suffer from the performance issues in https://bugzilla.redhat.com/show_bug.cgi?id=902004 * NEWS: Updated. diffstat: ChangeLog | 12 ++++++++ Makefile.am | 4 ++- NEWS | 5 +++ patches/fix_get_stack_bounds_leak.patch | 12 ++++++++ patches/openjdk/7197906-handle_32_bit_shifts.patch | 33 ++++++++++++++++++++++ 5 files changed, 65 insertions(+), 1 deletions(-) diffs (101 lines): diff -r d11c7c20b7b9 -r deabc521f9d2 ChangeLog --- a/ChangeLog Tue Mar 12 18:39:47 2013 +0000 +++ b/ChangeLog Wed Mar 20 09:27:20 2013 +0000 @@ -1,3 +1,15 @@ +2013-03-19 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patches. + * patches/openjdk/7197906-handle_32_bit_shifts.patch: + Backport from OpenJDK 7. + * patches/fix_get_stack_bounds_leak.patch: + Add a much simpler fix for 7017193 using + free which doesn't suffer from the performance issues in + https://bugzilla.redhat.com/show_bug.cgi?id=902004 + * NEWS: Updated. + 2013-03-12 Andrew John Hughes * configure.ac: Bump to 1.11.10pre. diff -r d11c7c20b7b9 -r deabc521f9d2 Makefile.am --- a/Makefile.am Tue Mar 12 18:39:47 2013 +0000 +++ b/Makefile.am Wed Mar 20 09:27:20 2013 +0000 @@ -501,7 +501,9 @@ patches/openjdk/8004341-jck_dialog_failure-02.patch \ patches/pr1319-support_giflib_5.patch \ patches/openjdk/8007393.patch \ - patches/openjdk/8007611.patch + patches/openjdk/8007611.patch \ + patches/fix_get_stack_bounds_leak.patch \ + patches/openjdk/7197906-handle_32_bit_shifts.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r d11c7c20b7b9 -r deabc521f9d2 NEWS --- a/NEWS Tue Mar 12 18:39:47 2013 +0000 +++ b/NEWS Wed Mar 20 09:27:20 2013 +0000 @@ -12,6 +12,11 @@ New in release 1.11.10 (2013-04-XX): +* Backports + - S7197906: BlockOffsetArray::power_to_cards_back() needs to handle > 32 bit shifts +* Bug fixes + - Fix get_stack_bounds memory leak (alternate fix for S7197906) + New in release 1.11.9 (2013-03-04): * Security fixes diff -r d11c7c20b7b9 -r deabc521f9d2 patches/fix_get_stack_bounds_leak.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/fix_get_stack_bounds_leak.patch Wed Mar 20 09:27:20 2013 +0000 @@ -0,0 +1,12 @@ +diff --git a/src/os/linux/vm/os_linux.cpp b/src/os/linux/vm/os_linux.cpp +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp +@@ -2650,6 +2650,8 @@ + ssize_t len = getline(&str, &dummy, f); + if (len == -1) { + fclose(f); ++ if (str != NULL) ++ free(str); + return false; + } + diff -r d11c7c20b7b9 -r deabc521f9d2 patches/openjdk/7197906-handle_32_bit_shifts.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/7197906-handle_32_bit_shifts.patch Wed Mar 20 09:27:20 2013 +0000 @@ -0,0 +1,33 @@ +--- openjdk/hotspot/src/share/vm/memory/blockOffsetTable.hpp 2012-09-13 21:22:37.897456500 +0200 ++++ openjdk/hotspot/src/share/vm/memory/blockOffsetTable.hpp 2012-09-13 21:22:34.345253300 +0200 +@@ -285,7 +285,7 @@ + }; + + static size_t power_to_cards_back(uint i) { +- return (size_t)(1 << (LogBase * i)); ++ return (size_t)1 << (LogBase * i); + } + static size_t power_to_words_back(uint i) { + return power_to_cards_back(i) * N_words; +--- openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2012-09-13 21:22:37.901456800 +0200 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2012-09-13 21:22:34.354253900 +0200 +@@ -110,7 +110,7 @@ + #ifndef PRODUCT + bool CMBitMapRO::covers(ReservedSpace rs) const { + // assert(_bm.map() == _virtual_space.low(), "map inconsistency"); +- assert(((size_t)_bm.size() * (size_t)(1 << _shifter)) == _bmWordSize, ++ assert(((size_t)_bm.size() * ((size_t)1 << _shifter)) == _bmWordSize, + "size inconsistency"); + return _bmStartWord == (HeapWord*)(rs.base()) && + _bmWordSize == rs.size()>>LogHeapWordSize; +--- openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2012-09-13 21:22:37.898456600 +0200 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2012-09-13 21:22:34.346253400 +0200 +@@ -273,7 +273,7 @@ + if (_max_fine_entries == 0) { + assert(_mod_max_fine_entries_mask == 0, "Both or none."); + size_t max_entries_log = (size_t)log2_long((jlong)G1RSetRegionEntries); +- _max_fine_entries = (size_t)(1 << max_entries_log); ++ _max_fine_entries = (size_t)1 << max_entries_log; + _mod_max_fine_entries_mask = _max_fine_entries - 1; + + assert(_fine_eviction_sample_size == 0 From jvanek at redhat.com Wed Mar 20 02:51:58 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 20 Mar 2013 10:51:58 +0100 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <5148BFBE.1010001@redhat.com> References: <51488B8A.9050904@redhat.com> <5148BA54.6020900@redhat.com> <5148BFBE.1010001@redhat.com> Message-ID: <514986BE.3050005@redhat.com> On 03/19/2013 08:42 PM, Adam Domurad wrote: > On 03/19/2013 03:19 PM, Jiri Vanek wrote: >> On 03/19/2013 05:00 PM, Adam Domurad wrote: >>> I think this is worthy because it would have saved me a lot of time investigating a recent bug. >>> This will continue as normal, but ClassFormatError's really should be logged. It will make >>> resulting ClassNotFoundException's less mysterious. >>> >>> 2013-19-03 Adam Domurad >>> >>> * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java >>> (findClass): Print stacktrace for ClassFormatError >>> >>> >> Hmm... why keep other ones silent? > > You mean PrivilegedActionException? It is worthy perhaps, shall I include it when I push ? > (NullJnlpFileException already stores the exception and rethrows, and CNFE represents a failure that > we fully expect when we fail to load a classs.) > >> Why do not rethrow? > > Well my logic was simply to be as lenient as possible, eg in case we ever pick something up that > isn't really a class. However rethrow sounds good to me too. If you prefer this I can do it (I do > not expect it to break anything, especially anything sanely organized). I looked at the history of > this catch and it is present in the initial commit, so no telling why it was added. > >> Yup :)) I like your points... But I'm not so sure that it will break anything.... I'm for rethrowing where possible, and be laud/log where we can not rethrow. But in this particular part of code it will need a lot of empiric tastings, or somebody with insight into classlaoders... Omair? (silently CCed O:) In case that we will no able to rethrow, isnt worthy to get rid of printstacktrace and to add standard logger? Just thing to think about.... J. From jfabriko at redhat.com Wed Mar 20 03:31:11 2013 From: jfabriko at redhat.com (Jana Fabrikova) Date: Wed, 20 Mar 2013 11:31:11 +0100 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "function parameters" tests In-Reply-To: <5137A883.504@redhat.com> References: <51376566.2040202@redhat.com> <5137A883.504@redhat.com> Message-ID: <51498FEF.1010400@redhat.com> Hi Adam, thank you for the review. I have changed the reproducer in several ways according to your comments: - the name JToJSFuncParam -> JavascriptFuncParam for better recognition - all the parameters (int 1, String "teststring",...) are now only in the applet code (applet passes to javascript the value and its text representation, so that javascript function is called once from the applet with the value and second from inside this function in javascript with the javascript-evaluated text representation) - the javascript code is inside the html page now - applet[func]() is used, it calls the functions ok On 03/06/2013 09:35 PM, Adam Domurad wrote: > On 03/06/2013 10:48 AM, Jana Fabrikova wrote: >> Hello, >> >> please see the attached patch of new reproducer for J->JS "calling JS >> function with various parameters from J". >> >> Several of the testcases in the patch have commented annotations >> KnownToFailInBrowser, (which i have implemented but is not included yet.) > The test that sends JSObject window as a parameter has normal output in Opera, Firefox, midori, epiphany: JToJSFuncParam applet initialized. Call with [object Window]:object from J Call with [object Window]:object from JS afterTests but the output from chromium and google-chrome is: JToJSFuncParam applet initialized. Call with [object Object]:object from J Call with [object Window]:object from JS afterTests maybe the annotation KnownToFail(failsIn={Browsers.chromium, Browsers.google-chrome} should be added to this particular testcase. The modified reproducer is in the attached patch, thanks, Jana > Can you send a summary of the test failures to the mailing list please ? > The differing output would be useful. Thank you! > >> >> thanks for any comments, >> Jana >> >> 2013-03-06 Jana Fabrikova >> >> * >> /tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java: >> >> adding 19 testcases based on the interactive Liveconnect JS->Java >> function parameters tests >> >> * /tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java: >> the applet that calls JS function >> >> * >> /tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js: >> auxiliary JavaScript code >> >> * >> /tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp: >> jnlp file for displaying applet in the html page >> >> * >> /tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html: >> the html page where the applet calling JS function is embedded > > This could definitely use a clearer name ... I had a long pause where I > didn't notice the different between 'JSToJ' and 'JToJS'. I was quite > confused, thinking you rewrote an already OK'd patch. Perhaps just > JavascriptFunctionParam is better? > >> diff --git >> a/tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html b/tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html >> >> new file mode 100644 >> --- /dev/null >> +++ >> b/tests/reproducers/simple/JToJSFuncParam/resources/JToJSFuncParam.html >> @@ -0,0 +1,27 @@ >> + >> + >> + >> + Java JavaScript LiveConnect - Function Parameters >> + >> + >> + >> + >> + >> + >> + >> +

The JToJSFuncParam html page

>> + >> + > id="jtojsFuncParamApplet" MAYSCRIPT> >> + >> + >> + >> + >> + >> + >> + >> diff --git >> a/tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js >> b/tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js >> new file mode 100644 >> --- /dev/null >> +++ >> b/tests/reproducers/simple/JToJSFuncParam/resources/JToJS_FuncParam.js >> @@ -0,0 +1,19 @@ >> +function JJSParameterTypeFunc(type_parameter,callid) { > > IMO we don't need callid, we only need to have something like: > > function test_types(obj, string_representation) { > applet.printOut( typeof(obj) + " type from Java object" ); > var eval_obj = eval(string_representation); > applet.printOut( typeof(eval_obj) + " type from Javascript eval > object" ); > } > > And then all the strings can be passed from Java as such: > > private void passToJavascript(Object obj, String repr){ > window.call(jsFunctionName, new Object[]{ obj, repr }); > } > private void passToJavascript(Object obj){ > passToJavascript(obj, obj.toString()); > } > > >> + var str = "Call with "+type_parameter.toString() + ":" + >> typeof(type_parameter) + " from " + callid; >> + applet.printOut(str); >> +} >> + >> +function doJJSFuncParamTests(){ >> + >> + var urlArgs = document.URL.split("?"); >> + var testParams = urlArgs[1].split(";"); >> + var func = testParams[0]; >> + var value = eval(decodeURIComponent(testParams[1])); >> + >> + eval('applet.'+func+'()'); > > Would applet[func]() work, not needing eval ? (not entirely sure) > >> + >> + JJSParameterTypeFunc(value,"JS"); >> + >> + applet.printOut("afterTests"); >> +} >> + >> diff --git >> a/tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp >> b/tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp >> new file mode 100644 >> --- /dev/null >> +++ >> b/tests/reproducers/simple/JToJSFuncParam/resources/jtojs-funcparam.jnlp >> @@ -0,0 +1,23 @@ >> + >> + >> + >> + >> + Java to JavaScript LiveConnect - FuncParam >> + IcedTea >> + > href="http://icedtea.classpath.org/wiki/IcedTea-Web#Testing_IcedTea-Web"/> >> >> + LiveConnect - tests for parameter conversion >> between Java and JavaScript. >> + >> + >> + >> + > + href="http://java.sun.com/products/autodl/j2se"/> >> + >> + >> + >> + > + name="J to JS FuncParam" >> + main-class="JToJSFuncParam" >> + width="1000" >> + height="100"> >> + >> + >> diff --git >> a/tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java >> b/tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java >> new file mode 100644 >> --- /dev/null >> +++ b/tests/reproducers/simple/JToJSFuncParam/srcs/JToJSFuncParam.java >> @@ -0,0 +1,137 @@ >> +import java.applet.Applet; >> +import netscape.javascript.JSObject; >> + >> +public class JToJSFuncParam extends Applet { >> + >> + public DummyObject dummyObject = new DummyObject("DummyObject1"); >> + private JSObject window; >> + >> + private final String jsFunctionName = "JJSParameterTypeFunc"; >> + >> + public void init() { >> + window = JSObject.getWindow(this); >> + String initStr = "JToJSFuncParam applet initialized."; >> + System.out.println(initStr); >> + } >> + >> + //methods for testing calling JavaScript function with different >> parameters >> + public void jjsCallintParam(){ >> + int i = 1; >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + public void jjsCalldoubleParam(){ >> + double d = 1.1; >> + window.call(jsFunctionName, new Object[]{ d, "J" }); >> + } >> + >> + public void jjsCallfloatParam(){ >> + float f = 1.5f; >> + window.call(jsFunctionName, new Object[]{ f, "J" }); >> + } >> + >> + public void jjsCalllongParam(){ >> + long l = 10000; >> + window.call(jsFunctionName, new Object[]{ l, "J" }); >> + } >> + >> + public void jjsCallshortParam(){ >> + short s = 1; >> + window.call(jsFunctionName, new Object[]{ s, "J" }); >> + } >> + >> + public void jjsCallbyteParam(){ >> + byte b = 1; >> + window.call(jsFunctionName, new Object[]{ b, "J" }); >> + } >> + >> + public void jjsCallcharParam(){ >> + char c = 'a'; >> + window.call(jsFunctionName, new Object[]{ c, "J" }); >> + } >> + >> + public void jjsCallbooleanParam(){ >> + boolean b = true; >> + window.call(jsFunctionName, new Object[]{ b, "J" }); >> + } >> + >> + public void jjsCallIntegerParam(){ >> + Integer i = new Integer(1); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallDoubleParam(){ >> + Double i = new Double(1.5); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallFloatParam(){ >> + Float i = new Float(1.5); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallLongParam(){ >> + Long i = new Long(10000); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallShortParam(){ >> + Short i = new Short((short)1); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallByteParam(){ >> + Byte i = new Byte((byte)1); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallBooleanParam(){ >> + Boolean i = new Boolean(true); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallCharacterParam(){ >> + Character i = new Character('a'); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallStringParam(){ >> + String i = "teststring"; >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallDummyObjectParam(){ >> + DummyObject i = new DummyObject("dummy1"); >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + public void jjsCallJSObjectParam(){ >> + JSObject i = window; >> + window.call(jsFunctionName, new Object[]{ i, "J" }); >> + } >> + >> + // auxiliary methods and class: >> + public void printOut(String s) { >> + System.out.println(s); >> + } >> + >> + public class DummyObject { >> + private String str; >> + >> + public DummyObject(String s) { >> + this.str = s; >> + } >> + >> + public void setStr(String s) { >> + this.str = s; >> + } >> + >> + public String toString() { >> + return str; >> + } >> + } >> + >> + public DummyObject getNewDummyObject(String s){ >> + return new DummyObject(s); >> + } >> + >> +} >> diff --git >> a/tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java >> b/tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java >> >> new file mode 100644 >> --- /dev/null >> +++ >> b/tests/reproducers/simple/JToJSFuncParam/testcases/JToJSFuncParamTest.java >> >> @@ -0,0 +1,225 @@ >> +/* JToJSFuncParamTest.java >> +Copyright (C) 2012 Red Hat, Inc. >> + >> +This file is part of IcedTea. >> + >> +IcedTea is free software; you can redistribute it and/or >> +modify it under the terms of the GNU General Public License as >> published by >> +the Free Software Foundation, version 2. >> + >> +IcedTea is distributed in the hope that it will be useful, >> +but WITHOUT ANY WARRANTY; without even the implied warranty of >> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> +General Public License for more details. >> + >> +You should have received a copy of the GNU General Public License >> +along with IcedTea; see the file COPYING. If not, write to >> +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, >> Boston, MA >> +02110-1301 USA. >> + >> +Linking this library statically or dynamically with other modules is >> +making a combined work based on this library. Thus, the terms and >> +conditions of the GNU General Public License cover the whole >> +combination. >> + >> +As a special exception, the copyright holders of this library give you >> +permission to link this library with independent modules to produce an >> +executable, regardless of the license terms of these independent >> +modules, and to copy and distribute the resulting executable under >> +terms of your choice, provided that you also meet, for each linked >> +independent module, the terms and conditions of the license of that >> +module. An independent module is a module which is not derived from >> +or based on this library. If you modify this library, you may extend >> +this exception to your version of the library, but you are not >> +obligated to do so. If you do not wish to do so, delete this >> +exception statement from your version. >> + */ >> + >> +import net.sourceforge.jnlp.ProcessResult; >> +import net.sourceforge.jnlp.ServerAccess; >> +import net.sourceforge.jnlp.browsertesting.BrowserTest; >> +import net.sourceforge.jnlp.browsertesting.Browsers; >> +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; >> +import net.sourceforge.jnlp.annotations.NeedsDisplay; >> +import net.sourceforge.jnlp.annotations.TestInBrowsers; >> +//import net.sourceforge.jnlp.annotations.KnownToFailInBrowsers; >> +import org.junit.Assert; >> + >> +import org.junit.Test; >> + >> +public class JToJSFuncParamTest extends BrowserTest { >> + >> + private final String initStr = "JToJSFuncParam applet initialized."; >> + private final String afterStr = "afterTests"; >> + private final String globStart = "Call with "; >> + private final String globEnd = " from JS"; >> + private final String jEnd = " from J"; >> + >> + private class CountingClosingListenerImpl extends >> CountingClosingListener { >> + >> + @Override >> + protected boolean isAlowedToFinish(String s) { >> + return (s.contains(initStr) && s.contains(afterStr)); >> + } >> + } >> + >> + private void evaluateStdoutContents(ProcessResult pr) { >> + // Assert that the applet was initialized. >> + Assert.assertTrue("JToJSFuncParamTest stdout should contain " >> + initStr + " but it didnt.", pr.stdout.contains(initStr)); >> + >> + // Assert that the results of two calls of js func are the same >> + >> + int gs = pr.stdout.indexOf(globStart); >> + int ge = pr.stdout.indexOf(globEnd); >> + int je = pr.stdout.indexOf(jEnd); >> + int jss = je + jEnd.length() + 1; >> + >> + String javaOutput = pr.stdout.substring(gs, je); >> + String jsOutput = pr.stdout.substring(jss, ge); >> + >> + Assert.assertTrue("JToJSFuncParam: the J and JS outputs are >> not equal!", javaOutput.equals(jsOutput)); >> + } >> + >> + private void javaToJSFuncParamTest(String funcStr, String >> valueStr) throws Exception { >> + >> + String strURL = "/JToJSFuncParam.html?" + funcStr + ";" + >> valueStr; >> + ProcessResult pr = server.executeBrowser(strURL, new >> CountingClosingListenerImpl(), new CountingClosingListenerImpl()); >> + evaluateStdoutContents(pr); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_int_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallintParam", "1"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_double_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCalldoubleParam", "1.1"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_float_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallfloatParam", "1.5"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_long_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCalllongParam", "10000"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_short_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallshortParam", "1"); >> + } >> + >> >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_byte_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallbyteParam", "1"); >> + } >> + >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_char_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallcharParam", "97"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_boolean_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallbooleanParam", "true"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_Integer_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallIntegerParam", "1"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_Double_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallDoubleParam", "1.5"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_Float_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallFloatParam", "1.5"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_Long_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallLongParam", "10000"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_Short_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallShortParam", "1"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_Byte_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallByteParam", "1"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_Boolean_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallBooleanParam", "true"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_Character_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallCharacterParam", "97"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_String_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallStringParam", "\"teststring\""); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + public void AppletJToJSFuncParam_DummyObject_Test() throws >> Exception { >> + javaToJSFuncParamTest("jjsCallDummyObjectParam", >> "applet.getNewDummyObject(\"dummy1\")"); >> + } >> + >> + @Test >> + @TestInBrowsers(testIn = { Browsers.all }) >> + @NeedsDisplay >> + //@KnownToFailInBrowsers(failsIn={Browsers.googleChrome, >> Browsers.chromiumBrowser}) >> + public void AppletJToJSFuncParam_JSObject_Test() throws Exception { >> + javaToJSFuncParamTest("jjsCallJSObjectParam", "window"); > > I would say this more tests if we pass the window > >> + } >> + >> +} > > > Looks good overall! > > Happy hacking, > -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: modified_reproducer_JavascriptFuncParam.patch Type: text/x-patch Size: 15180 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/e1774db7/modified_reproducer_JavascriptFuncParam.patch From jvanek at redhat.com Wed Mar 20 03:54:06 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 20 Mar 2013 11:54:06 +0100 Subject: [rfc][icedtea-web] get the custom jre in shell-launchers too In-Reply-To: <51279AF5.4020502@redhat.com> References: <5127841B.108@redhat.com> <51279AF5.4020502@redhat.com> Message-ID: <5149954E.4090900@redhat.com> On 02/22/2013 05:21 PM, Adam Domurad wrote: > On 02/22/2013 09:43 AM, Jiri Vanek wrote: >> And finally bash launchers can check for the custom jre value too.... >> >> >> J. >> >> ps: part of.. you know... >> pps: does this really replace all the c code!??!?! /me started to like bash > > It would be nice if C++ had a regex library. (added in C++11, but I doubt we'll see icedtea-web move > to C++11.) > > Actually during my internship I started to quite like hacking stuff with bash. Great & modular > 'standard library' :-) > >> diff -r ad2e15f15a75 launcher/itweb-settings.in >> --- a/launcher/itweb-settings.in Thu Feb 21 15:26:38 2013 -0500 >> +++ b/launcher/itweb-settings.in Fri Feb 22 15:41:10 2013 +0100 >> @@ -7,6 +7,16 @@ >> BINARY_LOCATION=@ITWEB_SETTINGS_BIN_LOCATION@ >> PROGRAM_NAME=itweb-settings >> >> +a="^deployment.jre.dir *= *" > > 'a' could probably get a better name here, ie 'JRE_PROPERTY' or some-such. > >> +CUSTOM_JRE=`grep "$a" ~/.icedtea/deployment.properties 2>/dev/null | sed "s/$a//g"` >> +if [ "x$CUSTOM_JRE" = "x" ] ; then >> + CUSTOM_JRE=`grep "$a" /etc/.java/.deploy/deployment.properties 2>/dev/null | sed "s/$a//g"` >> +fi; >> +if [ "x$CUSTOM_JRE" != "x" ] ; then >> + JAVA=$CUSTOM_JRE/bin/java >> + CP=$CUSTOM_JRE/lib/rt.jar > > AFAIK this CP= is not needed in itweb-settings.in. > >> +fi; >> + >> ${JAVA} ${LAUNCHER_BOOTCLASSPATH} ${LAUNCHER_FLAGS} \ >> -Dicedtea-web.bin.name=${PROGRAM_NAME} \ >> -Dicedtea-web.bin.location=${BINARY_LOCATION} \ >> diff -r ad2e15f15a75 launcher/javaws.in >> --- a/launcher/javaws.in Thu Feb 21 15:26:38 2013 -0500 >> +++ b/launcher/javaws.in Fri Feb 22 15:41:10 2013 +0100 >> @@ -9,6 +9,16 @@ >> PROGRAM_NAME=javaws >> CP=@JRE@/lib/rt.jar >> >> +a="^deployment.jre.dir *= *" >> +CUSTOM_JRE=`grep "$a" ~/.icedtea/deployment.properties 2>/dev/null | sed "s/$a//g"` >> +if [ "x$CUSTOM_JRE" = "x" ] ; then >> + CUSTOM_JRE=`grep "$a" /etc/.java/.deploy/deployment.properties 2>/dev/null | sed "s/$a//g"` >> +fi; >> +if [ "x$CUSTOM_JRE" != "x" ] ; then > > This is funny. Are you trying to test for a non-empty string ? > [ "$CUSTOM_JRE" != "" ] works fine. ( [ $CUSTOM_JRE != "x" ] is the one that does not ) > Since we have a default, it may also be worth checking [ -e "$CUSTOM_JRE" ] (file exists) here (and > above). > >> + JAVA=$CUSTOM_JRE/bin/java >> + CP=$CUSTOM_JRE/lib/rt.jar >> +fi; >> + >> JAVA_ARGS=( ) >> ARGS=( ) >> COMMAND=() > > Overall this is quite OK, if we do end up including the JRE path in the deployment properties file. > Maybe though it will make life simpler if it's in its own file, eg '.icedtea/jre-path'? > > You have a very valid point about the fact that we should avoid spawning a Java instance just to get > the JVM arguments, however. > We might still want to parse the properties file for this, or we could place it in the file with the > JRE path. > Considering that we need to extract this property from bash, C & Java, it might make sense to use > the simplest format possible though. It would be very bad if a small mistake in how the property > file is treated in Bash or C causes ITW not to be able to run. > > Anyway properties file is not an overly scary format, but still worth thinking about. > > Happy hacking, > -Adam So I think this can go inside. Oook? J. -------------- next part -------------- diff -r e6c51c4b4d20 -r a9920eea7c17 launcher/itweb-settings.in --- a/launcher/itweb-settings.in Wed Mar 13 14:51:20 2013 +0100 +++ b/launcher/itweb-settings.in Mon Mar 18 11:30:39 2013 +0100 @@ -7,6 +7,15 @@ BINARY_LOCATION=@ITWEB_SETTINGS_BIN_LOCATION@ PROGRAM_NAME=itweb-settings +CUSTOM_JRE_REGEX="^deployment.jre.dir *= *" +CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" ~/.icedtea/deployment.properties 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` +if [ "x$CUSTOM_JRE" = "x" ] ; then + CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" /etc/.java/.deploy/deployment.properties 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` +fi; +if [ "x$CUSTOM_JRE" != "x" ] ; then + JAVA=$CUSTOM_JRE/bin/java +fi; + ${JAVA} ${LAUNCHER_BOOTCLASSPATH} ${LAUNCHER_FLAGS} \ -Dicedtea-web.bin.name=${PROGRAM_NAME} \ -Dicedtea-web.bin.location=${BINARY_LOCATION} \ diff -r e6c51c4b4d20 -r a9920eea7c17 launcher/javaws.in --- a/launcher/javaws.in Wed Mar 13 14:51:20 2013 +0100 +++ b/launcher/javaws.in Mon Mar 18 11:30:39 2013 +0100 @@ -9,6 +9,16 @@ PROGRAM_NAME=javaws CP=@JRE@/lib/rt.jar +CUSTOM_JRE_REGEX="^deployment.jre.dir *= *" +CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" ~/.icedtea/deployment.properties 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` +if [ "x$CUSTOM_JRE" = "x" ] ; then + CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" /etc/.java/.deploy/deployment.properties 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` +fi; +if [ "x$CUSTOM_JRE" != "x" ] ; then + JAVA=$CUSTOM_JRE/bin/java + CP=$CUSTOM_JRE/lib/rt.jar +fi; + JAVA_ARGS=( ) ARGS=( ) COMMAND=() From jvanek at redhat.com Wed Mar 20 03:54:58 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 20 Mar 2013 11:54:58 +0100 Subject: [rfc][icedtea-web] dialogue for set jre dir In-Reply-To: <51277A2D.8050904@redhat.com> References: <51277A2D.8050904@redhat.com> Message-ID: <51499582.80604@redhat.com> ping? -------- Original Message -------- Subject: [rfc][icedtea-web] dialogue for set jre dir Date: Fri, 22 Feb 2013 15:01:17 +0100 From: Jiri Vanek To: IcedTea Distro List This is only java part of "make-jredir-configurable after install effort" To jvm settings pane it adds text-field to allow to write path to jre, whih is then saved to properties. There is also button which fill launch jfilechooser (with correct default location) to allow to choose the jre directory And one funny button to validate his effort (with funny colourful messages;). As if the user will add wrong location, he will not even start itw-settings (later). J. -------------- next part -------------- A non-text attachment was scrubbed... Name: setupaAbleJVM-itwsettings.diff Type: text/x-patch Size: 13704 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/6d36a026/setupaAbleJVM-itwsettings.diff From jvanek at redhat.com Wed Mar 20 03:58:34 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 20 Mar 2013 11:58:34 +0100 Subject: Request for review on German localizations for icedtea-web In-Reply-To: <51308A0A.1040602@redhat.com> References: <51308A0A.1040602@redhat.com> Message-ID: <5149965A.7090003@redhat.com> ping? -------- Original Message -------- Subject: Re: Request for review on German localizations for icedtea-web Date: Fri, 01 Mar 2013 11:59:22 +0100 From: Jiri Vanek To: Jacob Wisor CC: distro-pkg-dev at openjdk.java.net On 02/28/2013 07:44 PM, Jacob Wisor wrote: > Hello Jiri, > > I have tested your patch. Here are some of my notes regarding it. Thanx for check! > > "Jiri Vanek" wrote: >> On 02/22/2013 03:04 AM, Jacob Wisor wrote: >>> Hello there! >>> >>>>> Jacob, Alexander - in your emails you have come to conclusion, that there >>>>> are errors - both lexical >>>>> and semantic in original English properties. If you will have spare time, >>>>> do you think - as >>>>> separate patch, you can fix them? > > As I have seen, you have adjusted the relevant message about absolute paths. It is still kind of bothering me because it suggests that there are only two operating systems on this planet. ;) I would rather reformulate it so that it just gives a hint that the specified string is not an absolute path, regardless of its possible form on any given OS. I understand that you want to provide a helpful message to the user but in the world of Java we are probably left with nothing else than just saying that it is not an absolute path, or having specific messages for specific OSs (what I would not advise to do). Seams reasonable. All platform specific traces from this line removed. > > Btw, please note that Linux and Windows are names so that the have to begin with a capital letter in English. Further more Windows is a registered trademark and as such there has to be some notion of it in the product, documentation, or has to have an adjacent trademark symbol when mentioned. AFAIK this especially applies to US law but to many other jurisdictions as well. And, for the sake of completeness it should probably be stated as "Microsoft Windows". So as far as that is concerned, I would rather leave out mentioning explicit OS's names. Damn :) But I understand.... If you will be willing to find and mark such a cases it will be really appreciated. I think you are the only person ever who tried to think about our properties in such an point of view. > > There are even more trademark issues in the Messages.properties file, but I am going to comment on them in my proposals later. > >>>> *** OK, I can try to have look, but generally sometimes the source is quite >>>> confusing and the translator can only guess, what is the correct meaning. >>>> Rather the developers themselves should see our comments about unclear >>>> parts and rephrase them so that the meaning is clear... >>> >>> I can post some proposals for the messages in question. It should not be really that much, but a few of them are utterly confusing indeed. >>> >>> Btw, as I already wrote to Alexandr, I was able to compile at least NetX on Windows today, so I can see the German and Polish translations in the context of the running application. This helps a lot. >>> Having done that, I have also found a minor bug (I did not check whether it has been already reported) in regards to one message on Windows. I have already commented on it. It is the message that refers to absolute paths that must begin with a /. Though absolute paths on Windows do not begin with a / (it is a forbidden character anyway), icedtea-web assumes the (semi-) correct default value. The default value is an absolute Windows path beginning with a drive letter or device. Icedtea-Web still complains about it that it does not begin with a / and prints an error message about the value. It should be easy to fix. >>> >>> Anyway, I will post an updated localization patch ASAP. >>> >>> Regards, >>> Jacob >>> >> >> Wou! >> So there will be also Polish trnaslation? >> /me amazed :) >> >> And I'm happy netx is working on windows !o) >> >> I'm attaching patch to window paths. If you will be able to test, it would be nice (As there is no >> win machine around :( ) I will send [rfc] for it as separate email later. > > So as already mentioned, I have tested it. It compiles and runs. You can have a look at the output log it produces. There are still some cases where the validation does not take effect. I see:-/ btw- the IOException your log is ending with will probably be caused by not existing C:\Users\Jakob\.icedtea\security\ directory. This is definitely bug (as directory should be create din sucha case imho), but ith sould be discused in separate thread. (and probably submitted to classpath bugzilla:-/) > Btw, after reviewing your code I would rather suggest to use java.io.File.isAbsolute(). Please do not try using your own regex pattern to test that, since absolute paths on Windows NT can be even more complex beginning with "\\?\" or "\\.\". There are some further rules to that, so it is probably safest to rely on the work that has already been done by Sun or Oracle. It is even more advisable to use java.io.File.isAbsolute() because every platform specific JRE implementation has their own implementation of it and thus knows best how to check for absoluteness. This way, you do not have to even check for a specific OS before, as you do in boolean net.sourceforge.jnlp.config.BasicValueValidators.canBeWindows(java.lang.String). Although I was aware i was not covering all possible win "path beginnings" I hopped for most of them and seeing "/" in code I utterly forgot about isAbsolute method !-( shame in me:(( So followed, fixed. > > You do not need to bother about Windows stuff for now - unless you really want to. I am going to build IcedTea-Web for and on Windows anyway. There are even more flaws that should be fixed for Windows. Especially determining the user's and application's data files and folders should be fixed for Windows. So I am going take a look into that. Oh tahnk you! It is really loong time since last win build effort. I cross my fingers for you (and for us to help you) to finish this issue! New patch attached. J. ps: considering absolutism of file, as Mac is derived from Linux kernel, I believe from this point of view really just two (UNIX like and DOS-like) exists... (/me hopes O:) J. -------------- next part -------------- A non-text attachment was scrubbed... Name: fixedWinPAthValidator_2.diff Type: text/x-patch Size: 7564 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/7159087f/fixedWinPAthValidator_2.diff From andrew at icedtea.classpath.org Wed Mar 20 04:00:54 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 20 Mar 2013 11:00:54 +0000 Subject: /hg/release/icedtea6-1.12: Add backport of 7197906 and alternate... Message-ID: changeset 12f5fe9e85d3 in /hg/release/icedtea6-1.12 details: http://icedtea.classpath.org/hg/release/icedtea6-1.12?cmd=changeset;node=12f5fe9e85d3 author: Andrew John Hughes date: Wed Mar 20 11:00:45 2013 +0000 Add backport of 7197906 and alternate memory leak fix for 7017193. 2013-03-19 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patches. * patches/openjdk/7197906-handle_32_bit_shifts.patch: Backport from OpenJDK 7. * patches/fix_get_stack_bounds_leak.patch: Add a much simpler fix for 7017193 using free which doesn't suffer from the performance issues in https://bugzilla.redhat.com/show_bug.cgi?id=902004 * NEWS: Updated. diffstat: ChangeLog | 12 ++++++++ Makefile.am | 4 ++- NEWS | 5 +++ patches/fix_get_stack_bounds_leak.patch | 12 ++++++++ patches/openjdk/7197906-handle_32_bit_shifts.patch | 33 ++++++++++++++++++++++ 5 files changed, 65 insertions(+), 1 deletions(-) diffs (101 lines): diff -r 2e114710f951 -r 12f5fe9e85d3 ChangeLog --- a/ChangeLog Tue Mar 12 18:45:33 2013 +0000 +++ b/ChangeLog Wed Mar 20 11:00:45 2013 +0000 @@ -1,3 +1,15 @@ +2013-03-19 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patches. + * patches/openjdk/7197906-handle_32_bit_shifts.patch: + Backport from OpenJDK 7. + * patches/fix_get_stack_bounds_leak.patch: + Add a much simpler fix for 7017193 using + free which doesn't suffer from the performance issues in + https://bugzilla.redhat.com/show_bug.cgi?id=902004 + * NEWS: Updated. + 2013-03-12 Andrew John Hughes * configure.ac: Bump to 1.12.5pre. diff -r 2e114710f951 -r 12f5fe9e85d3 Makefile.am --- a/Makefile.am Tue Mar 12 18:45:33 2013 +0000 +++ b/Makefile.am Wed Mar 20 11:00:45 2013 +0000 @@ -511,7 +511,9 @@ patches/openjdk/8004341-jck_dialog_failure-02.patch \ patches/pr1319-support_giflib_5.patch \ patches/openjdk/8007393.patch \ - patches/openjdk/8007611.patch + patches/openjdk/8007611.patch \ + patches/fix_get_stack_bounds_leak.patch \ + patches/openjdk/7197906-handle_32_bit_shifts.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 2e114710f951 -r 12f5fe9e85d3 NEWS --- a/NEWS Tue Mar 12 18:45:33 2013 +0000 +++ b/NEWS Wed Mar 20 11:00:45 2013 +0000 @@ -12,6 +12,11 @@ New in release 1.12.5 (2013-04-XX): +* Backports + - S7197906: BlockOffsetArray::power_to_cards_back() needs to handle > 32 bit shifts +* Bug fixes + - Fix get_stack_bounds memory leak (alternate fix for S7197906) + New in release 1.12.4 (2013-03-04): * Security fixes diff -r 2e114710f951 -r 12f5fe9e85d3 patches/fix_get_stack_bounds_leak.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/fix_get_stack_bounds_leak.patch Wed Mar 20 11:00:45 2013 +0000 @@ -0,0 +1,12 @@ +diff --git a/src/os/linux/vm/os_linux.cpp b/src/os/linux/vm/os_linux.cpp +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp +@@ -2650,6 +2650,8 @@ + ssize_t len = getline(&str, &dummy, f); + if (len == -1) { + fclose(f); ++ if (str != NULL) ++ free(str); + return false; + } + diff -r 2e114710f951 -r 12f5fe9e85d3 patches/openjdk/7197906-handle_32_bit_shifts.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/7197906-handle_32_bit_shifts.patch Wed Mar 20 11:00:45 2013 +0000 @@ -0,0 +1,33 @@ +--- openjdk/hotspot/src/share/vm/memory/blockOffsetTable.hpp 2012-09-13 21:22:37.897456500 +0200 ++++ openjdk/hotspot/src/share/vm/memory/blockOffsetTable.hpp 2012-09-13 21:22:34.345253300 +0200 +@@ -285,7 +285,7 @@ + }; + + static size_t power_to_cards_back(uint i) { +- return (size_t)(1 << (LogBase * i)); ++ return (size_t)1 << (LogBase * i); + } + static size_t power_to_words_back(uint i) { + return power_to_cards_back(i) * N_words; +--- openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2012-09-13 21:22:37.901456800 +0200 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2012-09-13 21:22:34.354253900 +0200 +@@ -110,7 +110,7 @@ + #ifndef PRODUCT + bool CMBitMapRO::covers(ReservedSpace rs) const { + // assert(_bm.map() == _virtual_space.low(), "map inconsistency"); +- assert(((size_t)_bm.size() * (size_t)(1 << _shifter)) == _bmWordSize, ++ assert(((size_t)_bm.size() * ((size_t)1 << _shifter)) == _bmWordSize, + "size inconsistency"); + return _bmStartWord == (HeapWord*)(rs.base()) && + _bmWordSize == rs.size()>>LogHeapWordSize; +--- openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2012-09-13 21:22:37.898456600 +0200 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2012-09-13 21:22:34.346253400 +0200 +@@ -273,7 +273,7 @@ + if (_max_fine_entries == 0) { + assert(_mod_max_fine_entries_mask == 0, "Both or none."); + size_t max_entries_log = (size_t)log2_long((jlong)G1RSetRegionEntries); +- _max_fine_entries = (size_t)(1 << max_entries_log); ++ _max_fine_entries = (size_t)1 << max_entries_log; + _mod_max_fine_entries_mask = _max_fine_entries - 1; + + assert(_fine_eviction_sample_size == 0 From jvanek at redhat.com Wed Mar 20 04:02:11 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 20 Mar 2013 12:02:11 +0100 Subject: [rfc][icedtea-web] replacing of hardcoded jre path by function In-Reply-To: <5148842E.9050509@redhat.com> References: <51276C90.5040903@redhat.com> <513F4CE1.4000506@redhat.com> <51487F83.7050601@redhat.com> <5148842E.9050509@redhat.com> Message-ID: <51499733.4020903@redhat.com> Looks like we have deal... ok? J. On 03/19/2013 04:28 PM, Adam Domurad wrote: > On 03/19/2013 11:08 AM, Jiri Vanek wrote: >> On 03/12/2013 04:42 PM, Adam Domurad wrote: >>> [ .. snip .. ] >>> The commands vector will not need the c_str(), because it is a vector >>> of std::string (things are much nicer when everything uses >>> std::string, we should move towards that!) >> >> Hmmm.. I can not see the difference...:( > > See notes in-line > >> >> >> Itteration 2 attached. Thanx for patience! >> J. > > Thanks for the new iteration! > >> diff -r 1024198de51f plugin/icedteanp/IcedTeaNPPlugin.cc >> --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Tue Mar 19 15:44:43 2013 >> +0100 >> +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Tue Mar 19 16:02:11 2013 >> +0100 >> @@ -43,6 +43,7 @@ >> #include >> #include >> #include >> +#include >> #include >> #include >> #include >> @@ -156,8 +157,14 @@ >> // Data directory for plugin. >> static std::string data_directory; >> >> -// Fully-qualified appletviewer executable. >> -static const char* appletviewer_executable = ICEDTEA_WEB_JRE "/bin/java"; >> +// Fully-qualified appletviewer default executable and rt.jar >> +static const char* appletviewer_default_executable = ICEDTEA_WEB_JRE >> "/bin/java"; >> +static const char* appletviewer_default_rtjar = ICEDTEA_WEB_JRE >> "/lib/rt.jar"; >> +// Fully-qualified appletviewer default executable and rt.jar >> +// resolved by methods in runtime. It is expected they will be the >> same during >> +//whole runtime >> +static std::string appletviewer_executable; >> +static std::string appletviewer_rtjar; > > You can get rid of these if you just have get_plugin_executable & get_plugin_rt_jar return values, > and use the return value whenever you need it. > >> >> // Applet viewer input channel (needs to be static because it is used >> in plugin_in_pipe_callback) >> static GIOChannel* in_from_appletviewer = NULL; >> @@ -284,6 +291,16 @@ >> >> #endif >> >> +static std::string get_plugin_executable(std::string& dest){ >> + dest = std::string (appletviewer_default_executable); >> + return dest; >> +} > > Why do you take an argument here ? You should just return the value? > >> + >> +static std::string get_plugin_rt_jar(std::string& dest){ >> + dest = std::string (appletviewer_default_rtjar); >> + return dest; >> +} >> + > > Same > >> >> /* >> * Find first member in GHashTable* depending on version of glib >> @@ -1517,13 +1534,14 @@ >> static NPError >> plugin_test_appletviewer () >> { >> - PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", >> appletviewer_executable); >> + >> + PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", >> get_plugin_executable(appletviewer_executable).c_str()); >> NPError error = NPERR_NO_ERROR; >> >> gchar* command_line[3] = { NULL, NULL, NULL }; >> gchar** environment; >> >> - command_line[0] = g_strdup (appletviewer_executable); >> + command_line[0] = g_strdup >> (get_plugin_executable(appletviewer_executable).c_str()); >> command_line[1] = g_strdup("-version"); >> command_line[2] = NULL; >> >> @@ -1570,7 +1588,7 @@ >> >> // Construct command line parameters >> >> - command_line.push_back(appletviewer_executable); >> + >> command_line.push_back(get_plugin_executable(appletviewer_executable).c_str()); > > As I mentioned earlier, the .c_str() is redundant here and causes an unnecessary string copy (if > you're curious why, normally std::string can be passed around and share string data, but it is not > able to do this simply given a char*). > >> >> //Add JVM args to command_line >> for (int i = 0; i < jvm_args->size(); i++) >> @@ -1581,7 +1599,7 @@ >> command_line.push_back(PLUGIN_BOOTCLASSPATH); >> // set the classpath to avoid using the default (cwd). >> command_line.push_back("-classpath"); >> - command_line.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); >> + command_line.push_back(get_plugin_rt_jar(appletviewer_rtjar).c_str()); > > Same (drop c_str()) > >> >> // Enable coverage agent if we are running instrumented plugin >> #ifdef COVERAGE_AGENT >> @@ -1652,10 +1670,10 @@ >> gchar *output = NULL; >> std::vector* tokenOutput = NULL; >> >> - commands.push_back(appletviewer_executable); >> + >> commands.push_back(get_plugin_executable(appletviewer_executable).c_str()); > > Same (drop c_str()) > > >> commands.push_back(PLUGIN_BOOTCLASSPATH); >> commands.push_back("-classpath"); >> - commands.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); >> + commands.push_back(get_plugin_rt_jar(appletviewer_rtjar).c_str()); > > Same (drop c_str()) > >> commands.push_back("net.sourceforge.jnlp.controlpanel.CommandLine"); >> commands.push_back("get"); >> commands.push_back("deployment.plugin.jvm.arguments"); >> @@ -2175,11 +2193,11 @@ >> } >> >> // Set appletviewer_executable. >> - PLUGIN_DEBUG("Executing java at %s\n", appletviewer_executable); >> + PLUGIN_DEBUG("Executing java at %s\n", >> get_plugin_executable(appletviewer_executable).c_str()); >> np_error = plugin_test_appletviewer (); >> if (np_error != NPERR_NO_ERROR) >> { >> - fprintf(stderr, "Unable to find java executable %s\n", >> appletviewer_executable); >> + fprintf(stderr, "Unable to find java executable %s\n", >> get_plugin_executable(appletviewer_executable).c_str()); >> return np_error; >> } >> >> @@ -2191,7 +2209,7 @@ >> >> plugin_instance_mutex = g_mutex_new (); >> >> - PLUGIN_DEBUG ("NP_Initialize: using %s\n", appletviewer_executable); >> + PLUGIN_DEBUG ("NP_Initialize: using %s\n", >> get_plugin_executable(appletviewer_executable).c_str()); >> >> plugin_req_proc = new PluginRequestProcessor(); >> java_req_proc = new JavaMessageSender(); > > > Looks ok otherwise. > Thanks, > -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: replacingConstWithFunction_3.diff Type: text/x-patch Size: 3822 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/bcd958fb/replacingConstWithFunction_3.diff From ptisnovs at icedtea.classpath.org Wed Mar 20 05:09:47 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 20 Mar 2013 12:09:47 +0000 Subject: /hg/rhino-tests: Three new tests added into CompiledScriptClassT... Message-ID: changeset 6ab9e0e1ad94 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=6ab9e0e1ad94 author: Pavel Tisnovsky date: Wed Mar 20 13:12:57 2013 +0100 Three new tests added into CompiledScriptClassTest: getMethod(), getDeclaredMethod() and getAnnotation(). diffstat: ChangeLog | 6 + src/org/RhinoTests/CompiledScriptClassTest.java | 120 ++++++++++++++++++++++++ 2 files changed, 126 insertions(+), 0 deletions(-) diffs (143 lines): diff -r 6832982188e2 -r 6ab9e0e1ad94 ChangeLog --- a/ChangeLog Mon Mar 18 11:07:23 2013 +0100 +++ b/ChangeLog Wed Mar 20 13:12:57 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-20 Pavel Tisnovsky + + * src/org/RhinoTests/CompiledScriptClassTest.java: + Three new tests added into CompiledScriptClassTest: + getMethod(), getDeclaredMethod() and getAnnotation(). + 2013-03-18 Pavel Tisnovsky * src/org/RhinoTests/ScriptExceptionClassTest.java: diff -r 6832982188e2 -r 6ab9e0e1ad94 src/org/RhinoTests/CompiledScriptClassTest.java --- a/src/org/RhinoTests/CompiledScriptClassTest.java Mon Mar 18 11:07:23 2013 +0100 +++ b/src/org/RhinoTests/CompiledScriptClassTest.java Wed Mar 20 13:12:57 2013 +0100 @@ -656,6 +656,126 @@ } /** + * Test for method javax.script.CompiledScript.getClass().getMethod() + */ + protected void testGetMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("eval", new Class[] {javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {javax.script.Bindings.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {}); + methodsThatShouldExist_jdk6.put("getEngine", new Class[] {}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {long.class}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {long.class, int.class}); + methodsThatShouldExist_jdk6.put("wait", new Class[] {}); + methodsThatShouldExist_jdk6.put("hashCode", new Class[] {}); + methodsThatShouldExist_jdk6.put("getClass", new Class[] {}); + methodsThatShouldExist_jdk6.put("equals", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk6.put("toString", new Class[] {}); + methodsThatShouldExist_jdk6.put("notify", new Class[] {}); + methodsThatShouldExist_jdk6.put("notifyAll", new Class[] {}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("eval", new Class[] {}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {javax.script.Bindings.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk7.put("getEngine", new Class[] {}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {long.class, int.class}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {long.class}); + methodsThatShouldExist_jdk7.put("wait", new Class[] {}); + methodsThatShouldExist_jdk7.put("equals", new Class[] {java.lang.Object.class}); + methodsThatShouldExist_jdk7.put("toString", new Class[] {}); + methodsThatShouldExist_jdk7.put("hashCode", new Class[] {}); + methodsThatShouldExist_jdk7.put("getClass", new Class[] {}); + methodsThatShouldExist_jdk7.put("notify", new Class[] {}); + methodsThatShouldExist_jdk7.put("notifyAll", new Class[] {}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.compiledScriptClass.getMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.CompiledScript.getClass().getDeclaredMethod() + */ + protected void testGetDeclaredMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("eval", new Class[] {javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {javax.script.Bindings.class}); + methodsThatShouldExist_jdk6.put("eval", new Class[] {}); + methodsThatShouldExist_jdk6.put("getEngine", new Class[] {}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("eval", new Class[] {}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {javax.script.Bindings.class}); + methodsThatShouldExist_jdk7.put("eval", new Class[] {javax.script.ScriptContext.class}); + methodsThatShouldExist_jdk7.put("getEngine", new Class[] {}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.compiledScriptClass.getDeclaredMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.CompiledScript.getClass().getAnnotations() + */ + protected void testGetAnnotations() { + // following annotations should be provided + final String[] annotationsThatShouldExists_jdk6 = { + }; + + final String[] annotationsThatShouldExists_jdk7 = { + }; + + // get all annotations + Annotation[] annotations = this.compiledScriptClass.getAnnotations(); + // and transform the array into a list of annotation names + List annotationsAsString = new ArrayList(); + for (Annotation annotation : annotations) { + annotationsAsString.add(annotation.toString()); + } + String[] annotationsThatShouldExists = getJavaVersion() < 7 ? annotationsThatShouldExists_jdk6 : annotationsThatShouldExists_jdk7; + // check if all required annotations really exists + for (String annotationThatShouldExists : annotationsThatShouldExists) { + assertTrue(annotationsAsString.contains(annotationThatShouldExists), + "annotation " + annotationThatShouldExists + " not found"); + } + } + + /** * Test for instanceof operator applied to a class javax.script.CompiledScript */ @SuppressWarnings("cast") From ptisnovs at icedtea.classpath.org Wed Mar 20 05:20:56 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 20 Mar 2013 12:20:56 +0000 Subject: /hg/gfx-test: Eight new tests added into the test suite BitBltUs... Message-ID: changeset 3cce57cca428 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=3cce57cca428 author: Pavel Tisnovsky date: Wed Mar 20 13:24:05 2013 +0100 Eight new tests added into the test suite BitBltUsingBgColor. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltUsingBgColor.java | 120 +++++++++++++++++++++ 2 files changed, 125 insertions(+), 0 deletions(-) diffs (142 lines): diff -r 0cc7ef24c42e -r 3cce57cca428 ChangeLog --- a/ChangeLog Mon Mar 18 10:51:36 2013 +0100 +++ b/ChangeLog Wed Mar 20 13:24:05 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-20 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltUsingBgColor.java: + Eight new tests added into the test suite BitBltUsingBgColor. + 2013-03-18 Pavel Tisnovsky * src/org/gfxtest/framework/ImageFactory.java: diff -r 0cc7ef24c42e -r 3cce57cca428 src/org/gfxtest/testsuites/BitBltUsingBgColor.java --- a/src/org/gfxtest/testsuites/BitBltUsingBgColor.java Mon Mar 18 10:51:36 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltUsingBgColor.java Wed Mar 20 13:24:05 2013 +0100 @@ -1606,6 +1606,126 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_GRAY. + * Background color is set to Color.black. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshortGrayBackgroundBlack(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshortGRAY(image, graphics2d, Color.black); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * Background color is set to Color.blue. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshortGrayBackgroundBlue(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshortGRAY(image, graphics2d, Color.blue); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * Background color is set to Color.green. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshortGrayBackgroundGreen(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshortGRAY(image, graphics2d, Color.green); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * Background color is set to Color.cyan. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshortGrayBackgroundCyan(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshortGRAY(image, graphics2d, Color.cyan); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * Background color is set to Color.red. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshortGrayBackgroundRed(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshortGRAY(image, graphics2d, Color.red); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * Background color is set to Color.magenta. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshortGrayBackgroundMagenta(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshortGRAY(image, graphics2d, Color.magenta); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * Background color is set to Color.yellow. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshortGrayBackgroundYellow(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshortGRAY(image, graphics2d, Color.yellow); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * Background color is set to Color.white. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeUshortGrayBackgroundWhite(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeUshortGRAY(image, graphics2d, Color.white); + } + + /** * Entry point to the test suite. * * @param args not used in this case From adomurad at redhat.com Wed Mar 20 06:21:58 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 20 Mar 2013 09:21:58 -0400 Subject: [rfc][icedtea-web] replacing of hardcoded jre path by function In-Reply-To: <51499733.4020903@redhat.com> References: <51276C90.5040903@redhat.com> <513F4CE1.4000506@redhat.com> <51487F83.7050601@redhat.com> <5148842E.9050509@redhat.com> <51499733.4020903@redhat.com> Message-ID: <5149B7F6.9080001@redhat.com> On 03/20/2013 07:02 AM, Jiri Vanek wrote: > Looks like we have deal... > ok? > > > J. > On 03/19/2013 04:28 PM, Adam Domurad wrote: >> On 03/19/2013 11:08 AM, Jiri Vanek wrote: >>> On 03/12/2013 04:42 PM, Adam Domurad wrote: >>>> [ .. snip .. ] >>>> The commands vector will not need the c_str(), because it is a vector >>>> of std::string (things are much nicer when everything uses >>>> std::string, we should move towards that!) >>> >>> Hmmm.. I can not see the difference...:( >> >> See notes in-line >> >>> >>> >>> Itteration 2 attached. Thanx for patience! >>> J. >> >> Thanks for the new iteration! >> >>> diff -r 1024198de51f plugin/icedteanp/IcedTeaNPPlugin.cc >>> --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Tue Mar 19 15:44:43 2013 >>> +0100 >>> +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Tue Mar 19 16:02:11 2013 >>> +0100 >>> @@ -43,6 +43,7 @@ >>> #include >>> #include >>> #include >>> +#include >>> #include >>> #include >>> #include >>> @@ -156,8 +157,14 @@ >>> // Data directory for plugin. >>> static std::string data_directory; >>> >>> -// Fully-qualified appletviewer executable. >>> -static const char* appletviewer_executable = ICEDTEA_WEB_JRE >>> "/bin/java"; >>> +// Fully-qualified appletviewer default executable and rt.jar >>> +static const char* appletviewer_default_executable = ICEDTEA_WEB_JRE >>> "/bin/java"; >>> +static const char* appletviewer_default_rtjar = ICEDTEA_WEB_JRE >>> "/lib/rt.jar"; >>> +// Fully-qualified appletviewer default executable and rt.jar >>> +// resolved by methods in runtime. It is expected they will be the >>> same during >>> +//whole runtime >>> +static std::string appletviewer_executable; >>> +static std::string appletviewer_rtjar; >> >> You can get rid of these if you just have get_plugin_executable & >> get_plugin_rt_jar return values, >> and use the return value whenever you need it. >> >>> >>> // Applet viewer input channel (needs to be static because it is used >>> in plugin_in_pipe_callback) >>> static GIOChannel* in_from_appletviewer = NULL; >>> @@ -284,6 +291,16 @@ >>> >>> #endif >>> >>> +static std::string get_plugin_executable(std::string& dest){ >>> + dest = std::string (appletviewer_default_executable); >>> + return dest; >>> +} >> >> Why do you take an argument here ? You should just return the value? >> >>> + >>> +static std::string get_plugin_rt_jar(std::string& dest){ >>> + dest = std::string (appletviewer_default_rtjar); >>> + return dest; >>> +} >>> + >> >> Same >> >>> >>> /* >>> * Find first member in GHashTable* depending on version of glib >>> @@ -1517,13 +1534,14 @@ >>> static NPError >>> plugin_test_appletviewer () >>> { >>> - PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", >>> appletviewer_executable); >>> + >>> + PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", >>> get_plugin_executable(appletviewer_executable).c_str()); >>> NPError error = NPERR_NO_ERROR; >>> >>> gchar* command_line[3] = { NULL, NULL, NULL }; >>> gchar** environment; >>> >>> - command_line[0] = g_strdup (appletviewer_executable); >>> + command_line[0] = g_strdup >>> (get_plugin_executable(appletviewer_executable).c_str()); >>> command_line[1] = g_strdup("-version"); >>> command_line[2] = NULL; >>> >>> @@ -1570,7 +1588,7 @@ >>> >>> // Construct command line parameters >>> >>> - command_line.push_back(appletviewer_executable); >>> + >>> command_line.push_back(get_plugin_executable(appletviewer_executable).c_str()); >>> >> >> As I mentioned earlier, the .c_str() is redundant here and causes an >> unnecessary string copy (if >> you're curious why, normally std::string can be passed around and >> share string data, but it is not >> able to do this simply given a char*). >> >>> >>> //Add JVM args to command_line >>> for (int i = 0; i < jvm_args->size(); i++) >>> @@ -1581,7 +1599,7 @@ >>> command_line.push_back(PLUGIN_BOOTCLASSPATH); >>> // set the classpath to avoid using the default (cwd). >>> command_line.push_back("-classpath"); >>> - command_line.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); >>> + >>> command_line.push_back(get_plugin_rt_jar(appletviewer_rtjar).c_str()); >> >> Same (drop c_str()) >> >>> >>> // Enable coverage agent if we are running instrumented plugin >>> #ifdef COVERAGE_AGENT >>> @@ -1652,10 +1670,10 @@ >>> gchar *output = NULL; >>> std::vector* tokenOutput = NULL; >>> >>> - commands.push_back(appletviewer_executable); >>> + >>> commands.push_back(get_plugin_executable(appletviewer_executable).c_str()); >>> >> >> Same (drop c_str()) >> >> >>> commands.push_back(PLUGIN_BOOTCLASSPATH); >>> commands.push_back("-classpath"); >>> - commands.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); >>> + commands.push_back(get_plugin_rt_jar(appletviewer_rtjar).c_str()); >> >> Same (drop c_str()) >> >>> commands.push_back("net.sourceforge.jnlp.controlpanel.CommandLine"); >>> commands.push_back("get"); >>> commands.push_back("deployment.plugin.jvm.arguments"); >>> @@ -2175,11 +2193,11 @@ >>> } >>> >>> // Set appletviewer_executable. >>> - PLUGIN_DEBUG("Executing java at %s\n", appletviewer_executable); >>> + PLUGIN_DEBUG("Executing java at %s\n", >>> get_plugin_executable(appletviewer_executable).c_str()); >>> np_error = plugin_test_appletviewer (); >>> if (np_error != NPERR_NO_ERROR) >>> { >>> - fprintf(stderr, "Unable to find java executable %s\n", >>> appletviewer_executable); >>> + fprintf(stderr, "Unable to find java executable %s\n", >>> get_plugin_executable(appletviewer_executable).c_str()); >>> return np_error; >>> } >>> >>> @@ -2191,7 +2209,7 @@ >>> >>> plugin_instance_mutex = g_mutex_new (); >>> >>> - PLUGIN_DEBUG ("NP_Initialize: using %s\n", appletviewer_executable); >>> + PLUGIN_DEBUG ("NP_Initialize: using %s\n", >>> get_plugin_executable(appletviewer_executable).c_str()); >>> >>> plugin_req_proc = new PluginRequestProcessor(); >>> java_req_proc = new JavaMessageSender(); >> >> >> Looks ok otherwise. >> Thanks, >> -Adam > OK to push to HEAD. -Adam From jvanek at redhat.com Wed Mar 20 07:19:36 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 20 Mar 2013 15:19:36 +0100 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <514879D5.6090109@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> Message-ID: <5149C578.5090004@redhat.com> On 03/19/2013 03:44 PM, Adam Domurad wrote: > On 03/19/2013 09:41 AM, Jiri Vanek wrote: >> So another round. I think all is fixed excet the c x c+++ headers. Do you mind t write little bit >> more what you need from me? >> >> Also unittests will be needed. I would like to wrote them, ..will need probably some code snippet >> and general advices from you when I will integrate (next round?) this "library" inside ITW. > > Doesn't look half bad this time :-) Feel free to propose an integrated version. One more round rather... I have made the header much bigger - for testing purposes. I have some memory that all exported (testable) functions must be in header file... > Note that it seems the naming scheme for the CPP side is *.cc files using camelcase & starting > capital, so name it ParseProperties.cc, and give a header called ParseProperties.h. > (Side note: Actually, they all have the form IcedTea*.cc, but I think this is too noisy. I'd be in > favour of removing this prefix for all the files actually, any thoughts on this ?) Still keeping the original name convention but the refactoring is worthy to think about. > > re unit tests: > Examples can be found in tests/cpp-unit-tests. AAA! Thanx so much for example. I will do the tests in next round! > > Steps: > 1. Create a file called ParsePropertiesTest.cc > 2. Include ParseProperties.h > 3. Use the SUITE and TEST macros. Here's a suggested layout (Disclaimer: I *did not* compile this): > > #include > #include "ParseProperties.h" > > /* Creates a temporary file with the specified contents */ > static std::string temporary_file(const std::string& contents) { > std::string path = *tmpnam(NULL);* /* POSIX function, fine for test suite */ > fstream file(path.c_str(), fstream::in); > file << contents; > return path; > } > > SUITE(ParseProperties) { > > TEST(read_deploy_property_value) { > std::string value; > bool found = read_deploy_property_value("test", value); > CHECK(found); > CHECK(value == "foobar"); > } > } > > Although after writing this it occurred to me it is a bit tricky to read from a dummy file. Possibly > you want to design some way to direct these functions to read dummy files. Other options, back up > these files and replace them (dangerous), use some chroot tricks? (never tried). > Anyway feel free to ask more questions, I think the concept is simple. Once you have a .cc file in > the test directory, and the TEST macro, the test system will pick up all your TEST's. > >> >> Thanx for patient and detailed review! >> >> J. >> >> [..snip..] > > re new version: > >> #include >> #include >> #include >> #include >> #include > > #include -> #include > #include -> #include > > I suppose it is easier if I just tell you what to do :-) Not a huge point anyway. > >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> >> using namespace std; >> >> //public api >> string user_properties_file(); >> bool find_system_config_file(string& dest); >> bool find_custom_jre(string& dest); >> bool read_deploy_property_value(string property, string& dest); >> //end of public api > > Just a note, this will be extracted to header file. Maybe for next iteration you should do this (you > can test that the header works with a test main in a separate .cpp file) > >> >> >> // trim from start >> static string <rim(string& s) { >> s.erase(s.begin(), find_if(s.begin(), s.end(), not1(ptr_fun(isspace)))); >> return s; >> } >> // trim from end >> static string &rtrim(string& s) { >> s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun(isspace))).base(), s.end()); >> return s; >> } >> // trim from both ends >> static string &trim(string& s) { >> return ltrim(rtrim(s)); >> } > > Ok you don't need to use my version but IMO you must: > 1. Make this more readable. It is a simple operation, I would rather not use the rather complex > templated algorithm & functional library in C++ > 2. Either return 'string' and take 'string' (not 'string&') OR take 'string&' but do not return it. > Returning a string makes it seem like the original string is unchanged. Hmm. Replaced by your suggested version... But..:) I have kept the status get the variable, modify it, and return it. I like the possibility of chaining... If you really do not like it I will fix with deepest sorrow in integration round:(( All the minors below should be fixed. > >> >> >> >> >> static void remove_all_spaces(string& str) >> { >> for(int i=0; i> if(str[i] == ' ' || str[i] == '\n' || str[i] == '\t') { >> str.erase(i,1); >> } >> } >> } >> >> static bool get_property_value(string c, string& dest){ >> int i = c.find("="); >> if (i < 0) return false; >> int l = c.length(); >> dest = c.substr(i+1, l-i); >> trim(dest); >> return true; >> } >> >> >> static bool starts_with(string c1, string c2){ >> return (c1.find(c2) == 0); >> } >> >> static bool file_exists(string filename) >> { >> ifstream infile(filename.c_str()); >> return infile.good(); >> } > > This is good, thanks. > >> >> >> string user_properties_file(){ >> int myuid = getuid(); >> struct passwd *mypasswd = getpwuid(myuid); >> return string(mypasswd->pw_dir)+"/.icedtea/deployment.properties"; >> } >> >> >> static string main_properties_file(){ >> return "/etc/.java/deployment/deployment.properties"; >> } >> >> static string default_java_properties_file(){ >> return ICEDTEA_WEB_JRE "/lib/deployment.properties"; >> } >> >> >> //this is reimplemntation as icedtea-web settings do this (Also name of function is the same): > > s/ reimplemntation / reimplementation / > May be better worded as eg 'this is the same search done by icedtea-web settings' > >> //try the main file in /etc/.java/deployment >> //if found, then return this file >> //try to find setUp jre >> // if found, then try if this file exists and end >> //if no jre custom jvm is set, then tryes default jre > > s/tryes/tries/ > >> // if its deploy file exists, then return >> //not dound otherwise > > s/dound/found/ > [Nit] Could you put the whole thing in a /**/ quote ? > >> bool find_system_config_file(string& dest){ >> if(file_exists(main_properties_file())) { >> dest = main_properties_file(); >> return true; >> } else { >> string jdest; >> bool found = find_custom_jre(jdest); >> if (found){ >> jdest = jdest + "/lib/deployment.properties"; >> if(file_exists(jdest) ) { >> dest = jdest; >> return true; >> } >> } else { >> if(file_exists(default_java_properties_file())) { >> dest = default_java_properties_file(); >> return true; >> } >> } >> } >> return false; //nothing of above found >> } >> >> //returns false if not found, true otherwise > > [nit] "Returns whether property was found, if found stores result in 'dest'" is more descriptive. > >> static bool find_property(string filename, string property, string& dest){ >> string nwproperty(property); >> trim(nwproperty); >> nwproperty=nwproperty+"="; > > [nit] It'd be clearer if this was something like string property_matcher = trim(property) + "="; > (assuming a trim that returns a copy)) > >> ifstream input( filename.c_str() ); >> for( string line; getline( input, line ); ){ /* read a line */ >> string copy = string(line); > > string(line) is redundant. > >> //java tolerates spaces around = char, remove them for matching >> remove_all_spaces(copy); >> //printf(line.c_str()); >> //printf(copy.c_str()); > > Remember to drop these. > >> if (starts_with(copy,nwproperty)) { >> //provide non-spaced value, trimming is done in get_property_value >> get_property_value(line, dest); >> return true; >> } >> } >> >> return false; >> } >> >> >> //this is reimplmentation of itw-settings operations > > s/ reimplemntation / reimplementation / > May be better worded as eg 'this is the same search done by icedtea-web settings' > >> //first check in user's settings, if found, return >> //then check in global file (see the magic of find_system_config_file) > > [nit] I'd prefer a /**/ quote > >> bool read_deploy_property_value(string property, string& dest){ >> //is it in user's file? >> bool a = find_property(user_properties_file(), property, dest); >> if (a) { >> return true; >> } >> //is it in global file? >> string futurefile; >> bool b = find_system_config_file(futurefile); >> if (b) { >> return find_property(futurefile, property, dest); >> } >> return false; >> } >> >> //This is different from common get property, as it is avoiding to search in *java* >> //properties files >> bool find_custom_jre(string& dest){ >> string key("deployment.jre.dir"); >> if(file_exists(user_properties_file())) { >> bool a = find_property(user_properties_file(),key, dest); > > [nit] I still do not like this 'a' variable. (it makes some sense in read_deploy_property_value, but > not here) > >> if (a) { >> return true; >> } >> } >> if(file_exists(main_properties_file())) { >> return find_property(main_properties_file(),key, dest); >> } >> return false; >> } >> >> >> >> int main(void){ >> printf("user's settings file\n"); >> cout << user_properties_file(); >> printf("\nmain settings file:\n"); >> cout << (main_properties_file()); >> printf("\njava settings file \n"); >> cout << (default_java_properties_file()); >> printf("\nsystem config file\n"); >> string a1; >> find_system_config_file(a1); >> cout << a1; >> printf("\ncustom jre\n"); >> string a2; >> find_custom_jre(a2); >> cout << a2; >> printf("\nsome custom property\n"); >> string a3; >> read_deploy_property_value("deployment.security.level", a3); >> cout << a3; >> printf("\n"); >> return 0; >> } > > Good work! > -Adam -------------- next part -------------- #include using namespace std; //public api string user_properties_file(); bool find_system_config_file(string& dest); bool find_custom_jre(string& dest); bool read_deploy_property_value(string property, string& dest); //end of public api //testing api const string default_file_name = "deployment.properties"; const string custom_jre_key = "deployment.jre.dir"; string trim(string& str); void remove_all_spaces(string& str); bool get_property_value(string c, string& dest); bool starts_with(string c1, string c2); bool file_exists(string filename); string user_properties_file(); string main_properties_file(); string default_java_properties_file(); //for passing three dummy files bool find_system_config_file(string f1, string f2, bool usef2, string f3, string& dest); bool find_property(string filename, string property, string& dest); //for passing two dummy files bool read_deploy_property_value(string f1, string f2, bool usef2, string property, string& dest); //for passing two dummy files bool find_custom_jre(string f1, string f2,string& dest); //end of testing api -------------- next part -------------- #include #include #include #include #include #include #include #include #include #include #include #include "IcedTeaParsePropeties.h" using namespace std; string trim(string& str) { size_t start = str.find_first_not_of(" \t\n"), end = str.find_last_not_of(" \t\n"); if (start == std::string::npos) { return str; } str = str.substr(start, end - start + 1); return str; } void remove_all_spaces(string& str) { for(int i=0; ipw_dir)+"/.icedtea/"+default_file_name; } string main_properties_file(){ return "/etc/.java/deployment/"+default_file_name; } string default_java_properties_file(){ return ICEDTEA_WEB_JRE "/lib/"+default_file_name; } /* this is the same search done by icedtea-web settings: try the main file in /etc/.java/deployment if found, then return this file try to find setUp jre if found, then try if this file exists and end if no jre custom jvm is set, then tries default jre if its deploy file exists, then return not found otherwise*/ bool find_system_config_file(string& dest){ string jdest; bool found = find_custom_jre(jdest); return find_system_config_file(main_properties_file(), jdest, found, default_java_properties_file(), dest); } bool find_system_config_file(string f1, string f2, bool usef2, string f3, string& dest){ if (file_exists(f1)) { dest = f1; return true; } else { if (usef2){ string jdest = f2 + "/lib/"+default_file_name; if(file_exists(jdest) ) { dest = jdest; return true; } } else { if(file_exists(f3)) { dest = f3; return true; } } } return false; //nothing of above found } //Returns whether property was found, if found stores result in 'dest' bool find_property(string filename, string property, string& dest){ string property_matcher(property); trim( property_matcher); property_matcher= property_matcher+"="; ifstream input( filename.c_str() ); for( string line; getline( input, line ); ){ /* read a line */ string copy = line; //java tolerates spaces around = char, remove them for matching remove_all_spaces(copy); //printf(line.c_str()); //printf(copy.c_str()); if (starts_with(copy, property_matcher)) { //provide non-spaced value, trimming is done in get_property_value get_property_value(line, dest); return true; } } return false; } /* this is reimplmentation of itw-settings operations first check in user's settings, if found, return then check in global file (see the magic of find_system_config_file)*/ bool read_deploy_property_value(string property, string& dest){ string futurefile; bool b = find_system_config_file(futurefile); return read_deploy_property_value(user_properties_file(), futurefile, b, property, dest); } bool read_deploy_property_value(string f1, string f2, bool usef2, string property, string& dest){ //is it in user's file? bool found = find_property(f1, property, dest); if (found) { return true; } //is it in global file? if (usef2) { return find_property(f2, property, dest); } return false; } //This is different from common get property, as it is avoiding to search in *java* //properties files bool find_custom_jre(string& dest){ return find_custom_jre(user_properties_file(), main_properties_file(), dest); } bool find_custom_jre(string f1, string f2,string& dest){ string key = custom_jre_key; if(file_exists(f1)) { bool a = find_property(f1, key, dest); if (a) { return true; } } if(file_exists(f2)) { return find_property(f2, key, dest); } return false; } int main(void){ printf("user's settings file\n"); cout << user_properties_file(); printf("\nmain settings file:\n"); cout << (main_properties_file()); printf("\njava settings file \n"); cout << (default_java_properties_file()); printf("\nsystem config file\n"); string a1; find_system_config_file(a1); cout << a1; printf("\ncustom jre\n"); string a2; find_custom_jre(a2); cout << a2; printf("\nsome custom property\n"); string a3; read_deploy_property_value("deployment.security.level", a3); cout << a3; printf("\n"); return 0; } From jvanek at redhat.com Wed Mar 20 07:29:13 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 20 Mar 2013 15:29:13 +0100 Subject: [rfc][icedtea-web] LiveConnect tests which crash Opera In-Reply-To: <51474C4D.4020102@redhat.com> References: <51474C4D.4020102@redhat.com> Message-ID: <5149C7B9.2010808@redhat.com> On 03/18/2013 06:18 PM, Jana Fabrikova wrote: > Hello, > > we have discussed with Jiri the testing of Java<->JavaScript communication via make > run-netx-dist-tests and it appears that the LiveConnect tests crash the Opera browsers in such a way > that it is not reasonable to run them every time. > > I have added several lines of code to the testcase files of all the pushed reproducers using > LiveConnect (JSToJGet, JSToJSet, JSToJFuncParam and JSToJTypeConv) which let the tests in Opera pass > without running the browser test, whenever the attribute doNotRunInOpera is set to "true" inside the > testcase class, > > please see the attached patch, > best regards, > Jana Hi! This looks ok. Althoug it is nasty hack :(( I do not think we can do better here... Two nits - after them feel free to push, and dont forget to changelog :) (mentrion all changed files/functions..tabs.. blah blah :) 1) +//the JS<->J tests tend to make Opera unusable + public final boolean doNotRunInOpera = true; Would be worthy of aligning. 2) + Browsers b = server.getCurrentBrowser().getID(); + if(b == Browsers.opera){ Imho worthy to comprim to one line:+ + if(server.getCurrentBrowser().getID() == Browsers.opera){ But I do not insists. Are those really all? Small change :) [do not forget to include also in future tests of JS api] Thanx J! From jvanek at icedtea.classpath.org Wed Mar 20 07:34:50 2013 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Wed, 20 Mar 2013 14:34:50 +0000 Subject: /hg/icedtea-web: All occurences of hardcoded paths to java repal... Message-ID: changeset 76930f38dddf in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=76930f38dddf author: Jiri Vanek date: Wed Mar 20 15:35:22 2013 +0100 All occurences of hardcoded paths to java repalced by call of functions * plugin/icedteanp/IcedTeaNPPlugin.cc: (appletviewer_executable) renamed to (appletviewer_default_executable). (appletviewer_default_rtjar) new variable to keep default rt.jar path. (get_plugin_executable) and (string get_plugin_rt_jar) new functions, returniong the default variables for now. diffstat: ChangeLog | 9 +++++++++ plugin/icedteanp/IcedTeaNPPlugin.cc | 35 ++++++++++++++++++++++++----------- 2 files changed, 33 insertions(+), 11 deletions(-) diffs (127 lines): diff -r 1a6aed3d44dd -r 76930f38dddf ChangeLog --- a/ChangeLog Tue Mar 19 12:25:12 2013 -0400 +++ b/ChangeLog Wed Mar 20 15:35:22 2013 +0100 @@ -1,3 +1,12 @@ +2012-20-03 Jiri Vanek + + All occurences of hardcoded paths to java repalced by call of functions + * plugin/icedteanp/IcedTeaNPPlugin.cc: (appletviewer_executable) renamed + to (appletviewer_default_executable). (appletviewer_default_rtjar) new + variable to keep default rt.jar path. + (get_plugin_executable) and (string get_plugin_rt_jar) new functions, + returniong the default variables for now. + 2013-19-03 Adam Domurad * Makefile.am diff -r 1a6aed3d44dd -r 76930f38dddf plugin/icedteanp/IcedTeaNPPlugin.cc --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Tue Mar 19 12:25:12 2013 -0400 +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Wed Mar 20 15:35:22 2013 +0100 @@ -43,6 +43,7 @@ #include #include #include +#include #include #include #include @@ -156,8 +157,9 @@ // Data directory for plugin. static std::string data_directory; -// Fully-qualified appletviewer executable. -static const char* appletviewer_executable = ICEDTEA_WEB_JRE "/bin/java"; +// Fully-qualified appletviewer default executable and rt.jar +static const char* appletviewer_default_executable = ICEDTEA_WEB_JRE "/bin/java"; +static const char* appletviewer_default_rtjar = ICEDTEA_WEB_JRE "/lib/rt.jar"; // Applet viewer input channel (needs to be static because it is used in plugin_in_pipe_callback) static GIOChannel* in_from_appletviewer = NULL; @@ -284,6 +286,16 @@ #endif +static std::string get_plugin_executable(){ + return std::string (appletviewer_default_executable); + +} + +static std::string get_plugin_rt_jar(){ + return std::string (appletviewer_default_rtjar); + +} + /* * Find first member in GHashTable* depending on version of glib @@ -1517,13 +1529,14 @@ static NPError plugin_test_appletviewer () { - PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", appletviewer_executable); + + PLUGIN_DEBUG ("plugin_test_appletviewer: %s\n", get_plugin_executable().c_str()); NPError error = NPERR_NO_ERROR; gchar* command_line[3] = { NULL, NULL, NULL }; gchar** environment; - command_line[0] = g_strdup (appletviewer_executable); + command_line[0] = g_strdup (get_plugin_executable().c_str()); command_line[1] = g_strdup("-version"); command_line[2] = NULL; @@ -1570,7 +1583,7 @@ // Construct command line parameters - command_line.push_back(appletviewer_executable); + command_line.push_back(get_plugin_executable()); //Add JVM args to command_line for (int i = 0; i < jvm_args->size(); i++) @@ -1581,7 +1594,7 @@ command_line.push_back(PLUGIN_BOOTCLASSPATH); // set the classpath to avoid using the default (cwd). command_line.push_back("-classpath"); - command_line.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); + command_line.push_back(get_plugin_rt_jar()); // Enable coverage agent if we are running instrumented plugin #ifdef COVERAGE_AGENT @@ -1652,10 +1665,10 @@ gchar *output = NULL; std::vector* tokenOutput = NULL; - commands.push_back(appletviewer_executable); + commands.push_back(get_plugin_executable()); commands.push_back(PLUGIN_BOOTCLASSPATH); commands.push_back("-classpath"); - commands.push_back(ICEDTEA_WEB_JRE "/lib/rt.jar"); + commands.push_back(get_plugin_rt_jar()); commands.push_back("net.sourceforge.jnlp.controlpanel.CommandLine"); commands.push_back("get"); commands.push_back("deployment.plugin.jvm.arguments"); @@ -2175,11 +2188,11 @@ } // Set appletviewer_executable. - PLUGIN_DEBUG("Executing java at %s\n", appletviewer_executable); + PLUGIN_DEBUG("Executing java at %s\n", get_plugin_executable().c_str()); np_error = plugin_test_appletviewer (); if (np_error != NPERR_NO_ERROR) { - fprintf(stderr, "Unable to find java executable %s\n", appletviewer_executable); + fprintf(stderr, "Unable to find java executable %s\n", get_plugin_executable().c_str()); return np_error; } @@ -2191,7 +2204,7 @@ plugin_instance_mutex = g_mutex_new (); - PLUGIN_DEBUG ("NP_Initialize: using %s\n", appletviewer_executable); + PLUGIN_DEBUG ("NP_Initialize: using %s\n", get_plugin_executable().c_str()); plugin_req_proc = new PluginRequestProcessor(); java_req_proc = new JavaMessageSender(); From adomurad at redhat.com Wed Mar 20 07:45:24 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 20 Mar 2013 10:45:24 -0400 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <5149C578.5090004@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> <5149C578.5090004@redhat.com> Message-ID: <5149CB84.1090501@redhat.com> On 03/20/2013 10:19 AM, Jiri Vanek wrote: > On 03/19/2013 03:44 PM, Adam Domurad wrote: >> On 03/19/2013 09:41 AM, Jiri Vanek wrote: >>> So another round. I think all is fixed excet the c x c+++ headers. >>> Do you mind t write little bit >>> more what you need from me? >>> >>> Also unittests will be needed. I would like to wrote them, ..will >>> need probably some code snippet >>> and general advices from you when I will integrate (next round?) >>> this "library" inside ITW. >> >> Doesn't look half bad this time :-) Feel free to propose an >> integrated version. > One more round rather... > I have made the header much bigger - for testing purposes. I have some > memory that all exported (testable) functions must be in header file... Note: You do not need these in header, technically. It may be cleaner to not expose these normally and include the lines directly in the test, ie: string trim(string& str); void remove_all_spaces(string& str); SUITE (...) { /// etc } TYVM for reorganizing the code to be testable! I know the elegance is hard to part with. [.. rest snipped ..] > #include > #include > #include > #include > #include > #include > #include > #include > #include > #include > #include > #include "IcedTeaParsePropeties.h" > > using namespace std; > > string trim(string& str) { > size_t start = str.find_first_not_of(" \t\n"), end = > str.find_last_not_of(" \t\n"); > if (start == std::string::npos) { > return str; > } > str = str.substr(start, end - start + 1); > return str; > } I don't see how this supports chaining (it returns only a copy). Also you don't use this string value anywhere, why not just 'void'? I'm in favour of moving this into IcedTeaPluginUtils and dropping the return value. > > > > > void remove_all_spaces(string& str) > { > for(int i=0; i if(str[i] == ' ' || str[i] == '\n' || str[i] == '\t') { > str.erase(i,1); > } > } > } > > bool get_property_value(string c, string& dest){ > int i = c.find("="); > if (i < 0) return false; > int l = c.length(); > dest = c.substr(i+1, l-i); > trim(dest); > return true; > } > > > bool starts_with(string c1, string c2){ > return (c1.find(c2) == 0); > } > > bool file_exists(string filename) > { > ifstream infile(filename.c_str()); > return infile.good(); > } > > > string user_properties_file(){ > int myuid = getuid(); > struct passwd *mypasswd = getpwuid(myuid); > return string(mypasswd->pw_dir)+"/.icedtea/"+default_file_name; > } > > > string main_properties_file(){ > return "/etc/.java/deployment/"+default_file_name; > } > > string default_java_properties_file(){ > return ICEDTEA_WEB_JRE "/lib/"+default_file_name; > } > > > /* this is the same search done by icedtea-web settings: > try the main file in /etc/.java/deployment > if found, then return this file > try to find setUp jre > if found, then try if this file exists and end > if no jre custom jvm is set, then tries default jre > if its deploy file exists, then return > not found otherwise*/ > bool find_system_config_file(string& dest){ > string jdest; > bool found = find_custom_jre(jdest); > return find_system_config_file(main_properties_file(), jdest, > found, default_java_properties_file(), dest); > } > bool find_system_config_file(string f1, string f2, bool usef2, string > f3, string& dest){ f1, f2, f3 -> user_file, global_file, default_file please. Also worth considering making the 2nd string nullable, ie using a string* (note this won't be as painful as returning string*, since you can safely pass with & operator here). > if (file_exists(f1)) { > dest = f1; > return true; > } else { > if (usef2){ > string jdest = f2 + "/lib/"+default_file_name; > if(file_exists(jdest) ) { > dest = jdest; > return true; > } > } else { > if(file_exists(f3)) { > dest = f3; > return true; > } > } > } > return false; //nothing of above found > } > > //Returns whether property was found, if found stores result in 'dest' > bool find_property(string filename, string property, string& dest){ > string property_matcher(property); > trim( property_matcher); > property_matcher= property_matcher+"="; > ifstream input( filename.c_str() ); > for( string line; getline( input, line ); ){ /* read a line */ > string copy = line; > //java tolerates spaces around = char, remove them for matching > remove_all_spaces(copy); > //printf(line.c_str()); > //printf(copy.c_str()); [nit] remove these commented lines > if (starts_with(copy, property_matcher)) { > //provide non-spaced value, trimming is done in > get_property_value > get_property_value(line, dest); > return true; > } > } > > return false; > } > > > /* this is reimplmentation of itw-settings operations OK. First time you typo something, turn on some spellcheck >:). s/reimplmentation/reimplementation/ ... again > first check in user's settings, if found, return > then check in global file (see the magic of find_system_config_file)*/ > bool read_deploy_property_value(string property, string& dest){ > string futurefile; > bool b = find_system_config_file(futurefile); > return read_deploy_property_value(user_properties_file(), > futurefile, b, property, dest); > } > bool read_deploy_property_value(string f1, string f2, bool usef2, > string property, string& dest){ f1, f2 -> user_file, global_file please. Consider making global_file a nullable string*. > //is it in user's file? > bool found = find_property(f1, property, dest); > if (found) { > return true; > } > //is it in global file? > if (usef2) { > return find_property(f2, property, dest); > } > return false; > } > > //This is different from common get property, as it is avoiding to > search in *java* > //properties files > bool find_custom_jre(string& dest){ > return find_custom_jre(user_properties_file(), > main_properties_file(), dest); > } > bool find_custom_jre(string f1, string f2,string& dest){ f1, f2 -> user_file, global_file please > string key = custom_jre_key; > if(file_exists(f1)) { > bool a = find_property(f1, key, dest); > if (a) { > return true; > } > } > if(file_exists(f2)) { > return find_property(f2, key, dest); > } > return false; > } > > > > int main(void){ > printf("user's settings file\n"); > cout << user_properties_file(); > printf("\nmain settings file:\n"); > cout << (main_properties_file()); > printf("\njava settings file \n"); > cout << (default_java_properties_file()); > printf("\nsystem config file\n"); > string a1; > find_system_config_file(a1); > cout << a1; > printf("\ncustom jre\n"); > string a2; > find_custom_jre(a2); > cout << a2; > printf("\nsome custom property\n"); > string a3; > read_deploy_property_value("deployment.security.level", a3); > cout << a3; > printf("\n"); > return 0; > } Looks good otherwise, go ahead and start testing+integration if you'd like. -Adam From mvyskocil at suse.cz Wed Mar 20 08:15:11 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Wed, 20 Mar 2013 16:15:11 +0100 Subject: IcedTea for OpenJDK 8 Updated In-Reply-To: <344276796.19497532.1363375525332.JavaMail.root@redhat.com> References: <344276796.19497532.1363375525332.JavaMail.root@redhat.com> Message-ID: <20130320151511.GA18093@linux-xtv2.site> On Fri, Mar 15, 2013 at 03:25:25PM -0400, Andrew Hughes wrote: > I've just pushed a changeset which does a mass update / cleanup of > IcedTea for OpenJDK 8, allowing it to build the latest b80 from > upstream OpenJDK. > > Most patches have been removed to give us a clean start and there's > a lot of build change, including the use of OpenJDK's new build > system, so no doubt things will be broken / missing at first. Things as > basic as system library support have yet to be added back in. > But this is a start. Please file bugs at > http://icedtea.classpath.org/bugzilla for issues you encounter > or just supply a patch if it's something simple. Hi Andrew, I've ended failry soon - on hg fclone phase $ make hg fclone http://icedtea.classpath.org/hg/icedtea8-forest openjdk; abort: repository 'http://icedtea.classpath.org/hg/icedtea8-forest' is not local make: *** [stamps/download-openjdk.stamp] Error 255 I use the hgforest from icedtea, with attached patch to work-around API changes in mercurial 2.3 [1]. [1] http://selenic.com/hg/rev/a06e2681dd17 As I have no experience with hg, neither hgforest, I have no idea about the error message. Best regards Michal Vyskocil -------------- next part -------------- A non-text attachment was scrubbed... Name: hgforest-mercurial-2.3-compat.patch Type: text/x-patch Size: 1661 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/26ea6110/hgforest-mercurial-2.3-compat.patch -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/26ea6110/attachment.bin From omajid at redhat.com Wed Mar 20 09:15:25 2013 From: omajid at redhat.com (Omair Majid) Date: Wed, 20 Mar 2013 12:15:25 -0400 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <514986BE.3050005@redhat.com> References: <51488B8A.9050904@redhat.com> <5148BA54.6020900@redhat.com> <5148BFBE.1010001@redhat.com> <514986BE.3050005@redhat.com> Message-ID: <5149E09D.2070306@redhat.com> On 03/20/2013 05:51 AM, Jiri Vanek wrote: > Yup :)) I like your points... But I'm not so sure that it will break > anything.... I'm for rethrowing where possible, and be laud/log where > we can not rethrow. But in this particular part of code it will need > a lot of empiric tastings, or somebody with insight into > classlaoders... Omair? (silently CCed O:) My general preference in findClass (and friends) is to ignore as many errors as possible when trying to find a class. Sometimes it just delays an error, but often it's the only way to handle broken programs. Logging the problems as they happen is probably a good idea, though. Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From omajid at redhat.com Wed Mar 20 09:44:55 2013 From: omajid at redhat.com (Omair Majid) Date: Wed, 20 Mar 2013 12:44:55 -0400 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <5149C578.5090004@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> <5149C578.5090004@redhat.com> Message-ID: <5149E787.6060208@redhat.com> On 03/20/2013 10:19 AM, Jiri Vanek wrote: > IcedTeaParsePropeties.h > > > #include > > using namespace std; While "using namespace std" itself is probably okay [1], it's a bad idea to add "using namespace" in header files. C preprocessors work work by literally inserting the entire #include'd file in the file that has the #include. So every file that #include's this header will automatically get a "using namespace std", which could be bad if that file has classes that conflict with classes in the standard library [2]. > //public api > string user_properties_file(); > bool find_system_config_file(string& dest); > bool find_custom_jre(string& dest); > bool read_deploy_property_value(string property, string& dest); > //end of public api Please make sure none of these symbols are exported outside the plugin shared object. The names are generic enough that it could lead to name clashes easily. > int main(void){ > printf("user's settings file\n"); > cout << user_properties_file(); > printf("\nmain settings file:\n"); > cout << (main_properties_file()); > printf("\njava settings file \n"); > cout << (default_java_properties_file()); > printf("\nsystem config file\n"); > string a1; > find_system_config_file(a1); > cout << a1; > printf("\ncustom jre\n"); > string a2; > find_custom_jre(a2); > cout << a2; > printf("\nsome custom property\n"); > string a3; > read_deploy_property_value("deployment.security.level", a3); > cout << a3; > printf("\n"); I am far from an expert on this, but please don't mix C-style printf's and C++-style cout's like this. Cheers, Omair [1] http://stackoverflow.com/q/1452721 [2] http://stackoverflow.com/a/4872531 -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From jfabriko at icedtea.classpath.org Wed Mar 20 10:03:19 2013 From: jfabriko at icedtea.classpath.org (jfabriko at icedtea.classpath.org) Date: Wed, 20 Mar 2013 17:03:19 +0000 Subject: /hg/icedtea-web: adding few lines that enable/disable running Li... Message-ID: changeset b4362a2987f8 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=b4362a2987f8 author: Jana Fabrikova date: Wed Mar 20 18:06:04 2013 +0100 adding few lines that enable/disable running LiveConnect tests in Opera diffstat: ChangeLog | 14 +++++ tests/reproducers/simple/JSToJFuncParam/testcases/JSToJFuncParamTest.java | 24 ++++++++++ tests/reproducers/simple/JSToJGet/testcases/JSToJGetTest.java | 9 +++ tests/reproducers/simple/JSToJSet/testcases/JSToJSetTest.java | 18 +++++++ tests/reproducers/simple/JSToJTypeConv/testcases/JSToJTypeConvTest.java | 10 ++++ 5 files changed, 75 insertions(+), 0 deletions(-) diffs (162 lines): diff -r 76930f38dddf -r b4362a2987f8 ChangeLog --- a/ChangeLog Wed Mar 20 15:35:22 2013 +0100 +++ b/ChangeLog Wed Mar 20 18:06:04 2013 +0100 @@ -1,3 +1,17 @@ +2013-03-20 Jana Fabrikova + + * tests/reproducers/simple/JSToJGet/testcases/JSToJGetTest.java: + adding few lines for not running test in Opera + + * tests/reproducers/simple/JSToJSet/testcases/JSToJSetTest.java: + adding few lines for not running test in Opera + + * tests/reproducers/simple/JSToJFuncParam/testcases/JSToJFuncParamTest.java: + adding few lines for not running test in Opera + + * tests/reproducers/simple/JSToJTypeConv/testcases/JSToJTypeConvTest.java: + adding few lines for not running test in Opera + 2012-20-03 Jiri Vanek All occurences of hardcoded paths to java repalced by call of functions diff -r 76930f38dddf -r b4362a2987f8 tests/reproducers/simple/JSToJFuncParam/testcases/JSToJFuncParamTest.java --- a/tests/reproducers/simple/JSToJFuncParam/testcases/JSToJFuncParamTest.java Wed Mar 20 15:35:22 2013 +0100 +++ b/tests/reproducers/simple/JSToJFuncParam/testcases/JSToJFuncParamTest.java Wed Mar 20 18:06:04 2013 +0100 @@ -48,6 +48,9 @@ public class JSToJFuncParamTest extends BrowserTest { + //the JS<->J tests tend to make Opera unusable + public final boolean doNotRunInOpera = true; + private final String initStr = "JSToJFuncParam applet initialized."; private final String afterStr = "afterTests"; @@ -70,6 +73,13 @@ } private void jsToJavaFuncParamTest(String funcStr, String paramStr, String expectedVal) throws Exception { + + if( doNotRunInOpera){ + if(server.getCurrentBrowser().getID() == Browsers.opera){ + return; + } + } + String strURL = "/JSToJFuncParam.html?" + funcStr + ";" + paramStr; ProcessResult pr = server.executeBrowser(strURL, new CountingClosingListenerImpl(), new CountingClosingListenerImpl()); String expectedStdout = funcStr + " " + expectedVal; @@ -209,4 +219,18 @@ jsToJavaFuncParamTest("JSObjectParam", "new JSCar(100,\"red\")", "100, red"); } + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJSToJFuncParam_booleanFalseStr_Test() throws Exception { + jsToJavaFuncParamTest("booleanParam", "false", "true"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJSToJFuncParam_BooleanFalseStr_Test() throws Exception { + jsToJavaFuncParamTest("BooleanParam", "false", "true"); + } + } diff -r 76930f38dddf -r b4362a2987f8 tests/reproducers/simple/JSToJGet/testcases/JSToJGetTest.java --- a/tests/reproducers/simple/JSToJGet/testcases/JSToJGetTest.java Wed Mar 20 15:35:22 2013 +0100 +++ b/tests/reproducers/simple/JSToJGet/testcases/JSToJGetTest.java Wed Mar 20 18:06:04 2013 +0100 @@ -49,6 +49,9 @@ public class JSToJGetTest extends BrowserTest { + //the JS<->J tests tend to make Opera unusable + public final boolean doNotRunInOpera = true; + public String passStr = " - passed."; public String failValStr = " - failed, value mismatch."; public String failTypeStr = " - failed, type mismatch."; @@ -118,6 +121,12 @@ private void jsToJavaGetTest(String urlEnd, String testStr) throws Exception { + if( doNotRunInOpera){ + if(server.getCurrentBrowser().getID() == Browsers.opera){ + return; + } + } + String strURL = "/JSToJGet.html?" + urlEnd; ProcessResult pr = server.executeBrowser(strURL, new CountingClosingListenerImpl(), diff -r 76930f38dddf -r b4362a2987f8 tests/reproducers/simple/JSToJSet/testcases/JSToJSetTest.java --- a/tests/reproducers/simple/JSToJSet/testcases/JSToJSetTest.java Wed Mar 20 15:35:22 2013 +0100 +++ b/tests/reproducers/simple/JSToJSet/testcases/JSToJSetTest.java Wed Mar 20 18:06:04 2013 +0100 @@ -51,6 +51,9 @@ @Bug( id = { "PR1298" }) public class JSToJSetTest extends BrowserTest { + //the JS<->J tests tend to make Opera unusable + public final boolean doNotRunInOpera = true; + private final String exceptionStr = "xception"; private final String errorStr = "rror"; private final String initStr = "JSToJSet applet initialized."; @@ -83,6 +86,13 @@ } private void jsToJavaSetNormalTest(String fieldStr, String valueStr) throws Exception { + + if( doNotRunInOpera){ + if(server.getCurrentBrowser().getID() == Browsers.opera){ + return; + } + } + String strURL = "/JSToJSet.html?" + fieldStr + ";" + valueStr; ProcessResult pr = server.executeBrowser(strURL, new CountingClosingListenerImpl(), new CountingClosingListenerImpl()); String expectedStdout = "New value is: " + valueStr; @@ -90,6 +100,14 @@ } private void jsToJavaSetSpecialTest(String fieldStr, String valueStr, TestType testType) throws Exception { + + if( doNotRunInOpera){ + Browsers b = server.getCurrentBrowser().getID(); + if(b == Browsers.opera){ + return; + } + } + String strURL = "/JSToJSet.html?"; String expectedStdout = ""; switch( testType ){ diff -r 76930f38dddf -r b4362a2987f8 tests/reproducers/simple/JSToJTypeConv/testcases/JSToJTypeConvTest.java --- a/tests/reproducers/simple/JSToJTypeConv/testcases/JSToJTypeConvTest.java Wed Mar 20 15:35:22 2013 +0100 +++ b/tests/reproducers/simple/JSToJTypeConv/testcases/JSToJTypeConvTest.java Wed Mar 20 18:06:04 2013 +0100 @@ -48,6 +48,9 @@ public class JSToJTypeConvTest extends BrowserTest { + //the JS<->J tests tend to make Opera unusable + public final boolean doNotRunInOpera = true; + private final String initStr = "JSToJTypeConv applet initialized."; private final String afterStr = "afterTests"; @@ -81,6 +84,13 @@ } private void jsToJavaTypeConvTest(String fieldStr, String valueStr, String[] expectedValueAndOutputs) throws Exception { + + if( doNotRunInOpera){ + if(server.getCurrentBrowser().getID() == Browsers.opera){ + return; + } + } + String strURL = "/JSToJTypeConv.html?" + fieldStr + ";" + valueStr; ProcessResult pr = server.executeBrowser(strURL, new CountingClosingListenerImpl(), new CountingClosingListenerImpl()); String[] expectedStdouts = expectedValueAndOutputs; From jfabriko at icedtea.classpath.org Wed Mar 20 10:06:18 2013 From: jfabriko at icedtea.classpath.org (jfabriko at icedtea.classpath.org) Date: Wed, 20 Mar 2013 17:06:18 +0000 Subject: /hg/icedtea-web: fixing a few typos in ChangeLog (dates) Message-ID: changeset 6510748f3514 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=6510748f3514 author: Jana Fabrikova date: Wed Mar 20 18:09:08 2013 +0100 fixing a few typos in ChangeLog (dates) diffstat: ChangeLog | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diffs (50 lines): diff -r b4362a2987f8 -r 6510748f3514 ChangeLog --- a/ChangeLog Wed Mar 20 18:06:04 2013 +0100 +++ b/ChangeLog Wed Mar 20 18:09:08 2013 +0100 @@ -12,7 +12,7 @@ * tests/reproducers/simple/JSToJTypeConv/testcases/JSToJTypeConvTest.java: adding few lines for not running test in Opera -2012-20-03 Jiri Vanek +2013-03-20 Jiri Vanek All occurences of hardcoded paths to java repalced by call of functions * plugin/icedteanp/IcedTeaNPPlugin.cc: (appletviewer_executable) renamed @@ -21,24 +21,24 @@ (get_plugin_executable) and (string get_plugin_rt_jar) new functions, returniong the default variables for now. -2013-19-03 Adam Domurad +2013-03-19 Adam Domurad * Makefile.am (CPP_UNITTEST_EXECUTABLE): Add -lrt & -lpthread flags, which do not seem to be brought in on all systems. -2012-13-03 Jiri Vanek +2013-03-13 Jiri Vanek * NEWS: mentioned de translation * AUTHORS: added Jacob Wisor -2012-13-03 Jiri Vanek +2013-03-13 Jiri Vanek Jacob Wisor Fixed strange sentences in default locales bundle. * netx/net/sourceforge/jnlp/resources/Messages.properties: -2012-13-03 Jiri Vanek +2013-03-13 Jiri Vanek Added tests for German i18n * tests/reproducers/simple/LocalesTest/testcases/LocalesTestTest.java: @@ -47,7 +47,7 @@ Enhanced to handle de messages and be prepared for locales with one language but different nations. -2012-13-03 Jiri Vanek +2013-03-13 Jiri Vanek Jacob Wisor Added initial German localization From jfabriko at icedtea.classpath.org Wed Mar 20 10:11:12 2013 From: jfabriko at icedtea.classpath.org (jfabriko at icedtea.classpath.org) Date: Wed, 20 Mar 2013 17:11:12 +0000 Subject: /hg/icedtea-web: minor edit in my ChangeLog entry (deleting unne... Message-ID: changeset f8546db82ac2 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=f8546db82ac2 author: Jana Fabrikova date: Wed Mar 20 18:14:02 2013 +0100 minor edit in my ChangeLog entry (deleting unnecessary blank lines) diffstat: ChangeLog | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diffs (17 lines): diff -r 6510748f3514 -r f8546db82ac2 ChangeLog --- a/ChangeLog Wed Mar 20 18:09:08 2013 +0100 +++ b/ChangeLog Wed Mar 20 18:14:02 2013 +0100 @@ -2,13 +2,10 @@ * tests/reproducers/simple/JSToJGet/testcases/JSToJGetTest.java: adding few lines for not running test in Opera - * tests/reproducers/simple/JSToJSet/testcases/JSToJSetTest.java: adding few lines for not running test in Opera - * tests/reproducers/simple/JSToJFuncParam/testcases/JSToJFuncParamTest.java: adding few lines for not running test in Opera - * tests/reproducers/simple/JSToJTypeConv/testcases/JSToJTypeConvTest.java: adding few lines for not running test in Opera From adomurad at redhat.com Wed Mar 20 11:36:28 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 20 Mar 2013 14:36:28 -0400 Subject: [fyi][icedtea-web] backend and itw-settings for extended applets security In-Reply-To: <514337CA.3040400@redhat.com> References: <510E532C.8040401@redhat.com> <51119426.9090000@redhat.com> <511D1142.2090501@redhat.com> <511D2AA8.2040709@redhat.com> <5124C5D0.7080309@redhat.com> <512545CD.4080305@redhat.com> <51269AAA.8090606@redhat.com> <512B8F37.9020703@redhat.com> <512F83FC.1080101@redhat.com> <5130E0EF.2030003@redhat.com> <513F2610.8070602@redhat.com> <514337CA.3040400@redhat.com> Message-ID: <514A01AC.5080301@redhat.com> On 03/15/2013 11:01 AM, Jiri Vanek wrote: > On 03/12/2013 01:56 PM, Adam Domurad wrote: >> On 03/01/2013 12:10 PM, Adam Domurad wrote: >>> [ large snip ] >>>> New version attached. >>>> -Adam >>> >>> Woops. In the back&forth between 1.2 and HEAD I have forgot to add >>> the normalization stuff. >>> >>> Rough location of the changes (sorry for the odd format, I just >>> grepped them): >>> >>> + private static UnsignedAppletActionEntry >>> getMatchingItem(UnsignedAppletActionStorage actionStorage, >>> PluginBridge file) { >>> + return actionStorage.getMatchingItem( >>> + normalizeURLQuietly(file.getSourceLocation()).toString(), >>> + normalizeURLQuietly(file.getCodeBase()).toString(), >>> + file.getArchiveJars()); >>> + } >>> + >>> + static private URL normalizeURLQuietly(URL url) { >>> + try { >>> + System.out.println("Normalizing " + url + " to " + >>> ResourceTracker.normalizeUrl(url, false)); >>> + return ResourceTracker.normalizeUrl(url, false); >>> + } catch (IOException e) { >>> + e.printStackTrace(); >>> + } catch (URISyntaxException e) { >>> + e.printStackTrace(); >>> + } >>> + return url; >>> + } >>> -- >>> + } >>> + >>> + URL codebase = normalizeURLQuietly(file.getCodeBase()); >>> + URL documentbase = normalizeURLQuietly(file.getSourceLocation()); >>> + >>> + /* Else, create a new entry */ >>> + UrlRegEx codebaseRegex = new UrlRegEx("\\Q" + codebase + "\\E"); >>> + UrlRegEx documentbaseRegex = new UrlRegEx("\\Q" + documentbase + >>> "\\E"); >>> + >>> + UnsignedAppletActionEntry entry = new UnsignedAppletActionEntry( >>> + behaviour, >>> >>> >>> Happy hacking, >>> -Adam >> >> Ping? > > Sorry for taking so long, but it was not working as expected. > Few issues remains: > 1)The "wildcard do not work" issue as we have discussed - they do :) > But i had (for some reason???) included archives comaprsion also for > not stored archvies. So when there was wildchards an no archives, but > the matching against fully qualified applet then failed. Attached is > patch with fix and test. [rfc] Looks OK to me. > 2)parameters - as you are already aware, all parameters are stored to > urls. As those can be some dinamical ID or simialr, then I think we > should strip them both from bases and from jars. For jars the tshe > strip is easy (all behind ? , including ?).For urls I'm not so sure. > Maybe the best is to strip both saved and compared? or strip just form > saved with be "...\E.*" or "...?\E.*addition to such a base? [rfc] Hmm. OK, sounds good (stripping both). > > 3)archives saved with full url. On one side I'm not sure how wrong > this is. On the second side I would probably prefer to have just > plain archive names . This happens during all, except "plain archives > tag". Good reproducer is jnlp href. I'm for simple "scratch everything > before last slash" - before saving and comparing [rfc] 'Scratch everything before last slash' was not sufficient, but OK used URI#relativize > > > With fix on my previous work the whole concept looks to be working as > expected. Maybe you can push, and fix following issues separately. > Depends what do you prefer to fight with during packporting to 1.3;) > Also the "ask once for matching appelts" looks like working,a nd I > have seen both red and green text finally :) > I think that also the backport to 1.2 is affected by above issues, so > I would hold it off.. or maybe do not do it at all. (and just live > with this 1.3 and head) It's easy to fix. I'll do it once we get this in. > > > J. > New version posted. Changes in UnsignedAppletTrustConfirmation.java, see extractRelativeArchives & normalizeUrlAndStripParams. I also added some extra debug logging. -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: integrated-dialogue4.patch Type: text/x-patch Size: 33652 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/bd723018/integrated-dialogue4.patch From gnu.andrew at redhat.com Wed Mar 20 11:50:55 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 20 Mar 2013 14:50:55 -0400 (EDT) Subject: IcedTea for OpenJDK 8 Updated In-Reply-To: <20130320151511.GA18093@linux-xtv2.site> Message-ID: <1802451850.21954573.1363805455102.JavaMail.root@redhat.com> ----- Original Message ----- > On Fri, Mar 15, 2013 at 03:25:25PM -0400, Andrew Hughes wrote: > > I've just pushed a changeset which does a mass update / cleanup of > > IcedTea for OpenJDK 8, allowing it to build the latest b80 from > > upstream OpenJDK. > > > > Most patches have been removed to give us a clean start and there's > > a lot of build change, including the use of OpenJDK's new build > > system, so no doubt things will be broken / missing at first. > > Things as > > basic as system library support have yet to be added back in. > > But this is a start. Please file bugs at > > http://icedtea.classpath.org/bugzilla for issues you encounter > > or just supply a patch if it's something simple. > > Hi Andrew, > > I've ended failry soon - on hg fclone phase > > $ make > hg fclone http://icedtea.classpath.org/hg/icedtea8-forest openjdk; > abort: repository 'http://icedtea.classpath.org/hg/icedtea8-forest' > is > not local > make: *** [stamps/download-openjdk.stamp] Error 255 > > I use the hgforest from icedtea, with attached patch to work-around > API > changes in mercurial 2.3 [1]. > > [1] http://selenic.com/hg/rev/a06e2681dd17 > > As I have no experience with hg, neither hgforest, I have no idea > about > the error message. > > Best regards > Michal Vyskocil > Hmm, how are you configuring? I'm planning to rip out the fclone stuff, which still lurks in IcedTea for 6, 7 & 8, as forest is pretty much unmaintained. It's not been high priority as most people never use that. It's only enabled if you pass --enable-hg which you shouldn't need to do. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From adomurad at redhat.com Wed Mar 20 12:47:18 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 20 Mar 2013 15:47:18 -0400 Subject: [rfc][icedtea-web] get the custom jre in shell-launchers too In-Reply-To: <5149954E.4090900@redhat.com> References: <5127841B.108@redhat.com> <51279AF5.4020502@redhat.com> <5149954E.4090900@redhat.com> Message-ID: <514A1246.9000001@redhat.com> On 03/20/2013 06:54 AM, Jiri Vanek wrote: > On 02/22/2013 05:21 PM, Adam Domurad wrote: >> On 02/22/2013 09:43 AM, Jiri Vanek wrote: >>> And finally bash launchers can check for the custom jre value too.... >>> >>> >>> J. >>> >>> ps: part of.. you know... >>> pps: does this really replace all the c code!??!?! /me started to >>> like bash >> >> It would be nice if C++ had a regex library. (added in C++11, but I >> doubt we'll see icedtea-web move >> to C++11.) >> >> Actually during my internship I started to quite like hacking stuff >> with bash. Great & modular >> 'standard library' :-) >> >>> diff -r ad2e15f15a75 launcher/itweb-settings.in >>> --- a/launcher/itweb-settings.in Thu Feb 21 15:26:38 2013 -0500 >>> +++ b/launcher/itweb-settings.in Fri Feb 22 15:41:10 2013 +0100 >>> @@ -7,6 +7,16 @@ >>> BINARY_LOCATION=@ITWEB_SETTINGS_BIN_LOCATION@ >>> PROGRAM_NAME=itweb-settings >>> >>> +a="^deployment.jre.dir *= *" >> >> 'a' could probably get a better name here, ie 'JRE_PROPERTY' or >> some-such. >> >>> +CUSTOM_JRE=`grep "$a" ~/.icedtea/deployment.properties 2>/dev/null >>> | sed "s/$a//g"` >>> +if [ "x$CUSTOM_JRE" = "x" ] ; then >>> + CUSTOM_JRE=`grep "$a" /etc/.java/.deploy/deployment.properties >>> 2>/dev/null | sed "s/$a//g"` >>> +fi; >>> +if [ "x$CUSTOM_JRE" != "x" ] ; then >>> + JAVA=$CUSTOM_JRE/bin/java >>> + CP=$CUSTOM_JRE/lib/rt.jar >> >> AFAIK this CP= is not needed in itweb-settings.in. >> >>> +fi; >>> + >>> ${JAVA} ${LAUNCHER_BOOTCLASSPATH} ${LAUNCHER_FLAGS} \ >>> -Dicedtea-web.bin.name=${PROGRAM_NAME} \ >>> -Dicedtea-web.bin.location=${BINARY_LOCATION} \ >>> diff -r ad2e15f15a75 launcher/javaws.in >>> --- a/launcher/javaws.in Thu Feb 21 15:26:38 2013 -0500 >>> +++ b/launcher/javaws.in Fri Feb 22 15:41:10 2013 +0100 >>> @@ -9,6 +9,16 @@ >>> PROGRAM_NAME=javaws >>> CP=@JRE@/lib/rt.jar >>> >>> +a="^deployment.jre.dir *= *" >>> +CUSTOM_JRE=`grep "$a" ~/.icedtea/deployment.properties 2>/dev/null >>> | sed "s/$a//g"` >>> +if [ "x$CUSTOM_JRE" = "x" ] ; then >>> + CUSTOM_JRE=`grep "$a" /etc/.java/.deploy/deployment.properties >>> 2>/dev/null | sed "s/$a//g"` >>> +fi; >>> +if [ "x$CUSTOM_JRE" != "x" ] ; then >> >> This is funny. Are you trying to test for a non-empty string ? >> [ "$CUSTOM_JRE" != "" ] works fine. ( [ $CUSTOM_JRE != "x" ] is the >> one that does not ) >> Since we have a default, it may also be worth checking [ -e >> "$CUSTOM_JRE" ] (file exists) here (and >> above). >> >>> + JAVA=$CUSTOM_JRE/bin/java >>> + CP=$CUSTOM_JRE/lib/rt.jar >>> +fi; >>> + >>> JAVA_ARGS=( ) >>> ARGS=( ) >>> COMMAND=() >> >> Overall this is quite OK, if we do end up including the JRE path in >> the deployment properties file. >> Maybe though it will make life simpler if it's in its own file, eg >> '.icedtea/jre-path'? >> >> You have a very valid point about the fact that we should avoid >> spawning a Java instance just to get >> the JVM arguments, however. >> We might still want to parse the properties file for this, or we >> could place it in the file with the >> JRE path. >> Considering that we need to extract this property from bash, C & >> Java, it might make sense to use >> the simplest format possible though. It would be very bad if a small >> mistake in how the property >> file is treated in Bash or C causes ITW not to be able to run. >> >> Anyway properties file is not an overly scary format, but still worth >> thinking about. >> >> Happy hacking, >> -Adam > > > So I think this can go inside. Oook? > > J. Overall it looks fine, but... > diff -r e6c51c4b4d20 -r a9920eea7c17 launcher/itweb-settings.in > --- a/launcher/itweb-settings.in Wed Mar 13 14:51:20 2013 +0100 > +++ b/launcher/itweb-settings.in Mon Mar 18 11:30:39 2013 +0100 > @@ -7,6 +7,15 @@ > BINARY_LOCATION=@ITWEB_SETTINGS_BIN_LOCATION@ > PROGRAM_NAME=itweb-settings > > +CUSTOM_JRE_REGEX="^deployment.jre.dir *= *" > +CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" ~/.icedtea/deployment.properties > 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` > +if [ "x$CUSTOM_JRE" = "x" ] ; then > + CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" > /etc/.java/.deploy/deployment.properties 2>/dev/null | sed > "s/$CUSTOM_JRE_REGEX//g"` > +fi; > +if [ "x$CUSTOM_JRE" != "x" ] ; then > + JAVA=$CUSTOM_JRE/bin/java > +fi; > + > ${JAVA} ${LAUNCHER_BOOTCLASSPATH} ${LAUNCHER_FLAGS} \ > -Dicedtea-web.bin.name=${PROGRAM_NAME} \ > -Dicedtea-web.bin.location=${BINARY_LOCATION} \ > diff -r e6c51c4b4d20 -r a9920eea7c17 launcher/javaws.in > --- a/launcher/javaws.in Wed Mar 13 14:51:20 2013 +0100 > +++ b/launcher/javaws.in Mon Mar 18 11:30:39 2013 +0100 > @@ -9,6 +9,16 @@ > PROGRAM_NAME=javaws > CP=@JRE@/lib/rt.jar > > +CUSTOM_JRE_REGEX="^deployment.jre.dir *= *" > +CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" ~/.icedtea/deployment.properties > 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` > +if [ "x$CUSTOM_JRE" = "x" ] ; then Please just use [ "$CUSTOM_JRE" = "" ] instead of this mysterious thing. > + CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" > /etc/.java/.deploy/deployment.properties 2>/dev/null | sed > "s/$CUSTOM_JRE_REGEX//g"` > +fi; > +if [ "x$CUSTOM_JRE" != "x" ] ; then Please just use [ "$CUSTOM_JRE" != "" ] instead of this mysterious thing. > + JAVA=$CUSTOM_JRE/bin/java > + CP=$CUSTOM_JRE/lib/rt.jar > +fi; > + > JAVA_ARGS=( ) > ARGS=( ) > COMMAND=() -Adam From adomurad at redhat.com Wed Mar 20 12:48:57 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 20 Mar 2013 15:48:57 -0400 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <514986BE.3050005@redhat.com> References: <51488B8A.9050904@redhat.com> <5148BA54.6020900@redhat.com> <5148BFBE.1010001@redhat.com> <514986BE.3050005@redhat.com> Message-ID: <514A12A9.1020804@redhat.com> On 03/20/2013 05:51 AM, Jiri Vanek wrote: > On 03/19/2013 08:42 PM, Adam Domurad wrote: >> On 03/19/2013 03:19 PM, Jiri Vanek wrote: >>> On 03/19/2013 05:00 PM, Adam Domurad wrote: >>>> I think this is worthy because it would have saved me a lot of time >>>> investigating a recent bug. >>>> This will continue as normal, but ClassFormatError's really should >>>> be logged. It will make >>>> resulting ClassNotFoundException's less mysterious. >>>> >>>> 2013-19-03 Adam Domurad >>>> >>>> * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java >>>> (findClass): Print stacktrace for ClassFormatError >>>> >>>> >>> Hmm... why keep other ones silent? >> >> You mean PrivilegedActionException? It is worthy perhaps, shall I >> include it when I push ? >> (NullJnlpFileException already stores the exception and rethrows, and >> CNFE represents a failure that >> we fully expect when we fail to load a classs.) >> >>> Why do not rethrow? >> >> Well my logic was simply to be as lenient as possible, eg in case we >> ever pick something up that >> isn't really a class. However rethrow sounds good to me too. If you >> prefer this I can do it (I do >> not expect it to break anything, especially anything sanely >> organized). I looked at the history of >> this catch and it is present in the initial commit, so no telling why >> it was added. >> >>> > > Yup :)) I like your points... But I'm not so sure that it will break > anything.... > I'm for rethrowing where possible, and be laud/log where we can not > rethrow. > But in this particular part of code it will need a lot of empiric > tastings, or somebody with insight into classlaoders... Omair? > (silently CCed O:) > > In case that we will no able to rethrow, isnt worthy to get rid of > printstacktrace and to add standard logger? Just thing to think about.... What do you mean by standard logger ? I'd like to push the printStackTrace for the time being (to this & PrivilegedActionException), assuming you're suggesting some new feature. > > > J. > -Adam From omajid at redhat.com Wed Mar 20 13:02:01 2013 From: omajid at redhat.com (Omair Majid) Date: Wed, 20 Mar 2013 16:02:01 -0400 Subject: [rfc][icedtea-web] get the custom jre in shell-launchers too In-Reply-To: <514A1246.9000001@redhat.com> References: <5127841B.108@redhat.com> <51279AF5.4020502@redhat.com> <5149954E.4090900@redhat.com> <514A1246.9000001@redhat.com> Message-ID: <514A15B9.7000703@redhat.com> On 03/20/2013 03:47 PM, Adam Domurad wrote: > On 03/20/2013 06:54 AM, Jiri Vanek wrote: >> +CUSTOM_JRE_REGEX="^deployment.jre.dir *= *" >> +CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" ~/.icedtea/deployment.properties >> 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` >> +if [ "x$CUSTOM_JRE" = "x" ] ; then > > Please just use [ "$CUSTOM_JRE" = "" ] instead of this mysterious thing. I don't know if "mysterious" is the right word for this. This is a fairly common idiom. Older shells, using simple string substitution, could interpret if [ "$CUSTOM_JRE" = "foo" ] ; then as if test = foo ; then which is a syntax error. The use of "x" to avoid this is a common idiom that you can find in lots of places (like in our acinclude.m4 files). The "x" also avoids nasty surprises if $CUSTOM_JRE evaluates to "-z" or something. However, if we are just checking if a variable is empty, perhaps -z is more appropriate: if [ -z "$CUSTOM_JRE" ] ; then ... Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From ChrisPhi at redhat.com Wed Mar 20 14:05:00 2013 From: ChrisPhi at redhat.com (Chris Phillips) Date: Wed, 20 Mar 2013 17:05:00 -0400 Subject: Fix for SIGILL FTBFS in fc19/rawhide In-Reply-To: References: Message-ID: <514A247C.6010705@RedHat.Com> Hi The attached patch fixes the failure to build for fedora 19 / rawhide. (Failure in the register allocation logic, diagnosed by APH to be issue with PUSH/POP macro's and assumption of order of evaluation of arguments.) The fix includes detection of the condition and bailing from the compilation if a similar failure is detected. Future fixes will address other JASSERT conditions and provide less hidden failure modes. This patch is against icedtea7 2.1 hotspot forest. After application it builds on the 4GB machine that was seeing the problem consistently before. Chris -------------- next part -------------- A non-text attachment was scrubbed... Name: hotspot.patch Type: text/x-patch Size: 2606 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/c7fa524f/hotspot.patch From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 14:42:10 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 20 Mar 2013 21:42:10 +0000 Subject: [Bug 1345] New: [IcedTea8] PulseAudio header mismatch Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1345 Bug ID: 1345 Summary: [IcedTea8] PulseAudio header mismatch Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org /mnt/builder/portage.build/portage/dev-java/icedtea-3.9999/work/icedtea-3.9999/pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Stream.c:337:24: error: conflicting types for 'Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1get_1state' JNIEXPORT jint JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1get_1state ^ In file included from /mnt/builder/portage.build/portage/dev-java/icedtea-3.9999/work/icedtea-3.9999/pulseaudio/src/native/org_classpath_icedtea_pulseaudio_Stream.c:1:0: /mnt/builder/portage.build/portage/dev-java/icedtea-3.9999/work/icedtea-3.9999/pulseaudio.build/native/org_classpath_icedtea_pulseaudio_Stream.h:39:25: note: previous declaration of 'Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1get_1state' was here JNIEXPORT jlong JNICALL Java_org_classpath_icedtea_pulseaudio_Stream_native_1pa_1stream_1get_1state -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/50af5c26/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 14:42:49 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 20 Mar 2013 21:42:49 +0000 Subject: [Bug 1345] [IcedTea8] PulseAudio header mismatch In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1345 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 --- Comment #1 from Andrew John Hughes --- Solution will probably be to move PulseAudio out into its own repository (IcedTea-Sound). -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/b57fe312/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 14:42:49 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 20 Mar 2013 21:42:49 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1345 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/5ae17db3/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 15:07:47 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 20 Mar 2013 22:07:47 +0000 Subject: [Bug 1346] New: [IcedTea8] Filter out -j option to make Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1346 Bug ID: 1346 Summary: [IcedTea8] Filter out -j option to make Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org The new OpenJDK build system balks at -j: /mnt/builder/portage.build/portage/dev-java/icedtea-3.9999/work/icedtea-3.9999/openjdk//common/makefiles/Main.gmk:83: *** make -j is not supported, use make JOBS=n. Stop. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/b64d7085/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 15:08:11 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 20 Mar 2013 22:08:11 +0000 Subject: [Bug 1346] [IcedTea8] Filter out -j option to make In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1346 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/42b2b578/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 15:08:11 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 20 Mar 2013 22:08:11 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1346 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130320/0d805cd7/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:19:25 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:19:25 +0000 Subject: [Bug 1347] New: [IcedTea8] Update list of checked JDKs Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1347 Bug ID: 1347 Summary: [IcedTea8] Update list of checked JDKs Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org IcedTea still checks for gcj first, when no current version has an up-to-date enough version of ecj to build it, and for OpenJDK 6. These should be removed; the former temporarily, the latter permanently. Also, OpenJDK 8 itself needs to be added. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/c75c97c1/attachment.html From andrew at icedtea.classpath.org Wed Mar 20 17:28:14 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:28:14 +0000 Subject: /hg/icedtea: 4 new changesets Message-ID: changeset 0f2eee121cdd in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=0f2eee121cdd author: Andrew John Hughes date: Wed Mar 20 23:04:14 2013 +0000 PR1346: Filter out -j option to make. 2013-03-20 Andrew John Hughes PR1346: Filter out -j option to make * Makefile.am: (ICEDTEA_MAKE): Remove -j flag if present as OpenJDK build chokes on it. (ICEDTEA_ENV): Set JOBS to value of ${PARALLEL_JOBS}. (icedtea): Use ICEDTEA_MAKE. (icedtea-debug): Likewise. (icedtea-boot): Likewise. * NEWS: Updated. changeset ccf39d9b37b2 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=ccf39d9b37b2 author: Andrew John Hughes date: Wed Sep 28 21:55:51 2011 +0100 Update list of JDKs to check. Only check for IcedTea6 VMs when not bootstrapping until PR716 is fixed. 2011-09-27 Andrew John Hughes * acinclude.m4: (AC_CHECK_FOR_JDK): Look for IcedTea7 JDKs. Don't check for IcedTea6 JDKs when bootstrapping until PR716 is fixed. changeset 04e4a665e0da in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=04e4a665e0da author: Andrew John Hughes date: Thu Mar 21 00:25:11 2013 +0000 PR1347: Update list of checked JDKs 2013-03-20 Andrew John Hughes PR1347: Update list of checked JDKs * acinclude.m4: (IT_CHECK_FOR_JDK): Split out GCJ_VMS and don't include for now, until it uses a new enough ecj. Remove ICEDTEA6_VMS and add ICEDTEA8_VMS. (IT_DIAMOND_CHECK): Add target 7 so javac succeeds when it can. * NEWS: Updated. changeset fa408e2cd92e in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=fa408e2cd92e author: Andrew John Hughes date: Thu Mar 21 00:27:57 2013 +0000 Fix path on not-enabled NSS patch too. 2013-03-20 Andrew John Hughes * patches/nss-not-enabled-config.patch: Fix path on this version too. diffstat: ChangeLog | 35 +++++++++++++++++++++++++++++++++++ Makefile.am | 10 ++++++---- NEWS | 6 +++++- acinclude.m4 | 12 +++++++----- patches/nss-not-enabled-config.patch | 4 ++-- 5 files changed, 55 insertions(+), 12 deletions(-) diffs (147 lines): diff -r 14ea939ddd75 -r fa408e2cd92e ChangeLog --- a/ChangeLog Fri Mar 15 19:22:26 2013 +0000 +++ b/ChangeLog Thu Mar 21 00:27:57 2013 +0000 @@ -1,3 +1,38 @@ +2013-03-20 Andrew John Hughes + + * patches/nss-not-enabled-config.patch: + Fix path on this version too. + +2013-03-20 Andrew John Hughes + + PR1347: Update list of checked JDKs + * acinclude.m4: + (IT_CHECK_FOR_JDK): Split out GCJ_VMS and don't + include for now, until it uses a new enough ecj. + Remove ICEDTEA6_VMS and add ICEDTEA8_VMS. + (IT_DIAMOND_CHECK): Add target 7 so javac succeeds + when it can. + * NEWS: Updated. + +2011-09-27 Andrew John Hughes + + * acinclude.m4: + (IT_CHECK_FOR_JDK): Look for IcedTea7 JDKs. + Don't check for IcedTea6 JDKs when bootstrapping + until PR716 is fixed. + +2013-03-20 Andrew John Hughes + + PR1346: Filter out -j option to make + * Makefile.am: + (ICEDTEA_MAKE): Remove -j flag if present + as OpenJDK build chokes on it. + (ICEDTEA_ENV): Set JOBS to value of ${PARALLEL_JOBS}. + (icedtea): Use ICEDTEA_MAKE. + (icedtea-debug): Likewise. + (icedtea-boot): Likewise. + * NEWS: Updated. + 2013-03-14 Andrew John Hughes Bump to OpenJDK b80. diff -r 14ea939ddd75 -r fa408e2cd92e Makefile.am --- a/Makefile.am Fri Mar 15 19:22:26 2013 +0000 +++ b/Makefile.am Thu Mar 21 00:27:57 2013 +0000 @@ -108,6 +108,7 @@ # Flags IT_CFLAGS=$(CFLAGS) $(ARCHFLAG) +ICEDTEA_MAKE=$(subst -j,JOBS=,$(MAKE)) # Conditional defintions @@ -321,7 +322,8 @@ DEBUG_BINARIES="true" \ DISABLE_INTREE_EC="true" \ LOG="debug" SCTP_WERROR= \ - POST_STRIP_CMD= STRIP_POLICY="no_strip" + POST_STRIP_CMD= STRIP_POLICY="no_strip" \ + JOBS="$(PARALLEL_JOBS)" if ENABLE_CACAO ICEDTEA_ENV += \ @@ -1378,7 +1380,7 @@ touch $@ stamps/icedtea.stamp: stamps/icedtea-configure.stamp - $(ARCH_PREFIX) $(MAKE) \ + $(ARCH_PREFIX) $(ICEDTEA_MAKE) \ $(ICEDTEA_ENV) \ -C $(BUILD_OUTPUT_DIR) \ $(ICEDTEA_BUILD_TARGET) @@ -1451,7 +1453,7 @@ touch $@ stamps/icedtea-debug.stamp: stamps/icedtea-debug-configure.stamp - $(ARCH_PREFIX) $(MAKE) \ + $(ARCH_PREFIX) $(ICEDTEA_MAKE) \ $(ICEDTEA_ENV) \ -C $(DEBUG_BUILD_OUTPUT_DIR) \ $(ICEDTEA_BUILD_TARGET) @@ -1551,7 +1553,7 @@ touch $@ stamps/icedtea-boot.stamp: stamps/icedtea-boot-configure.stamp - $(ARCH_PREFIX) $(MAKE) \ + $(ARCH_PREFIX) $(ICEDTEA_MAKE) \ $(ICEDTEA_ENV_BOOT) \ -C $(BOOT_BUILD_OUTPUT_DIR) \ images diff -r 14ea939ddd75 -r fa408e2cd92e NEWS --- a/NEWS Fri Mar 15 19:22:26 2013 +0000 +++ b/NEWS Thu Mar 21 00:27:57 2013 +0000 @@ -10,7 +10,11 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 3.0 beta 1 (2011-XX-XX): +New in release 3.0 beta 1 (2013-XX-XX): + +* Bug fixes + - PR1346: Filter out -j option to make + - PR1347: Update list of checked JDKs New in release 2.0 (2011-XX-XX): diff -r 14ea939ddd75 -r fa408e2cd92e acinclude.m4 --- a/acinclude.m4 Fri Mar 15 19:22:26 2013 +0000 +++ b/acinclude.m4 Thu Mar 21 00:27:57 2013 +0000 @@ -1138,11 +1138,13 @@ ]) if test -z "${SYSTEM_JDK_DIR}"; then if test "x${enable_bootstrap}" = "xyes"; then - BOOTSTRAP_VMS="/usr/lib/jvm/java-gcj /usr/lib/jvm/gcj-jdk /usr/lib/jvm/cacao"; + GCJ_VMS="/usr/lib/jvm/java-gcj /usr/lib/jvm/gcj-jdk"; + BOOTSTRAP_VMS="/usr/lib/jvm/cacao"; fi - for dir in ${BOOTSTRAP_VMS} /usr/lib/jvm/java-openjdk \ - /usr/lib/jvm/icedtea6 /usr/lib/jvm/java-6-openjdk \ - /usr/lib/jvm/openjdk /usr/lib/jvm/java-icedtea ; do + ICEDTEA7_VMS="/usr/lib/jvm/icedtea7 /usr/lib/jvm/java-1.7.0-openjdk" + ICEDTEA8_VMS="/usr/lib/jvm/icedtea8 /usr/lib/jvm/java-1.8.0-openjdk" + for dir in ${BOOTSTRAP_VMS} ${ICEDTEA8_VMS} ${ICEDTEA7_VMS} \ + /usr/lib/jvm/java-openjdk /usr/lib/jvm/openjdk /usr/lib/jvm/java-icedtea ; do if test -d $dir; then SYSTEM_JDK_DIR=$dir break @@ -1682,7 +1684,7 @@ } }] EOF - if $JAVAC -cp . $JAVACFLAGS -source 7 $CLASS >&AS_MESSAGE_LOG_FD 2>&1; then + if $JAVAC -cp . $JAVACFLAGS -source 7 -target 7 $CLASS >&AS_MESSAGE_LOG_FD 2>&1; then it_cv_diamond=no; else it_cv_diamond=yes; diff -r 14ea939ddd75 -r fa408e2cd92e patches/nss-not-enabled-config.patch --- a/patches/nss-not-enabled-config.patch Fri Mar 15 19:22:26 2013 +0000 +++ b/patches/nss-not-enabled-config.patch Thu Mar 21 00:27:57 2013 +0000 @@ -1,5 +1,5 @@ ---- openjdk.orig/jdk/src/share/lib/security/java.security 2009-08-25 11:43:59.000000000 +0100 -+++ openjdk/jdk/src/share/lib/security/java.security 2009-08-27 14:23:54.000000000 +0100 +--- openjdk.orig/jdk/src/share/lib/security/java.security-linux 2009-08-25 11:43:59.000000000 +0100 ++++ openjdk/jdk/src/share/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 From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:28:22 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:28:22 +0000 Subject: [Bug 1346] [IcedTea8] Filter out -j option to make In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1346 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea?cmd=changeset;node=0f2eee121cdd author: Andrew John Hughes date: Wed Mar 20 23:04:14 2013 +0000 PR1346: Filter out -j option to make. 2013-03-20 Andrew John Hughes PR1346: Filter out -j option to make * Makefile.am: (ICEDTEA_MAKE): Remove -j flag if present as OpenJDK build chokes on it. (ICEDTEA_ENV): Set JOBS to value of ${PARALLEL_JOBS}. (icedtea): Use ICEDTEA_MAKE. (icedtea-debug): Likewise. (icedtea-boot): Likewise. * NEWS: Updated. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/21dfedd6/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:28:28 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:28:28 +0000 Subject: [Bug 716] IcedTea7 should bootstrap with IcedTea6 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=716 --- Comment #6 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea?cmd=changeset;node=ccf39d9b37b2 author: Andrew John Hughes date: Wed Sep 28 21:55:51 2011 +0100 Update list of JDKs to check. Only check for IcedTea6 VMs when not bootstrapping until PR716 is fixed. 2011-09-27 Andrew John Hughes * acinclude.m4: (AC_CHECK_FOR_JDK): Look for IcedTea7 JDKs. Don't check for IcedTea6 JDKs when bootstrapping until PR716 is fixed. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/ec22a6ca/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:28:35 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:28:35 +0000 Subject: [Bug 1347] [IcedTea8] Update list of checked JDKs In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1347 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea?cmd=changeset;node=04e4a665e0da author: Andrew John Hughes date: Thu Mar 21 00:25:11 2013 +0000 PR1347: Update list of checked JDKs 2013-03-20 Andrew John Hughes PR1347: Update list of checked JDKs * acinclude.m4: (IT_CHECK_FOR_JDK): Split out GCJ_VMS and don't include for now, until it uses a new enough ecj. Remove ICEDTEA6_VMS and add ICEDTEA8_VMS. (IT_DIAMOND_CHECK): Add target 7 so javac succeeds when it can. * NEWS: Updated. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/896c0acf/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:29:42 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:29:42 +0000 Subject: [Bug 1347] [IcedTea8] Update list of checked JDKs In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1347 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/fc98120f/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:30:03 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:30:03 +0000 Subject: [Bug 1347] [IcedTea8] Update list of checked JDKs In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1347 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/34056adb/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:30:23 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:30:23 +0000 Subject: [Bug 1347] [IcedTea8] Update list of checked JDKs In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1347 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |1282 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/db498c85/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:30:23 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:30:23 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1347 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/8f25cb58/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:31:08 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:31:08 +0000 Subject: [Bug 1346] [IcedTea8] Filter out -j option to make In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1346 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/9b5618a8/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:31:08 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:31:08 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Bug 1282 depends on bug 1346, which changed state. Bug 1346 Summary: [IcedTea8] Filter out -j option to make http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1346 What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/46fb2807/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:48:05 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:48:05 +0000 Subject: [Bug 1348] New: [IcedTea8] java -version output is broken Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1348 Bug ID: 1348 Summary: [IcedTea8] java -version output is broken Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org openjdk version "1.8.0-fcs" OpenJDK Runtime Environment (build 1.8.0-fcs-andre_2013_03_20_22_33-b00) OpenJDK 64-Bit Server VM (build 25.0-b22, mixed mode) vs. java version "1.7.0_12" OpenJDK Runtime Environment (IcedTea7 2.4pre+r8b83f543f810+) (Gentoo build 1.7.0_12-b09) OpenJDK 64-Bit Server VM (build 24.0-b28, mixed mode) -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/4ab92dc9/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:48:35 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:48:35 +0000 Subject: [Bug 1348] [IcedTea8] java -version output is broken In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1348 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/da7f38a1/attachment.html From bugzilla-daemon at icedtea.classpath.org Wed Mar 20 17:48:35 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 00:48:35 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1348 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/c4b02bb3/attachment.html From mvyskocil at suse.cz Thu Mar 21 01:44:04 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Thu, 21 Mar 2013 09:44:04 +0100 Subject: IcedTea for OpenJDK 8 Updated In-Reply-To: <1802451850.21954573.1363805455102.JavaMail.root@redhat.com> References: <20130320151511.GA18093@linux-xtv2.site> <1802451850.21954573.1363805455102.JavaMail.root@redhat.com> Message-ID: <20130321084404.GA18075@linux-xtv2.site> On Wed, Mar 20, 2013 at 02:50:55PM -0400, Andrew Hughes wrote: > ----- Original Message ----- > > On Fri, Mar 15, 2013 at 03:25:25PM -0400, Andrew Hughes wrote: > > > I've just pushed a changeset which does a mass update / cleanup of > > > IcedTea for OpenJDK 8, allowing it to build the latest b80 from > > > upstream OpenJDK. > > > > > > Most patches have been removed to give us a clean start and there's > > > a lot of build change, including the use of OpenJDK's new build > > > system, so no doubt things will be broken / missing at first. > > > Things as > > > basic as system library support have yet to be added back in. > > > But this is a start. Please file bugs at > > > http://icedtea.classpath.org/bugzilla for issues you encounter > > > or just supply a patch if it's something simple. > > > > Hi Andrew, > > > > I've ended failry soon - on hg fclone phase > > > > $ make > > hg fclone http://icedtea.classpath.org/hg/icedtea8-forest openjdk; > > abort: repository 'http://icedtea.classpath.org/hg/icedtea8-forest' > > is > > not local > > make: *** [stamps/download-openjdk.stamp] Error 255 > > > > I use the hgforest from icedtea, with attached patch to work-around > > API > > changes in mercurial 2.3 [1]. > > > > [1] http://selenic.com/hg/rev/a06e2681dd17 > > > > As I have no experience with hg, neither hgforest, I have no idea > > about > > the error message. > > > > Best regards > > Michal Vyskocil > > > > Hmm, how are you configuring? I'm planning to rip out the fclone > stuff, which still lurks in IcedTea for 6, 7 & 8, as forest is > pretty much unmaintained. It's not been high priority as most > people never use that. It's only enabled if you pass > --enable-hg which you shouldn't need to do. It was enabled because I've added --with-project=icedtea, which turn hg on. Using the default jdk8 have fixed that. The configure --help was a bit confusing, so I'll post a patch fixing it. Thanks for a help Michal Vyskocil > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/cc9a84b5/attachment.bin From mvyskocil at suse.cz Thu Mar 21 02:05:12 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Thu, 21 Mar 2013 10:05:12 +0100 Subject: [PATCH] search alternatives for system jdk Message-ID: <20130321090508.GA29118@linux-xtv2.site> Hi, attached patch adds the /etc/alternatives/java_sdk_openjdk to the list of directories where system jdk is searched. It will work on all distros using jpackage.org style alternatives layout and which don't install 64bit jvm into /usr/lib/jvm. It is made on top of 2469:14ea939ddd75 from http://icedtea.classpath.org/hg/icedtea/ 2013-03-21 Michal Vyskocil search /etc/alternatives/java_sdk_openjdk for system jdk. * acinclude.m4: add alternatives into a list. * INSTALL: Updated. Regards Michal Vyskocil -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea8-search-alternatives-for-system-jdk.patch Type: text/x-patch Size: 929 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/9d24ee1c/icedtea8-search-alternatives-for-system-jdk.patch -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/9d24ee1c/attachment.bin From mvyskocil at suse.cz Thu Mar 21 02:10:28 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Thu, 21 Mar 2013 10:10:28 +0100 Subject: [PATCH] fix configure --help Message-ID: <20130321091024.GA29368@linux-xtv2.site> Hi, following patch fixes a help string for --with-project. It changes jdk7/jdk8 and prints jdk8 as a default value, instead of icedtea. It is made on top of 2469:14ea939ddd75 from http://icedtea.classpath.org/hg/icedtea/ 2013-03-21 Michal Vyskocil jdk8 is default value for --with-project * acinclude.m4: Updated. Regards Michal Vyskocil -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea-configure-help-fix.patch Type: text/x-patch Size: 624 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/0e5138ed/icedtea-configure-help-fix.patch -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/0e5138ed/attachment.bin From aph at redhat.com Thu Mar 21 02:21:39 2013 From: aph at redhat.com (Andrew Haley) Date: Thu, 21 Mar 2013 09:21:39 +0000 Subject: /hg/release/icedtea6-1.11: Add backport of 7197906 and alternate... In-Reply-To: References: Message-ID: <514AD123.5010509@redhat.com> On 03/20/2013 09:27 AM, andrew at icedtea.classpath.org wrote: > Add backport of 7197906 and alternate memory leak fix for 7017193. > > 2013-03-19 Andrew John Hughes > > * Makefile.am: > (ICEDTEA_PATCHES): Add new patches. > * patches/openjdk/7197906-handle_32_bit_shifts.patch: > Backport from OpenJDK 7. > * patches/fix_get_stack_bounds_leak.patch: > Add a much simpler fix for 7017193 using > free which doesn't suffer from the performance issues in > https://bugzilla.redhat.com/show_bug.cgi?id=902004 > * NEWS: Updated. > Is there an OpenJDK 6 backport for this? Thanks, Andrew. From bugzilla-daemon at icedtea.classpath.org Thu Mar 21 02:23:37 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 09:23:37 +0000 Subject: [Bug 1348] [IcedTea8] java -version output is broken In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1348 Andrew Haley changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |aph at redhat.com --- Comment #1 from Andrew Haley --- This isn't an IcedTea bug, is it? It's an upstream bug. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/db1046cd/attachment.html From mvyskocil at suse.cz Thu Mar 21 02:40:32 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Thu, 21 Mar 2013 10:40:32 +0100 Subject: [PATCH] use java.security-linux in nss-not-enabled.patch Message-ID: <20130321094030.GA31194@linux-xtv2.site> Hi, the java.security is called java.security-linux. This trivial patch fixes the patches/nss-not-enabled-config.patch to allow build with --disable-nss. 2013-03-21 Michal Vyskocil use java.security-linux un nss-not-enabled-config.patch * patches/nss-not-enabled-config.patch: Updated. Best regards Michal Vyskocil -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea-nss-not-enabled-config.patch Type: text/x-patch Size: 741 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/8611d237/icedtea-nss-not-enabled-config.patch -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/8611d237/attachment.bin From ptisnovs at icedtea.classpath.org Thu Mar 21 02:48:50 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 21 Mar 2013 09:48:50 +0000 Subject: /hg/rhino-tests: Updated ScriptContextClassTest to works correct... Message-ID: changeset 4e0ddaf30a61 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=4e0ddaf30a61 author: Pavel Tisnovsky date: Thu Mar 21 10:51:55 2013 +0100 Updated ScriptContextClassTest to works correctly with JDK6 and JDK7 too. diffstat: ChangeLog | 6 ++++++ src/org/RhinoTests/ScriptContextClassTest.java | 19 +++++++++++++------ 2 files changed, 19 insertions(+), 6 deletions(-) diffs (68 lines): diff -r 6ab9e0e1ad94 -r 4e0ddaf30a61 ChangeLog --- a/ChangeLog Wed Mar 20 13:12:57 2013 +0100 +++ b/ChangeLog Thu Mar 21 10:51:55 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-21 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptContextClassTest.java: + Updated ScriptContextClassTest to works correctly with JDK6 and + JDK7 too. + 2013-03-20 Pavel Tisnovsky * src/org/RhinoTests/CompiledScriptClassTest.java: diff -r 6ab9e0e1ad94 -r 4e0ddaf30a61 src/org/RhinoTests/ScriptContextClassTest.java --- a/src/org/RhinoTests/ScriptContextClassTest.java Wed Mar 20 13:12:57 2013 +0100 +++ b/src/org/RhinoTests/ScriptContextClassTest.java Thu Mar 21 10:51:55 2013 +0100 @@ -451,12 +451,19 @@ */ protected void testGetField() { // following fields should exists - final String[] fieldsThatShouldExists = { + final String[] fieldsThatShouldExist_jdk6 = { "ENGINE_SCOPE", "GLOBAL_SCOPE", }; + final String[] fieldsThatShouldExist_jdk7 = { + "ENGINE_SCOPE", + "GLOBAL_SCOPE", + }; + + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { + for (String fieldThatShouldExists : fieldsThatShouldExist) { try { Field field = this.scriptContextClass.getField(fieldThatShouldExists); String fieldName = field.getName(); @@ -475,7 +482,7 @@ */ protected void testGetMethods() { // following methods should be inherited - final String[] methodsThatShouldExists_jdk6 = { + final String[] methodsThatShouldExist_jdk6 = { "public abstract int javax.script.ScriptContext.getAttributesScope(java.lang.String)", "public abstract java.io.Reader javax.script.ScriptContext.getReader()", "public abstract java.io.Writer javax.script.ScriptContext.getErrorWriter()", @@ -492,7 +499,7 @@ "public abstract void javax.script.ScriptContext.setWriter(java.io.Writer)", }; - final String[] methodsThatShouldExists_jdk7 = { + final String[] methodsThatShouldExist_jdk7 = { "public abstract int javax.script.ScriptContext.getAttributesScope(java.lang.String)", "public abstract java.io.Reader javax.script.ScriptContext.getReader()", "public abstract java.io.Writer javax.script.ScriptContext.getErrorWriter()", @@ -516,9 +523,9 @@ for (Method method : methods) { methodsAsString.add(method.toString()); } - String[] methodsThatShouldExists = getJavaVersion() < 7 ? methodsThatShouldExists_jdk6 : methodsThatShouldExists_jdk7; + String[] methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : methodsThatShouldExists) { + for (String methodThatShouldExists : methodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "method " + methodThatShouldExists + " not found"); } From ptisnovs at icedtea.classpath.org Thu Mar 21 03:00:12 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 21 Mar 2013 10:00:12 +0000 Subject: /hg/gfx-test: One helper method and five new tests added into th... Message-ID: changeset 331484abba8d in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=331484abba8d author: Pavel Tisnovsky date: Thu Mar 21 11:03:21 2013 +0100 One helper method and five new tests added into the test suite BitBltUsingBgColorAlpha. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java | 98 ++++++++++++++++- 2 files changed, 102 insertions(+), 1 deletions(-) diffs (134 lines): diff -r 3cce57cca428 -r 331484abba8d ChangeLog --- a/ChangeLog Wed Mar 20 13:24:05 2013 +0100 +++ b/ChangeLog Thu Mar 21 11:03:21 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-21 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java: + One helper method and five new tests added into the test suite BitBltUsingBgColorAlpha. + 2013-03-20 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltUsingBgColor.java: diff -r 3cce57cca428 -r 331484abba8d src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java --- a/src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java Wed Mar 20 13:24:05 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java Thu Mar 21 11:03:21 2013 +0100 @@ -82,7 +82,7 @@ { /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_RGB * * @param image * image to used as a destination for BitBlt-type operations @@ -142,6 +142,26 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeIntARGB(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_INT_ARGB, newColor); + } + + /** * Calculate color with given alpha value. * * @param backgroundColor @@ -906,6 +926,82 @@ { return doBitBltEmptyBufferedImageType4ByteABGRPre(image, graphics2d, Color.black, 1.00f); } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeIntARGBbackgroundBlackAlpha000(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeIntARGB(image, graphics2d, Color.black, 0.0f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeIntARGBbackgroundBlackAlpha025(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeIntARGB(image, graphics2d, Color.black, 0.25f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeIntARGBbackgroundBlackAlpha050(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeIntARGB(image, graphics2d, Color.black, 0.5f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeIntARGBbackgroundBlackAlpha075(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeIntARGB(image, graphics2d, Color.black, 0.75f); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB. + * Background color is set to Color.black. + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeIntARGBbackgroundBlackAlpha100(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeIntARGB(image, graphics2d, Color.black, 1.00f); + } + /** * Entry point to the test suite. * From mvyskocil at suse.cz Thu Mar 21 03:02:11 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Thu, 21 Mar 2013 11:02:11 +0100 Subject: [PATCH] make xrender mandatory Message-ID: <20130321100209.GA13743@linux-xtv2.site> Hi, the build have ended with an error, because libXrender-devel has been missing. In file included from /home/mvyskocil/work/JVM/openjdk/icedtea/openjdk.build-boot/jdk/gensrc_x11wrappers/sizer.64.c:11:0: /home/mvyskocil/work/JVM/openjdk/icedtea/openjdk-boot/jdk/src/solaris/native/sun/awt/awt_p.h:51:36: fatal error: X11/extensions/Xrender.h: No such file or directory compilation terminated. gmake[3]: *** [/home/mvyskocil/work/JVM/openjdk/icedtea/openjdk.build-boot/jdk/gensrc_x11wrappers/sizer.64.exe] Error 1 Looking on configure.ac, the --enable-xrender seems to be expected, but no AC_ARG_ENABLE([xrender], has been found. And looking on awt_p.h it seems that Xrender.h is mandatory, thus I've made it mandatory in configure.ac as well. 2013-03-21 Michal Vyskocil * configure.ac: (XRENDER): Make it mandatory. Regards Michal Vyskocil -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/b1779700/attachment.bin From mvyskocil at suse.cz Thu Mar 21 03:03:34 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Thu, 21 Mar 2013 11:03:34 +0100 Subject: [PATCH] make xrender mandatory In-Reply-To: <20130321100209.GA13743@linux-xtv2.site> References: <20130321100209.GA13743@linux-xtv2.site> Message-ID: <20130321100334.GC18075@linux-xtv2.site> On Thu, Mar 21, 2013 at 11:02:11AM +0100, Michal Vyskocil wrote: > Hi, > > the build have ended with an error, because libXrender-devel has been > missing. now with patch attached Regards Michal Vyskocil > > In file included from > /home/mvyskocil/work/JVM/openjdk/icedtea/openjdk.build-boot/jdk/gensrc_x11wrappers/sizer.64.c:11:0: > /home/mvyskocil/work/JVM/openjdk/icedtea/openjdk-boot/jdk/src/solaris/native/sun/awt/awt_p.h:51:36: > fatal error: X11/extensions/Xrender.h: No such file or directory > compilation terminated. > gmake[3]: *** > [/home/mvyskocil/work/JVM/openjdk/icedtea/openjdk.build-boot/jdk/gensrc_x11wrappers/sizer.64.exe] > Error 1 > > Looking on configure.ac, the --enable-xrender seems to be > expected, but no AC_ARG_ENABLE([xrender], has been found. And looking on > awt_p.h it seems that Xrender.h is mandatory, thus I've made it > mandatory in configure.ac as well. > > 2013-03-21 Michal Vyskocil > > * configure.ac: > (XRENDER): Make it mandatory. > > Regards > Michal Vyskocil -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea-make-xrender-mandatory.patch Type: text/x-patch Size: 763 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/88c669ef/icedtea-make-xrender-mandatory.patch -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/88c669ef/attachment.bin From gnu.andrew at redhat.com Thu Mar 21 04:34:45 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 21 Mar 2013 07:34:45 -0400 (EDT) Subject: /hg/release/icedtea6-1.11: Add backport of 7197906 and alternate... In-Reply-To: <514AD123.5010509@redhat.com> Message-ID: <1527889758.22198776.1363865685779.JavaMail.root@redhat.com> ----- Original Message ----- > On 03/20/2013 09:27 AM, andrew at icedtea.classpath.org wrote: > > Add backport of 7197906 and alternate memory leak fix for 7017193. > > > > 2013-03-19 Andrew John Hughes > > > > * Makefile.am: > > (ICEDTEA_PATCHES): Add new patches. > > * patches/openjdk/7197906-handle_32_bit_shifts.patch: > > Backport from OpenJDK 7. > > * patches/fix_get_stack_bounds_leak.patch: > > Add a much simpler fix for 7017193 using > > free which doesn't suffer from the performance issues in > > https://bugzilla.redhat.com/show_bug.cgi?id=902004 > > * NEWS: Updated. > > > > Is there an OpenJDK 6 backport for this? > > Thanks, > Andrew. > > http://mail.openjdk.java.net/pipermail/jdk6-dev/2013-March/002943.html -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From aph at redhat.com Thu Mar 21 04:55:12 2013 From: aph at redhat.com (Andrew Haley) Date: Thu, 21 Mar 2013 11:55:12 +0000 Subject: /hg/release/icedtea6-1.11: Add backport of 7197906 and alternate... In-Reply-To: <1527889758.22198776.1363865685779.JavaMail.root@redhat.com> References: <1527889758.22198776.1363865685779.JavaMail.root@redhat.com> Message-ID: <514AF520.6060609@redhat.com> On 03/21/2013 11:34 AM, Andrew Hughes wrote: > ----- Original Message ----- >> On 03/20/2013 09:27 AM, andrew at icedtea.classpath.org wrote: >>> Add backport of 7197906 and alternate memory leak fix for 7017193. >>> >>> 2013-03-19 Andrew John Hughes >>> >>> * Makefile.am: >>> (ICEDTEA_PATCHES): Add new patches. >>> * patches/openjdk/7197906-handle_32_bit_shifts.patch: >>> Backport from OpenJDK 7. >>> * patches/fix_get_stack_bounds_leak.patch: >>> Add a much simpler fix for 7017193 using >>> free which doesn't suffer from the performance issues in >>> https://bugzilla.redhat.com/show_bug.cgi?id=902004 >>> * NEWS: Updated. >>> >> >> Is there an OpenJDK 6 backport for this? > > http://mail.openjdk.java.net/pipermail/jdk6-dev/2013-March/002943.html That's one of them. What about the garbage collection patch? Andrew. From gnu.andrew at redhat.com Thu Mar 21 05:15:19 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 21 Mar 2013 08:15:19 -0400 (EDT) Subject: /hg/release/icedtea6-1.11: Add backport of 7197906 and alternate... In-Reply-To: <514AF520.6060609@redhat.com> Message-ID: <802237604.22220901.1363868119918.JavaMail.root@redhat.com> ----- Original Message ----- > On 03/21/2013 11:34 AM, Andrew Hughes wrote: > > ----- Original Message ----- > >> On 03/20/2013 09:27 AM, andrew at icedtea.classpath.org wrote: > >>> Add backport of 7197906 and alternate memory leak fix for > >>> 7017193. > >>> > >>> 2013-03-19 Andrew John Hughes > >>> > >>> * Makefile.am: > >>> (ICEDTEA_PATCHES): Add new patches. > >>> * patches/openjdk/7197906-handle_32_bit_shifts.patch: > >>> Backport from OpenJDK 7. > >>> * patches/fix_get_stack_bounds_leak.patch: > >>> Add a much simpler fix for 7017193 using > >>> free which doesn't suffer from the performance issues in > >>> https://bugzilla.redhat.com/show_bug.cgi?id=902004 > >>> * NEWS: Updated. > >>> > >> > >> Is there an OpenJDK 6 backport for this? > > > > http://mail.openjdk.java.net/pipermail/jdk6-dev/2013-March/002943.html > > That's one of them. What about the garbage collection patch? > > Andrew. > > > > > Already reviewed: http://mail.openjdk.java.net/pipermail/jdk6-dev/2013-March/002909.html I intend to push them both together, as I applied the leak patch to the tree first and that's still waiting. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From gnu.andrew at redhat.com Thu Mar 21 05:16:23 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 21 Mar 2013 08:16:23 -0400 (EDT) Subject: [PATCH] make xrender mandatory In-Reply-To: <20130321100334.GC18075@linux-xtv2.site> Message-ID: <2002513555.22221079.1363868183940.JavaMail.root@redhat.com> ----- Original Message ----- > On Thu, Mar 21, 2013 at 11:02:11AM +0100, Michal Vyskocil wrote: > > Hi, > > > > the build have ended with an error, because libXrender-devel has > > been > > missing. > > now with patch attached > > Regards > Michal Vyskocil > > > > > In file included from > > /home/mvyskocil/work/JVM/openjdk/icedtea/openjdk.build-boot/jdk/gensrc_x11wrappers/sizer.64.c:11:0: > > /home/mvyskocil/work/JVM/openjdk/icedtea/openjdk-boot/jdk/src/solaris/native/sun/awt/awt_p.h:51:36: > > fatal error: X11/extensions/Xrender.h: No such file or directory > > compilation terminated. > > gmake[3]: *** > > [/home/mvyskocil/work/JVM/openjdk/icedtea/openjdk.build-boot/jdk/gensrc_x11wrappers/sizer.64.exe] > > Error 1 > > > > Looking on configure.ac, the --enable-xrender seems to be > > expected, but no AC_ARG_ENABLE([xrender], has been found. And > > looking on > > awt_p.h it seems that Xrender.h is mandatory, thus I've made it > > mandatory in configure.ac as well. > > > > 2013-03-21 Michal Vyskocil > > > > * configure.ac: > > (XRENDER): Make it mandatory. > > > > Regards > > Michal Vyskocil > > > Nice catch. I wonder if we fixed that in 7 too. 8 forked from 7 when 2.0 was released. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From gnu.andrew at redhat.com Thu Mar 21 05:17:35 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 21 Mar 2013 08:17:35 -0400 (EDT) Subject: [PATCH] use java.security-linux in nss-not-enabled.patch In-Reply-To: <20130321094030.GA31194@linux-xtv2.site> Message-ID: <1198653779.22221370.1363868255413.JavaMail.root@redhat.com> ----- Original Message ----- > Hi, > > the java.security is called java.security-linux. This trivial patch > fixes the patches/nss-not-enabled-config.patch to allow build with > --disable-nss. > > 2013-03-21 Michal Vyskocil > > use java.security-linux un nss-not-enabled-config.patch > * patches/nss-not-enabled-config.patch: Updated. > > Best regards > Michal Vyskocil > Yeah, I did a build with just ./configure ; make last night, rather than my usual setup that turns most options on, and caught this: http://icedtea.classpath.org/hg/icedtea/rev/fa408e2cd92e and the JDK issue, though alternatives is still not one we have. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From gnu.andrew at redhat.com Thu Mar 21 05:20:25 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 21 Mar 2013 08:20:25 -0400 (EDT) Subject: [PATCH] search alternatives for system jdk In-Reply-To: <20130321090508.GA29118@linux-xtv2.site> Message-ID: <878570869.22222149.1363868425965.JavaMail.root@redhat.com> ----- Original Message ----- > Hi, > > attached patch adds the /etc/alternatives/java_sdk_openjdk to the > list > of directories where system jdk is searched. It will work on all > distros > using jpackage.org style alternatives layout and which don't install > 64bit jvm into /usr/lib/jvm. > > It is made on top of 2469:14ea939ddd75 from > http://icedtea.classpath.org/hg/icedtea/ > > 2013-03-21 Michal Vyskocil > > search /etc/alternatives/java_sdk_openjdk for system jdk. > * acinclude.m4: add alternatives into a list. > * INSTALL: Updated. > > Regards > Michal Vyskocil > I updated this to check specifically for 7 & 8 already, and to drop 6 permanently and gcj for now. http://icedtea.classpath.org/hg/icedtea/rev/04e4a665e0da The alternatives one could be added to all branches as a last ditch attempt though. We don't know which version it is so the others are preferable. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From mvyskocil at suse.cz Thu Mar 21 06:56:52 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Thu, 21 Mar 2013 14:56:52 +0100 Subject: [PATCH] search alternatives for system jdk In-Reply-To: <878570869.22222149.1363868425965.JavaMail.root@redhat.com> References: <20130321090508.GA29118@linux-xtv2.site> <878570869.22222149.1363868425965.JavaMail.root@redhat.com> Message-ID: <20130321135652.GC26640@linux-xtv2.site> On Thu, Mar 21, 2013 at 08:20:25AM -0400, Andrew Hughes wrote: > > > ----- Original Message ----- > > Hi, > > > > attached patch adds the /etc/alternatives/java_sdk_openjdk to the > > list > > of directories where system jdk is searched. It will work on all > > distros > > using jpackage.org style alternatives layout and which don't install > > 64bit jvm into /usr/lib/jvm. > > > > It is made on top of 2469:14ea939ddd75 from > > http://icedtea.classpath.org/hg/icedtea/ > > > > 2013-03-21 Michal Vyskocil > > > > search /etc/alternatives/java_sdk_openjdk for system jdk. > > * acinclude.m4: add alternatives into a list. > > * INSTALL: Updated. > > > > Regards > > Michal Vyskocil > > > > I updated this to check specifically for 7 & 8 already, and to drop > 6 permanently and gcj for now. > > http://icedtea.classpath.org/hg/icedtea/rev/04e4a665e0da > > The alternatives one could be added to all branches as a last ditch > attempt though. We don't know which version it is so the others > are preferable. I see - then can you just add /usr/lib64/jvm/java-1.[78].0-openjdk to the end of each list? This will cover SUSE packaging and will stay clear in which version and vendor is the default one. Regards Michal Vyskocil > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/c45de362/attachment.bin From mvyskocil at suse.cz Thu Mar 21 07:44:31 2013 From: mvyskocil at suse.cz (Michal Vyskocil) Date: Thu, 21 Mar 2013 15:44:31 +0100 Subject: [PATCH] search alternatives for system jdk In-Reply-To: <1089412477.22290380.1363875194209.JavaMail.root@redhat.com> References: <20130321135652.GC26640@linux-xtv2.site> <1089412477.22290380.1363875194209.JavaMail.root@redhat.com> Message-ID: <20130321144431.GD26640@linux-xtv2.site> On Thu, Mar 21, 2013 at 10:13:14AM -0400, Andrew Hughes wrote: > > > ----- Original Message ----- > > On Thu, Mar 21, 2013 at 08:20:25AM -0400, Andrew Hughes wrote: > > > > > > > > > ----- Original Message ----- > > > > Hi, > > > > > > > > attached patch adds the /etc/alternatives/java_sdk_openjdk to the > > > > list > > > > of directories where system jdk is searched. It will work on all > > > > distros > > > > using jpackage.org style alternatives layout and which don't > > > > install > > > > 64bit jvm into /usr/lib/jvm. > > > > > > > > It is made on top of 2469:14ea939ddd75 from > > > > http://icedtea.classpath.org/hg/icedtea/ > > > > > > > > 2013-03-21 Michal Vyskocil > > > > > > > > search /etc/alternatives/java_sdk_openjdk for system jdk. > > > > * acinclude.m4: add alternatives into a list. > > > > * INSTALL: Updated. > > > > > > > > Regards > > > > Michal Vyskocil > > > > > > > > > > I updated this to check specifically for 7 & 8 already, and to drop > > > 6 permanently and gcj for now. > > > > > > http://icedtea.classpath.org/hg/icedtea/rev/04e4a665e0da > > > > > > The alternatives one could be added to all branches as a last ditch > > > attempt though. We don't know which version it is so the others > > > are preferable. > > > > I see - then can you just add /usr/lib64/jvm/java-1.[78].0-openjdk to > > the end of each list? This will cover SUSE packaging and will stay > > clear > > in which version and vendor is the default one. > > > > Those are there: > > ICEDTEA7_VMS="/usr/lib/jvm/icedtea7 /usr/lib/jvm/java-1.7.0-openjdk" > ICEDTEA8_VMS="/usr/lib/jvm/icedtea8 /usr/lib/jvm/java-1.8.0-openjdk" Sure, but SUSE package 64bit jdk in /usr/lib64/jvm, so the list can extended to ICEDTEA7_VMS="/usr/lib/jvm/icedtea7 /usr/lib/jvm/java-1.7.0-openjdk /usr/lib64/jvm/java-1.7.0-openjdk" ICEDTEA8_VMS="/usr/lib/jvm/icedtea8 /usr/lib/jvm/java-1.8.0-openjdk /usr/lib64/jvm/java-1.8.0-openjdk" It would be great for me without having any impact on other distros. Regards Michal Vyskocil > > > Regards > > Michal Vyskocil > > > > > -- > > > Andrew :) > > > > > > Free Java Software Engineer > > > Red Hat, Inc. (http://www.redhat.com) > > > > > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > > > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > > > > > > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: Digital signature Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/e2ec6ec0/attachment.bin From gnu.andrew at redhat.com Thu Mar 21 08:00:35 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 21 Mar 2013 11:00:35 -0400 (EDT) Subject: [PATCH] search alternatives for system jdk In-Reply-To: <20130321144431.GD26640@linux-xtv2.site> Message-ID: <1848741529.22330548.1363878035631.JavaMail.root@redhat.com> ----- Original Message ----- > On Thu, Mar 21, 2013 at 10:13:14AM -0400, Andrew Hughes wrote: > > > > > > ----- Original Message ----- > > > On Thu, Mar 21, 2013 at 08:20:25AM -0400, Andrew Hughes wrote: > > > > > > > > > > > > ----- Original Message ----- > > > > > Hi, > > > > > > > > > > attached patch adds the /etc/alternatives/java_sdk_openjdk to > > > > > the > > > > > list > > > > > of directories where system jdk is searched. It will work on > > > > > all > > > > > distros > > > > > using jpackage.org style alternatives layout and which don't > > > > > install > > > > > 64bit jvm into /usr/lib/jvm. > > > > > > > > > > It is made on top of 2469:14ea939ddd75 from > > > > > http://icedtea.classpath.org/hg/icedtea/ > > > > > > > > > > 2013-03-21 Michal Vyskocil > > > > > > > > > > search /etc/alternatives/java_sdk_openjdk for system jdk. > > > > > * acinclude.m4: add alternatives into a list. > > > > > * INSTALL: Updated. > > > > > > > > > > Regards > > > > > Michal Vyskocil > > > > > > > > > > > > > I updated this to check specifically for 7 & 8 already, and to > > > > drop > > > > 6 permanently and gcj for now. > > > > > > > > http://icedtea.classpath.org/hg/icedtea/rev/04e4a665e0da > > > > > > > > The alternatives one could be added to all branches as a last > > > > ditch > > > > attempt though. We don't know which version it is so the > > > > others > > > > are preferable. > > > > > > I see - then can you just add > > > /usr/lib64/jvm/java-1.[78].0-openjdk to > > > the end of each list? This will cover SUSE packaging and will > > > stay > > > clear > > > in which version and vendor is the default one. > > > > > > > Those are there: > > > > ICEDTEA7_VMS="/usr/lib/jvm/icedtea7 > > /usr/lib/jvm/java-1.7.0-openjdk" > > ICEDTEA8_VMS="/usr/lib/jvm/icedtea8 > > /usr/lib/jvm/java-1.8.0-openjdk" > > Sure, but SUSE package 64bit jdk in /usr/lib64/jvm, so the list can > extended to > > ICEDTEA7_VMS="/usr/lib/jvm/icedtea7 /usr/lib/jvm/java-1.7.0-openjdk > /usr/lib64/jvm/java-1.7.0-openjdk" > ICEDTEA8_VMS="/usr/lib/jvm/icedtea8 /usr/lib/jvm/java-1.8.0-openjdk > /usr/lib64/jvm/java-1.8.0-openjdk" > > It would be great for me without having any impact on other distros. > > Regards > Michal Vyskocil > > > > > > Regards > > > Michal Vyskocil > > > > > > > -- > > > > Andrew :) > > > > > > > > Free Java Software Engineer > > > > Red Hat, Inc. (http://www.redhat.com) > > > > > > > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > > > > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B > > > > DC07 > > > > > > > > > > > -- > > Andrew :) > > > > Free Java Software Engineer > > Red Hat, Inc. (http://www.redhat.com) > > > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > > Oh right, sure we can do that. I've not seen them being specific to /usr/lib64 before. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From gnu.andrew at redhat.com Thu Mar 21 07:13:14 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 21 Mar 2013 10:13:14 -0400 (EDT) Subject: [PATCH] search alternatives for system jdk In-Reply-To: <20130321135652.GC26640@linux-xtv2.site> Message-ID: <1089412477.22290380.1363875194209.JavaMail.root@redhat.com> ----- Original Message ----- > On Thu, Mar 21, 2013 at 08:20:25AM -0400, Andrew Hughes wrote: > > > > > > ----- Original Message ----- > > > Hi, > > > > > > attached patch adds the /etc/alternatives/java_sdk_openjdk to the > > > list > > > of directories where system jdk is searched. It will work on all > > > distros > > > using jpackage.org style alternatives layout and which don't > > > install > > > 64bit jvm into /usr/lib/jvm. > > > > > > It is made on top of 2469:14ea939ddd75 from > > > http://icedtea.classpath.org/hg/icedtea/ > > > > > > 2013-03-21 Michal Vyskocil > > > > > > search /etc/alternatives/java_sdk_openjdk for system jdk. > > > * acinclude.m4: add alternatives into a list. > > > * INSTALL: Updated. > > > > > > Regards > > > Michal Vyskocil > > > > > > > I updated this to check specifically for 7 & 8 already, and to drop > > 6 permanently and gcj for now. > > > > http://icedtea.classpath.org/hg/icedtea/rev/04e4a665e0da > > > > The alternatives one could be added to all branches as a last ditch > > attempt though. We don't know which version it is so the others > > are preferable. > > I see - then can you just add /usr/lib64/jvm/java-1.[78].0-openjdk to > the end of each list? This will cover SUSE packaging and will stay > clear > in which version and vendor is the default one. > Those are there: ICEDTEA7_VMS="/usr/lib/jvm/icedtea7 /usr/lib/jvm/java-1.7.0-openjdk" ICEDTEA8_VMS="/usr/lib/jvm/icedtea8 /usr/lib/jvm/java-1.8.0-openjdk" > Regards > Michal Vyskocil > > > -- > > Andrew :) > > > > Free Java Software Engineer > > Red Hat, Inc. (http://www.redhat.com) > > > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From adomurad at redhat.com Thu Mar 21 08:27:29 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 21 Mar 2013 11:27:29 -0400 Subject: [rfc][icedtea-web] dialogue for set jre dir In-Reply-To: <51499582.80604@redhat.com> References: <51277A2D.8050904@redhat.com> <51499582.80604@redhat.com> Message-ID: <514B26E1.8080502@redhat.com> On 03/20/2013 06:54 AM, Jiri Vanek wrote: > > ping? > > -------- Original Message -------- > Subject: [rfc][icedtea-web] dialogue for set jre dir > Date: Fri, 22 Feb 2013 15:01:17 +0100 > From: Jiri Vanek > To: IcedTea Distro List > > This is only java part of "make-jredir-configurable after install effort" > To jvm settings pane it adds text-field to allow to write path to jre, > whih is then saved to > properties. There is also button which fill launch jfilechooser (with > correct default location) to > allow to choose the jre directory > And one funny button to validate his effort (with funny colourful > messages;). As if the user will > add wrong location, he will not even start itw-settings (later). > > > J. > > > It looked quite well done. I liked the visual validation a lot. General comments: - We should validate as soon as the user picks a path, and we should not let the user accept a configuration that couldn't possibly work. (itweb-settings will not be able to save them from a broken jre dir, correct?) - I would like a message here stating that misconfiguration of the JRE will require manual editing of the properties file. - I liked the colourful checking, however note that as it stands we currently only support *IcedTea*, not just some hypothetical OpenJDK without our applet-related patches. We really should fail on anything else until the plugin/javaws is more flexible. It's a bit sad, because javaws could work with at the very least the Oracle JRE if NetxPanel were with the rest of the sun.applet.* package. - Although I see messages for other JRE's other than OpenJDK, it failed to detect my Oracle JRE. However, see above comment on why we shouldn't accept this anyway. Inline comments: > diff -r 125c427b7a42 netx/net/sourceforge/jnlp/config/Defaults.java > --- a/netx/net/sourceforge/jnlp/config/Defaults.java Thu Feb 14 > 15:48:21 2013 -0500 > +++ b/netx/net/sourceforge/jnlp/config/Defaults.java Fri Feb 22 > 09:45:06 2013 +0100 > @@ -384,6 +384,12 @@ > DeploymentConfiguration.KEY_PLUGIN_JVM_ARGUMENTS, > null, > null > + }, > + //JVM executable for itw > + { > + DeploymentConfiguration.KEY_JRE_DIR, > + null, > + null > } > }; > > diff -r 125c427b7a42 > netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java > --- a/netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java > Thu Feb 14 15:48:21 2013 -0500 > +++ b/netx/net/sourceforge/jnlp/config/DeploymentConfiguration.java > Fri Feb 22 09:45:06 2013 +0100 > @@ -162,6 +162,7 @@ > * JVM arguments for plugin > */ > public static final String KEY_PLUGIN_JVM_ARGUMENTS= > "deployment.plugin.jvm.arguments"; > + public static final String KEY_JRE_DIR= "deployment.jre.dir"; > > public enum ConfigType { > System, User > @@ -174,6 +175,10 @@ > private File systemPropertiesFile = null; > /** The user's deployment.config file */ > private File userPropertiesFile = null; > + > + /*default user file*/ > + public static final File USER_FILE = new > File(System.getProperty("user.home") + File.separator + DEPLOYMENT_DIR > + + File.separator + DEPLOYMENT_PROPERTIES); USER_DEPLOYMENT_PROPERTIES is better ? Or something like that. USER_FILE doesn't really 'speak to me'. > > /** the current deployment properties */ > private Map> currentConfiguration; > @@ -206,8 +211,7 @@ > */ > public void load(boolean fixIssues) throws ConfigurationException { > // make sure no state leaks if security check fails later on > - File userFile = new File(System.getProperty("user.home") + > File.separator + DEPLOYMENT_DIR > - + File.separator + DEPLOYMENT_PROPERTIES); > + File userFile = new File(USER_FILE.getAbsolutePath()); > > SecurityManager sm = System.getSecurityManager(); > if (sm != null) { > @@ -400,8 +404,25 @@ > return etcFile; > } > > - File jreFile = new File(System.getProperty("java.home") + > File.separator + "lib" > - + File.separator + DEPLOYMENT_CONFIG); > + String jrePath = null; > + try { > + Map> tmpProperties = > parsePropertiesFile(USER_FILE); > + Setting jreSetting = tmpProperties.get(KEY_JRE_DIR); > + if (jreSetting != null) { > + jrePath = jreSetting.getValue(); > + } > + } catch (Exception ex) { > + ex.printStackTrace(); > + } > + > + File jreFile; > + if (jrePath != null) { > + jreFile = new File(jrePath + File.separator + "lib" > + + File.separator + DEPLOYMENT_CONFIG); > + } else { > + jreFile = new File(System.getProperty("java.home") + > File.separator + "lib" > + + File.separator + DEPLOYMENT_CONFIG); > + } > if (jreFile.isFile()) { > return jreFile; > } > diff -r 125c427b7a42 netx/net/sourceforge/jnlp/controlpanel/JVMPanel.java > --- a/netx/net/sourceforge/jnlp/controlpanel/JVMPanel.java Thu Feb > 14 15:48:21 2013 -0500 > +++ b/netx/net/sourceforge/jnlp/controlpanel/JVMPanel.java Fri Feb > 22 09:45:06 2013 +0100 > @@ -40,8 +40,18 @@ > import java.awt.Dimension; > import java.awt.GridBagConstraints; > import java.awt.GridBagLayout; > +import java.awt.Insets; > +import java.awt.event.ActionEvent; > +import java.awt.event.ActionListener; > +import java.io.BufferedReader; > +import java.io.File; > +import java.io.IOException; > +import java.io.InputStream; > +import java.io.InputStreamReader; > > import javax.swing.Box; > +import javax.swing.JButton; > +import javax.swing.JFileChooser; > import javax.swing.JLabel; > import javax.swing.JTextField; > > @@ -50,31 +60,99 @@ > > @SuppressWarnings("serial") > public class JVMPanel extends NamedBorderPanel { > - private DeploymentConfiguration config; > + > + private DeploymentConfiguration config; > + private File lastPath = new File("/usr/lib/jvm/java/jre/"); > + private final JVMPanel self; > > JVMPanel(DeploymentConfiguration config) { > super(Translator.R("CPHeadJVMSettings"), new GridBagLayout()); > this.config = config; > addComponents(); > + self=this; > } > > private void addComponents() { > - JLabel description = new JLabel("" + > Translator.R("CPJVMPluginArguments") + "
"); > - JTextField testFieldArguments = new JTextField(25); > + final JLabel description = new JLabel("" + > Translator.R("CPJVMPluginArguments") + "
"); > + final JTextField testFieldArguments = new JTextField(25); > > testFieldArguments.getDocument().addDocumentListener(new > DocumentAdapter(config, > DeploymentConfiguration.KEY_PLUGIN_JVM_ARGUMENTS)); > testFieldArguments.setText(config.getProperty(DeploymentConfiguration.KEY_PLUGIN_JVM_ARGUMENTS)); > + > + > + final JLabel descriptionExec = new JLabel("" + > Translator.R("CPJVMPluginExec") + "
"); > + final JTextField testFieldArgumentsExec = new JTextField(25); > + > + testFieldArgumentsExec.getDocument().addDocumentListener(new > DocumentAdapter(config, DeploymentConfiguration.KEY_JRE_DIR)); > + > testFieldArgumentsExec.setText(config.getProperty(DeploymentConfiguration.KEY_JRE_DIR)); > + > + final JButton selectJvm = new JButton( > Translator.R("CPJVMPluginSelectExec")); > + final JLabel validationResult = new > JLabel(resetValidationResult(testFieldArgumentsExec.getText(),"","CPJVMnone")); > + selectJvm.addActionListener(new ActionListener() { > + > + @Override > + public void actionPerformed(ActionEvent e) { > + JFileChooser jfch; > + if (lastPath != null && lastPath.exists()){ > + jfch = new JFileChooser(lastPath); > + } else { > + jfch = new JFileChooser(); > + } > + jfch.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); > + int i = jfch.showOpenDialog(self); > + if (i == JFileChooser.APPROVE_OPTION && > jfch.getSelectedFile()!=null){ > + lastPath=jfch.getSelectedFile().getParentFile(); > + String nws = jfch.getSelectedFile().getAbsolutePath(); > + String olds = testFieldArgumentsExec.getText(); > + if (!nws.equals(olds)){ > + > validationResult.setText(resetValidationResult(testFieldArgumentsExec.getText(),"","CPJVMnone")); > + } > + testFieldArgumentsExec.setText(nws); > + } > + > + } > + > + }); > + final JButton validateJvm = new JButton( > Translator.R("CPJVMPluginExecValidation") ); > + validateJvm.addActionListener(new ActionListener() { > + > + @Override > + public void actionPerformed(ActionEvent e) { > + String s = validateJvm(testFieldArgumentsExec.getText()); > + > validationResult.setText(resetValidationResult(testFieldArgumentsExec.getText(),s,"CPJVMvalidated")); > + > + } > + > + }); > > // Filler to pack the bottom of the panel. > GridBagConstraints c = new GridBagConstraints(); > c.fill = GridBagConstraints.BOTH; > c.weightx = 1; > + c.gridwidth = 2; > c.gridx = 0; > c.gridy = 0; > + c.insets = new Insets(2, 2, 4, 4); > > this.add(description, c); > c.gridy++; > this.add(testFieldArguments, c); > + c.gridy++; > + this.add(descriptionExec, c); > + c.gridy++; > + this.add(testFieldArgumentsExec, c); > + c.gridy++; > + GridBagConstraints cb1 = (GridBagConstraints) c.clone(); > + cb1.fill = GridBagConstraints.NONE; > + cb1.gridwidth = 1; > + this.add(selectJvm, cb1); > + GridBagConstraints cb2 = (GridBagConstraints) c.clone(); > + cb2.fill = GridBagConstraints.NONE; > + cb2.gridx = 1; > + cb2.gridwidth = 1; > + this.add(validateJvm, cb2); > + c.gridy++; > + this.add(validationResult, c); > > // This is to keep it from expanding vertically if resized. > Component filler = Box.createRigidArea(new Dimension(1, 1)); > @@ -82,4 +160,88 @@ > c.weighty++; > this.add(filler, c); > } > + > + private static String validateJvm(String cmd) { > + if (cmd == null || cmd.trim().equals("")){ > + return " color=\"orange\">"+Translator.R("CPJVMvalueNotSet")+""; > + } > + String procesString=""; s/procesString/processString/, although to me this seems like 'validationResult' or something. > + File jreDirFile = new File (cmd); > + if (jreDirFile.isDirectory()) { > + procesString+=" color=\"green\">"+Translator.R("CPJVMisDir")+"
"; > + }else{ > + procesString+=" color=\"red\">"+Translator.R("CPJVMnotDir")+"
"; > + } > + File javaFile = new File > (cmd+File.separator+"bin"+File.separator+"java"); > + if (javaFile.isFile()) { > + procesString+=" color=\"green\">"+Translator.R("CPJVMjava")+"
"; > + }else{ > + procesString+=" color=\"red\">"+Translator.R("CPJVMnoJava")+"
"; > + } > + File rtFile = new File > (cmd+File.separator+"lib"+File.separator+"rt.jar"); > + if (javaFile.isFile()) { > + procesString+=" color=\"green\">"+Translator.R("CPJVMrtJar")+"
"; > + }else{ > + procesString+=" color=\"red\">"+Translator.R("CPJVMnoRtJar")+"
"; > + } > + ProcessBuilder sb = new > ProcessBuilder(javaFile.getAbsolutePath(), "-version"); > + Process p = null; > + String s1 =""; > + String s2 = ""; These strings could use more descriptive names. I'm in favour of 'stdOut' and 'stdErr' or similar. > + Integer r = null; > + try { > + p = sb.start(); > + p.waitFor(); > + s1 = inputToHtmlString(p.getErrorStream()); > + s2 = inputToHtmlString(p.getInputStream()); > + r = p.exitValue(); > + System.err.println(s1); > + System.out.println(s2); > + s1=s1.toLowerCase(); > + s2=s2.toLowerCase(); > + } catch (Exception ex) {; > + ex.printStackTrace(); > + > + } > + if (r == null){ > + return procesString+" color=\"red\">"+Translator.R("CPJVMnotLaunched")+""; > + } > + if (r.intValue()!=0){ > + return procesString+" color=\"red\">"+Translator.R("CPJVMnoSuccess")+""; > + } > + if (s1.contains("openjdk") || s2.contains("openjdk")){ > + return procesString+" color=\"#00FF00\">"+Translator.R("CPJVMopenJdkFound")+"" ; > + } [nit] I found this green hard on the eyes. > + if (s1.contains("oracle") || s2.contains("oracle")){ > + return procesString+" color=\"green\">"+Translator.R("CPJVMoracleFound")+"" ; > + } > + if (s1.contains("ibm") || s2.contains("ibm")){ > + return procesString+" color=\"green\">"+Translator.R("CPJVMibmFound")+""; > + } > + if (s1.contains("gij") || s2.contains("gij")){ > + return procesString+" color=\"orange\">"+Translator.R("CPJVMgijFound")+""; > + } > + return procesString+" color=\"orange\">"+Translator.R("CPJVMstrangeProcess")+""; > + > + } > + > + private static String inputToHtmlString(InputStream stream) > throws IOException { > + InputStreamReader is = new InputStreamReader(stream); > + StringBuilder sb = new StringBuilder(); > + BufferedReader br = new BufferedReader(is); > + while (true) { > + String read = br.readLine(); > + if (read == null) { > + break; > + } > + sb.append(read); > + > + } > + > + return sb.toString(); > + } I don't see anything related to HTML here. In fact, I think this is a good candidate for placement in the StreamUtils class. (readStreamAsString or similar, I think?) > + > + private String resetValidationResult(final String value, String > result, String headerKey) { > + return "" + Translator.R(headerKey) + ":
/>"+value+"
"+result+"
"; > + } > } The Swing code looked otherwise fine to me, although I tend to not like to stare at Swing code too long :-). > diff -r 125c427b7a42 > netx/net/sourceforge/jnlp/resources/Messages.properties > --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Thu Feb > 14 15:48:21 2013 -0500 > +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Fri Feb > 22 09:45:06 2013 +0100 > @@ -301,6 +301,25 @@ > CPDebuggingDescription=Enable options here to help with debugging > CPDesktopIntegrationDescription=Set whether or not to allow creation > of desktop shortcut. > CPJVMPluginArguments=Set JVM arguments for plugin. > +CPJVMPluginExec=Set JVM for icedtea-web The difference between 'plugin' and 'icedtea-web' setting may not be clear, I'd like to see 'Set JVM for icedtea-web (plugin and javaws)' > +CPJVMPluginExecValidation=Validate JVM for icedtea-web > +CPJVMPluginSelectExec=Select JVM for icedtea-web > +CPJVMnone=None validation result for I'm sorry, I have no clue what 'None validation result' means or why it is needed. From when I saw it occur, it seems nothing be outputted would suffice. > +CPJVMvalidated=Validation result for > +CPJVMvalueNotSet=Value is not set. Hardcoded JVM will be used > +CPJVMnotLaunched=Error, process was not launched, see console outputs > for more info s/outputs/output/ > +CPJVMnoSuccess=Error, process have not ended successfully, see output > for details, but your java is not set correctly It's a nit, but I'd like these all to end with periods. Especially the messages with more than one sentence. > +CPJVMopenJdkFound=Excellent, OpenJDK detected > +CPJVMoracleFound=Great, Oracle java detected > +CPJVMibmFound=Good, IBM java detected > +CPJVMgijFound=Warning, gij detected These messages are a little too 'funny' IMHO. Anyway as stated, we should have exactly one correct state, 'Valid JRE, IcedTea was successfully detected'. You should really just have one message 'Valid JRE, {0} was successfully detected', to ease translation efforts. GIJ never got past java5, there's no need to do anything but fail on it (although we can say why). > +CPJVMstrangeProcess=Your path is executable process, but was not > recognized. Ensure yourself in console output I favour ' Your path had an executable process, but it was not recognized. Verify the Java version in the console output.' We can also print the version right on the window, although I don't think it's strictly necessary. > +CPJVMnotDir=You must set directory I favour 'Problem: The path you chose was not a directory.' > +CPJVMisDir=Is directory I favour 'The path you chose was a directory, check.' > +CPJVMnoJava=Must contains bin/java s/contains/contain/ I favour 'Problem: The directory you choose must contain bin/java.' > +CPJVMjava=Contains bin/java s/contains/contain/ I favour 'The directory you chose contains bin/java, check.' > +CPJVMnoRtJar=Do not contains lib/rt.jar s/Do not contains/Does not contain/ I favour 'Problem: The directory you chose does not contain bin/java.' > +CPJVMrtJar=Do contains lib/rt.jar s/contains/contain/ I favour 'The directory you chose contains bin/java, check.' > > # Control Panel - Buttons > CPButAbout=About... It really is quite good, though will be better with my suggestions :-D -Adam From adomurad at redhat.com Thu Mar 21 08:32:25 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 21 Mar 2013 11:32:25 -0400 Subject: [rfc][icedtea-web] dialogue for set jre dir In-Reply-To: <514B26E1.8080502@redhat.com> References: <51277A2D.8050904@redhat.com> <51499582.80604@redhat.com> <514B26E1.8080502@redhat.com> Message-ID: <514B2809.4050809@redhat.com> [..snipped..] >> import javax.swing.Box; >> +import javax.swing.JButton; >> +import javax.swing.JFileChooser; >> import javax.swing.JLabel; >> import javax.swing.JTextField; >> >> @@ -50,31 +60,99 @@ >> >> @SuppressWarnings("serial") >> public class JVMPanel extends NamedBorderPanel { >> - private DeploymentConfiguration config; >> + >> + private DeploymentConfiguration config; >> + private File lastPath = new File("/usr/lib/jvm/java/jre/"); >> + private final JVMPanel self; >> >> JVMPanel(DeploymentConfiguration config) { >> super(Translator.R("CPHeadJVMSettings"), new GridBagLayout()); >> this.config = config; >> addComponents(); >> + self=this; Sorry I caught this after sending. Don't do this please. You can use JVMPanel.this wherever you would have used 'self'. >> } [..snipped..] From chrisphi at icedtea.classpath.org Thu Mar 21 08:32:30 2013 From: chrisphi at icedtea.classpath.org (chrisphi at icedtea.classpath.org) Date: Thu, 21 Mar 2013 15:32:30 +0000 Subject: /hg/release/icedtea7-forest-2.1/hotspot: Bug : Fedora 19 /... Message-ID: changeset 4e4dd75d54e7 in /hg/release/icedtea7-forest-2.1/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot?cmd=changeset;node=4e4dd75d54e7 author: chrisphi date: Thu Mar 21 11:17:13 2013 -0400 Bug : Fedora 19 / rawhide FTBFS SIGILL Summary: Changed thumb2 PUSH & POP to inline functions , added detection of reg alloc failure, fails compile of method. diffstat: src/cpu/zero/vm/thumb2.cpp | 31 +++++++++++++++++++++++++------ 1 files changed, 25 insertions(+), 6 deletions(-) diffs (86 lines): diff -r f6f4d5e6c1dd -r 4e4dd75d54e7 src/cpu/zero/vm/thumb2.cpp --- a/src/cpu/zero/vm/thumb2.cpp Wed Mar 13 07:19:51 2013 +0000 +++ b/src/cpu/zero/vm/thumb2.cpp Thu Mar 21 11:17:13 2013 -0400 @@ -1,6 +1,6 @@ /* * Copyright 2009, 2010 Edward Nevill - * Copyright 2012, Red Hat + * Copyright 2012, 2013 Red Hat * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as @@ -426,6 +426,8 @@ static jmp_buf compiler_error_env; +#define J_BogusImplementation() longjmp(compiler_error_env, COMPILER_RESULT_FAILED) + #ifdef PRODUCT #define JASSERT(cond, msg) 0 @@ -3245,8 +3247,6 @@ #define TOSM2(jstack) ((jstack)->stack[(jstack)->depth-3]) #define TOSM3(jstack) ((jstack)->stack[(jstack)->depth-4]) -#define POP(jstack) ((jstack)->stack[--(jstack)->depth]) -#define PUSH(jstack, r) ((jstack)->stack[(jstack)->depth++] = (r)) #define SWAP(jstack) do { \ Reg r = (jstack)->stack[(jstack)->depth-1]; \ (jstack)->stack[(jstack)->depth-1] = (jstack)->stack[(jstack)->depth-2]; \ @@ -3256,6 +3256,17 @@ #define JSTACK_REG(jstack) jstack_reg(jstack) #define JSTACK_PREFER(jstack, prefer) jstack_prefer(jstack, prefer) +int PUSH(Thumb2_Stack *jstack, unsigned reg) { + jstack->stack[jstack->depth] = reg; + jstack->depth++; + return reg; +} + +int POP(Thumb2_Stack *jstack) { + jstack->depth--; + return jstack->stack[jstack->depth]; +} + static const unsigned last_clear_bit[] = { 3, // 0000 3, // 0001 @@ -3272,11 +3283,13 @@ 1, // 1100 1, // 1101 0, // 1110 - 0, // 1111 + 0, // 1111 // No registers available... }; #define LAST_CLEAR_BIT(mask) last_clear_bit[mask] +unsigned long thumb2_register_allocation_failures = 0; + unsigned jstack_reg(Thumb2_Stack *jstack) { unsigned *stack = jstack->stack; @@ -3287,7 +3300,10 @@ for (i = 0; i < depth; i++) mask |= 1 << stack[i]; mask &= (1 << STACK_REGS) - 1; - JASSERT(mask != (1 << STACK_REGS) - 1, "No free reg in push"); + if (mask >= (1 << STACK_REGS) - 1) { // No free registers + thumb2_register_allocation_failures++; + J_BogusImplementation(); + } r = LAST_CLEAR_BIT(mask); return r; } @@ -3303,7 +3319,10 @@ for (i = 0; i < depth; i++) mask |= 1 << stack[i]; mask &= (1 << STACK_REGS) - 1; if ((prefer & ~mask) & 0x0f) mask |= (~prefer & ((1 << STACK_REGS) - 1)); - JASSERT(mask != (1 << STACK_REGS) - 1, "No free reg in push"); + if (mask >= (1 << STACK_REGS) - 1) { // No free registers + thumb2_register_allocation_failures++; + J_BogusImplementation(); + } r = LAST_CLEAR_BIT(mask); return r; } From bugzilla-daemon at icedtea.classpath.org Thu Mar 21 09:18:23 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 16:18:23 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 Severin Gehwolf changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1165 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/78e60a90/attachment.html From adomurad at redhat.com Thu Mar 21 09:30:21 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 21 Mar 2013 12:30:21 -0400 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "function parameters" tests In-Reply-To: <51498FEF.1010400@redhat.com> References: <51376566.2040202@redhat.com> <5137A883.504@redhat.com> <51498FEF.1010400@redhat.com> Message-ID: <514B359D.2070007@redhat.com> On 03/20/2013 06:31 AM, Jana Fabrikova wrote: > Hi Adam, > > thank you for the review. I have changed the reproducer in several > ways according to your comments: > > - the name JToJSFuncParam -> JavascriptFuncParam for better recognition > > - all the parameters (int 1, String "teststring",...) are now only in > the applet code (applet passes to javascript the value and its text > representation, so that javascript function is called once from the > applet with the value and second from inside this function in > javascript with the javascript-evaluated text representation) > > - the javascript code is inside the html page now > > - applet[func]() is used, it calls the functions ok > > On 03/06/2013 09:35 PM, Adam Domurad wrote: >> On 03/06/2013 10:48 AM, Jana Fabrikova wrote: >>> Hello, >>> >>> please see the attached patch of new reproducer for J->JS "calling JS >>> function with various parameters from J". >>> >>> Several of the testcases in the patch have commented annotations >>> KnownToFailInBrowser, (which i have implemented but is not included >>> yet.) >> > > The test that sends JSObject window as a parameter has normal output > in Opera, Firefox, midori, epiphany: > > JToJSFuncParam applet initialized. > Call with [object Window]:object from J > Call with [object Window]:object from JS > afterTests > > > but the output from chromium and google-chrome is: > > JToJSFuncParam applet initialized. > Call with [object Object]:object from J > Call with [object Window]:object from JS > afterTests > > maybe the annotation KnownToFail(failsIn={Browsers.chromium, > Browsers.google-chrome} should be added to this particular testcase. > > > The modified reproducer is in the attached patch, > thanks, > Jana > > [..snip..] Thanks for the update! Keep up the good work. > diff --git > a/tests/reproducers/simple/JavascriptFuncParam/resources/JavascriptFuncParam.html > b/tests/reproducers/simple/JavascriptFuncParam/resources/JavascriptFuncParam.html > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JavascriptFuncParam/resources/JavascriptFuncParam.html > @@ -0,0 +1,40 @@ > + > + > + > + Java JavaScript LiveConnect - Function Parameters > + > + > + > + > +

The JToJSFuncParam html page

> + > + id="jtojsFuncParamApplet" MAYSCRIPT> > + > + > + > + > + > + > + > diff --git > a/tests/reproducers/simple/JavascriptFuncParam/resources/javascript-funcparam.jnlp > b/tests/reproducers/simple/JavascriptFuncParam/resources/javascript-funcparam.jnlp > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JavascriptFuncParam/resources/javascript-funcparam.jnlp > @@ -0,0 +1,23 @@ > + > + > + > + > + Java to JavaScript LiveConnect - FuncParam > + IcedTea > + href="http://icedtea.classpath.org/wiki/IcedTea-Web#Testing_IcedTea-Web"/> > + LiveConnect - tests for parameter conversion > between Java and JavaScript. > + > + > + > + + href="http://java.sun.com/products/autodl/j2se"/> > + > + > + > + + name="J to JS FuncParam" > + main-class="JavascriptFuncParam" > + width="1000" > + height="100"> > + > + > diff --git > a/tests/reproducers/simple/JavascriptFuncParam/srcs/JavascriptFuncParam.java > b/tests/reproducers/simple/JavascriptFuncParam/srcs/JavascriptFuncParam.java > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JavascriptFuncParam/srcs/JavascriptFuncParam.java > @@ -0,0 +1,146 @@ > +import java.applet.Applet; > +import netscape.javascript.JSObject; > + > +public class JavascriptFuncParam extends Applet { > + > + public DummyObject dummyObject = new DummyObject("DummyObject1"); > + private JSObject window; > + > + private final String jsFunctionName = "JJSParameterTypeFunc"; > + > + public void init() { > + window = JSObject.getWindow(this); > + String initStr = "JToJSFuncParam applet initialized."; > + System.out.println(initStr); > + } > + > + //methods for testing calling JavaScript function with different > parameters > + public void jjsCallintParam(){ > + int i = 1; > + passToJavascript((Object) i); [nit] Note, there is no need for this (Object) cast in this, and related methods. See http://docs.oracle.com/javase/1.5.0/docs/guide/language/autoboxing.html > + } > [..snipped..] > +} > diff --git > a/tests/reproducers/simple/JavascriptFuncParam/testcases/JavascriptFuncParamTest.java > b/tests/reproducers/simple/JavascriptFuncParam/testcases/JavascriptFuncParamTest.java > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JavascriptFuncParam/testcases/JavascriptFuncParamTest.java > @@ -0,0 +1,232 @@ > +/* JToJSFuncParamTest.java > +Copyright (C) 2012 Red Hat, Inc. > + > +This file is part of IcedTea. > + > +IcedTea is free software; you can redistribute it and/or > +modify it under the terms of the GNU General Public License as > published by > +the Free Software Foundation, version 2. > + > +IcedTea is distributed in the hope that it will be useful, > +but WITHOUT ANY WARRANTY; without even the implied warranty of > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +General Public License for more details. > + > +You should have received a copy of the GNU General Public License > +along with IcedTea; see the file COPYING. If not, write to > +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > +02110-1301 USA. > + > +Linking this library statically or dynamically with other modules is > +making a combined work based on this library. Thus, the terms and > +conditions of the GNU General Public License cover the whole > +combination. > + > +As a special exception, the copyright holders of this library give you > +permission to link this library with independent modules to produce an > +executable, regardless of the license terms of these independent > +modules, and to copy and distribute the resulting executable under > +terms of your choice, provided that you also meet, for each linked > +independent module, the terms and conditions of the license of that > +module. An independent module is a module which is not derived from > +or based on this library. If you modify this library, you may extend > +this exception to your version of the library, but you are not > +obligated to do so. If you do not wish to do so, delete this > +exception statement from your version. > + */ > + > +import net.sourceforge.jnlp.ProcessResult; > +import net.sourceforge.jnlp.ServerAccess; > +import net.sourceforge.jnlp.browsertesting.BrowserTest; > +import net.sourceforge.jnlp.browsertesting.Browsers; > +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; > +import net.sourceforge.jnlp.annotations.NeedsDisplay; > +import net.sourceforge.jnlp.annotations.TestInBrowsers; > +import org.junit.Assert; > + > +import org.junit.Test; > + > +public class JavascriptFuncParamTest extends BrowserTest { > + > + public final boolean doNotRunInOpera = true; This isn't pleasing, but I have been advised this is a necessary evil and that I should look the other way :-). I'm trusting Jiri's judgement on this one. > + > [..snipped..] Looks good, drop the (Object) cast if you feel like it, but OK to push. -Adam From bugzilla-daemon at icedtea.classpath.org Thu Mar 21 09:30:21 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 21 Mar 2013 16:30:21 +0000 Subject: [Bug 1340] [IcedTea7] Simplify the rhino class rewriter to avoid use of concurrency In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1340 Severin Gehwolf changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on|1165 | -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/224f7583/attachment.html From jvanek at redhat.com Thu Mar 21 09:41:23 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 21 Mar 2013 17:41:23 +0100 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <5149CB84.1090501@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> <5149C578.5090004@redhat.com> <5149CB84.1090501@redhat.com> Message-ID: <514B3833.6060604@redhat.com> Here we go. Included are also Omair's suggestions. J. On 03/20/2013 03:45 PM, Adam Domurad wrote: > On 03/20/2013 10:19 AM, Jiri Vanek wrote: >> On 03/19/2013 03:44 PM, Adam Domurad wrote: >>> On 03/19/2013 09:41 AM, Jiri Vanek wrote: >>>> So another round. I think all is fixed excet the c x c+++ headers. Do you mind t write little bit >>>> more what you need from me? >>>> >>>> Also unittests will be needed. I would like to wrote them, ..will need probably some code snippet >>>> and general advices from you when I will integrate (next round?) this "library" inside ITW. >>> >>> Doesn't look half bad this time :-) Feel free to propose an integrated version. >> One more round rather... >> I have made the header much bigger - for testing purposes. I have some memory that all exported >> (testable) functions must be in header file... > > Note: You do not need these in header, technically. It may be cleaner to not expose these normally > and include the lines directly in the test, ie: > > string trim(string& str); > void remove_all_spaces(string& str); > > SUITE (...) { > /// etc > } > > TYVM for reorganizing the code to be testable! I know the elegance is hard to part with. > > > [.. rest snipped ..] > > >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include >> #include "IcedTeaParsePropeties.h" >> >> using namespace std; >> >> string trim(string& str) { >> size_t start = str.find_first_not_of(" \t\n"), end = str.find_last_not_of(" \t\n"); >> if (start == std::string::npos) { >> return str; >> } >> str = str.substr(start, end - start + 1); >> return str; >> } > > I don't see how this supports chaining (it returns only a copy). Also you don't use this string > value anywhere, why not just 'void'? > I'm in favour of moving this into IcedTeaPluginUtils and dropping the return value. > >> >> >> >> >> void remove_all_spaces(string& str) >> { >> for(int i=0; i> if(str[i] == ' ' || str[i] == '\n' || str[i] == '\t') { >> str.erase(i,1); >> } >> } >> } >> >> bool get_property_value(string c, string& dest){ >> int i = c.find("="); >> if (i < 0) return false; >> int l = c.length(); >> dest = c.substr(i+1, l-i); >> trim(dest); >> return true; >> } >> >> >> bool starts_with(string c1, string c2){ >> return (c1.find(c2) == 0); >> } >> >> bool file_exists(string filename) >> { >> ifstream infile(filename.c_str()); >> return infile.good(); >> } >> >> >> string user_properties_file(){ >> int myuid = getuid(); >> struct passwd *mypasswd = getpwuid(myuid); >> return string(mypasswd->pw_dir)+"/.icedtea/"+default_file_name; >> } >> >> >> string main_properties_file(){ >> return "/etc/.java/deployment/"+default_file_name; >> } >> >> string default_java_properties_file(){ >> return ICEDTEA_WEB_JRE "/lib/"+default_file_name; >> } >> >> >> /* this is the same search done by icedtea-web settings: >> try the main file in /etc/.java/deployment >> if found, then return this file >> try to find setUp jre >> if found, then try if this file exists and end >> if no jre custom jvm is set, then tries default jre >> if its deploy file exists, then return >> not found otherwise*/ >> bool find_system_config_file(string& dest){ >> string jdest; >> bool found = find_custom_jre(jdest); >> return find_system_config_file(main_properties_file(), jdest, found, >> default_java_properties_file(), dest); >> } >> bool find_system_config_file(string f1, string f2, bool usef2, string f3, string& dest){ > > f1, f2, f3 -> user_file, global_file, default_file please. Also worth considering making the 2nd > string nullable, ie using a string* (note this won't be as painful as returning string*, since you > can safely pass with & operator here). > >> if (file_exists(f1)) { >> dest = f1; >> return true; >> } else { >> if (usef2){ >> string jdest = f2 + "/lib/"+default_file_name; >> if(file_exists(jdest) ) { >> dest = jdest; >> return true; >> } >> } else { >> if(file_exists(f3)) { >> dest = f3; >> return true; >> } >> } >> } >> return false; //nothing of above found >> } >> >> //Returns whether property was found, if found stores result in 'dest' >> bool find_property(string filename, string property, string& dest){ >> string property_matcher(property); >> trim( property_matcher); >> property_matcher= property_matcher+"="; >> ifstream input( filename.c_str() ); >> for( string line; getline( input, line ); ){ /* read a line */ >> string copy = line; >> //java tolerates spaces around = char, remove them for matching >> remove_all_spaces(copy); >> //printf(line.c_str()); >> //printf(copy.c_str()); > > [nit] remove these commented lines > >> if (starts_with(copy, property_matcher)) { >> //provide non-spaced value, trimming is done in get_property_value >> get_property_value(line, dest); >> return true; >> } >> } >> >> return false; >> } >> >> >> /* this is reimplmentation of itw-settings operations > > OK. First time you typo something, turn on some spellcheck >:). > s/reimplmentation/reimplementation/ ... again > >> first check in user's settings, if found, return >> then check in global file (see the magic of find_system_config_file)*/ >> bool read_deploy_property_value(string property, string& dest){ >> string futurefile; >> bool b = find_system_config_file(futurefile); >> return read_deploy_property_value(user_properties_file(), futurefile, b, property, dest); >> } >> bool read_deploy_property_value(string f1, string f2, bool usef2, string property, string& dest){ > > f1, f2 -> user_file, global_file please. Consider making global_file a nullable string*. > >> //is it in user's file? >> bool found = find_property(f1, property, dest); >> if (found) { >> return true; >> } >> //is it in global file? >> if (usef2) { >> return find_property(f2, property, dest); >> } >> return false; >> } >> >> //This is different from common get property, as it is avoiding to search in *java* >> //properties files >> bool find_custom_jre(string& dest){ >> return find_custom_jre(user_properties_file(), main_properties_file(), dest); >> } >> bool find_custom_jre(string f1, string f2,string& dest){ > > f1, f2 -> user_file, global_file please > >> string key = custom_jre_key; >> if(file_exists(f1)) { >> bool a = find_property(f1, key, dest); >> if (a) { >> return true; >> } >> } >> if(file_exists(f2)) { >> return find_property(f2, key, dest); >> } >> return false; >> } >> >> >> >> int main(void){ >> printf("user's settings file\n"); >> cout << user_properties_file(); >> printf("\nmain settings file:\n"); >> cout << (main_properties_file()); >> printf("\njava settings file \n"); >> cout << (default_java_properties_file()); >> printf("\nsystem config file\n"); >> string a1; >> find_system_config_file(a1); >> cout << a1; >> printf("\ncustom jre\n"); >> string a2; >> find_custom_jre(a2); >> cout << a2; >> printf("\nsome custom property\n"); >> string a3; >> read_deploy_property_value("deployment.security.level", a3); >> cout << a3; >> printf("\n"); >> return 0; >> } > > Looks good otherwise, go ahead and start testing+integration if you'd like. > -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: integratedAndTestedPArseproperties.patch Type: text/x-patch Size: 29152 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/d8891f0a/integratedAndTestedPArseproperties.patch From adomurad at redhat.com Thu Mar 21 10:08:46 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 21 Mar 2013 13:08:46 -0400 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <514B3833.6060604@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> <5149C578.5090004@redhat.com> <5149CB84.1090501@redhat.com> <514B3833.6060604@redhat.com> Message-ID: <514B3E9E.4000600@redhat.com> On 03/21/2013 12:41 PM, Jiri Vanek wrote: > Here we go. > > Included are also Omair's suggestions. > > > [..snipped..] >> Looks good otherwise, go ahead and start testing+integration if you'd >> like. >> -Adam > > diff -r 76930f38dddf Makefile.am > --- a/Makefile.am Wed Mar 20 15:35:22 2013 +0100 > +++ b/Makefile.am Thu Mar 21 17:40:23 2013 +0100 > @@ -284,11 +284,11 @@ > > PLUGIN_SRC=IcedTeaNPPlugin.cc IcedTeaScriptablePluginObject.cc \ > IcedTeaJavaRequestProcessor.cc IcedTeaPluginRequestProcessor.cc \ > - IcedTeaPluginUtils.cc > + IcedTeaPluginUtils.cc IcedTeaParseProperties.cc > > PLUGIN_OBJECTS=IcedTeaNPPlugin.o IcedTeaScriptablePluginObject.o \ > IcedTeaJavaRequestProcessor.o IcedTeaPluginRequestProcessor.o \ > - IcedTeaPluginUtils.o > + IcedTeaPluginUtils.o IcedTeaParseProperties.o Looks right > > $(PLUGIN_DIR)/%.o: $(PLUGIN_SRCDIR)/%.cc > mkdir -p $(PLUGIN_DIR) && \ > diff -r 76930f38dddf plugin/icedteanp/IcedTeaParseProperties.cc > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/plugin/icedteanp/IcedTeaParseProperties.cc Thu Mar 21 > 17:40:23 2013 +0100 > @@ -0,0 +1,260 @@ > +/* IcedTeaRunnable.cc > + > + Copyright (C) 2013 Red Hat > + > +This file is part of IcedTea. > + > +IcedTea is free software; you can redistribute it and/or modify > +it under the terms of the GNU General Public License as published by > +the Free Software Foundation; either version 2, or (at your option) > +any later version. > + > +IcedTea is distributed in the hope that it will be useful, but > +WITHOUT ANY WARRANTY; without even the implied warranty of > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +General Public License for more details. > + > +You should have received a copy of the GNU General Public License > +along with IcedTea; see the file COPYING. If not, write to the > +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > +02110-1301 USA. > + > +Linking this library statically or dynamically with other modules is > +making a combined work based on this library. Thus, the terms and > +conditions of the GNU General Public License cover the whole > +combination. > + > +As a special exception, the copyright holders of this library give you > +permission to link this library with independent modules to produce an > +executable, regardless of the license terms of these independent > +modules, and to copy and distribute the resulting executable under > +terms of your choice, provided that you also meet, for each linked > +independent module, the terms and conditions of the license of that > +module. An independent module is a module which is not derived from > +or based on this library. If you modify this library, you may extend > +this exception to your version of the library, but you are not > +obligated to do so. If you do not wish to do so, delete this > +exception statement from your version. */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +#include "IcedTeaParseProperties.h" > +/* > + The public api is nearly impossible to test due to "hardcoded paths" > + All public methods have theirs equivalents wit set-up-able files, > and those are > + tested. > +*/ > + > +using namespace std; > +//private api > +void trim(string& str); > +void remove_all_spaces(string& str); > +bool get_property_value(string c, string& dest); > +bool starts_with(string c1, string c2); > +bool file_exists(string filename); > +string user_properties_file(); > +string main_properties_file(); > +string default_java_properties_file(); > +//for passing three dummy files > +bool find_system_config_file(string main_file, string > custom_jre_file, bool usecustom_jre, string default_java_file, string& > dest); > +bool find_property(string filename, string property, string& dest); > +//for passing two dummy files > +bool read_deploy_property_value(string user_file, string > system_file, bool usesystem_file, string property, string& dest); > +//for passing two dummy files > +bool find_custom_jre(string user_file, string main_file,string& dest); > +//end of non-public IcedTeaParseProperties api [nit] You do not need to forward declare anything here if you order the function definitions so that earlier functions do not use later functions. > + > + > + > +void trim(string& str) { > + size_t start = str.find_first_not_of(" \t\n"), end = > str.find_last_not_of(" \t\n"); > + if (start == std::string::npos) { > + return; > + } > + str = str.substr(start, end - start + 1); > +} I thought this was headed to IcedTeaPluginUtils? > + > + > + > + > +void remove_all_spaces(string& str) > +{ > + for(int i=0; i + if(str[i] == ' ' || str[i] == '\n' || str[i] == '\t') { > + str.erase(i,1); > + i--; > + } > + } > +} > + > +bool get_property_value(string c, string& dest){ > + int i = c.find("="); > + if (i < 0) return false; > + int l = c.length(); > + dest = c.substr(i+1, l-i); > + trim(dest); > + return true; > +} > + > + > +bool starts_with(string c1, string c2){ > + return (c1.find(c2) == 0); > +} > + > +bool file_exists(string filename) > +{ > + ifstream infile(filename.c_str()); > + return infile.good(); > +} > + > + > +string user_properties_file(){ > + int myuid = getuid(); > + struct passwd *mypasswd = getpwuid(myuid); > + return string(mypasswd->pw_dir)+"/.icedtea/"+default_file_name; > +} > + > + > +string main_properties_file(){ > + return "/etc/.java/deployment/"+default_file_name; > +} > + > +string default_java_properties_file(){ > + return ICEDTEA_WEB_JRE "/lib/"+default_file_name; > +} > + > + > +/* this is the same search done by icedtea-web settings: > + try the main file in /etc/.java/deployment > + if found, then return this file > + try to find setUp jre > + if found, then try if this file exists and end > + if no jre custom jvm is set, then tries default jre > + if its deploy file exists, then return > + not found otherwise*/ > +bool find_system_config_file(string& dest){ > + string jdest; > + bool found = find_custom_jre(jdest); > + if (found) { > + jdest = jdest + "/lib/"+default_file_name; > + } > + return find_system_config_file(main_properties_file(), jdest, > found, default_java_properties_file(), dest); > +} > +//abstraction for testing purposes > +bool find_system_config_file(string main_file, string > custom_jre_file, bool usecustom_jre, string default_java_file, string& > dest){ > + if (file_exists(main_file)) { > + dest = main_file; > + return true; > + } else { > + if (usecustom_jre){ > + if(file_exists(custom_jre_file) ) { > + dest = custom_jre_file; > + return true; > + } > + } else { > + if(file_exists(default_java_file)) { > + dest = default_java_file; > + return true; > + } > + } > + } > +return false; //nothing of above found > +} > + > +//Returns whether property was found, if found stores result in 'dest' > +bool find_property(string filename, string property, string& dest){ > + string property_matcher(property); > + trim( property_matcher); > + property_matcher= property_matcher+"="; > + ifstream input( filename.c_str() ); [nit] Both ifstream & ofstream are deprecated, to some extent. fstream is better C++ style. > + for( string line; getline( input, line ); ){ /* read a line */ > + string copy = line; > + //java tolerates spaces around = char, remove them for matching > + remove_all_spaces(copy); > + if (starts_with(copy, property_matcher)) { > + //provide non-spaced value, trimming is done in > get_property_value > + get_property_value(line, dest); > + return true; > + } > + } > + > + return false; > + } > + > + > +/* this is reimplementation of itw-settings operations > + first check in user's settings, if found, return > + then check in global file (see the magic of find_system_config_file)*/ > +bool read_deploy_property_value(string property, string& dest){ > + string futurefile; > + bool b = find_system_config_file(futurefile); [nit] 'b' is not a descriptive name > + return read_deploy_property_value(user_properties_file(), > futurefile, b, property, dest); > +} > +//abstraction for testing purposes > +bool read_deploy_property_value(string user_file, string > system_file, bool usesystem_file, string property, string& dest){ > + //is it in user's file? > + bool found = find_property(user_file, property, dest); > + if (found) { > + return true; > + } > + //is it in global file? > + if (usesystem_file) { > + return find_property(system_file, property, dest); > + } > + return false; > +} > + > +//This is different from common get property, as it is avoiding to > search in *java* > +//properties files > +bool find_custom_jre(string& dest){ > + return find_custom_jre(user_properties_file(), > main_properties_file(), dest); > +} > +//abstraction for testing purposes > +bool find_custom_jre(string user_file, string main_file,string& dest){ > + string key = custom_jre_key; > + if(file_exists(user_file)) { > + bool a = find_property(user_file, key, dest); > + if (a) { > + return true; > + } > + } > + if(file_exists(main_file)) { > + return find_property(main_file, key, dest); > + } > +return false; > +} > + > + > + > +int mainForFun(void){ [nit] test_main :-) > + cout << ("user's settings file\n"); > + cout << user_properties_file(); > + cout << ("\nmain settings file:\n"); > + cout << (main_properties_file()); > + cout << ("\njava settings file \n"); > + cout << (default_java_properties_file()); > + cout << ("\nsystem config file\n"); > + string a1; > + find_system_config_file(a1); > + cout << a1; > + cout << ("\ncustom jre\n"); > + string a2; > + find_custom_jre(a2); > + cout << a2; > + cout << ("\nsome custom property\n"); > + string a3; > + read_deploy_property_value("deployment.security.level", a3); > + cout << a3; > + cout << ("\n"); > + return 0; > +} > diff -r 76930f38dddf plugin/icedteanp/IcedTeaParseProperties.h > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/plugin/icedteanp/IcedTeaParseProperties.h Thu Mar 21 17:40:23 > 2013 +0100 > @@ -0,0 +1,53 @@ > +/* IcedTeaPluginUtils.h > + > + Copyright (C) 2013 Red Hat > + > +This file is part of IcedTea. > + > +IcedTea is free software; you can redistribute it and/or modify > +it under the terms of the GNU General Public License as published by > +the Free Software Foundation; either version 2, or (at your option) > +any later version. > + > +IcedTea is distributed in the hope that it will be useful, but > +WITHOUT ANY WARRANTY; without even the implied warranty of > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +General Public License for more details. > + > +You should have received a copy of the GNU General Public License > +along with IcedTea; see the file COPYING. If not, write to the > +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > +02110-1301 USA. > + > +Linking this library statically or dynamically with other modules is > +making a combined work based on this library. Thus, the terms and > +conditions of the GNU General Public License cover the whole > +combination. > + > +As a special exception, the copyright holders of this library give you > +permission to link this library with independent modules to produce an > +executable, regardless of the license terms of these independent > +modules, and to copy and distribute the resulting executable under > +terms of your choice, provided that you also meet, for each linked > +independent module, the terms and conditions of the license of that > +module. An independent module is a module which is not derived from > +or based on this library. If you modify this library, you may extend > +this exception to your version of the library, but you are not > +obligated to do so. If you do not wish to do so, delete this > +exception statement from your version. */ > + > +/** > + * Utility classes for parsing values from properties files > + */ > +#include > + > + > +//public api > +std::string user_properties_file(); > +bool find_system_config_file(std::string& dest); > +bool find_custom_jre(std::string& dest); > +bool read_deploy_property_value(std::string property, std::string& > dest); > +//half public api > +const std::string default_file_name = "deployment.properties"; It is ill-advisable to have a global constant called 'default_file_name' (remember what I said about C/++ having just one global namespace) > +const std::string custom_jre_key = "deployment.jre.dir"; > +//end of public api > diff -r 76930f38dddf tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc Thu Mar 21 > 17:40:23 2013 +0100 > @@ -0,0 +1,552 @@ > +/* Copyright (C) 2012 Red Hat > + > + This file is part of IcedTea. > + > + IcedTea is free software; you can redistribute it and/or modify > + it under the terms of the GNU General Public License as published by > + the Free Software Foundation; either version 2, or (at your option) > + any later version. > + > + IcedTea is distributed in the hope that it will be useful, but > + WITHOUT ANY WARRANTY; without even the implied warranty of > + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > + General Public License for more details. > + > + You should have received a copy of the GNU General Public License > + along with IcedTea; see the file COPYING. If not, write to the > + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > + 02110-1301 USA. > + > + Linking this library statically or dynamically with other modules is > + making a combined work based on this library. Thus, the terms and > + conditions of the GNU General Public License cover the whole > + combination. > + > + As a special exception, the copyright holders of this library give you > + permission to link this library with independent modules to produce an > + executable, regardless of the license terms of these independent > + modules, and to copy and distribute the resulting executable under > + terms of your choice, provided that you also meet, for each linked > + independent module, the terms and conditions of the license of that > + module. An independent module is a module which is not derived from > + or based on this library. If you modify this library, you may extend > + this exception to your version of the library, but you are not > + obligated to do so. If you do not wish to do so, delete this > + exception statement from your version. */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include "IcedTeaParseProperties.h" > + > +using namespace std; > + > +//not exposed via IcedTeaParseProperties but needed > +extern void trim(string& str); > +extern void remove_all_spaces(string& str); > +extern bool get_property_value(string c, string& dest); > +extern bool starts_with(string c1, string c2); > +extern bool file_exists(string filename); > +extern string user_properties_file(); > +extern string main_properties_file(); > +extern string default_java_properties_file(); > +//for passing three dummy files > +bool find_system_config_file(string main_file, string > custom_jre_file, bool usecustom_jre, string default_java_file, string& > dest); > +bool find_property(string filename, string property, string& dest); > +//for passing two dummy files > +bool read_deploy_property_value(string user_file, string > system_file, bool usesystem_file, string property, string& dest); > +//for passing two dummy files > +bool find_custom_jre(string user_file, string main_file,string& dest); > +//end of non-public IcedTeaParseProperties api > + > +/* Creates a temporary file with the specified contents */ > +static string temporary_file(const string& contents) { > + string path = tmpnam(NULL); /* POSIX function, fine for test suite */ > + ofstream myfile; > + myfile.open (path.c_str()); > + myfile << contents; > + myfile.close(); > + return path; > +} [nit] You actually replaced my suggestion with a version that uses a deprecated class :-) > + > + > + > +/*private api fundamental tests*/ > + > +TEST(trim) { > + string toBeTrimmed = string(" testX "); > + trim (toBeTrimmed); > + CHECK_EQUAL("testX", toBeTrimmed); > + > + string toBeTrimmed2 = string(" \t testX\n"); > + trim (toBeTrimmed2); > + CHECK_EQUAL("testX", toBeTrimmed2); > + > + string toBeTrimmed3 = string(" \t \n te \n stX\n"); > + trim (toBeTrimmed3); > + CHECK_EQUAL("te \n stX", toBeTrimmed3); > +} > + > +TEST(RemoveAllSpaces) { > + string toBeTrimmed = string(" te st X "); > + remove_all_spaces (toBeTrimmed); > + CHECK_EQUAL("testX", toBeTrimmed); > + > + string toBeTrimmed1 = string(" te st X "); > + remove_all_spaces (toBeTrimmed1); > + CHECK_EQUAL("testX", toBeTrimmed1); > + > + string toBeTrimmed2 = string(" \t t e\nst\tX\n"); > + remove_all_spaces (toBeTrimmed2); > + CHECK_EQUAL("testX", toBeTrimmed2); > + > + string toBeTrimmed3 = string(" \t \n te \n stX\n"); > + remove_all_spaces (toBeTrimmed3); > + CHECK_EQUAL("testX", toBeTrimmed3); > + > +} > + > + > +TEST(get_property_value) { > + string dest = string(""); > + bool a = get_property_value("key.key=value+eulav ",dest); > + CHECK_EQUAL("value+eulav", dest); > + CHECK_EQUAL(a, true); > + > + dest = string(""); > + a = get_property_value("horrible key = value/value",dest); > + CHECK_EQUAL("value/value", dest); > + CHECK_EQUAL(a, true); > + > + dest = string(""); > + a = get_property_value("better.key = but very horrible value ",dest); > + CHECK_EQUAL("but very horrible value", dest); > + CHECK_EQUAL(a, true); > + > + dest = string(""); > + a = get_property_value("better.key but errornous value ",dest); > + CHECK_EQUAL("", dest); > + CHECK_EQUAL(a, false); > +} > + > +TEST(starts_with) { > + bool a = starts_with("aa bb cc","aa b"); > + CHECK_EQUAL(a, true); > + > + a = starts_with("aa bb cc","aab"); > + CHECK_EQUAL(a, false); > +} > + > +TEST(file_exists) { > + string f1 = temporary_file("dummy content"); > + bool a = file_exists(f1); > + CHECK_EQUAL(a, true); > + > + remove(f1.c_str()); > + bool b = file_exists(f1); > + CHECK_EQUAL(b, false); > +} > + > + > +TEST(user_properties_file) { > + string f = user_properties_file(); > + CHECK_EQUAL(f.find(".icedtea") >= 0, true); > + CHECK_EQUAL(f.find(default_file_name) >= 0, true); > +} > + > +TEST(main_properties_file) { > + string f = main_properties_file(); > + CHECK_EQUAL(f.find(default_file_name) >= 0, true); > + CHECK_EQUAL(f.find(".java") >= 0, true); > +} > + > +TEST(default_java_properties_file) { > + string f = default_java_properties_file(); > + CHECK_EQUAL(f.find(default_file_name) >= 0, true); > + CHECK_EQUAL(f.find("lib") >= 0, true); > +} > + > + > +TEST(find_system_config_file) { > + string f1 = temporary_file("key1=value1"); > + string f2 = temporary_file("key2=value2"); > + string f3 = temporary_file("key3=value3"); > + string dest=string(""); > + find_system_config_file(f1, f2, true, f3, dest); > + CHECK_EQUAL(f1, dest); > + dest=string(""); > + find_system_config_file(f1, f2, false, f3, dest); > + CHECK_EQUAL(f1, dest); > + > + remove(f1.c_str()); > + dest=string(""); > + find_system_config_file(f1, f2, true, f3, dest); > + CHECK_EQUAL(f2, dest); > + dest=string(""); > + find_system_config_file(f1, f2, false, f3, dest); > + CHECK_EQUAL(f3, dest); > + > + remove(f2.c_str()); > + dest=string(""); > + find_system_config_file(f1, f2, true, f3, dest); > + CHECK_EQUAL("", dest); //forcing not existing f2 > + dest=string(""); > + find_system_config_file(f1, f2, false, f3, dest); > + CHECK_EQUAL(f3, dest); > + > + remove(f3.c_str()); > + dest=string(""); > + find_system_config_file(f1, f2, true, f3, dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_system_config_file(f1, f2, true, f3, dest); > + CHECK_EQUAL("", dest); > +} > + > +TEST(find_property) { > + string f1 = temporary_file("key1=value1"); > + string dest=string(""); > + find_property(f1, "key1", dest); > + CHECK_EQUAL("value1", dest); > + dest=string(""); > + find_property(f1, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_property(f1, "value1", dest); > + CHECK_EQUAL("", dest); > + remove(f1.c_str()); > + > + string f2 = temporary_file("key2 =value2 key3=value3\n key5 = > value5"); > + dest=string(""); > + find_property(f2, "key2", dest); > + CHECK_EQUAL("value2 key3=value3", dest); > + dest=string(""); > + find_property(f2, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_property(f2, "key3", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_property(f2, "key5", dest); > + CHECK_EQUAL("value5", dest); > + remove(f2.c_str()); > + > + string f3 = temporary_file("ke.y3= value3\nkey4=value4"); > + dest=string(""); > + find_property(f3, "ke.y3", dest); > + CHECK_EQUAL("value3", dest); > + dest=string(""); > + find_property(f3, "key4", dest); > + CHECK_EQUAL("value4", dest); > + remove(f3.c_str()); > +} > + > +TEST(read_deploy_property_value1) { > + string f1 = temporary_file("key1=value11"); > + string f2 = temporary_file("key1=value12"); > + string f3 = temporary_file("key2=value23"); > + string dest=string(""); > + read_deploy_property_value(f1,f2,true, "key1", dest); > + CHECK_EQUAL("value11", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,true, "key1", dest); > + CHECK_EQUAL("value11", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,true, "key1", dest); > + CHECK_EQUAL("value11", dest); > + read_deploy_property_value(f3,f2,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + > + dest=string(""); > + read_deploy_property_value(f1,f2,true, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,true, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,true, "key2", dest); > + CHECK_EQUAL("value23", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,true, "key2", dest); > + CHECK_EQUAL("value23", dest); > + read_deploy_property_value(f3,f2,true, "key2", dest); > + CHECK_EQUAL("value23", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,true, "key2", dest); > + CHECK_EQUAL("value23", dest); > + > + remove(f1.c_str());///////////////////////////////// > + dest=string(""); > + read_deploy_property_value(f1,f2,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,true, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,true, "key1", dest); > + CHECK_EQUAL("", dest); > + read_deploy_property_value(f3,f2,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + > + dest=string(""); > + read_deploy_property_value(f1,f2,true, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,true, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,true, "key2", dest); > + CHECK_EQUAL("value23", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,true, "key2", dest); > + CHECK_EQUAL("value23", dest); > + read_deploy_property_value(f3,f2,true, "key2", dest); > + CHECK_EQUAL("value23", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,true, "key2", dest); > + CHECK_EQUAL("value23", dest); > + > + remove(f3.c_str());///////////////////////////////// > + dest=string(""); > + read_deploy_property_value(f1,f2,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,true, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,true, "key1", dest); > + CHECK_EQUAL("", dest); > + read_deploy_property_value(f3,f2,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,true, "key1", dest); > + CHECK_EQUAL("value12", dest); > + > + dest=string(""); > + read_deploy_property_value(f1,f2,true, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,true, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,true, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,true, "key2", dest); > + CHECK_EQUAL("", dest); > + read_deploy_property_value(f3,f2,true, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,true, "key2", dest); > + CHECK_EQUAL("", dest); > + > + remove(f2.c_str());///////////////////////////////// > + > +} > + > + > + > +TEST(read_deploy_property_value2) { > + string f1 = temporary_file("key1=value11"); > + string f2 = temporary_file("key1=value12"); > + string f3 = temporary_file("key2=value23"); > + string dest=string(""); > + read_deploy_property_value(f1,f2,false, "key1", dest); > + CHECK_EQUAL("value11", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,false, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,false, "key1", dest); > + CHECK_EQUAL("value11", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,false, "key1", dest); > + CHECK_EQUAL("", dest); > + read_deploy_property_value(f3,f2,false, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,false, "key1", dest); > + CHECK_EQUAL("value12", dest); > + > + dest=string(""); > + read_deploy_property_value(f1,f2,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,false, "key2", dest); > + CHECK_EQUAL("value23", dest); > + read_deploy_property_value(f3,f2,false, "key2", dest); > + CHECK_EQUAL("value23", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,false, "key2", dest); > + CHECK_EQUAL("", dest); > + > + remove(f1.c_str());///////////////////////////////// > + dest=string(""); > + read_deploy_property_value(f1,f2,false, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,false, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,false, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,false, "key1", dest); > + CHECK_EQUAL("", dest); > + read_deploy_property_value(f3,f2,false, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,false, "key1", dest); > + CHECK_EQUAL("value12", dest); > + > + dest=string(""); > + read_deploy_property_value(f1,f2,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,false, "key2", dest); > + CHECK_EQUAL("value23", dest); > + read_deploy_property_value(f3,f2,false, "key2", dest); > + CHECK_EQUAL("value23", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,false, "key2", dest); > + CHECK_EQUAL("", dest); > + > + remove(f3.c_str());///////////////////////////////// > + dest=string(""); > + read_deploy_property_value(f1,f2,false, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,false, "key1", dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,false, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,false, "key1", dest); > + CHECK_EQUAL("", dest); > + read_deploy_property_value(f3,f2,false, "key1", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,false, "key1", dest); > + CHECK_EQUAL("value12", dest); > + > + dest=string(""); > + read_deploy_property_value(f1,f2,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f1,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f1,f3,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f3,f1,false, "key2", dest); > + CHECK_EQUAL("", dest); > + read_deploy_property_value(f3,f2,false, "key2", dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + read_deploy_property_value(f2,f3,false, "key2", dest); > + CHECK_EQUAL("", dest); > + > + remove(f2.c_str());///////////////////////////////// > +} > + > + > +TEST(find_custom_jre) { > + string f1 = temporary_file(custom_jre_key+"=value11"); > + string f2 = temporary_file(custom_jre_key+"=value12"); > + string f3 = temporary_file("key2=value23"); > + string f4 = temporary_file("key2=value24"); > + string dest=string(""); > + find_custom_jre(f1,f2, dest); > + CHECK_EQUAL("value11", dest); > + dest=string(""); > + find_custom_jre(f2,f1, dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + find_custom_jre(f1,f3, dest); > + CHECK_EQUAL("value11", dest); > + dest=string(""); > + find_custom_jre(f3,f1, dest); > + CHECK_EQUAL("value11", dest); > + dest=string(""); > + find_custom_jre(f3,f4, dest); > + CHECK_EQUAL("", dest); > + remove(f1.c_str());///////////////////////////////// > + dest=string(""); > + find_custom_jre(f1,f2, dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + find_custom_jre(f2,f1, dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + find_custom_jre(f1,f3, dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_custom_jre(f3,f1, dest); > + CHECK_EQUAL("", dest); > + remove(f3.c_str());///////////////////////////////// > + dest=string(""); > + find_custom_jre(f1,f2, dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + find_custom_jre(f2,f1, dest); > + CHECK_EQUAL("value12", dest); > + dest=string(""); > + find_custom_jre(f1,f3, dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_custom_jre(f3,f1, dest); > + CHECK_EQUAL("", dest); > + remove(f2.c_str());///////////////////////////////// > + dest=string(""); > + find_custom_jre(f1,f2, dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_custom_jre(f2,f1, dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_custom_jre(f1,f3, dest); > + CHECK_EQUAL("", dest); > + dest=string(""); > + find_custom_jre(f3,f1, dest); > + CHECK_EQUAL("", dest); > + remove(f4.c_str());///////////////////////////////// > + > +} [nit] string s = "something"; is valid, string s = string("something"); is not necessary. OK. I'll admit I just mostly trusted you for the tests. Thanks for testing it so thoroughly! I like to use artificial {} blocks to separate the different test cases within a single function, that way you can reuse the same variable names. See for example PluginParametersTest. Anyway, I'll understand if you don't want to go back and change it. I may have missed it -- does this add any functional to ITW yet ? Anyway, looks overall OK. I'd like to see another round, my main concerns are 'default_file_name' being a global ambiguous constant, and 'trim' being available as a general (tested! :-) utility function. Very happy that you gave C++ a chance :-) -Adam From jvanek at icedtea.classpath.org Thu Mar 21 10:14:23 2013 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Thu, 21 Mar 2013 17:14:23 +0000 Subject: /hg/icedtea-web: Launchers made aware of custom set JRE Message-ID: changeset dc7889501235 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=dc7889501235 author: Jiri Vanek date: Thu Mar 21 18:14:53 2013 +0100 Launchers made aware of custom set JRE * luncher/itweb-settings.in: * launcher/javaws.in: are now scanning ~/.icedtea/deployment.properties and /etc/.java/.deploy/deployment.properties for deployment.jre.dir property. If found, then its java and rt.jar are used to launch applications. diffstat: ChangeLog | 9 +++++++++ launcher/itweb-settings.in | 9 +++++++++ launcher/javaws.in | 10 ++++++++++ 3 files changed, 28 insertions(+), 0 deletions(-) diffs (55 lines): diff -r f8546db82ac2 -r dc7889501235 ChangeLog --- a/ChangeLog Wed Mar 20 18:14:02 2013 +0100 +++ b/ChangeLog Thu Mar 21 18:14:53 2013 +0100 @@ -1,3 +1,12 @@ +2013-03-21 Jiri Vanek + + Launchers made aware of custom set JRE + * launcher/itweb-settings.in: + * launcher/javaws.in: + are now scanning ~/.icedtea/deployment.properties and + /etc/.java/.deploy/deployment.properties for deployment.jre.dir property. + If found, then its java and rt.jar are used to launch applications. + 2013-03-20 Jana Fabrikova * tests/reproducers/simple/JSToJGet/testcases/JSToJGetTest.java: diff -r f8546db82ac2 -r dc7889501235 launcher/itweb-settings.in --- a/launcher/itweb-settings.in Wed Mar 20 18:14:02 2013 +0100 +++ b/launcher/itweb-settings.in Thu Mar 21 18:14:53 2013 +0100 @@ -7,6 +7,15 @@ BINARY_LOCATION=@ITWEB_SETTINGS_BIN_LOCATION@ PROGRAM_NAME=itweb-settings +CUSTOM_JRE_REGEX="^deployment.jre.dir *= *" +CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" ~/.icedtea/deployment.properties 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` +if [ "x$CUSTOM_JRE" = "x" ] ; then + CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" /etc/.java/.deploy/deployment.properties 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` +fi; +if [ "x$CUSTOM_JRE" != "x" ] ; then + JAVA=$CUSTOM_JRE/bin/java +fi; + ${JAVA} ${LAUNCHER_BOOTCLASSPATH} ${LAUNCHER_FLAGS} \ -Dicedtea-web.bin.name=${PROGRAM_NAME} \ -Dicedtea-web.bin.location=${BINARY_LOCATION} \ diff -r f8546db82ac2 -r dc7889501235 launcher/javaws.in --- a/launcher/javaws.in Wed Mar 20 18:14:02 2013 +0100 +++ b/launcher/javaws.in Thu Mar 21 18:14:53 2013 +0100 @@ -9,6 +9,16 @@ PROGRAM_NAME=javaws CP=@JRE@/lib/rt.jar +CUSTOM_JRE_REGEX="^deployment.jre.dir *= *" +CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" ~/.icedtea/deployment.properties 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` +if [ "x$CUSTOM_JRE" = "x" ] ; then + CUSTOM_JRE=`grep "$CUSTOM_JRE_REGEX" /etc/.java/.deploy/deployment.properties 2>/dev/null | sed "s/$CUSTOM_JRE_REGEX//g"` +fi; +if [ "x$CUSTOM_JRE" != "x" ] ; then + JAVA=$CUSTOM_JRE/bin/java + CP=$CUSTOM_JRE/lib/rt.jar +fi; + JAVA_ARGS=( ) ARGS=( ) COMMAND=() From adomurad at redhat.com Thu Mar 21 10:44:55 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 21 Mar 2013 13:44:55 -0400 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "function return values" tests In-Reply-To: <51376699.1060907@redhat.com> References: <51376699.1060907@redhat.com> Message-ID: <514B4717.6050305@redhat.com> On 03/06/2013 10:54 AM, Jana Fabrikova wrote: > Hello, > > please see the attached patch of new reproducer for J->JS "getting the > right value by applet that calls JS functions with different return > types". > > thanks for any comments, > Jana > > 2013-03-06 Jana Fabrikova > > * > /tests/reproducers/simple/JToJSFuncReturn/testcases/JToJSFuncReturnTest.java: > adding 5 testcases based on the interactive Liveconnect JS->Java > function return type tests > > * /tests/reproducers/simple/JToJSFuncReturn/srcs/JToJSFuncReturn.java: > the applet that calls JS functions > > * > /tests/reproducers/simple/JToJSFuncReturn/resources/JToJS_FuncReturn.js: > auxiliary JavaScript code > > * > /tests/reproducers/simple/JToJSFuncReturn/resources/jtojs-funcreturn.jnlp: > jnlp file for displaying applet in the html page > > * > /tests/reproducers/simple/JToJSFuncReturn/resources/JToJSFuncReturn.html: > the html page where the applet calling JS functions is embedded > diff --git > a/tests/reproducers/simple/JToJSFuncReturn/resources/JToJSFuncReturn.html > b/tests/reproducers/simple/JToJSFuncReturn/resources/JToJSFuncReturn.html > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JToJSFuncReturn/resources/JToJSFuncReturn.html > @@ -0,0 +1,27 @@ > + > + > + > + Java JavaScript LiveConnect - Function Return types > + > + > + > + > + > + > + > +

The JToJSFuncReturn html page

> + > + id="jtojsFuncReturnApplet" MAYSCRIPT> > + > + > + > + > + > + > + > diff --git > a/tests/reproducers/simple/JToJSFuncReturn/resources/JToJS_FuncReturn.js > b/tests/reproducers/simple/JToJSFuncReturn/resources/JToJS_FuncReturn.js > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JToJSFuncReturn/resources/JToJS_FuncReturn.js > @@ -0,0 +1,15 @@ > +function doJToJSFuncReturnTests(){ > + var applet = document.getElementById('jtojsFuncReturnApplet'); > + > + var urlArgs = document.URL.split("?"); > + value = eval(decodeURIComponent(urlArgs[1])); > + > + applet.jCallJSFunction(); > + > + applet.writeAfterTests(); > +} > + > +function jsReturningFunction(){ > + return value; > +} > + > diff --git > a/tests/reproducers/simple/JToJSFuncReturn/resources/jtojs-funcreturn.jnlp > b/tests/reproducers/simple/JToJSFuncReturn/resources/jtojs-funcreturn.jnlp > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JToJSFuncReturn/resources/jtojs-funcreturn.jnlp > @@ -0,0 +1,23 @@ > + > + > + > + > + Java to JavaScript LiveConnect - FuncReturn > + IcedTea > + href="http://icedtea.classpath.org/wiki/IcedTea-Web#Testing_IcedTea-Web"/> > + LiveConnect - tests for returning different types of > values when calling JS function from Java. > + > + > + > + + href="http://java.sun.com/products/autodl/j2se"/> > + > + > + > + + name="J to JS FuncReturn" > + main-class="JToJSFuncReturn" > + width="1000" > + height="100"> > + > + > diff --git > a/tests/reproducers/simple/JToJSFuncReturn/srcs/JToJSFuncReturn.java > b/tests/reproducers/simple/JToJSFuncReturn/srcs/JToJSFuncReturn.java > new file mode 100644 > --- /dev/null > +++ b/tests/reproducers/simple/JToJSFuncReturn/srcs/JToJSFuncReturn.java > @@ -0,0 +1,46 @@ > +import java.applet.Applet; > +import netscape.javascript.JSObject; > + > +public class JToJSFuncReturn extends Applet { > + > + private JSObject window; > + > + public void init() { > + window = JSObject.getWindow(this); > + String initStr = "JToJSFuncReturn applet initialized."; > + System.out.println(initStr); > + } > + > + // method for testing return types of JavaScript function > + public void jCallJSFunction() { > + String returnTypeTestFuncName = "jsReturningFunction"; > + Object ret = window.call(returnTypeTestFuncName, new Object[]{}); > + System.out.println(ret.toString()); > + } > + > + // auxiliary class and methods > + public void writeAfterTests() { > + System.out.print("afterTests"); > + } > + > + public class DummyObject { > + private String str; > + > + public DummyObject(String s) { > + this.str = s; > + } > + > + public void setStr(String s) { > + this.str = s; > + } > + > + public String toString() { > + return str; > + } > + } > + > + public DummyObject getNewDummyObject(String s){ > + return new DummyObject(s); > + } > + > +} > diff --git > a/tests/reproducers/simple/JToJSFuncReturn/testcases/JToJSFuncReturnTest.java > b/tests/reproducers/simple/JToJSFuncReturn/testcases/JToJSFuncReturnTest.java > new file mode 100644 > --- /dev/null > +++ > b/tests/reproducers/simple/JToJSFuncReturn/testcases/JToJSFuncReturnTest.java > @@ -0,0 +1,116 @@ > +/* JToJSFuncReturnTest.java > +Copyright (C) 2012 Red Hat, Inc. > + > +This file is part of IcedTea. > + > +IcedTea is free software; you can redistribute it and/or > +modify it under the terms of the GNU General Public License as > published by > +the Free Software Foundation, version 2. > + > +IcedTea is distributed in the hope that it will be useful, > +but WITHOUT ANY WARRANTY; without even the implied warranty of > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +General Public License for more details. > + > +You should have received a copy of the GNU General Public License > +along with IcedTea; see the file COPYING. If not, write to > +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > +02110-1301 USA. > + > +Linking this library statically or dynamically with other modules is > +making a combined work based on this library. Thus, the terms and > +conditions of the GNU General Public License cover the whole > +combination. > + > +As a special exception, the copyright holders of this library give you > +permission to link this library with independent modules to produce an > +executable, regardless of the license terms of these independent > +modules, and to copy and distribute the resulting executable under > +terms of your choice, provided that you also meet, for each linked > +independent module, the terms and conditions of the license of that > +module. An independent module is a module which is not derived from > +or based on this library. If you modify this library, you may extend > +this exception to your version of the library, but you are not > +obligated to do so. If you do not wish to do so, delete this > +exception statement from your version. > + */ > + > +import net.sourceforge.jnlp.ProcessResult; > +import net.sourceforge.jnlp.ServerAccess; > +import net.sourceforge.jnlp.browsertesting.BrowserTest; > +import net.sourceforge.jnlp.browsertesting.Browsers; > +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; > +import net.sourceforge.jnlp.annotations.NeedsDisplay; > +import net.sourceforge.jnlp.annotations.TestInBrowsers; > +import org.junit.Assert; > + > +import org.junit.Test; > + > +public class JToJSFuncReturnTest extends BrowserTest { > + > + private final String initStr = "JToJSFuncReturn applet initialized."; > + private final String afterStr = "afterTests"; > + > + private class CountingClosingListenerImpl extends > CountingClosingListener { > + > + @Override > + protected boolean isAlowedToFinish(String s) { > + return (s.contains(initStr) && s.contains(afterStr)); > + } > + } > + > + private void evaluateStdoutContents(String[] expectedStdoutsOR, > ProcessResult pr) { > + // Assert that the applet was initialized. > + Assert.assertTrue("JToJSFuncReturnTest stdout should contain " + > initStr + " but it didnt.", pr.stdout.contains(initStr)); > + > + // Assert that the values set from JavaScript are ok > + boolean atLeastOne = false; > + for(String s : expectedStdoutsOR){ > + if(pr.stdout.contains(s)) atLeastOne = true; > + } > + Assert.assertTrue("JToJSFuncReturn: the output should include at > least one of expected Stdouts, but it didnt.", atLeastOne); > + } > + > + private void javaToJSFuncReturnTest(String urlEnd, String[] > expectedValsOR) throws Exception { > + > + String strURL = "/JToJSFuncReturn.html?" + urlEnd; > + ProcessResult pr = server.executeBrowser(strURL, new > CountingClosingListenerImpl(), new CountingClosingListenerImpl()); > + evaluateStdoutContents(expectedValsOR, pr); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncReturn_number_Test() throws Exception { > + javaToJSFuncReturnTest("123", new String[] {"123"}); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncReturn_boolean_Test() throws Exception { > + javaToJSFuncReturnTest("true", new String[] {"true"}); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncReturn_String_Test() throws Exception { > + javaToJSFuncReturnTest("\"????$????\"", new String[] {"????$????"}); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncReturn_Object_Test() throws Exception { > + javaToJSFuncReturnTest("applet.getNewDummyObject(\"dummy1\")", new > String[] {"dummy1"}); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSFuncReturn_JSObject_Test() throws Exception { > + javaToJSFuncReturnTest("window", new String[] {"[object Window]", > "[object DOMWindow]"}); > + } > + > +} Looks good to me. -Adam From adomurad at redhat.com Thu Mar 21 10:48:46 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 21 Mar 2013 13:48:46 -0400 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "set" tests In-Reply-To: <513763AB.3020000@redhat.com> References: <513763AB.3020000@redhat.com> Message-ID: <514B47FE.6040608@redhat.com> On 03/06/2013 10:41 AM, Jana Fabrikova wrote: > Hello, > > please see the attached patch of new reproducer for J->JS "writing > values to JS variables from Java". > > thanks for any comments, > Jana > > 2013-03-06 Jana Fabrikova > > * /tests/reproducers/simple/JToJSSet/testcases/JToJSSetTest.java: > adding 21 testcases based on the interactive Liveconnect JS->Java > set tests > > * /tests/reproducers/simple/JToJSGet/srcs/JToJSGet.java: > the applet that writes variables to JS > > * /tests/reproducers/simple/JToJSGet/resources/JToJS_Get.js: > auxiliary JavaScript code > > * /tests/reproducers/simple/JToJSGet/resources/jtojs-get.jnlp: > jnlp file for displaying applet in the html page > > * /tests/reproducers/simple/JToJSGet/resources/JToJSGet.html: > the html page where the applet setting JS variables is embedded Looks OK to me. Although please name all these 'JToJSXXX' to 'JavascriptXXX'. -Adam From adomurad at redhat.com Thu Mar 21 10:58:33 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 21 Mar 2013 13:58:33 -0400 Subject: [rfc][icedtea-web] a new reproducer for LiveConnect J->JS "get" tests In-Reply-To: <51376229.1000706@redhat.com> References: <51376229.1000706@redhat.com> Message-ID: <514B4A49.3010208@redhat.com> On 03/06/2013 10:35 AM, Jana Fabrikova wrote: > Hello, > > please see the attached patch of new reproducer for J->JS "reading JS > variables from J". > > Several of the testcases in the patch have commented annotations > KnownToFailInBrowser, (which i have implemented but is not included yet.) > > thanks for any comments, > Jana > > 2013-03-06 Jana Fabrikova > > * /tests/reproducers/simple/JToJSGet/testcases/JToJSGetTest.java: > adding 8 testcases based on the interactive Liveconnect JS->Java > overloaded function resolution tests > > * /tests/reproducers/simple/JToJSGet/srcs/JToJSGet.java: > the applet that reads variables from JS > > * /tests/reproducers/simple/JToJSGet/resources/JToJS_Get.js: > auxiliary JavaScript code > > * /tests/reproducers/simple/JToJSGet/resources/jtojs-get.jnlp: > jnlp file for displaying applet in the html page > > * /tests/reproducers/simple/JToJSGet/resources/JToJSGet.html: > the html page where the applet reading JS variables is embedded > diff --git a/tests/reproducers/simple/JToJSGet/resources/JToJSGet.html > b/tests/reproducers/simple/JToJSGet/resources/JToJSGet.html > new file mode 100644 > --- /dev/null > +++ b/tests/reproducers/simple/JToJSGet/resources/JToJSGet.html > @@ -0,0 +1,27 @@ > + > + > + > + Java JavaScript LiveConnect - Get values from applet > + > + > + > + > + > + > + > +

The JToJSGet html page

> + > + id="jtojsGetApplet" MAYSCRIPT> > + > + > + > + > + > + > + > diff --git a/tests/reproducers/simple/JToJSGet/resources/JToJS_Get.js > b/tests/reproducers/simple/JToJSGet/resources/JToJS_Get.js > new file mode 100644 > --- /dev/null > +++ b/tests/reproducers/simple/JToJSGet/resources/JToJS_Get.js > @@ -0,0 +1,14 @@ > +function doJToJSGetTests(){ > + > + var applet = document.getElementById('jtojsGetApplet'); > + > + var urlArgs = document.URL.split("?"); > + var testParams = urlArgs[1].split(";"); > + var func = testParams[0]; > + var value = decodeURIComponent(testParams[1]); > + > + eval('jsvar='+value); > + eval('applet.'+func+'()'); > + > + applet.writeAfterTests(); > +} > diff --git > a/tests/reproducers/simple/JToJSGet/resources/jtojs-get.jnlp > b/tests/reproducers/simple/JToJSGet/resources/jtojs-get.jnlp > new file mode 100644 > --- /dev/null > +++ b/tests/reproducers/simple/JToJSGet/resources/jtojs-get.jnlp > @@ -0,0 +1,23 @@ > + > + > + > + > + Java to JavaScript LiveConnect - Get > + IcedTea > + href="http://icedtea.classpath.org/wiki/IcedTea-Web#Testing_IcedTea-Web"/> > + LiveConnect - tests for reading JavaScript > values from Java. > + > + > + > + + href="http://java.sun.com/products/autodl/j2se"/> > + > + > + > + + name="J to JS Get" > + main-class="JToJSGet" > + width="1000" > + height="100"> > + > + > diff --git a/tests/reproducers/simple/JToJSGet/srcs/JToJSGet.java > b/tests/reproducers/simple/JToJSGet/srcs/JToJSGet.java > new file mode 100644 > --- /dev/null > +++ b/tests/reproducers/simple/JToJSGet/srcs/JToJSGet.java > @@ -0,0 +1,93 @@ > +import java.applet.Applet; > +import java.util.Arrays; > +import netscape.javascript.JSObject; > + > +public class JToJSGet extends Applet { > + > + public DummyObject dummyObject = new DummyObject("DummyObject1"); > + public Object value; > + private JSObject window; > + > + private final String jsvar = "jsvar"; > + > + public void init() { > + window = JSObject.getWindow(this); > + > + String initStr = "JToJSGet applet initialized."; > + System.out.println(initStr); > + } > + > + // methods for testing read from JavaScript variables > + public void jjsReadInt() { > + value = new Integer(window.getMember(jsvar).toString()); > + System.out.println(value); > + } > + > + public void jjsReadDouble() { > + value = new Double(window.getMember(jsvar).toString()); > + System.out.println(value); > + } > + > + public void jjsReadBoolean() { > + value = new Boolean(window.getMember(jsvar).toString()); > + System.out.println(value); > + } > + > + public void jjsReadString() { > + value = window.getMember(jsvar).toString(); > + System.out.println(value); > + } > + > + public void jjsReadObject() { > + value = window.getMember(jsvar).toString(); > + System.out.println(value); > + } > + > + public void jjsRead1DArray() { > + //value = ((JSObject) window.getMember(jsvar)).getSlot(1); > + Object[] arrayvalue = (Object[]) window.getMember(jsvar); > + > + System.out.println(Arrays.toString(arrayvalue)); > + } > + > + public void jjsRead2DArray() { > + //value = ((JSObject) ((JSObject) > window.getMember(jsvar)).getSlot(1)).getSlot(2); > + //value = ((JSObject) ((JSObject) > window.getMember(jsvar)).getSlot(1)); I'd prefer not to leave around commented out code. > + Object[][] arrayvalue = (Object[][])window.getMember(jsvar); > + > + System.out.println(Arrays.deepToString(arrayvalue)); > + } > + > + public void jjsReadJSObject() { > + JSObject jsobjectvalue = (JSObject) window.getMember(jsvar); > + > + System.out.println(jsobjectvalue); > + } > + > + //auxiliary class DummyObject > + public class DummyObject { > + private String str; > + > + public DummyObject(String s) { > + this.str = s; > + } > + > + public void setStr(String s) { > + this.str = s; > + } > + > + public String toString() { > + return str; > + } > + } > + > + //auxiliary methods: > + public DummyObject getNewDummyObject(String s){ > + return new DummyObject(s); > + } > + > + public void writeAfterTests(){ > + System.out.println("afterTests"); > + } > + > +} > diff --git > a/tests/reproducers/simple/JToJSGet/testcases/JToJSGetTest.java > b/tests/reproducers/simple/JToJSGet/testcases/JToJSGetTest.java > new file mode 100644 > --- /dev/null > +++ b/tests/reproducers/simple/JToJSGet/testcases/JToJSGetTest.java > @@ -0,0 +1,139 @@ > +/* JToJSGetTest.java > +Copyright (C) 2012 Red Hat, Inc. > + > +This file is part of IcedTea. > + > +IcedTea is free software; you can redistribute it and/or > +modify it under the terms of the GNU General Public License as > published by > +the Free Software Foundation, version 2. > + > +IcedTea is distributed in the hope that it will be useful, > +but WITHOUT ANY WARRANTY; without even the implied warranty of > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +General Public License for more details. > + > +You should have received a copy of the GNU General Public License > +along with IcedTea; see the file COPYING. If not, write to > +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > +02110-1301 USA. > + > +Linking this library statically or dynamically with other modules is > +making a combined work based on this library. Thus, the terms and > +conditions of the GNU General Public License cover the whole > +combination. > + > +As a special exception, the copyright holders of this library give you > +permission to link this library with independent modules to produce an > +executable, regardless of the license terms of these independent > +modules, and to copy and distribute the resulting executable under > +terms of your choice, provided that you also meet, for each linked > +independent module, the terms and conditions of the license of that > +module. An independent module is a module which is not derived from > +or based on this library. If you modify this library, you may extend > +this exception to your version of the library, but you are not > +obligated to do so. If you do not wish to do so, delete this > +exception statement from your version. > + */ > + > +import net.sourceforge.jnlp.ProcessResult; > +import net.sourceforge.jnlp.ServerAccess; > +import net.sourceforge.jnlp.browsertesting.BrowserTest; > +import net.sourceforge.jnlp.browsertesting.Browsers; > +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; > +import net.sourceforge.jnlp.annotations.NeedsDisplay; > +import net.sourceforge.jnlp.annotations.TestInBrowsers; > +import net.sourceforge.jnlp.annotations.KnownToFailInBrowsers; > +import org.junit.Assert; > + > +import org.junit.Test; > + > +public class JToJSGetTest extends BrowserTest { > + > + private final String initStr = "JToJSGet applet initialized."; > + private final String afterStr = "afterTests"; > + > + private class CountingClosingListenerImpl extends > CountingClosingListener { > + > + @Override > + protected boolean isAlowedToFinish(String s) { > + > + return (s.contains(initStr) && s.contains(afterStr)); > + > + } > + } > + > + private void evaluateStdoutContents(String expectedStdout, > ProcessResult pr) { > + // Assert that the applet was initialized. > + Assert.assertTrue("JToJSGetTest stdout should contain " + initStr > + + " but it didnt.", pr.stdout.contains(initStr)); > + > + // Assert that the values get from JavaScript are ok > + Assert.assertTrue("JToJsGet: the output should include: > "+expectedStdout+", but it didnt.", pr.stdout.contains(expectedStdout)); > + } > + > + private void javaToJSGetTest(String funcStr, String paramStr, > String expectedVal) throws Exception { > + String strURL = "/JToJSGet.html?" + funcStr + ";" + paramStr; > + ProcessResult pr = server.executeBrowser(strURL, new > CountingClosingListenerImpl(), new CountingClosingListenerImpl()); > + evaluateStdoutContents(expectedVal, pr); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + //@KnownToFailInBrowsers(failsIn={Browsers.midori, > Browsers.googleChrome, Browsers.chromiumBrowser}) > + public void AppletJToJSGet_int_Test() throws Exception { > + javaToJSGetTest("jjsReadInt", "1", "1"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSGet_double_Test() throws Exception { > + javaToJSGetTest("jjsReadDouble", "1.1", "1.1"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSGet_boolean_Test() throws Exception { > + javaToJSGetTest("jjsReadBoolean", "true", "true"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSGet_string_Test() throws Exception { > + javaToJSGetTest("jjsReadString", "\"teststring\"", "teststring"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSGet_object_Test() throws Exception { > + javaToJSGetTest("jjsReadObject", > "applet.getNewDummyObject(\"dummy1\")", "dummy1"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + //@KnownToFailInBrowsers(failsIn={Browsers.midori, > Browsers.epiphany, Browsers.googleChrome, Browsers.chromiumBrowser}) > + public void AppletJToJSGet_1DArray_Test() throws Exception { > + javaToJSGetTest("jjsRead1DArray", "[1,2,3]", "[1, 2, 3]"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + //@KnownToFailInBrowsers(failsIn={Browsers.midori, > Browsers.epiphany, Browsers.googleChrome, Browsers.chromiumBrowser}) > + public void AppletJToJSGet_2DArray_Test() throws Exception { > + javaToJSGetTest("jjsRead2DArray", "[[1,2],[3,4]]","[[1, 2], > [3, 4]]"); > + } > + > + @Test > + @TestInBrowsers(testIn = { Browsers.all }) > + @NeedsDisplay > + public void AppletJToJSGet_JSObject_Test() throws Exception { > + javaToJSGetTest("jjsReadJSObject", "window","[object Window]"); > + } > + > +} Looks OK to me. As I stated, I'd prefer this renamed JavascriptGet. -Adam From jvanek at redhat.com Thu Mar 21 11:06:11 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 21 Mar 2013 19:06:11 +0100 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <514B3E9E.4000600@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> <5149C578.5090004@redhat.com> <5149CB84.1090501@redhat.com> <514B3833.6060604@redhat.com> <514B3E9E.4000600@redhat.com> Message-ID: <514B4C13.4070105@redhat.com> On 03/21/2013 06:08 PM, Adam Domurad wrote: > On 03/21/2013 12:41 PM, Jiri Vanek wrote: >> Here we go. >> >> Included are also Omair's suggestions. >> >> >> [..snipped..] >>> Looks good otherwise, go ahead and start testing+integration if you'd like. >>> -Adam >> > >> diff -r 76930f38dddf Makefile.am >> --- a/Makefile.am Wed Mar 20 15:35:22 2013 +0100 >> +++ b/Makefile.am Thu Mar 21 17:40:23 2013 +0100 >> @@ -284,11 +284,11 @@ >> >> PLUGIN_SRC=IcedTeaNPPlugin.cc IcedTeaScriptablePluginObject.cc \ >> IcedTeaJavaRequestProcessor.cc IcedTeaPluginRequestProcessor.cc \ >> - IcedTeaPluginUtils.cc >> + IcedTeaPluginUtils.cc IcedTeaParseProperties.cc >> >> PLUGIN_OBJECTS=IcedTeaNPPlugin.o IcedTeaScriptablePluginObject.o \ >> IcedTeaJavaRequestProcessor.o IcedTeaPluginRequestProcessor.o \ >> - IcedTeaPluginUtils.o >> + IcedTeaPluginUtils.o IcedTeaParseProperties.o > > Looks right > >> >> $(PLUGIN_DIR)/%.o: $(PLUGIN_SRCDIR)/%.cc >> mkdir -p $(PLUGIN_DIR) && \ >> diff -r 76930f38dddf plugin/icedteanp/IcedTeaParseProperties.cc >> --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >> +++ b/plugin/icedteanp/IcedTeaParseProperties.cc Thu Mar 21 17:40:23 2013 +0100 >> @@ -0,0 +1,260 @@ >> +/* IcedTeaRunnable.cc >> + >> + Copyright (C) 2013 Red Hat >> + >> +This file is part of IcedTea. >> + >> +IcedTea is free software; you can redistribute it and/or modify >> +it under the terms of the GNU General Public License as published by >> +the Free Software Foundation; either version 2, or (at your option) >> +any later version. >> + >> +IcedTea is distributed in the hope that it will be useful, but >> +WITHOUT ANY WARRANTY; without even the implied warranty of >> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> +General Public License for more details. >> + >> +You should have received a copy of the GNU General Public License >> +along with IcedTea; see the file COPYING. If not, write to the >> +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA >> +02110-1301 USA. >> + >> +Linking this library statically or dynamically with other modules is >> +making a combined work based on this library. Thus, the terms and >> +conditions of the GNU General Public License cover the whole >> +combination. >> + >> +As a special exception, the copyright holders of this library give you >> +permission to link this library with independent modules to produce an >> +executable, regardless of the license terms of these independent >> +modules, and to copy and distribute the resulting executable under >> +terms of your choice, provided that you also meet, for each linked >> +independent module, the terms and conditions of the license of that >> +module. An independent module is a module which is not derived from >> +or based on this library. If you modify this library, you may extend >> +this exception to your version of the library, but you are not >> +obligated to do so. If you do not wish to do so, delete this >> +exception statement from your version. */ >> + >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> + >> +#include "IcedTeaParseProperties.h" >> +/* >> + The public api is nearly impossible to test due to "hardcoded paths" >> + All public methods have theirs equivalents wit set-up-able files, and those are >> + tested. >> +*/ >> + >> +using namespace std; >> +//private api >> +void trim(string& str); >> +void remove_all_spaces(string& str); >> +bool get_property_value(string c, string& dest); >> +bool starts_with(string c1, string c2); >> +bool file_exists(string filename); >> +string user_properties_file(); >> +string main_properties_file(); >> +string default_java_properties_file(); >> +//for passing three dummy files >> +bool find_system_config_file(string main_file, string custom_jre_file, bool usecustom_jre, string >> default_java_file, string& dest); >> +bool find_property(string filename, string property, string& dest); >> +//for passing two dummy files >> +bool read_deploy_property_value(string user_file, string system_file, bool usesystem_file, >> string property, string& dest); >> +//for passing two dummy files >> +bool find_custom_jre(string user_file, string main_file,string& dest); >> +//end of non-public IcedTeaParseProperties api > > [nit] You do not need to forward declare anything here if you order the function definitions so that > earlier functions do not use later functions. > >> + >> + >> + >> +void trim(string& str) { >> + size_t start = str.find_first_not_of(" \t\n"), end = str.find_last_not_of(" \t\n"); >> + if (start == std::string::npos) { >> + return; >> + } >> + str = str.substr(start, end - start + 1); >> +} > > I thought this was headed to IcedTeaPluginUtils? > >> + >> + >> + >> + >> +void remove_all_spaces(string& str) >> +{ >> + for(int i=0; i> + if(str[i] == ' ' || str[i] == '\n' || str[i] == '\t') { >> + str.erase(i,1); >> + i--; >> + } >> + } >> +} >> + >> +bool get_property_value(string c, string& dest){ >> + int i = c.find("="); >> + if (i < 0) return false; >> + int l = c.length(); >> + dest = c.substr(i+1, l-i); >> + trim(dest); >> + return true; >> +} >> + >> + >> +bool starts_with(string c1, string c2){ >> + return (c1.find(c2) == 0); >> +} >> + >> +bool file_exists(string filename) >> +{ >> + ifstream infile(filename.c_str()); >> + return infile.good(); >> +} >> + >> + >> +string user_properties_file(){ >> + int myuid = getuid(); >> + struct passwd *mypasswd = getpwuid(myuid); >> + return string(mypasswd->pw_dir)+"/.icedtea/"+default_file_name; >> +} >> + >> + >> +string main_properties_file(){ >> + return "/etc/.java/deployment/"+default_file_name; >> +} >> + >> +string default_java_properties_file(){ >> + return ICEDTEA_WEB_JRE "/lib/"+default_file_name; >> +} >> + >> + >> +/* this is the same search done by icedtea-web settings: >> + try the main file in /etc/.java/deployment >> + if found, then return this file >> + try to find setUp jre >> + if found, then try if this file exists and end >> + if no jre custom jvm is set, then tries default jre >> + if its deploy file exists, then return >> + not found otherwise*/ >> +bool find_system_config_file(string& dest){ >> + string jdest; >> + bool found = find_custom_jre(jdest); >> + if (found) { >> + jdest = jdest + "/lib/"+default_file_name; >> + } >> + return find_system_config_file(main_properties_file(), jdest, found, >> default_java_properties_file(), dest); >> +} >> +//abstraction for testing purposes >> +bool find_system_config_file(string main_file, string custom_jre_file, bool usecustom_jre, string >> default_java_file, string& dest){ >> + if (file_exists(main_file)) { >> + dest = main_file; >> + return true; >> + } else { >> + if (usecustom_jre){ >> + if(file_exists(custom_jre_file) ) { >> + dest = custom_jre_file; >> + return true; >> + } >> + } else { >> + if(file_exists(default_java_file)) { >> + dest = default_java_file; >> + return true; >> + } >> + } >> + } >> +return false; //nothing of above found >> +} >> + >> +//Returns whether property was found, if found stores result in 'dest' >> +bool find_property(string filename, string property, string& dest){ >> + string property_matcher(property); >> + trim( property_matcher); >> + property_matcher= property_matcher+"="; >> + ifstream input( filename.c_str() ); > > [nit] Both ifstream & ofstream are deprecated, to some extent. fstream is better C++ style. > >> + for( string line; getline( input, line ); ){ /* read a line */ >> + string copy = line; >> + //java tolerates spaces around = char, remove them for matching >> + remove_all_spaces(copy); >> + if (starts_with(copy, property_matcher)) { >> + //provide non-spaced value, trimming is done in get_property_value >> + get_property_value(line, dest); >> + return true; >> + } >> + } >> + >> + return false; >> + } >> + >> + >> +/* this is reimplementation of itw-settings operations >> + first check in user's settings, if found, return >> + then check in global file (see the magic of find_system_config_file)*/ >> +bool read_deploy_property_value(string property, string& dest){ >> + string futurefile; >> + bool b = find_system_config_file(futurefile); > > [nit] 'b' is not a descriptive name > >> + return read_deploy_property_value(user_properties_file(), futurefile, b, property, dest); >> +} >> +//abstraction for testing purposes >> +bool read_deploy_property_value(string user_file, string system_file, bool usesystem_file, >> string property, string& dest){ >> + //is it in user's file? >> + bool found = find_property(user_file, property, dest); >> + if (found) { >> + return true; >> + } >> + //is it in global file? >> + if (usesystem_file) { >> + return find_property(system_file, property, dest); >> + } >> + return false; >> +} >> + >> +//This is different from common get property, as it is avoiding to search in *java* >> +//properties files >> +bool find_custom_jre(string& dest){ >> + return find_custom_jre(user_properties_file(), main_properties_file(), dest); >> +} >> +//abstraction for testing purposes >> +bool find_custom_jre(string user_file, string main_file,string& dest){ >> + string key = custom_jre_key; >> + if(file_exists(user_file)) { >> + bool a = find_property(user_file, key, dest); >> + if (a) { >> + return true; >> + } >> + } >> + if(file_exists(main_file)) { >> + return find_property(main_file, key, dest); >> + } >> +return false; >> +} >> + >> + >> + >> +int mainForFun(void){ > > [nit] test_main :-) > >> + cout << ("user's settings file\n"); >> + cout << user_properties_file(); >> + cout << ("\nmain settings file:\n"); >> + cout << (main_properties_file()); >> + cout << ("\njava settings file \n"); >> + cout << (default_java_properties_file()); >> + cout << ("\nsystem config file\n"); >> + string a1; >> + find_system_config_file(a1); >> + cout << a1; >> + cout << ("\ncustom jre\n"); >> + string a2; >> + find_custom_jre(a2); >> + cout << a2; >> + cout << ("\nsome custom property\n"); >> + string a3; >> + read_deploy_property_value("deployment.security.level", a3); >> + cout << a3; >> + cout << ("\n"); >> + return 0; >> +} >> diff -r 76930f38dddf plugin/icedteanp/IcedTeaParseProperties.h >> --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >> +++ b/plugin/icedteanp/IcedTeaParseProperties.h Thu Mar 21 17:40:23 2013 +0100 >> @@ -0,0 +1,53 @@ >> +/* IcedTeaPluginUtils.h >> + >> + Copyright (C) 2013 Red Hat >> + >> +This file is part of IcedTea. >> + >> +IcedTea is free software; you can redistribute it and/or modify >> +it under the terms of the GNU General Public License as published by >> +the Free Software Foundation; either version 2, or (at your option) >> +any later version. >> + >> +IcedTea is distributed in the hope that it will be useful, but >> +WITHOUT ANY WARRANTY; without even the implied warranty of >> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> +General Public License for more details. >> + >> +You should have received a copy of the GNU General Public License >> +along with IcedTea; see the file COPYING. If not, write to the >> +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA >> +02110-1301 USA. >> + >> +Linking this library statically or dynamically with other modules is >> +making a combined work based on this library. Thus, the terms and >> +conditions of the GNU General Public License cover the whole >> +combination. >> + >> +As a special exception, the copyright holders of this library give you >> +permission to link this library with independent modules to produce an >> +executable, regardless of the license terms of these independent >> +modules, and to copy and distribute the resulting executable under >> +terms of your choice, provided that you also meet, for each linked >> +independent module, the terms and conditions of the license of that >> +module. An independent module is a module which is not derived from >> +or based on this library. If you modify this library, you may extend >> +this exception to your version of the library, but you are not >> +obligated to do so. If you do not wish to do so, delete this >> +exception statement from your version. */ >> + >> +/** >> + * Utility classes for parsing values from properties files >> + */ >> +#include >> + >> + >> +//public api >> +std::string user_properties_file(); >> +bool find_system_config_file(std::string& dest); >> +bool find_custom_jre(std::string& dest); >> +bool read_deploy_property_value(std::string property, std::string& dest); >> +//half public api >> +const std::string default_file_name = "deployment.properties"; > > It is ill-advisable to have a global constant called 'default_file_name' (remember what I said about > C/++ having just one global namespace) > >> +const std::string custom_jre_key = "deployment.jre.dir"; >> +//end of public api >> diff -r 76930f38dddf tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc >> --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >> +++ b/tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc Thu Mar 21 17:40:23 2013 +0100 >> @@ -0,0 +1,552 @@ >> +/* Copyright (C) 2012 Red Hat >> + >> + This file is part of IcedTea. >> + >> + IcedTea is free software; you can redistribute it and/or modify >> + it under the terms of the GNU General Public License as published by >> + the Free Software Foundation; either version 2, or (at your option) >> + any later version. >> + >> + IcedTea is distributed in the hope that it will be useful, but >> + WITHOUT ANY WARRANTY; without even the implied warranty of >> + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> + General Public License for more details. >> + >> + You should have received a copy of the GNU General Public License >> + along with IcedTea; see the file COPYING. If not, write to the >> + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA >> + 02110-1301 USA. >> + >> + Linking this library statically or dynamically with other modules is >> + making a combined work based on this library. Thus, the terms and >> + conditions of the GNU General Public License cover the whole >> + combination. >> + >> + As a special exception, the copyright holders of this library give you >> + permission to link this library with independent modules to produce an >> + executable, regardless of the license terms of these independent >> + modules, and to copy and distribute the resulting executable under >> + terms of your choice, provided that you also meet, for each linked >> + independent module, the terms and conditions of the license of that >> + module. An independent module is a module which is not derived from >> + or based on this library. If you modify this library, you may extend >> + this exception to your version of the library, but you are not >> + obligated to do so. If you do not wish to do so, delete this >> + exception statement from your version. */ >> + >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include >> +#include "IcedTeaParseProperties.h" >> + >> +using namespace std; >> + >> +//not exposed via IcedTeaParseProperties but needed >> +extern void trim(string& str); >> +extern void remove_all_spaces(string& str); >> +extern bool get_property_value(string c, string& dest); >> +extern bool starts_with(string c1, string c2); >> +extern bool file_exists(string filename); >> +extern string user_properties_file(); >> +extern string main_properties_file(); >> +extern string default_java_properties_file(); >> +//for passing three dummy files >> +bool find_system_config_file(string main_file, string custom_jre_file, bool usecustom_jre, string >> default_java_file, string& dest); >> +bool find_property(string filename, string property, string& dest); >> +//for passing two dummy files >> +bool read_deploy_property_value(string user_file, string system_file, bool usesystem_file, >> string property, string& dest); >> +//for passing two dummy files >> +bool find_custom_jre(string user_file, string main_file,string& dest); >> +//end of non-public IcedTeaParseProperties api >> + >> +/* Creates a temporary file with the specified contents */ >> +static string temporary_file(const string& contents) { >> + string path = tmpnam(NULL); /* POSIX function, fine for test suite */ >> + ofstream myfile; >> + myfile.open (path.c_str()); >> + myfile << contents; >> + myfile.close(); >> + return path; >> +} > > [nit] You actually replaced my suggestion with a version that uses a deprecated class :-) > Yah, sorry, your was not working :(( >> + >> + >> + >> +/*private api fundamental tests*/ >> + >> +TEST(trim) { >> + string toBeTrimmed = string(" testX "); >> + trim (toBeTrimmed); >> + CHECK_EQUAL("testX", toBeTrimmed); >> + >> + string toBeTrimmed2 = string(" \t testX\n"); >> + trim (toBeTrimmed2); >> + CHECK_EQUAL("testX", toBeTrimmed2); >> + >> + string toBeTrimmed3 = string(" \t \n te \n stX\n"); >> + trim (toBeTrimmed3); >> + CHECK_EQUAL("te \n stX", toBeTrimmed3); >> +} >> + >> +TEST(RemoveAllSpaces) { >> + string toBeTrimmed = string(" te st X "); >> + remove_all_spaces (toBeTrimmed); >> + CHECK_EQUAL("testX", toBeTrimmed); >> + >> + string toBeTrimmed1 = string(" te st X "); >> + remove_all_spaces (toBeTrimmed1); >> + CHECK_EQUAL("testX", toBeTrimmed1); >> + >> + string toBeTrimmed2 = string(" \t t e\nst\tX\n"); >> + remove_all_spaces (toBeTrimmed2); >> + CHECK_EQUAL("testX", toBeTrimmed2); >> + >> + string toBeTrimmed3 = string(" \t \n te \n stX\n"); >> + remove_all_spaces (toBeTrimmed3); >> + CHECK_EQUAL("testX", toBeTrimmed3); >> + >> +} >> + >> + >> +TEST(get_property_value) { >> + string dest = string(""); >> + bool a = get_property_value("key.key=value+eulav ",dest); >> + CHECK_EQUAL("value+eulav", dest); >> + CHECK_EQUAL(a, true); >> + >> + dest = string(""); >> + a = get_property_value("horrible key = value/value",dest); >> + CHECK_EQUAL("value/value", dest); >> + CHECK_EQUAL(a, true); >> + >> + dest = string(""); >> + a = get_property_value("better.key = but very horrible value ",dest); >> + CHECK_EQUAL("but very horrible value", dest); >> + CHECK_EQUAL(a, true); >> + >> + dest = string(""); >> + a = get_property_value("better.key but errornous value ",dest); >> + CHECK_EQUAL("", dest); >> + CHECK_EQUAL(a, false); >> +} >> + >> +TEST(starts_with) { >> + bool a = starts_with("aa bb cc","aa b"); >> + CHECK_EQUAL(a, true); >> + >> + a = starts_with("aa bb cc","aab"); >> + CHECK_EQUAL(a, false); >> +} >> + >> +TEST(file_exists) { >> + string f1 = temporary_file("dummy content"); >> + bool a = file_exists(f1); >> + CHECK_EQUAL(a, true); >> + >> + remove(f1.c_str()); >> + bool b = file_exists(f1); >> + CHECK_EQUAL(b, false); >> +} >> + >> + >> +TEST(user_properties_file) { >> + string f = user_properties_file(); >> + CHECK_EQUAL(f.find(".icedtea") >= 0, true); >> + CHECK_EQUAL(f.find(default_file_name) >= 0, true); >> +} >> + >> +TEST(main_properties_file) { >> + string f = main_properties_file(); >> + CHECK_EQUAL(f.find(default_file_name) >= 0, true); >> + CHECK_EQUAL(f.find(".java") >= 0, true); >> +} >> + >> +TEST(default_java_properties_file) { >> + string f = default_java_properties_file(); >> + CHECK_EQUAL(f.find(default_file_name) >= 0, true); >> + CHECK_EQUAL(f.find("lib") >= 0, true); >> +} >> + >> + >> +TEST(find_system_config_file) { >> + string f1 = temporary_file("key1=value1"); >> + string f2 = temporary_file("key2=value2"); >> + string f3 = temporary_file("key3=value3"); >> + string dest=string(""); >> + find_system_config_file(f1, f2, true, f3, dest); >> + CHECK_EQUAL(f1, dest); >> + dest=string(""); >> + find_system_config_file(f1, f2, false, f3, dest); >> + CHECK_EQUAL(f1, dest); >> + >> + remove(f1.c_str()); >> + dest=string(""); >> + find_system_config_file(f1, f2, true, f3, dest); >> + CHECK_EQUAL(f2, dest); >> + dest=string(""); >> + find_system_config_file(f1, f2, false, f3, dest); >> + CHECK_EQUAL(f3, dest); >> + >> + remove(f2.c_str()); >> + dest=string(""); >> + find_system_config_file(f1, f2, true, f3, dest); >> + CHECK_EQUAL("", dest); //forcing not existing f2 >> + dest=string(""); >> + find_system_config_file(f1, f2, false, f3, dest); >> + CHECK_EQUAL(f3, dest); >> + >> + remove(f3.c_str()); >> + dest=string(""); >> + find_system_config_file(f1, f2, true, f3, dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_system_config_file(f1, f2, true, f3, dest); >> + CHECK_EQUAL("", dest); >> +} >> + >> +TEST(find_property) { >> + string f1 = temporary_file("key1=value1"); >> + string dest=string(""); >> + find_property(f1, "key1", dest); >> + CHECK_EQUAL("value1", dest); >> + dest=string(""); >> + find_property(f1, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_property(f1, "value1", dest); >> + CHECK_EQUAL("", dest); >> + remove(f1.c_str()); >> + >> + string f2 = temporary_file("key2 =value2 key3=value3\n key5 = value5"); >> + dest=string(""); >> + find_property(f2, "key2", dest); >> + CHECK_EQUAL("value2 key3=value3", dest); >> + dest=string(""); >> + find_property(f2, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_property(f2, "key3", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_property(f2, "key5", dest); >> + CHECK_EQUAL("value5", dest); >> + remove(f2.c_str()); >> + >> + string f3 = temporary_file("ke.y3= value3\nkey4=value4"); >> + dest=string(""); >> + find_property(f3, "ke.y3", dest); >> + CHECK_EQUAL("value3", dest); >> + dest=string(""); >> + find_property(f3, "key4", dest); >> + CHECK_EQUAL("value4", dest); >> + remove(f3.c_str()); >> +} >> + >> +TEST(read_deploy_property_value1) { >> + string f1 = temporary_file("key1=value11"); >> + string f2 = temporary_file("key1=value12"); >> + string f3 = temporary_file("key2=value23"); >> + string dest=string(""); >> + read_deploy_property_value(f1,f2,true, "key1", dest); >> + CHECK_EQUAL("value11", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,true, "key1", dest); >> + CHECK_EQUAL("value11", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,true, "key1", dest); >> + CHECK_EQUAL("value11", dest); >> + read_deploy_property_value(f3,f2,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + >> + dest=string(""); >> + read_deploy_property_value(f1,f2,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,true, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,true, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + read_deploy_property_value(f3,f2,true, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,true, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + >> + remove(f1.c_str());///////////////////////////////// >> + dest=string(""); >> + read_deploy_property_value(f1,f2,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,true, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,true, "key1", dest); >> + CHECK_EQUAL("", dest); >> + read_deploy_property_value(f3,f2,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + >> + dest=string(""); >> + read_deploy_property_value(f1,f2,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,true, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,true, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + read_deploy_property_value(f3,f2,true, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,true, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + >> + remove(f3.c_str());///////////////////////////////// >> + dest=string(""); >> + read_deploy_property_value(f1,f2,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,true, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,true, "key1", dest); >> + CHECK_EQUAL("", dest); >> + read_deploy_property_value(f3,f2,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,true, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + >> + dest=string(""); >> + read_deploy_property_value(f1,f2,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + read_deploy_property_value(f3,f2,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,true, "key2", dest); >> + CHECK_EQUAL("", dest); >> + >> + remove(f2.c_str());///////////////////////////////// >> + >> +} >> + >> + >> + >> +TEST(read_deploy_property_value2) { >> + string f1 = temporary_file("key1=value11"); >> + string f2 = temporary_file("key1=value12"); >> + string f3 = temporary_file("key2=value23"); >> + string dest=string(""); >> + read_deploy_property_value(f1,f2,false, "key1", dest); >> + CHECK_EQUAL("value11", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,false, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,false, "key1", dest); >> + CHECK_EQUAL("value11", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + read_deploy_property_value(f3,f2,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,false, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + >> + dest=string(""); >> + read_deploy_property_value(f1,f2,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,false, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + read_deploy_property_value(f3,f2,false, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + >> + remove(f1.c_str());///////////////////////////////// >> + dest=string(""); >> + read_deploy_property_value(f1,f2,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,false, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + read_deploy_property_value(f3,f2,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,false, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + >> + dest=string(""); >> + read_deploy_property_value(f1,f2,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,false, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + read_deploy_property_value(f3,f2,false, "key2", dest); >> + CHECK_EQUAL("value23", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + >> + remove(f3.c_str());///////////////////////////////// >> + dest=string(""); >> + read_deploy_property_value(f1,f2,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,false, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + read_deploy_property_value(f3,f2,false, "key1", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,false, "key1", dest); >> + CHECK_EQUAL("value12", dest); >> + >> + dest=string(""); >> + read_deploy_property_value(f1,f2,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f1,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f1,f3,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f3,f1,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + read_deploy_property_value(f3,f2,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + read_deploy_property_value(f2,f3,false, "key2", dest); >> + CHECK_EQUAL("", dest); >> + >> + remove(f2.c_str());///////////////////////////////// >> +} >> + >> + >> +TEST(find_custom_jre) { >> + string f1 = temporary_file(custom_jre_key+"=value11"); >> + string f2 = temporary_file(custom_jre_key+"=value12"); >> + string f3 = temporary_file("key2=value23"); >> + string f4 = temporary_file("key2=value24"); >> + string dest=string(""); >> + find_custom_jre(f1,f2, dest); >> + CHECK_EQUAL("value11", dest); >> + dest=string(""); >> + find_custom_jre(f2,f1, dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + find_custom_jre(f1,f3, dest); >> + CHECK_EQUAL("value11", dest); >> + dest=string(""); >> + find_custom_jre(f3,f1, dest); >> + CHECK_EQUAL("value11", dest); >> + dest=string(""); >> + find_custom_jre(f3,f4, dest); >> + CHECK_EQUAL("", dest); >> + remove(f1.c_str());///////////////////////////////// >> + dest=string(""); >> + find_custom_jre(f1,f2, dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + find_custom_jre(f2,f1, dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + find_custom_jre(f1,f3, dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_custom_jre(f3,f1, dest); >> + CHECK_EQUAL("", dest); >> + remove(f3.c_str());///////////////////////////////// >> + dest=string(""); >> + find_custom_jre(f1,f2, dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + find_custom_jre(f2,f1, dest); >> + CHECK_EQUAL("value12", dest); >> + dest=string(""); >> + find_custom_jre(f1,f3, dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_custom_jre(f3,f1, dest); >> + CHECK_EQUAL("", dest); >> + remove(f2.c_str());///////////////////////////////// >> + dest=string(""); >> + find_custom_jre(f1,f2, dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_custom_jre(f2,f1, dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_custom_jre(f1,f3, dest); >> + CHECK_EQUAL("", dest); >> + dest=string(""); >> + find_custom_jre(f3,f1, dest); >> + CHECK_EQUAL("", dest); >> + remove(f4.c_str());///////////////////////////////// >> + >> +} > [nit] string s = "something"; is valid, string s = string("something"); is not necessary. > > OK. I'll admit I just mostly trusted you for the tests. Thanks for testing it so thoroughly! > I like to use artificial {} blocks to separate the different test cases within a single function, > that way you can reuse the same variable names. > See for example PluginParametersTest. Anyway, I'll understand if you don't want to go back and > change it. > > I may have missed it -- does this add any functional to ITW yet ? Not yet. It will be completely separated changeset. Using this code :) > > Anyway, looks overall OK. I'd like to see another round, my main concerns are 'default_file_name' > being a global ambiguous constant, and 'trim' being available as a general (tested! :-) utility > function. Yup - done - with most of the nits except deprecated streams. > > Very happy that you gave C++ a chance :-) /me thnax for mentoring! -------------- next part -------------- A non-text attachment was scrubbed... Name: integratedAndTestedPArseproperties_2.patch Type: text/x-patch Size: 30797 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130321/9a6202ea/integratedAndTestedPArseproperties_2.patch From adomurad at redhat.com Thu Mar 21 13:08:18 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 21 Mar 2013 16:08:18 -0400 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <514B4C13.4070105@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> <5149C578.5090004@redhat.com> <5149CB84.1090501@redhat.com> <514B3833.6060604@redhat.com> <514B3E9E.4000600@redhat.com> <514B4C13.4070105@redhat.com> Message-ID: <514B68B2.3040004@redhat.com> >>> +static string temporary_file(const string& contents) { >>> + string path = tmpnam(NULL); /* POSIX function, fine for test >>> suite */ >>> + ofstream myfile; >>> + myfile.open (path.c_str()); >>> + myfile << contents; >>> + myfile.close(); >>> + return path; >>> +} >> >> [nit] You actually replaced my suggestion with a version that uses a >> deprecated class :-) >> > > Yah, sorry, your was not working :(( Probably because I wrote it in the body of the email (and not because of fstream), but it's no big deal. [..snip..] >> OK. I'll admit I just mostly trusted you for the tests. Thanks for >> testing it so thoroughly! >> I like to use artificial {} blocks to separate the different test >> cases within a single function, >> that way you can reuse the same variable names. >> See for example PluginParametersTest. Anyway, I'll understand if you >> don't want to go back and >> change it. >> >> I may have missed it -- does this add any functional to ITW yet ? > > Not yet. It will be completely separated changeset. > Using this code :) >> >> Anyway, looks overall OK. I'd like to see another round, my main >> concerns are 'default_file_name' >> being a global ambiguous constant, and 'trim' being available as a >> general (tested! :-) utility >> function. > > Yup - done - with most of the nits except deprecated streams. >> >> Very happy that you gave C++ a chance :-) > /me thnax for mentoring! Looks good, just one thing -- all the other string utilities are static functions in the class IcedTeaPluginUtilities. I'd prefer strongly if this was consistent (even if a bit more wordy). When a person looks for such a utility function, they may miss it otherwise. Thanks. -Adam > > From ptisnovs at icedtea.classpath.org Fri Mar 22 02:11:33 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 22 Mar 2013 09:11:33 +0000 Subject: /hg/rhino-tests: Three new tests added into ScriptContextClassTest: Message-ID: changeset 9129b777f336 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=9129b777f336 author: Pavel Tisnovsky date: Fri Mar 22 10:14:42 2013 +0100 Three new tests added into ScriptContextClassTest: getMethod(), getDeclaredMethod() and getField(). diffstat: ChangeLog | 6 + src/org/RhinoTests/ScriptContextClassTest.java | 147 +++++++++++++++++++++++++ 2 files changed, 153 insertions(+), 0 deletions(-) diffs (177 lines): diff -r 4e0ddaf30a61 -r 9129b777f336 ChangeLog --- a/ChangeLog Thu Mar 21 10:51:55 2013 +0100 +++ b/ChangeLog Fri Mar 22 10:14:42 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-22 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptContextClassTest.java: + Three new tests added into ScriptContextClassTest: + getMethod(), getDeclaredMethod() and getField(). + 2013-03-21 Pavel Tisnovsky * src/org/RhinoTests/ScriptContextClassTest.java: diff -r 4e0ddaf30a61 -r 9129b777f336 src/org/RhinoTests/ScriptContextClassTest.java --- a/src/org/RhinoTests/ScriptContextClassTest.java Thu Mar 21 10:51:55 2013 +0100 +++ b/src/org/RhinoTests/ScriptContextClassTest.java Fri Mar 22 10:14:42 2013 +0100 @@ -478,6 +478,37 @@ } /** + * Test for method javax.script.ScriptContext.getClass().getDeclaredField() + */ + protected void testGetDeclaredField() { + // following declared fields should exists + final String[] declaredFieldsThatShouldExist_jdk6 = { + "ENGINE_SCOPE", + "GLOBAL_SCOPE", + }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + "ENGINE_SCOPE", + "GLOBAL_SCOPE", + }; + + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + + // check if all required declared fields really exists + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + try { + Field field = this.scriptContextClass.getDeclaredField(declaredFieldThatShouldExists); + String fieldName = field.getName(); + assertTrue(fieldName.equals(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.ScriptContext.getClass().getMethods() */ protected void testGetMethods() { @@ -586,6 +617,122 @@ } /** + * Test for method javax.script.ScriptContext.getClass().getMethod() + */ + protected void testGetMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("setBindings", new Class[] {javax.script.Bindings.class, int.class}); + methodsThatShouldExist_jdk6.put("getBindings", new Class[] {int.class}); + methodsThatShouldExist_jdk6.put("getWriter", new Class[] {}); + methodsThatShouldExist_jdk6.put("setWriter", new Class[] {java.io.Writer.class}); + methodsThatShouldExist_jdk6.put("getReader", new Class[] {}); + methodsThatShouldExist_jdk6.put("setReader", new Class[] {java.io.Reader.class}); + methodsThatShouldExist_jdk6.put("getErrorWriter", new Class[] {}); + methodsThatShouldExist_jdk6.put("setErrorWriter", new Class[] {java.io.Writer.class}); + methodsThatShouldExist_jdk6.put("setAttribute", new Class[] {java.lang.String.class, java.lang.Object.class, int.class}); + methodsThatShouldExist_jdk6.put("getAttribute", new Class[] {java.lang.String.class, int.class}); + methodsThatShouldExist_jdk6.put("getAttribute", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk6.put("removeAttribute", new Class[] {java.lang.String.class, int.class}); + methodsThatShouldExist_jdk6.put("getAttributesScope", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk6.put("getScopes", new Class[] {}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("getErrorWriter", new Class[] {}); + methodsThatShouldExist_jdk7.put("getBindings", new Class[] {int.class}); + methodsThatShouldExist_jdk7.put("getReader", new Class[] {}); + methodsThatShouldExist_jdk7.put("getWriter", new Class[] {}); + methodsThatShouldExist_jdk7.put("setBindings", new Class[] {javax.script.Bindings.class, int.class}); + methodsThatShouldExist_jdk7.put("setErrorWriter", new Class[] {java.io.Writer.class}); + methodsThatShouldExist_jdk7.put("setReader", new Class[] {java.io.Reader.class}); + methodsThatShouldExist_jdk7.put("setWriter", new Class[] {java.io.Writer.class}); + methodsThatShouldExist_jdk7.put("getAttribute", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk7.put("getAttribute", new Class[] {java.lang.String.class, int.class}); + methodsThatShouldExist_jdk7.put("getAttributesScope", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk7.put("getScopes", new Class[] {}); + methodsThatShouldExist_jdk7.put("removeAttribute", new Class[] {java.lang.String.class, int.class}); + methodsThatShouldExist_jdk7.put("setAttribute", new Class[] {java.lang.String.class, java.lang.Object.class, int.class}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.scriptContextClass.getMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** + * Test for method javax.script.ScriptContext.getClass().getDeclaredMethod() + */ + protected void testGetDeclaredMethod() { + // following methods should exist + Map methodsThatShouldExist_jdk6 = new TreeMap(); + methodsThatShouldExist_jdk6.put("setBindings", new Class[] {javax.script.Bindings.class, int.class}); + methodsThatShouldExist_jdk6.put("getBindings", new Class[] {int.class}); + methodsThatShouldExist_jdk6.put("getWriter", new Class[] {}); + methodsThatShouldExist_jdk6.put("setWriter", new Class[] {java.io.Writer.class}); + methodsThatShouldExist_jdk6.put("getReader", new Class[] {}); + methodsThatShouldExist_jdk6.put("setReader", new Class[] {java.io.Reader.class}); + methodsThatShouldExist_jdk6.put("getErrorWriter", new Class[] {}); + methodsThatShouldExist_jdk6.put("setErrorWriter", new Class[] {java.io.Writer.class}); + methodsThatShouldExist_jdk6.put("setAttribute", new Class[] {java.lang.String.class, java.lang.Object.class, int.class}); + methodsThatShouldExist_jdk6.put("getAttribute", new Class[] {java.lang.String.class, int.class}); + methodsThatShouldExist_jdk6.put("getAttribute", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk6.put("removeAttribute", new Class[] {java.lang.String.class, int.class}); + methodsThatShouldExist_jdk6.put("getAttributesScope", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk6.put("getScopes", new Class[] {}); + + Map methodsThatShouldExist_jdk7 = new TreeMap(); + methodsThatShouldExist_jdk7.put("getErrorWriter", new Class[] {}); + methodsThatShouldExist_jdk7.put("getBindings", new Class[] {int.class}); + methodsThatShouldExist_jdk7.put("getReader", new Class[] {}); + methodsThatShouldExist_jdk7.put("getWriter", new Class[] {}); + methodsThatShouldExist_jdk7.put("setBindings", new Class[] {javax.script.Bindings.class, int.class}); + methodsThatShouldExist_jdk7.put("setErrorWriter", new Class[] {java.io.Writer.class}); + methodsThatShouldExist_jdk7.put("setReader", new Class[] {java.io.Reader.class}); + methodsThatShouldExist_jdk7.put("setWriter", new Class[] {java.io.Writer.class}); + methodsThatShouldExist_jdk7.put("getAttribute", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk7.put("getAttribute", new Class[] {java.lang.String.class, int.class}); + methodsThatShouldExist_jdk7.put("getAttributesScope", new Class[] {java.lang.String.class}); + methodsThatShouldExist_jdk7.put("getScopes", new Class[] {}); + methodsThatShouldExist_jdk7.put("removeAttribute", new Class[] {java.lang.String.class, int.class}); + methodsThatShouldExist_jdk7.put("setAttribute", new Class[] {java.lang.String.class, java.lang.Object.class, int.class}); + + Map methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; + + // check if all required methods really exist + for (Map.Entry methodThatShouldExists : methodsThatShouldExist.entrySet()) { + try { + Method method = this.scriptContextClass.getDeclaredMethod(methodThatShouldExists.getKey(), methodThatShouldExists.getValue()); + assertNotNull(method, + "method " + methodThatShouldExists.getKey() + " not found"); + String methodName = method.getName(); + assertNotNull(methodName, + "method " + methodThatShouldExists.getKey() + " does not have name assigned"); + assertTrue(methodName.equals(methodThatShouldExists.getKey()), + "method " + methodThatShouldExists.getKey() + " not found"); + } + catch (Exception e) { + e.printStackTrace(); + throw new AssertionError(e.getMessage()); + } + } + } + + /** * Test for method javax.script.ScriptContext.getClass().getAnnotations() */ protected void testGetAnnotations() { From ptisnovs at icedtea.classpath.org Fri Mar 22 03:05:31 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 22 Mar 2013 10:05:31 +0000 Subject: /hg/gfx-test: Added ten new tests to the test suite ClippingCirc... Message-ID: changeset e616a59dd4bd in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=e616a59dd4bd author: Pavel Tisnovsky date: Fri Mar 22 11:08:41 2013 +0100 Added ten new tests to the test suite ClippingCircleByConcavePolygonalShape. diffstat: ChangeLog | 7 + src/org/gfxtest/framework/CommonRenderingStyles.java | 28 + src/org/gfxtest/testsuites/ClippingCircleByConcavePolygonalShape.java | 232 +++++++++- 3 files changed, 266 insertions(+), 1 deletions(-) diffs (308 lines): diff -r 331484abba8d -r e616a59dd4bd ChangeLog --- a/ChangeLog Thu Mar 21 11:03:21 2013 +0100 +++ b/ChangeLog Fri Mar 22 11:08:41 2013 +0100 @@ -1,3 +1,10 @@ +2013-03-22 Pavel Tisnovsky + + * src/org/gfxtest/framework/CommonRenderingStyles.java: + Added new static method used by some test cases. + * src/org/gfxtest/testsuites/ClippingCircleByConcavePolygonalShape.java: + Added ten new tests to this test suite. + 2013-03-21 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java: diff -r 331484abba8d -r e616a59dd4bd src/org/gfxtest/framework/CommonRenderingStyles.java --- a/src/org/gfxtest/framework/CommonRenderingStyles.java Thu Mar 21 11:03:21 2013 +0100 +++ b/src/org/gfxtest/framework/CommonRenderingStyles.java Fri Mar 22 11:08:41 2013 +0100 @@ -224,6 +224,34 @@ } /** + * Set transparent magenta color. + * + * @param graphics + * graphics context for image + * @param transparency + * color transparency represented in percents (0..100) + */ + public static void setTransparentFillMagentaColor(Graphics2D graphics, int transparency) + { + float value = transparencyToBounds(transparency / 100.0f); + graphics.setPaint(new Color(1.0f, 0.0f, 1.0f, value)); + } + + /** + * Set transparent cyan color. + * + * @param graphics + * graphics context for image + * @param transparency + * color transparency represented in percents (0..100) + */ + public static void setTransparentFillCyanColor(Graphics2D graphics, int transparency) + { + float value = transparencyToBounds(transparency / 100.0f); + graphics.setPaint(new Color(0.0f, 1.0f, 1.0f, value)); + } + + /** * Set horizontal gradient fill for given graphics context. * * @param image diff -r 331484abba8d -r e616a59dd4bd src/org/gfxtest/testsuites/ClippingCircleByConcavePolygonalShape.java --- a/src/org/gfxtest/testsuites/ClippingCircleByConcavePolygonalShape.java Thu Mar 21 11:03:21 2013 +0100 +++ b/src/org/gfxtest/testsuites/ClippingCircleByConcavePolygonalShape.java Fri Mar 22 11:08:41 2013 +0100 @@ -1,7 +1,7 @@ /* Java gfx-test framework - Copyright (C) 2010, 2011, 2012 Red Hat + Copyright (C) 2010, 2011, 2012, 2013 Red Hat This file is part of IcedTea. @@ -194,6 +194,56 @@ } /** + * Draw circle clipped by a concave polygonal shape. Circle is drawn using alpha + * paint with magenta color and selected transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @param transparency + * selected transparency (0..100 percent) + */ + private void drawCircleClippedByPolygonalShapeAlphaPaintMagenta(TestImage image, Graphics2D graphics2d, int transparency) + { + // render clip polygon + CommonClippingOperations.renderConcaveClipPolygon(image, graphics2d); + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTransparentFillMagentaColor(graphics2d, transparency); + // create clip area + CommonClippingOperations.createClipUsingConcavePolygonalShape(image, graphics2d); + // fill the shape + CommonShapesRenderer.drawFilledCircle(image, graphics2d); + } + + /** + * Draw circle clipped by a concave polygonal shape. Circle is drawn using alpha + * paint with cyan color and selected transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @param transparency + * selected transparency (0..100 percent) + */ + private void drawCircleClippedByPolygonalShapeAlphaPaintCyan(TestImage image, Graphics2D graphics2d, int transparency) + { + // render clip polygon + CommonClippingOperations.renderConcaveClipPolygon(image, graphics2d); + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTransparentFillCyanColor(graphics2d, transparency); + // create clip area + CommonClippingOperations.createClipUsingConcavePolygonalShape(image, graphics2d); + // fill the shape + CommonShapesRenderer.drawFilledCircle(image, graphics2d); + } + + /** * Check if circle shape could be clipped by a concave polygonal shape. Circle is * rendered using stroke paint. * @@ -575,6 +625,186 @@ /** * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with magenta color at 0% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintMagenta000(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 0% transparency + drawCircleClippedByPolygonalShapeAlphaPaintMagenta(image, graphics2d, 0); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with magenta color at 25% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintMagenta025(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 25% transparency + drawCircleClippedByPolygonalShapeAlphaPaintMagenta(image, graphics2d, 25); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with magenta color at 50% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintMagenta050(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 50% transparency + drawCircleClippedByPolygonalShapeAlphaPaintMagenta(image, graphics2d, 50); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with magenta color at 75% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintMagenta075(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 75% transparency + drawCircleClippedByPolygonalShapeAlphaPaintMagenta(image, graphics2d, 75); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with magenta color at 100% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintMagenta100(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 100% transparency + drawCircleClippedByPolygonalShapeAlphaPaintMagenta(image, graphics2d, 100); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with cyan color at 0% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintCyan000(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 0% transparency + drawCircleClippedByPolygonalShapeAlphaPaintCyan(image, graphics2d, 0); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with cyan color at 25% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintCyan025(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 25% transparency + drawCircleClippedByPolygonalShapeAlphaPaintCyan(image, graphics2d, 25); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with cyan color at 50% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintCyan050(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 50% transparency + drawCircleClippedByPolygonalShapeAlphaPaintCyan(image, graphics2d, 50); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with cyan color at 75% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintCyan075(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 75% transparency + drawCircleClippedByPolygonalShapeAlphaPaintCyan(image, graphics2d, 75); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is + * rendered using alpha paint with cyan color at 100% transparency. + * + * @param image + * work image + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testClipCircleByPolygonalShapeAlphaPaintCyan100(TestImage image, Graphics2D graphics2d) + { + // draw circle clipped by concave polygonal shape using alpha paint with 100% transparency + drawCircleClippedByPolygonalShapeAlphaPaintCyan(image, graphics2d, 100); + // test result + return TestResult.PASSED; + } + + /** + * Check if circle shape could be clipped by a concave polygonal shape. Circle is * rendered using horizontal gradient paint. * * @param image From jvanek at redhat.com Fri Mar 22 03:24:40 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 22 Mar 2013 11:24:40 +0100 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <514B68B2.3040004@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> <5149C578.5090004@redhat.com> <5149CB84.1090501@redhat.com> <514B3833.6060604@redhat.com> <514B3E9E.4000600@redhat.com> <514B4C13.4070105@redhat.com> <514B68B2.3040004@redhat.com> Message-ID: <514C3168.3070307@redhat.com> On 03/21/2013 09:08 PM, Adam Domurad wrote: >>>> +static string temporary_file(const string& contents) { >>>> + string path = tmpnam(NULL); /* POSIX function, fine for test >>>> suite */ >>>> + ofstream myfile; >>>> + myfile.open (path.c_str()); >>>> + myfile << contents; >>>> + myfile.close(); >>>> + return path; >>>> +} >>> >>> [nit] You actually replaced my suggestion with a version that uses a >>> deprecated class :-) >>> >> >> Yah, sorry, your was not working :(( > > Probably because I wrote it in the body of the email (and not because of fstream), but it's no big > deal. Sure - there was clear disclaimer :) And thanx for the code, it spare me of searching how to create tmp file :) > > [..snip..] > >>> OK. I'll admit I just mostly trusted you for the tests. Thanks for >>> testing it so thoroughly! >>> I like to use artificial {} blocks to separate the different test >>> cases within a single function, >>> that way you can reuse the same variable names. >>> See for example PluginParametersTest. Anyway, I'll understand if you >>> don't want to go back and >>> change it. >>> >>> I may have missed it -- does this add any functional to ITW yet ? >> >> Not yet. It will be completely separated changeset. >> Using this code :) >>> >>> Anyway, looks overall OK. I'd like to see another round, my main >>> concerns are 'default_file_name' >>> being a global ambiguous constant, and 'trim' being available as a >>> general (tested! :-) utility >>> function. >> >> Yup - done - with most of the nits except deprecated streams. >>> >>> Very happy that you gave C++ a chance :-) >> /me thnax for mentoring! > > Looks good, just one thing -- all the other string utilities are static functions in the class > IcedTeaPluginUtilities. I'd prefer strongly if this was consistent (even if a bit more wordy). When > a person looks for such a utility function, they may miss it otherwise. Sure, sorry for for overlooking it in previous round:( J. -------------- next part -------------- A non-text attachment was scrubbed... Name: integratedAndTestedPArseproperties_3.patch Type: text/x-patch Size: 31086 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130322/6524d714/integratedAndTestedPArseproperties_3.patch From bugzilla-daemon at icedtea.classpath.org Fri Mar 22 05:20:19 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 22 Mar 2013 12:20:19 +0000 Subject: [Bug 1353] New: Using FastQC program this error appeared Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1353 Bug ID: 1353 Summary: Using FastQC program this error appeared Classification: Unclassified Product: VisualVM Harness Version: unspecified Hardware: x86 OS: Windows Status: NEW Severity: normal Priority: P3 Component: VisualVM Assignee: unassigned at icedtea.classpath.org Reporter: mokita_braga at hotmail.com line: $ fastqc -t 500 sequence.fastq Started analysis of sequence.fastq It started and went until 100%, but in the end while generating a zip file this happened: [thread 140382687459072 also had an error] # [thread 140382688511744 also had an error] # A fatal error has been detected by the Java Runtime Environment: # # [thread 140382686406400 also had an error] SIGSEGV (0xb) at pc=0x00007fcc14850fb2, pid=8459, tid=140382689564416 # # JRE version: 6.0_24-b24 # Java VM: OpenJDK 64-Bit Server VM (20.0-b12 mixed mode linux-amd64 ) # Derivative: IcedTea6 1.11.5 # Distribution: CentOS release 6.3 (Final), package rhel-1.50.1.11.5.el6_3-x86_64 # Problematic frame: # V [libjvm.so+0x311fb2] ftell+0x311fb2 # # An error report file with more information is saved as: # /tmp/hs_err_pid8459.log # # If you would like to submit a bug report, please include # instructions how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # -- You are receiving this mail because: You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130322/29a840c4/attachment.html From jvanek at redhat.com Fri Mar 22 05:47:28 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 22 Mar 2013 13:47:28 +0100 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <514A12A9.1020804@redhat.com> References: <51488B8A.9050904@redhat.com> <5148BA54.6020900@redhat.com> <5148BFBE.1010001@redhat.com> <514986BE.3050005@redhat.com> <514A12A9.1020804@redhat.com> Message-ID: <514C52E0.8080507@redhat.com> On 03/20/2013 08:48 PM, Adam Domurad wrote: > On 03/20/2013 05:51 AM, Jiri Vanek wrote: >> On 03/19/2013 08:42 PM, Adam Domurad wrote: >>> On 03/19/2013 03:19 PM, Jiri Vanek wrote: >>>> On 03/19/2013 05:00 PM, Adam Domurad wrote: >>>>> I think this is worthy because it would have saved me a lot of time investigating a recent bug. >>>>> This will continue as normal, but ClassFormatError's really should be logged. It will make >>>>> resulting ClassNotFoundException's less mysterious. >>>>> >>>>> 2013-19-03 Adam Domurad >>>>> >>>>> * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java >>>>> (findClass): Print stacktrace for ClassFormatError >>>>> >>>>> >>>> Hmm... why keep other ones silent? >>> >>> You mean PrivilegedActionException? It is worthy perhaps, shall I include it when I push ? >>> (NullJnlpFileException already stores the exception and rethrows, and CNFE represents a failure that >>> we fully expect when we fail to load a classs.) >>> >>>> Why do not rethrow? >>> >>> Well my logic was simply to be as lenient as possible, eg in case we ever pick something up that >>> isn't really a class. However rethrow sounds good to me too. If you prefer this I can do it (I do >>> not expect it to break anything, especially anything sanely organized). I looked at the history of >>> this catch and it is present in the initial commit, so no telling why it was added. >>> >>>> >> >> Yup :)) I like your points... But I'm not so sure that it will break anything.... >> I'm for rethrowing where possible, and be laud/log where we can not rethrow. >> But in this particular part of code it will need a lot of empiric tastings, or somebody with >> insight into classlaoders... Omair? (silently CCed O:) >> >> In case that we will no able to rethrow, isnt worthy to get rid of printstacktrace and to add >> standard logger? Just thing to think about.... > > What do you mean by standard logger ? > I'd like to push the printStackTrace for the time being (to this & PrivilegedActionException), > assuming you're suggesting some new feature. > >> >> >> J. >> > -Adam I think it would be worthy to have printStackTrace in all catches in block you are modifying. Feel free to skip where you think it is redundant (nowhere?) and push. J. From jvanek at icedtea.classpath.org Fri Mar 22 06:28:35 2013 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Fri, 22 Mar 2013 13:28:35 +0000 Subject: /hg/icedtea-web: UnsignedAppletActionStorageImpl: (isMatching) i... Message-ID: changeset 8a7fa31629d0 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=8a7fa31629d0 author: Jiri Vanek date: Fri Mar 22 14:27:12 2013 +0100 UnsignedAppletActionStorageImpl: (isMatching) is now ignring archives if empty. diffstat: ChangeLog | 7 +++ netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java | 6 ++- tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java | 22 +++++++++- 3 files changed, 33 insertions(+), 2 deletions(-) diffs (71 lines): diff -r dc7889501235 -r 8a7fa31629d0 ChangeLog --- a/ChangeLog Thu Mar 21 18:14:53 2013 +0100 +++ b/ChangeLog Fri Mar 22 14:27:12 2013 +0100 @@ -1,3 +1,10 @@ +2013-03-22 Jiri Vanek + + * netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java: + (isMatching) is now ignring archives if empty. + * tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java: + tests adapted and enriched for new archives processing. + 2013-03-21 Jiri Vanek Launchers made aware of custom set JRE diff -r dc7889501235 -r 8a7fa31629d0 netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java Thu Mar 21 18:14:53 2013 +0100 +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java Fri Mar 22 14:27:12 2013 +0100 @@ -180,7 +180,11 @@ result = result && codeBase.matches(unsignedAppletActionEntry.getCodeBase().getRegEx()); } if (archives != null) { - result = result && compareArchives(archives, unsignedAppletActionEntry.getArchives()); + List saved = unsignedAppletActionEntry.getArchives(); + if (saved == null || saved.isEmpty()) { + return result; + } + result = result && compareArchives(archives, saved); } return result; } diff -r dc7889501235 -r 8a7fa31629d0 tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java --- a/tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java Thu Mar 21 18:14:53 2013 +0100 +++ b/tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java Fri Mar 22 14:27:12 2013 +0100 @@ -42,6 +42,7 @@ import java.io.IOException; import java.util.Arrays; import net.sourceforge.jnlp.ServerAccess; +import org.junit.AfterClass; import org.junit.Assert; import org.junit.BeforeClass; import org.junit.Test; @@ -61,9 +62,28 @@ f4 = File.createTempFile("itwMatching", "testFile4"); ServerAccess.saveFile("A 123456 .* .* jar1,jar2", f1); ServerAccess.saveFile("A 123456 .* \\Qbla\\E jar1,jar2", f2); + ServerAccess.saveFile("" + + "A 1 \\Qhttp://jmol.sourceforge.net/demo/atoms/\\E \\Qhttp://jmol.sourceforge.net/jmol/\\E JmolApplet0.jar\n" + + "A 1363278653454 \\Qhttp://www.walter-fendt.de/ph14e\\E.* \\Qhttp://www.walter-fendt.de\\E.*\n" + + "n 1363281783104 \\Qhttp://www.walter-fendt.de/ph14e/inclplane.htm\\E \\Qhttp://www.walter-fendt.de/ph14_jar/\\E Ph14English.jar,SchiefeEbene.jar" + + "", f3); } - @Test + @AfterClass + public static void removeTestFiles() throws IOException { + f1.delete(); + f2.delete(); + f3.delete(); + } + + + @Test + public void wildcards1() { + UnsignedAppletActionStorageImpl i1 = new UnsignedAppletActionStorageImpl(f3); + UnsignedAppletActionEntry r1 = i1.getMatchingItem("http://www.walter-fendt.de/ph14e/inclplane.htm", "http://www.walter-fendt.de/ph14_jar/", Arrays.asList(new String[]{"Ph14English.jar","SchiefeEbene.jar"})); + System.out.println(r1.toString()); + } + @Test public void allMatchingDocAndCode() { UnsignedAppletActionStorageImpl i1 = new UnsignedAppletActionStorageImpl(f1); UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", Arrays.asList(new String[]{"jar1", "jar2"})); From jvanek at redhat.com Fri Mar 22 06:42:50 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 22 Mar 2013 14:42:50 +0100 Subject: [RFC][icedtea-web] Fix NumberFormatException in PluginParameters In-Reply-To: <514892C9.6010305@redhat.com> References: <1362851464.1220.5.camel@localhost.localdomain> <513F0A27.3090803@redhat.com> <514892C9.6010305@redhat.com> Message-ID: <514C5FDA.8050402@redhat.com> On 03/19/2013 05:31 PM, Adam Domurad wrote: > On 03/12/2013 06:57 AM, Jiri Vanek wrote: >> On 03/09/2013 06:51 PM, Thomas Meyer wrote: >>> Hi, >>> >>> Maybe introduced by changeset 741a105054af (Remove redundant HTML-tag >>> scanner from ITW. Do not reconstruct tags.) >>> >>> Handling message: GetJavaObject instance 3 Worker >>> #1/IsPriority=false/IsFree=false/Message=instance 3 reference -161 GetJavaObject >>> Exception in thread "NetXPanel initializer" java.lang.NumberFormatException: For input string: >>> "4294967295" >>> at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) >>> at java.lang.Integer.parseInt(Integer.java:495) >>> at java.lang.Integer.valueOf(Integer.java:582) >>> at net.sourceforge.jnlp.PluginParameters.getWidth(PluginParameters.java:154) >>> at sun.applet.PluginAppletPanelFactory$2.run(PluginAppletPanelFactory.java:104) >>> at java.lang.Thread.run(Thread.java:722) >>> >>> Proposed fix: >>> >>> diff -r e19fe33c82df plugin/icedteanp/java/sun/applet/PluginParameterParser.java >>> --- a/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Tue Mar 05 16:35:40 2013 -0500 >>> +++ b/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Sat Mar 09 18:50:17 2013 +0100 >>> @@ -1,6 +1,5 @@ >>> package sun.applet; >>> >>> -import java.util.Arrays; >>> import java.util.HashMap; >>> import java.util.Map; >>> >>> @@ -60,7 +59,12 @@ >>> } >>> >>> static boolean isInt(String s) { >>> - return s.matches("^-?\\d+$"); >>> + try{ >>> + Integer.parseInt(s); >>> + return true; >>> + } catch(NumberFormatException e) { >>> + return false; >>> + } >>> } >>> >>> /** >>> >>> >> >> Yes please. >> Althoug I do not like the exception-driven method, this appears much better then reinvite more >> spherical circle where (my) original approach had to lead after (just little bit) deeper >> investigations... >> >> J:( > > Thomas, shall Jiri or myself push this on your behalf? > > Thanks for the patch, > -Adam I think this should go in anyway. J. From thomas at m3y3r.de Fri Mar 22 06:59:58 2013 From: thomas at m3y3r.de (Thomas Meyer) Date: Fri, 22 Mar 2013 14:59:58 +0100 Subject: PluginAppletViewer.showDocument broken? In-Reply-To: <5141A1D3.8060803@redhat.com> References: <1362851464.1220.5.camel@localhost.localdomain> <513F0A27.3090803@redhat.com> <1363166293.1218.9.camel@localhost.localdomain> <51407AD3.2020409@redhat.com> <5141A1D3.8060803@redhat.com> Message-ID: <1363960798.11400.3.camel@localhost.localdomain> Am Donnerstag, den 14.03.2013, 11:09 +0100 schrieb Jiri Vanek: > Hi Thomas! Hello. Just to inform you and the google search engine what I found out: Using IcedTea-Web Plugin (using IcedTea-Web 1.3.1 (fedora-3.fc18-x86_64)): Firefox 18.0.2 works correctly - https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/18.0.2/linux-x86_64/de/firefox-18.0.2.tar.bz2 Firefox 19.0.2 fails to connect to the Juniper SSLVPN release [7.1.0] - build number [20169] build comment [R6] https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0.2/linux-x86_64/de/firefox-19.0.2.tar.bz2 So either firefox broke something or the juniper software with seems to use a lot of javascript foo, is not compatible with the new firefox version... kind regards thomas > I'm not able to reproduce this issue. > The new document opened both with "_top" directive and without. > > If you will be able to prepare some minimalistic reproducer it will be appreciated, otherwise maybe your browser can be broken? > Or some selinux policy? Or whatever can block new window. Browsers are becoming to dont like java so maybe browser update and not icedtea-web's one could break your app. > /me moreover just cooking from water > > > J. > > On 03/13/2013 02:10 PM, Adam Domurad wrote: > > On 03/13/2013 05:18 AM, Thomas Meyer wrote: > >> Hi, > >> > >> there seems to be another regression in the current tip. > >> > >> For remote log on to my employers site I use the the > >> SecureHCLauncherApplet. > >> > >> this applet has a the init() and start() method overwritten. > >> > >> the last thing that is executed in the start() method is a > >> PluginAppletViewer.showDocument(). > >> > >> stack trace is: > >> Thread [NetxPanelThread at https://employer.com/blabla] (Ausgesetzt) (nicht synchron) > >> PluginAppletViewer.showDocument(URL, String) Zeile: 921 (nicht synchron) > >> SecureHCLauncher.onFinishedLoadingWithAction(String) Zeile: 388 > >> SecureHCLauncher.onFinishedLoading() Zeile: 369 [lokale Variablen nicht verf?gbar] > >> SecureHCLauncher.doInstall() Zeile: 266 > >> SecureHCLauncher(SecureLauncherApplet).start() Zeile: 223 > >> SecureHCLauncher.start() Zeile: 205 > >> NetxPanel(AppletPanel).run() Zeile: 476 > >> Thread.run() Zeile: 722 > >> > >> The log also has this info: > >> WRITING 2: instance 9 reference 187 LoadURL https://successful-auth-site.com _top > >> PIPE: appletviewer wrote: instance 9 reference 187 LoadURL https://successful-auth-site.com _top > >> WRITING 2 DONE > >> PIPE: appletviewer read: instance 9 destroy > >> Waiting for data... > >> > >> The problem is, that the URL request to show in the current browser window ( == "_top") is never loaded/shown in the browser! > >> > >> This used to work for some months ago. I didn't try to login remotely for a while to this site... > >> > >> ideas are welcome! > >> > >> with kind regards > >> thomas > >> > > > > Hi! Taking it to distro-list. > > Have you tried with older versions of icedtea-web on the same website ? > > I will look into it. > > > > Thanks, > > -Adam > From thomas at m3y3r.de Fri Mar 22 07:02:16 2013 From: thomas at m3y3r.de (Thomas Meyer) Date: Fri, 22 Mar 2013 15:02:16 +0100 Subject: [RFC][icedtea-web] Fix NumberFormatException in PluginParameters In-Reply-To: <514892C9.6010305@redhat.com> References: <1362851464.1220.5.camel@localhost.localdomain> <513F0A27.3090803@redhat.com> <514892C9.6010305@redhat.com> Message-ID: <1363960936.11400.5.camel@localhost.localdomain> Am Dienstag, den 19.03.2013, 12:31 -0400 schrieb Adam Domurad: > On 03/12/2013 06:57 AM, Jiri Vanek wrote: > > On 03/09/2013 06:51 PM, Thomas Meyer wrote: > >> Hi, > >> > >> Maybe introduced by changeset 741a105054af (Remove redundant HTML-tag > >> scanner from ITW. Do not reconstruct tags.) > >> > >> Handling message: GetJavaObject instance 3 Worker > >> #1/IsPriority=false/IsFree=false/Message=instance 3 reference -161 > >> GetJavaObject > >> Exception in thread "NetXPanel initializer" > >> java.lang.NumberFormatException: For input string: "4294967295" > >> at > >> java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) > >> at java.lang.Integer.parseInt(Integer.java:495) > >> at java.lang.Integer.valueOf(Integer.java:582) > >> at > >> net.sourceforge.jnlp.PluginParameters.getWidth(PluginParameters.java:154) > >> at > >> sun.applet.PluginAppletPanelFactory$2.run(PluginAppletPanelFactory.java:104) > >> at java.lang.Thread.run(Thread.java:722) > >> > >> Proposed fix: > >> > >> diff -r e19fe33c82df > >> plugin/icedteanp/java/sun/applet/PluginParameterParser.java > >> --- a/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Tue > >> Mar 05 16:35:40 2013 -0500 > >> +++ b/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Sat > >> Mar 09 18:50:17 2013 +0100 > >> @@ -1,6 +1,5 @@ > >> package sun.applet; > >> > >> -import java.util.Arrays; > >> import java.util.HashMap; > >> import java.util.Map; > >> > >> @@ -60,7 +59,12 @@ > >> } > >> > >> static boolean isInt(String s) { > >> - return s.matches("^-?\\d+$"); > >> + try{ > >> + Integer.parseInt(s); > >> + return true; > >> + } catch(NumberFormatException e) { > >> + return false; > >> + } > >> } > >> > >> /** > >> > >> > > > > Yes please. > > Althoug I do not like the exception-driven method, this appears much > > better then reinvite more spherical circle where (my) original > > approach had to lead after (just little bit) deeper investigations... > > > > J:( > > Thomas, shall Jiri or myself push this on your behalf? Hi, yes feel free to commit this in trunk. kind regards thomas > > Thanks for the patch, > -Adam From adomurad at icedtea.classpath.org Fri Mar 22 07:12:28 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Fri, 22 Mar 2013 14:12:28 +0000 Subject: /hg/icedtea-web: Print stacktrace for ClassFormatError's during ... Message-ID: changeset 7543d0b4e502 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=7543d0b4e502 author: Adam Domurad date: Fri Mar 22 10:13:34 2013 -0400 Print stacktrace for ClassFormatError's during classloading diffstat: ChangeLog | 5 +++++ netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java | 1 + 2 files changed, 6 insertions(+), 0 deletions(-) diffs (23 lines): diff -r 8a7fa31629d0 -r 7543d0b4e502 ChangeLog --- a/ChangeLog Fri Mar 22 14:27:12 2013 +0100 +++ b/ChangeLog Fri Mar 22 10:13:34 2013 -0400 @@ -1,3 +1,8 @@ +2013-03-22 Adam Domurad + + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java + (findClass): Print stacktrace for ClassFormatError + 2013-03-22 Jiri Vanek * netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java: diff -r 8a7fa31629d0 -r 7543d0b4e502 netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java --- a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Fri Mar 22 14:27:12 2013 +0100 +++ b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Fri Mar 22 10:13:34 2013 -0400 @@ -1725,6 +1725,7 @@ } } catch (ClassNotFoundException ex) { } catch (ClassFormatError cfe) { + cfe.printStackTrace(); } catch (PrivilegedActionException pae) { } catch (NullJnlpFileException ex) { throw new ClassNotFoundException(this.mainClass + " in main classloader ", ex); From andrew at icedtea.classpath.org Fri Mar 22 07:18:55 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 22 Mar 2013 14:18:55 +0000 Subject: /hg/icedtea6: OPENJDK6-4: Backport the new version of copyMemory... Message-ID: changeset 02a65b9914d5 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=02a65b9914d5 author: Andrew John Hughes date: Fri Mar 22 14:18:47 2013 +0000 OPENJDK6-4: Backport the new version of copyMemory from OpenJDK 7 to allow Snappy to build Move jvmtiEnv patch to bundled HotSpot build only. diffstat: ChangeLog | 12 +++++++++++ Makefile.am | 7 +++-- NEWS | 4 ++- patches/copy_memory.patch | 36 +++++++++++++++++++++++++++++++++ patches/hotspot/original/jvmtiEnv.patch | 12 +++++++++++ patches/jvmtiEnv.patch | 12 ----------- 6 files changed, 67 insertions(+), 16 deletions(-) diffs (146 lines): diff -r 18b6e9eaf3e8 -r 02a65b9914d5 ChangeLog --- a/ChangeLog Mon Mar 18 21:34:40 2013 +0000 +++ b/ChangeLog Fri Mar 22 14:18:47 2013 +0000 @@ -1,3 +1,15 @@ +2013-03-22 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. Move + jvmtiEnv.patch to bundled HotSpot build only. + * NEWS: Update with new patch, add OpenJDK 6 + JIRA URLs. + * patches/copy_memory.patch: New patch to + add sun.misc.Unsafe.copyMemory method from 7. + * patches/jvmtiEnv.patch: Moved to... + * patches/hotspot/original/jvmtiEnv.patch: here. + 2013-03-18 Andrew John Hughes * Makefile.am: diff -r 18b6e9eaf3e8 -r 02a65b9914d5 Makefile.am --- a/Makefile.am Mon Mar 18 21:34:40 2013 +0000 +++ b/Makefile.am Fri Mar 22 14:18:47 2013 +0000 @@ -317,7 +317,6 @@ patches/headers.patch \ patches/gcc-suffix.patch \ patches/libraries.patch \ - patches/jvmtiEnv.patch \ patches/lcms.patch \ patches/uname.patch \ patches/freetypeversion.patch \ @@ -478,7 +477,8 @@ patches/openjdk/8004341-jck_dialog_failure.patch \ patches/pr1319-support_giflib_5.patch \ patches/openjdk/8007393.patch \ - patches/openjdk/8007611.patch + patches/openjdk/8007611.patch \ + patches/copy_memory.patch if WITH_ALT_HSBUILD ICEDTEA_PATCHES += \ @@ -527,7 +527,8 @@ patches/arm-debug.patch \ patches/openjdk/7010849-modernise_sa.patch \ patches/hotspot/original/7197906-handle_32_bit_shifts.patch \ - patches/hotspot/original/fix_get_stack_bounds_leak.patch + patches/hotspot/original/fix_get_stack_bounds_leak.patch \ + patches/hotspot/original/jvmtiEnv.patch endif if WITH_RHINO diff -r 18b6e9eaf3e8 -r 02a65b9914d5 NEWS --- a/NEWS Mon Mar 18 21:34:40 2013 +0000 +++ b/NEWS Fri Mar 22 14:18:47 2013 +0000 @@ -7,6 +7,7 @@ GX - http://bugs.gentoo.org/show_bug.cgi?id=X 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 CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY @@ -17,10 +18,11 @@ * Backports - S8009641: OpenJDK 6 build broken via 8007675 fix - S7197906: BlockOffsetArray::power_to_cards_back() needs to handle > 32 bit shifts (bundled HotSpot only) + - OJ3: Fix get_stack_bounds memory leak (alternate fix for S7197906, bundled HotSpot only) + - OJ4: Backport the new version of copyMemory from OpenJDK 7 to allow Snappy to build * Bug fixes - PR1318: Fix automatic enabling of the Zero build on non-JIT architectures which don't use CACAO or JamVM. - RH902004: very bad performance with E-Porto Add-In f??r OpenOffice Writer installed (hs23 only) - - Fix get_stack_bounds memory leak (alternate fix for S7197906, bundled HotSpot only) New in release 1.12.4 (2013-03-04): diff -r 18b6e9eaf3e8 -r 02a65b9914d5 patches/copy_memory.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/copy_memory.patch Fri Mar 22 14:18:47 2013 +0000 @@ -0,0 +1,36 @@ +diff --git a/src/share/classes/sun/misc/Unsafe.java b/src/share/classes/sun/misc/Unsafe.java +--- openjdk/jdk/src/share/classes/sun/misc/Unsafe.java ++++ openjdk/jdk/src/share/classes/sun/misc/Unsafe.java +@@ -504,9 +504,31 @@ + /** + * Sets all bytes in a given block of memory to a copy of another + * block. ++ * ++ *

This method determines each block's base address by means of two parameters, ++ * and so it provides (in effect) a double-register addressing mode, ++ * as discussed in {@link #getInt(Object,long)}. When the object reference is null, ++ * the offset supplies an absolute base address. ++ * ++ *

The transfers are in coherent (atomic) units of a size determined ++ * by the address and length parameters. If the effective addresses and ++ * length are all even modulo 8, the transfer takes place in 'long' units. ++ * If the effective addresses and length are (resp.) even modulo 4 or 2, ++ * the transfer takes place in units of 'int' or 'short'. + */ +- public native void copyMemory(long srcAddress, long destAddress, ++ public native void copyMemory(Object srcBase, long srcOffset, ++ Object destBase, long destOffset, + long bytes); ++ /** ++ * Sets all bytes in a given block of memory to a copy of another ++ * block. This provides a single-register addressing mode, ++ * as discussed in {@link #getInt(Object,long)}. ++ * ++ * Equivalent to copyMemory(null, srcAddress, null, destAddress, bytes). ++ */ ++ public void copyMemory(long srcAddress, long destAddress, long bytes) { ++ copyMemory(null, srcAddress, null, destAddress, bytes); ++ } + + /** + * Disposes of a block of native memory, as obtained from {@link diff -r 18b6e9eaf3e8 -r 02a65b9914d5 patches/hotspot/original/jvmtiEnv.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/original/jvmtiEnv.patch Fri Mar 22 14:18:47 2013 +0000 @@ -0,0 +1,12 @@ +--- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp.old 2009-02-26 17:18:35.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp 2009-02-26 17:16:59.000000000 +0000 +@@ -2702,6 +2702,9 @@ + (*entry_count_ptr) = num_entries; + (*table_ptr) = jvmti_table; + ++ if (num_entries == 0) ++ return JVMTI_ERROR_ABSENT_INFORMATION; ++ + return JVMTI_ERROR_NONE; + } /* end GetLineNumberTable */ + diff -r 18b6e9eaf3e8 -r 02a65b9914d5 patches/jvmtiEnv.patch --- a/patches/jvmtiEnv.patch Mon Mar 18 21:34:40 2013 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,12 +0,0 @@ ---- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp.old 2009-02-26 17:18:35.000000000 +0000 -+++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp 2009-02-26 17:16:59.000000000 +0000 -@@ -2702,6 +2702,9 @@ - (*entry_count_ptr) = num_entries; - (*table_ptr) = jvmti_table; - -+ if (num_entries == 0) -+ return JVMTI_ERROR_ABSENT_INFORMATION; -+ - return JVMTI_ERROR_NONE; - } /* end GetLineNumberTable */ - From adomurad at icedtea.classpath.org Fri Mar 22 07:31:07 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Fri, 22 Mar 2013 14:31:07 +0000 Subject: /hg/icedtea-web: Revert behaviour of PluginParameterParser#isInt... Message-ID: changeset e5b423479f99 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=e5b423479f99 author: Adam Domurad date: Fri Mar 22 10:32:05 2013 -0400 Revert behaviour of PluginParameterParser#isInt to fail on overflow diffstat: ChangeLog | 5 +++++ plugin/icedteanp/java/sun/applet/PluginParameterParser.java | 7 ++++++- tests/netx/unit/sun/applet/PluginParameterParserTest.java | 4 ++++ 3 files changed, 15 insertions(+), 1 deletions(-) diffs (43 lines): diff -r 7543d0b4e502 -r e5b423479f99 ChangeLog --- a/ChangeLog Fri Mar 22 10:13:34 2013 -0400 +++ b/ChangeLog Fri Mar 22 10:32:05 2013 -0400 @@ -1,3 +1,8 @@ +2013-03-22 Adam Domurad + + * plugin/icedteanp/java/sun/applet/PluginParameterParser.java + (isInt): Revert behaviour to catching NumberFormatException + 2013-03-22 Adam Domurad * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java diff -r 7543d0b4e502 -r e5b423479f99 plugin/icedteanp/java/sun/applet/PluginParameterParser.java --- a/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Fri Mar 22 10:13:34 2013 -0400 +++ b/plugin/icedteanp/java/sun/applet/PluginParameterParser.java Fri Mar 22 10:32:05 2013 -0400 @@ -60,7 +60,12 @@ } static boolean isInt(String s) { - return s.matches("^-?\\d+$"); + try { + Integer.parseInt(s); + return true; + } catch(NumberFormatException e) { + return false; + } } /** diff -r 7543d0b4e502 -r e5b423479f99 tests/netx/unit/sun/applet/PluginParameterParserTest.java --- a/tests/netx/unit/sun/applet/PluginParameterParserTest.java Fri Mar 22 10:13:34 2013 -0400 +++ b/tests/netx/unit/sun/applet/PluginParameterParserTest.java Fri Mar 22 10:32:05 2013 -0400 @@ -15,6 +15,10 @@ assertFalse(PluginParameterParser.isInt("1.0")); assertFalse(PluginParameterParser.isInt("abc")); assertTrue(PluginParameterParser.isInt("1")); + + /* Numbers that overflow or underflow can cause problems if we + * consider them valid, and pass them to parseInt: */ + assertFalse(PluginParameterParser.isInt("4294967295")); } @Test From jvanek at redhat.com Fri Mar 22 07:57:31 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 22 Mar 2013 15:57:31 +0100 Subject: [fyi][icedtea-web] backend and itw-settings for extended applets security In-Reply-To: <514A01AC.5080301@redhat.com> References: <510E532C.8040401@redhat.com> <51119426.9090000@redhat.com> <511D1142.2090501@redhat.com> <511D2AA8.2040709@redhat.com> <5124C5D0.7080309@redhat.com> <512545CD.4080305@redhat.com> <51269AAA.8090606@redhat.com> <512B8F37.9020703@redhat.com> <512F83FC.1080101@redhat.com> <5130E0EF.2030003@redhat.com> <513F2610.8070602@redhat.com> <514337CA.3040400@redhat.com> <514A01AC.5080301@redhat.com> Message-ID: <514C715B.2050000@redhat.com> On 03/20/2013 07:36 PM, Adam Domurad wrote: > On 03/15/2013 11:01 AM, Jiri Vanek wrote: >> On 03/12/2013 01:56 PM, Adam Domurad wrote: >>> On 03/01/2013 12:10 PM, Adam Domurad wrote: >>>> [ large snip ] >>>>> New version attached. >>>>> -Adam >>>> >>>> Woops. In the back&forth between 1.2 and HEAD I have forgot to add the normalization stuff. >>>> >>>> Rough location of the changes (sorry for the odd format, I just grepped them): >>>> >>>> + private static UnsignedAppletActionEntry getMatchingItem(UnsignedAppletActionStorage >>>> actionStorage, PluginBridge file) { >>>> + return actionStorage.getMatchingItem( >>>> + normalizeURLQuietly(file.getSourceLocation()).toString(), >>>> + normalizeURLQuietly(file.getCodeBase()).toString(), >>>> + file.getArchiveJars()); >>>> + } >>>> + >>>> + static private URL normalizeURLQuietly(URL url) { >>>> + try { >>>> + System.out.println("Normalizing " + url + " to " + ResourceTracker.normalizeUrl(url, false)); >>>> + return ResourceTracker.normalizeUrl(url, false); >>>> + } catch (IOException e) { >>>> + e.printStackTrace(); >>>> + } catch (URISyntaxException e) { >>>> + e.printStackTrace(); >>>> + } >>>> + return url; >>>> + } >>>> -- >>>> + } >>>> + >>>> + URL codebase = normalizeURLQuietly(file.getCodeBase()); >>>> + URL documentbase = normalizeURLQuietly(file.getSourceLocation()); >>>> + >>>> + /* Else, create a new entry */ >>>> + UrlRegEx codebaseRegex = new UrlRegEx("\\Q" + codebase + "\\E"); >>>> + UrlRegEx documentbaseRegex = new UrlRegEx("\\Q" + documentbase + "\\E"); >>>> + >>>> + UnsignedAppletActionEntry entry = new UnsignedAppletActionEntry( >>>> + behaviour, >>>> >>>> >>>> Happy hacking, >>>> -Adam >>> >>> Ping? >> >> Sorry for taking so long, but it was not working as expected. >> Few issues remains: >> 1)The "wildcard do not work" issue as we have discussed - they do :) But i had (for some >> reason???) included archives comaprsion also for not stored archvies. So when there was wildchards >> an no archives, but the matching against fully qualified applet then failed. Attached is patch >> with fix and test. [rfc] > > Looks OK to me. pushed. > >> 2)parameters - as you are already aware, all parameters are stored to urls. As those can be some >> dinamical ID or simialr, then I think we should strip them both from bases and from jars. For >> jars the tshe strip is easy (all behind ? , including ?).For urls I'm not so sure. Maybe the best >> is to strip both saved and compared? or strip just form saved with be "...\E.*" or >> "...?\E.*addition to such a base? [rfc] > > Hmm. OK, sounds good (stripping both). looks like working. > >> >> 3)archives saved with full url. On one side I'm not sure how wrong this is. On the second side I >> would probably prefer to have just plain archive names . This happens during all, except "plain >> archives tag". Good reproducer is jnlp href. I'm for simple "scratch everything before last slash" >> - before saving and comparing [rfc] > > > 'Scratch everything before last slash' was not sufficient, but OK used URI#relativize Also looks as working axcept the "invalid url" states as we discussed on IRC. Please fix. > >> >> >> With fix on my previous work the whole concept looks to be working as expected. Maybe you can >> push, and fix following issues separately. Depends what do you prefer to fight with during >> packporting to 1.3;) >> Also the "ask once for matching appelts" looks like working,a nd I have seen both red and green >> text finally :) >> I think that also the backport to 1.2 is affected by above issues, so I would hold it off.. or >> maybe do not do it at all. (and just live with this 1.3 and head) > Looking forward for this, (as it will allow to "allow several same codebase appelts" at once)! > It's easy to fix. I'll do it once we get this in. > >> >> >> J. >> > > > New version posted. Changes in UnsignedAppletTrustConfirmation.java, see extractRelativeArchives & > normalizeUrlAndStripParams. I also added some extra debug logging. Please unittest all unitility methods! hmm... I have found one regression between _3 and _4 - it seems that also signed appelts are being verified for low, high and very high, but they should not be... Is it just my imagination? J. From jvanek at redhat.com Fri Mar 22 08:06:18 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 22 Mar 2013 16:06:18 +0100 Subject: Request for review on German localizations for icedtea-web In-Reply-To: <514C7207.9070108@redhat.com> References: <201302220204.r1M24FUO016087@mail-web03.excite.co.jp> <51275AE6.6020501@redhat.com> <514C7207.9070108@redhat.com> Message-ID: <514C736A.1080201@redhat.com> You have reviewd old version of patch. Most of your comment are invalid for version 2:(( see: Subject: Re: Request for review on German localizations for icedtea-web Date: Fri, 01 Mar 2013 11:59:22 +0100 From: Jiri Vanek To: Jacob Wisor CC: distro-pkg-dev at openjdk.java.net And especially attachement must be fixedWinPAthValidator_2.diff Sorry for doubled work ;(( J. On 03/22/2013 04:00 PM, Adam Domurad wrote: > On 02/22/2013 06:47 AM, Jiri Vanek wrote: >> On 02/22/2013 03:04 AM, Jacob Wisor wrote: >>> Hello there! >>> >>>>> Jacob, Alexander - in your emails you have come to conclusion, that there >>>>> are errors - both lexical >>>>> and semantic in original English properties. If you will have spare time, >>>>> do you think - as >>>>> separate patch, you can fix them? >>>>> >>>> *** OK, I can try to have look, but generally sometimes the source is quite >>>> confusing and the translator can only guess, what is the correct meaning. >>>> Rather the developers themselves should see our comments about unclear >>>> parts and rephrase them so that the meaning is clear... >>> I can post some proposals for the messages in question. It should not be really that much, but a few of them are utterly confusing indeed. >>> >>> Btw, as I already wrote to Alexandr, I was able to compile at least NetX on Windows today, so I can see the German and Polish translations in the context of the running application. This helps a lot. >>> Having done that, I have also found a minor bug (I did not check whether it has been already reported) in regards to one message on Windows. I have already commented on it. It is the message that refers to absolute paths that must begin with a /. Though absolute paths on Windows do not begin with a / (it is a forbidden character anyway), icedtea-web assumes the (semi-) correct default value. The default value is an absolute Windows path beginning with a drive letter or device. Icedtea-Web still complains about it that it does not begin with a / and prints an error message about the value. It should be easy to fix. >>> >>> Anyway, I will post an updated localization patch ASAP. >>> >>> Regards, >>> Jacob >>> >> Wou! >> So there will be also Polish trnaslation? >> /me amazed :) >> >> And I'm happy netx is working on windows !o) >> >> I'm attaching patch to window paths. If you will be able to test, it would be nice (As there is no >> win machine around :( ) I will send [rfc] for it as separate email later. >> >> Looking forward for transaltions! >> >> >> >> J. > > Note i have not tested this on Windows, just doing a review of the code. > >> diff -r ad2e15f15a75 >> netx/net/sourceforge/jnlp/config/BasicValueValidators.java >> --- a/netx/net/sourceforge/jnlp/config/BasicValueValidators.java Thu >> Feb 21 15:26:38 2013 -0500 >> +++ b/netx/net/sourceforge/jnlp/config/BasicValueValidators.java Fri >> Feb 22 11:44:32 2013 +0100 >> @@ -82,12 +82,35 @@ >> } >> }; >> >> + >> + //decomposed for testing >> + public static boolean canBeWindows(String s) { >> + //is just win bullet proof enough? SOme winfows mark themselves as >> win32 or similar >> + //but I can imagine linux distribution with some Name containing win:( >> + //so I guess windows should be good enough as I have not seen >> not-windows idf since XP > > s/SOme/some/, s/winfows/Windows/, s/Name/name/ > idf -> ??? > > Anyway, I haven't see any reference that os.name can return 'win32', do > you have one ? > [nit] I'd be in favour of a shorter note here, it's a bit of a ramble :-) > >> + return s.toLowerCase().contains("windows"); >> + } >> + >> + /** >> + * guess the OS of user, if legal, or windows >> + * @return >> + */ >> + public static boolean canOsBeWindows() { >> + return canBeWindows(System.getProperty("os.name")); > > From what I read on the internet, > System.getProperty("os.name").startsWith("Windows") is the accepted way > to do this. (I don't think we need to worry about this being inadequate > until we have proof it doesn't handle some version of windows). > [nit] I'd just call it isWindows() or isOsWindows() or similar. > >> + } >> + >> /** >> * Checks if a value is a valid file path (not a valid file!). The actual >> * file may or may not exist >> */ >> - private static class FilePathValidator implements ValueValidator { >> + //package private foor testing purposes > > s/foor/for/ > >> + static class FilePathValidator implements ValueValidator { >> >> + //not static, we want test! >> + public boolean isWindows() { >> + return canOsBeWindows(); >> + } > > [nit] s/test/to test/ > [nit] This can be protected, and called 'handleWindowsPaths', which > makes more sense as a non-static > >> + >> @Override >> public void validate(Object value) throws IllegalArgumentException { >> if (value == null) { >> @@ -101,8 +124,16 @@ >> } >> >> String possibleFile = (String) possibleValue; >> - if (!(possibleFile.startsWith("/"))) { >> - throw new IllegalArgumentException(); >> + >> + if (isWindows()) { >> + //still maybe to strict, but should be ok for now > > s/to/too/ > >> + if (!possibleFile.matches("([a-zA-Z]:)?(\\\\[a-zA-Z0-9_.-]+)+\\\\?")) { > > This doesn't seem to consider / to be a valid character, unless I'm > wrong. I rather be more lenient, and just check for the drive letter > with :/ or :\ and then anything after it. >> + throw new IllegalArgumentException(); >> + } >> + } else { >> + if (!(possibleFile.startsWith("/"))) { >> + throw new IllegalArgumentException(); >> + } >> } >> >> } >> diff -r ad2e15f15a75 >> netx/net/sourceforge/jnlp/resources/Messages.properties >> --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Thu Feb >> 21 15:26:38 2013 -0500 >> +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Fri Feb >> 22 11:44:32 2013 +0100 >> @@ -283,7 +283,7 @@ >> # Value Validator messages. Messages should follow "Possible values ..." >> VVPossibleValues=Possible values {0} >> VVPossibleBooleanValues=are {0} or {1} >> -VVPossibleFileValues=include the absolute location of a file - it >> must begin with a / >> +VVPossibleFileValues=include the absolute location of a file - it >> must begin with a / on linux, or with DRIVE_LETTER:\ on windows >> VVPossibleRangedIntegerValues=are in range {0} to {1} (inclusive) >> VVPossibleUrlValues=include any valid url (eg >> http://icedtea.classpath.org/hg/) >> >> diff -r ad2e15f15a75 >> tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java >> --- /dev/null Thu Jan 01 00:00:00 1970 +0000 >> +++ >> b/tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java >> Fri Feb 22 11:44:32 2013 +0100 >> @@ -0,0 +1,133 @@ >> +/* DeploymentConfigurationTest.java >> + Copyright (C) 2012 Red Hat, Inc. >> + >> + This file is part of IcedTea. >> + >> + IcedTea is free software; you can redistribute it and/or >> + modify it under the terms of the GNU General Public License as >> published by >> + the Free Software Foundation, version 2. >> + >> + IcedTea is distributed in the hope that it will be useful, >> + but WITHOUT ANY WARRANTY; without even the implied warranty of >> + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> + General Public License for more details. >> + >> + You should have received a copy of the GNU General Public License >> + along with IcedTea; see the file COPYING. If not, write to >> + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, >> Boston, MA >> + 02110-1301 USA. >> + >> + Linking this library statically or dynamically with other modules is >> + making a combined work based on this library. Thus, the terms and >> + conditions of the GNU General Public License cover the whole >> + combination. >> + >> + As a special exception, the copyright holders of this library give you >> + permission to link this library with independent modules to produce an >> + executable, regardless of the license terms of these independent >> + modules, and to copy and distribute the resulting executable under >> + terms of your choice, provided that you also meet, for each linked >> + independent module, the terms and conditions of the license of that >> + module. An independent module is a module which is not derived from >> + or based on this library. If you modify this library, you may extend >> + this exception to your version of the library, but you are not >> + obligated to do so. If you do not wish to do so, delete this >> + exception statement from your version. >> + */ >> +package net.sourceforge.jnlp.config; >> + >> +import org.junit.Assert; >> +import org.junit.Test; >> + >> +public class BasicValueValidatorsTests { >> + >> + private static class WinFilePathValidator extends >> BasicValueValidators.FilePathValidator { >> + >> + @Override >> + public boolean isWindows() { >> + return true; >> + } >> + } >> + >> + private static class LinuxFilePathValidator extends >> BasicValueValidators.FilePathValidator { >> + >> + @Override >> + public boolean isWindows() { >> + return false; >> + } >> + } >> + private static final BasicValueValidators.FilePathValidator lv = new >> LinuxFilePathValidator(); >> + private static final BasicValueValidators.FilePathValidator wv = new >> WinFilePathValidator(); >> + private final String neverLegal = "aaa/bb/cc"; >> + private final String winLegal = "C:\\aaa\\bb\\cc"; > > I'd test window paths with / in them, as well. > >> + private final String linuxLegal = "/aaa/bb/cc"; >> + >> + @Test >> + public void testWindowsDetction() { >> + Assert.assertTrue(BasicValueValidators.canBeWindows("blah windows >> blah")); >> + Assert.assertTrue(BasicValueValidators.canBeWindows("blah Windows >> blah")); >> + Assert.assertTrue(BasicValueValidators.canBeWindows(" WINDOWS 7")); >> + Assert.assertFalse(BasicValueValidators.canBeWindows("blah windy >> miracle blah")); >> + Assert.assertFalse(BasicValueValidators.canBeWindows("blah wind blah")); >> + Assert.assertTrue(BasicValueValidators.canBeWindows("windows")); >> + Assert.assertFalse(BasicValueValidators.canBeWindows("linux")); >> + Assert.assertFalse(BasicValueValidators.canBeWindows("blah mac blah")); >> + Assert.assertFalse(BasicValueValidators.canBeWindows("blah solaris >> blah")); >> + } >> + >> + @Test >> + public void testLinuxAbsoluteFilePathValidator() { >> + Exception ex = null; >> + try { >> + lv.validate(linuxLegal); >> + } catch (Exception eex) { >> + ex = eex; >> + } >> + Assert.assertTrue(ex == null); >> + >> + ex = null; >> + try { >> + lv.validate(neverLegal); >> + } catch (Exception eex) { >> + ex = eex; >> + } >> + Assert.assertTrue(ex instanceof IllegalArgumentException); >> + >> + >> + ex = null; >> + try { >> + lv.validate(winLegal); >> + } catch (Exception eex) { >> + ex = eex; >> + } >> + Assert.assertTrue(ex instanceof IllegalArgumentException); >> + } >> + >> + @Test >> + public void testWindowsAbsoluteFilePathValidator() { >> + Exception ex = null; >> + try { >> + wv.validate(winLegal); >> + } catch (Exception eex) { >> + ex = eex; >> + } >> + Assert.assertTrue(ex == null); >> + >> + ex = null; >> + try { >> + wv.validate(neverLegal); >> + } catch (Exception eex) { >> + ex = eex; >> + } >> + Assert.assertTrue(ex instanceof IllegalArgumentException); >> + >> + >> + ex = null; >> + try { >> + wv.validate(linuxLegal); >> + } catch (Exception eex) { >> + ex = eex; >> + } >> + Assert.assertTrue(ex instanceof IllegalArgumentException); >> + } >> +} > > Happy hacking, > -Adam > > From omajid at redhat.com Fri Mar 22 08:15:40 2013 From: omajid at redhat.com (Omair Majid) Date: Fri, 22 Mar 2013 11:15:40 -0400 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <514C52E0.8080507@redhat.com> References: <51488B8A.9050904@redhat.com> <5148BA54.6020900@redhat.com> <5148BFBE.1010001@redhat.com> <514986BE.3050005@redhat.com> <514A12A9.1020804@redhat.com> <514C52E0.8080507@redhat.com> Message-ID: <514C759C.1080107@redhat.com> On 03/22/2013 08:47 AM, Jiri Vanek wrote: > I think it would be worthy to have printStackTrace in all catches in > block you are modifying. > Feel free to skip where you think it is redundant (nowhere?) and push. Hm.. maybe it makes sense to print it for PrivilegedActionException. If you add it for ClassNotFoundException (which is completely expected during a lookup), it will just be noise. Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From adomurad at redhat.com Fri Mar 22 08:19:18 2013 From: adomurad at redhat.com (Adam Domurad) Date: Fri, 22 Mar 2013 11:19:18 -0400 Subject: Request for review on German localizations for icedtea-web In-Reply-To: <5149965A.7090003@redhat.com> References: <51308A0A.1040602@redhat.com> <5149965A.7090003@redhat.com> Message-ID: <514C7676.1010403@redhat.com> On 03/20/2013 06:58 AM, Jiri Vanek wrote: > ping? > > > -------- Original Message -------- > Subject: Re: Request for review on German localizations for icedtea-web > Date: Fri, 01 Mar 2013 11:59:22 +0100 > From: Jiri Vanek > To: Jacob Wisor > CC: distro-pkg-dev at openjdk.java.net > > On 02/28/2013 07:44 PM, Jacob Wisor wrote: >> Hello Jiri, >> >> I have tested your patch. Here are some of my notes regarding it. > Thanx for check! >> "Jiri Vanek" wrote: >>> On 02/22/2013 03:04 AM, Jacob Wisor wrote: >>>> Hello there! >>>> >>>>>> Jacob, Alexander - in your emails you have come to conclusion, that there >>>>>> are errors - both lexical >>>>>> and semantic in original English properties. If you will have spare time, >>>>>> do you think - as >>>>>> separate patch, you can fix them? >> As I have seen, you have adjusted the relevant message about absolute paths. It is still kind of bothering me because it suggests that there are only two operating systems on this planet. ;) I would rather reformulate it so that it just gives a hint that the specified string is not an absolute path, regardless of its possible form on any given OS. I understand that you want to provide a helpful message to the user but in the world of Java we are probably left with nothing else than just saying that it is not an absolute path, or having specific messages for specific OSs (what I would not advise to do). > Seams reasonable. All platform specific traces from this line removed. > >> Btw, please note that Linux and Windows are names so that the have to begin with a capital letter in English. Further more Windows is a registered trademark and as such there has to be some notion of it in the product, documentation, or has to have an adjacent trademark symbol when mentioned. AFAIK this especially applies to US law but to many other jurisdictions as well. And, for the sake of completeness it should probably be stated as "Microsoft Windows". So as far as that is concerned, I would rather leave out mentioning explicit OS's names. > Damn :) But I understand.... > If you will be willing to find and mark such a cases it will be really appreciated. I think you are > the only person ever who tried to think about our properties in such an point of view. >> There are even more trademark issues in the Messages.properties file, but I am going to comment on them in my proposals later. >> >>>>> *** OK, I can try to have look, but generally sometimes the source is quite >>>>> confusing and the translator can only guess, what is the correct meaning. >>>>> Rather the developers themselves should see our comments about unclear >>>>> parts and rephrase them so that the meaning is clear... >>>> I can post some proposals for the messages in question. It should not be really that much, but a few of them are utterly confusing indeed. >>>> >>>> Btw, as I already wrote to Alexandr, I was able to compile at least NetX on Windows today, so I can see the German and Polish translations in the context of the running application. This helps a lot. >>>> Having done that, I have also found a minor bug (I did not check whether it has been already reported) in regards to one message on Windows. I have already commented on it. It is the message that refers to absolute paths that must begin with a /. Though absolute paths on Windows do not begin with a / (it is a forbidden character anyway), icedtea-web assumes the (semi-) correct default value. The default value is an absolute Windows path beginning with a drive letter or device. Icedtea-Web still complains about it that it does not begin with a / and prints an error message about the value. It should be easy to fix. >>>> >>>> Anyway, I will post an updated localization patch ASAP. >>>> >>>> Regards, >>>> Jacob >>>> >>> Wou! >>> So there will be also Polish trnaslation? >>> /me amazed :) >>> >>> And I'm happy netx is working on windows !o) >>> >>> I'm attaching patch to window paths. If you will be able to test, it would be nice (As there is no >>> win machine around :( ) I will send [rfc] for it as separate email later. >> So as already mentioned, I have tested it. It compiles and runs. You can have a look at the output log it produces. There are still some cases where the validation does not take effect. > I see:-/ > > btw- the IOException your log is ending with will probably be caused by not existing > C:\Users\Jakob\.icedtea\security\ directory. > This is definitely bug (as directory should be create din sucha case imho), but ith sould be > discused in separate thread. (and probably submitted to classpath bugzilla:-/) > >> Btw, after reviewing your code I would rather suggest to use java.io.File.isAbsolute(). Please do not try using your own regex pattern to test that, since absolute paths on Windows NT can be even more complex beginning with "\\?\" or "\\.\". There are some further rules to that, so it is probably safest to rely on the work that has already been done by Sun or Oracle. It is even more advisable to use java.io.File.isAbsolute() because every platform specific JRE implementation has their own implementation of it and thus knows best how to check for absoluteness. This way, you do not have to even check for a specific OS before, as you do in boolean net.sourceforge.jnlp.config.BasicValueValidators.canBeWindows(java.lang.String). > Although I was aware i was not covering all possible win "path beginnings" I hopped for most of > them and seeing "/" in code I utterly forgot about isAbsolute method !-( shame in me:(( > So followed, fixed. >> You do not need to bother about Windows stuff for now - unless you really want to. I am going to build IcedTea-Web for and on Windows anyway. There are even more flaws that should be fixed for Windows. Especially determining the user's and application's data files and folders should be fixed for Windows. So I am going take a look into that. > Oh tahnk you! It is really loong time since last win build effort. I cross my fingers for you (and > for us to help you) to finish this issue! > > New patch attached. > > J. > > ps: considering absolutism of file, as Mac is derived from Linux kernel, I believe from this point > of view really just two (UNIX like and DOS-like) exists... (/me hopes O:) > > > > J. > > > OK. Doing code review of updated one ... sorry for reviewing the wrong one. > diff -r 555397961654 > netx/net/sourceforge/jnlp/config/BasicValueValidators.java > --- a/netx/net/sourceforge/jnlp/config/BasicValueValidators.java Thu > Feb 28 16:03:39 2013 +0100 > +++ b/netx/net/sourceforge/jnlp/config/BasicValueValidators.java Fri > Mar 01 11:28:39 2013 +0100 > @@ -37,6 +37,7 @@ > > package net.sourceforge.jnlp.config; > > +import java.io.File; > import static net.sourceforge.jnlp.runtime.Translator.R; > > import java.net.URL; > @@ -86,8 +87,9 @@ > * Checks if a value is a valid file path (not a valid file!). The actual > * file may or may not exist > */ > - private static class FilePathValidator implements ValueValidator { > - > + //package private foor testing purposes s/foor/for/ > + static class FilePathValidator implements ValueValidator { > + > @Override > public void validate(Object value) throws IllegalArgumentException { > if (value == null) { > @@ -97,13 +99,15 @@ > Object possibleValue = value; > > if (!(possibleValue instanceof String)) { > - throw new IllegalArgumentException(); > + throw new IllegalArgumentException("Value should be string!"); > } > > String possibleFile = (String) possibleValue; > - if (!(possibleFile.startsWith("/"))) { > - throw new IllegalArgumentException(); > - } > + > + boolean absolute = new File(possibleFile).isAbsolute(); > + if (!absolute) { > + throw new IllegalArgumentException("File must be absolute"); > + } > > } > > diff -r 555397961654 > netx/net/sourceforge/jnlp/resources/Messages.properties > --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Thu Feb > 28 16:03:39 2013 +0100 > +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Fri Mar > 01 11:28:39 2013 +0100 > @@ -283,7 +283,7 @@ > # Value Validator messages. Messages should follow "Possible values ..." > VVPossibleValues=Possible values {0} > VVPossibleBooleanValues=are {0} or {1} > -VVPossibleFileValues=include the absolute location of a file - it > must begin with a / > +VVPossibleFileValues=include the absolute location of a file > VVPossibleRangedIntegerValues=are in range {0} to {1} (inclusive) > VVPossibleUrlValues=include any valid url (eg > http://icedtea.classpath.org/hg/) > > diff -r 555397961654 > tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ > b/tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java > Fri Mar 01 11:28:39 2013 +0100 > @@ -0,0 +1,136 @@ > +/* DeploymentConfigurationTest.java > +Copyright (C) 2012 Red Hat, Inc. s/2012/2013/ > + > +This file is part of IcedTea. > + > +IcedTea is free software; you can redistribute it and/or > +modify it under the terms of the GNU General Public License as > published by > +the Free Software Foundation, version 2. > + > +IcedTea is distributed in the hope that it will be useful, > +but WITHOUT ANY WARRANTY; without even the implied warranty of > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > +General Public License for more details. > + > +You should have received a copy of the GNU General Public License > +along with IcedTea; see the file COPYING. If not, write to > +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > +02110-1301 USA. > + > +Linking this library statically or dynamically with other modules is > +making a combined work based on this library. Thus, the terms and > +conditions of the GNU General Public License cover the whole > +combination. > + > +As a special exception, the copyright holders of this library give you > +permission to link this library with independent modules to produce an > +executable, regardless of the license terms of these independent > +modules, and to copy and distribute the resulting executable under > +terms of your choice, provided that you also meet, for each linked > +independent module, the terms and conditions of the license of that > +module. An independent module is a module which is not derived from > +or based on this library. If you modify this library, you may extend > +this exception to your version of the library, but you are not > +obligated to do so. If you do not wish to do so, delete this > +exception statement from your version. > + */ > +package net.sourceforge.jnlp.config; > + > +import org.junit.Assert; > +import org.junit.Test; > + > +public class BasicValueValidatorsTests { > + > + //decomposed for testing > + public static boolean canBeWindows(String s) { > + //is just win bullet proof enough? SOme winfows mark themselves as > win32 or similar > + //but I can imagine linux distribution with some Name containing win:( > + //so I guess windows should be good enough as I have not seen > not-windows idf since XP > + return s.toLowerCase().contains("windows"); s/SOme/some/, s/winfows/Windows/, s/Name/name/ idf -> ??? Anyway, I haven't see any reference that os.name can return 'win32', do you have one ? [nit] I'd be in favour of a shorter note here, it's a bit of a ramble :-) > + } > + > + /** > + * guess the OS of user, if legal, or windows > + * @return > + */ > + public static boolean canOsBeWindows() { > + return canBeWindows(System.getProperty("os.name")); > + } >From what I read on the internet, System.getProperty("os.name").startsWith("Windows") is the accepted way to do this. (I don't think we need to worry about this being inadequate until we have proof it doesn't handle some version of windows). [nit] I'd just call it isWindows() or isOsWindows() or similar. > + private static final BasicValueValidators.FilePathValidator pv = new > BasicValueValidators.FilePathValidator(); > + private final String neverLegal = "aaa/bb/cc"; > + private final String winLegal = "C:\\aaa\\bb\\cc"; > + private final String linuxLegal = "/aaa/bb/cc"; > + > + @Test > + public void testWindowsDetction() { > + Assert.assertTrue(canBeWindows("blah windows blah")); > + Assert.assertTrue(canBeWindows("blah Windows blah")); > + Assert.assertTrue(canBeWindows(" WINDOWS 7")); > + Assert.assertFalse(canBeWindows("blah windy miracle blah")); > + Assert.assertFalse(canBeWindows("blah wind blah")); > + Assert.assertTrue(canBeWindows("windows")); > + Assert.assertFalse(canBeWindows("linux")); > + Assert.assertFalse(canBeWindows("blah mac blah")); > + Assert.assertFalse(canBeWindows("blah solaris blah")); > + } > + > + @Test > + public void testLinuxAbsoluteFilePathValidator() { > + if (!canOsBeWindows()) { > + Exception ex = null; > + try { > + pv.validate(linuxLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex == null); > + > + ex = null; > + try { > + pv.validate(neverLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex instanceof IllegalArgumentException); > + > + > + ex = null; > + try { > + pv.validate(winLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex instanceof IllegalArgumentException); > + } > + } > + > + @Test > + public void testWindowsAbsoluteFilePathValidator() { > + if (canOsBeWindows()) { > + Exception ex = null; > + try { > + pv.validate(winLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex == null); > + > + ex = null; > + try { > + pv.validate(neverLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex instanceof IllegalArgumentException); > + > + > + ex = null; > + try { > + pv.validate(linuxLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex instanceof IllegalArgumentException); > + } > + } > +} Looks good otherwise, I think you can make changes to test without posting again. -Adam From adomurad at redhat.com Fri Mar 22 08:20:58 2013 From: adomurad at redhat.com (Adam Domurad) Date: Fri, 22 Mar 2013 11:20:58 -0400 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <514C759C.1080107@redhat.com> References: <51488B8A.9050904@redhat.com> <5148BA54.6020900@redhat.com> <5148BFBE.1010001@redhat.com> <514986BE.3050005@redhat.com> <514A12A9.1020804@redhat.com> <514C52E0.8080507@redhat.com> <514C759C.1080107@redhat.com> Message-ID: <514C76DA.8010309@redhat.com> On 03/22/2013 11:15 AM, Omair Majid wrote: > On 03/22/2013 08:47 AM, Jiri Vanek wrote: >> I think it would be worthy to have printStackTrace in all catches in >> block you are modifying. >> Feel free to skip where you think it is redundant (nowhere?) and push. > Hm.. maybe it makes sense to print it for PrivilegedActionException. If > you add it for ClassNotFoundException (which is completely expected > during a lookup), it will just be noise. > > Cheers, > Omair > Hi Omair. I added it just for ClassFormatError, none of the other ones made sense. 90% of the ClassNotFoundException's were wrapped as PrivilegedActionException due to limitations with checked exceptions (). Thanks, -Adam From omajid at redhat.com Fri Mar 22 08:31:18 2013 From: omajid at redhat.com (Omair Majid) Date: Fri, 22 Mar 2013 11:31:18 -0400 Subject: [rfc][icedtea-web] Don't be silent if JNLPClassLoader gets a ClassFormatError In-Reply-To: <514C76DA.8010309@redhat.com> References: <51488B8A.9050904@redhat.com> <5148BA54.6020900@redhat.com> <5148BFBE.1010001@redhat.com> <514986BE.3050005@redhat.com> <514A12A9.1020804@redhat.com> <514C52E0.8080507@redhat.com> <514C759C.1080107@redhat.com> <514C76DA.8010309@redhat.com> Message-ID: <514C7946.1090301@redhat.com> On 03/22/2013 11:20 AM, Adam Domurad wrote: > On 03/22/2013 11:15 AM, Omair Majid wrote: >> On 03/22/2013 08:47 AM, Jiri Vanek wrote: >>> I think it would be worthy to have printStackTrace in all catches in >>> block you are modifying. >>> Feel free to skip where you think it is redundant (nowhere?) and push. >> Hm.. maybe it makes sense to print it for PrivilegedActionException. If >> you add it for ClassNotFoundException (which is completely expected >> during a lookup), it will just be noise. >> >> Cheers, >> Omair >> > > Hi Omair. I added it just for ClassFormatError, none of the other ones > made sense. 90% of the ClassNotFoundException's were wrapped as > PrivilegedActionException due to limitations with checked exceptions > (). In some places, we actually unwrap PrivilegedActionException and check what the underlying exception is. If you really care about the PrivilegedActionExceptions which are not caused by ClassNotFoundException, perhaps you can do that here too? Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From adomurad at redhat.com Fri Mar 22 08:00:23 2013 From: adomurad at redhat.com (Adam Domurad) Date: Fri, 22 Mar 2013 11:00:23 -0400 Subject: Request for review on German localizations for icedtea-web In-Reply-To: <51275AE6.6020501@redhat.com> References: <201302220204.r1M24FUO016087@mail-web03.excite.co.jp> <51275AE6.6020501@redhat.com> Message-ID: <514C7207.9070108@redhat.com> On 02/22/2013 06:47 AM, Jiri Vanek wrote: > On 02/22/2013 03:04 AM, Jacob Wisor wrote: >> Hello there! >> >>>> Jacob, Alexander - in your emails you have come to conclusion, that there >>>> are errors - both lexical >>>> and semantic in original English properties. If you will have spare time, >>>> do you think - as >>>> separate patch, you can fix them? >>>> >>> *** OK, I can try to have look, but generally sometimes the source is quite >>> confusing and the translator can only guess, what is the correct meaning. >>> Rather the developers themselves should see our comments about unclear >>> parts and rephrase them so that the meaning is clear... >> I can post some proposals for the messages in question. It should not be really that much, but a few of them are utterly confusing indeed. >> >> Btw, as I already wrote to Alexandr, I was able to compile at least NetX on Windows today, so I can see the German and Polish translations in the context of the running application. This helps a lot. >> Having done that, I have also found a minor bug (I did not check whether it has been already reported) in regards to one message on Windows. I have already commented on it. It is the message that refers to absolute paths that must begin with a /. Though absolute paths on Windows do not begin with a / (it is a forbidden character anyway), icedtea-web assumes the (semi-) correct default value. The default value is an absolute Windows path beginning with a drive letter or device. Icedtea-Web still complains about it that it does not begin with a / and prints an error message about the value. It should be easy to fix. >> >> Anyway, I will post an updated localization patch ASAP. >> >> Regards, >> Jacob >> > Wou! > So there will be also Polish trnaslation? > /me amazed :) > > And I'm happy netx is working on windows !o) > > I'm attaching patch to window paths. If you will be able to test, it would be nice (As there is no > win machine around :( ) I will send [rfc] for it as separate email later. > > Looking forward for transaltions! > > > > J. Note i have not tested this on Windows, just doing a review of the code. > diff -r ad2e15f15a75 > netx/net/sourceforge/jnlp/config/BasicValueValidators.java > --- a/netx/net/sourceforge/jnlp/config/BasicValueValidators.java Thu > Feb 21 15:26:38 2013 -0500 > +++ b/netx/net/sourceforge/jnlp/config/BasicValueValidators.java Fri > Feb 22 11:44:32 2013 +0100 > @@ -82,12 +82,35 @@ > } > }; > > + > + //decomposed for testing > + public static boolean canBeWindows(String s) { > + //is just win bullet proof enough? SOme winfows mark themselves as > win32 or similar > + //but I can imagine linux distribution with some Name containing win:( > + //so I guess windows should be good enough as I have not seen > not-windows idf since XP s/SOme/some/, s/winfows/Windows/, s/Name/name/ idf -> ??? Anyway, I haven't see any reference that os.name can return 'win32', do you have one ? [nit] I'd be in favour of a shorter note here, it's a bit of a ramble :-) > + return s.toLowerCase().contains("windows"); > + } > + > + /** > + * guess the OS of user, if legal, or windows > + * @return > + */ > + public static boolean canOsBeWindows() { > + return canBeWindows(System.getProperty("os.name")); >From what I read on the internet, System.getProperty("os.name").startsWith("Windows") is the accepted way to do this. (I don't think we need to worry about this being inadequate until we have proof it doesn't handle some version of windows). [nit] I'd just call it isWindows() or isOsWindows() or similar. > + } > + > /** > * Checks if a value is a valid file path (not a valid file!). The actual > * file may or may not exist > */ > - private static class FilePathValidator implements ValueValidator { > + //package private foor testing purposes s/foor/for/ > + static class FilePathValidator implements ValueValidator { > > + //not static, we want test! > + public boolean isWindows() { > + return canOsBeWindows(); > + } [nit] s/test/to test/ [nit] This can be protected, and called 'handleWindowsPaths', which makes more sense as a non-static > + > @Override > public void validate(Object value) throws IllegalArgumentException { > if (value == null) { > @@ -101,8 +124,16 @@ > } > > String possibleFile = (String) possibleValue; > - if (!(possibleFile.startsWith("/"))) { > - throw new IllegalArgumentException(); > + > + if (isWindows()) { > + //still maybe to strict, but should be ok for now s/to/too/ > + if (!possibleFile.matches("([a-zA-Z]:)?(\\\\[a-zA-Z0-9_.-]+)+\\\\?")) { This doesn't seem to consider / to be a valid character, unless I'm wrong. I rather be more lenient, and just check for the drive letter with :/ or :\ and then anything after it. > + throw new IllegalArgumentException(); > + } > + } else { > + if (!(possibleFile.startsWith("/"))) { > + throw new IllegalArgumentException(); > + } > } > > } > diff -r ad2e15f15a75 > netx/net/sourceforge/jnlp/resources/Messages.properties > --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Thu Feb > 21 15:26:38 2013 -0500 > +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Fri Feb > 22 11:44:32 2013 +0100 > @@ -283,7 +283,7 @@ > # Value Validator messages. Messages should follow "Possible values ..." > VVPossibleValues=Possible values {0} > VVPossibleBooleanValues=are {0} or {1} > -VVPossibleFileValues=include the absolute location of a file - it > must begin with a / > +VVPossibleFileValues=include the absolute location of a file - it > must begin with a / on linux, or with DRIVE_LETTER:\ on windows > VVPossibleRangedIntegerValues=are in range {0} to {1} (inclusive) > VVPossibleUrlValues=include any valid url (eg > http://icedtea.classpath.org/hg/) > > diff -r ad2e15f15a75 > tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ > b/tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java > Fri Feb 22 11:44:32 2013 +0100 > @@ -0,0 +1,133 @@ > +/* DeploymentConfigurationTest.java > + Copyright (C) 2012 Red Hat, Inc. > + > + This file is part of IcedTea. > + > + IcedTea is free software; you can redistribute it and/or > + modify it under the terms of the GNU General Public License as > published by > + the Free Software Foundation, version 2. > + > + IcedTea is distributed in the hope that it will be useful, > + but WITHOUT ANY WARRANTY; without even the implied warranty of > + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > + General Public License for more details. > + > + You should have received a copy of the GNU General Public License > + along with IcedTea; see the file COPYING. If not, write to > + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, > Boston, MA > + 02110-1301 USA. > + > + Linking this library statically or dynamically with other modules is > + making a combined work based on this library. Thus, the terms and > + conditions of the GNU General Public License cover the whole > + combination. > + > + As a special exception, the copyright holders of this library give you > + permission to link this library with independent modules to produce an > + executable, regardless of the license terms of these independent > + modules, and to copy and distribute the resulting executable under > + terms of your choice, provided that you also meet, for each linked > + independent module, the terms and conditions of the license of that > + module. An independent module is a module which is not derived from > + or based on this library. If you modify this library, you may extend > + this exception to your version of the library, but you are not > + obligated to do so. If you do not wish to do so, delete this > + exception statement from your version. > + */ > +package net.sourceforge.jnlp.config; > + > +import org.junit.Assert; > +import org.junit.Test; > + > +public class BasicValueValidatorsTests { > + > + private static class WinFilePathValidator extends > BasicValueValidators.FilePathValidator { > + > + @Override > + public boolean isWindows() { > + return true; > + } > + } > + > + private static class LinuxFilePathValidator extends > BasicValueValidators.FilePathValidator { > + > + @Override > + public boolean isWindows() { > + return false; > + } > + } > + private static final BasicValueValidators.FilePathValidator lv = new > LinuxFilePathValidator(); > + private static final BasicValueValidators.FilePathValidator wv = new > WinFilePathValidator(); > + private final String neverLegal = "aaa/bb/cc"; > + private final String winLegal = "C:\\aaa\\bb\\cc"; I'd test window paths with / in them, as well. > + private final String linuxLegal = "/aaa/bb/cc"; > + > + @Test > + public void testWindowsDetction() { > + Assert.assertTrue(BasicValueValidators.canBeWindows("blah windows > blah")); > + Assert.assertTrue(BasicValueValidators.canBeWindows("blah Windows > blah")); > + Assert.assertTrue(BasicValueValidators.canBeWindows(" WINDOWS 7")); > + Assert.assertFalse(BasicValueValidators.canBeWindows("blah windy > miracle blah")); > + Assert.assertFalse(BasicValueValidators.canBeWindows("blah wind blah")); > + Assert.assertTrue(BasicValueValidators.canBeWindows("windows")); > + Assert.assertFalse(BasicValueValidators.canBeWindows("linux")); > + Assert.assertFalse(BasicValueValidators.canBeWindows("blah mac blah")); > + Assert.assertFalse(BasicValueValidators.canBeWindows("blah solaris > blah")); > + } > + > + @Test > + public void testLinuxAbsoluteFilePathValidator() { > + Exception ex = null; > + try { > + lv.validate(linuxLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex == null); > + > + ex = null; > + try { > + lv.validate(neverLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex instanceof IllegalArgumentException); > + > + > + ex = null; > + try { > + lv.validate(winLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex instanceof IllegalArgumentException); > + } > + > + @Test > + public void testWindowsAbsoluteFilePathValidator() { > + Exception ex = null; > + try { > + wv.validate(winLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex == null); > + > + ex = null; > + try { > + wv.validate(neverLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex instanceof IllegalArgumentException); > + > + > + ex = null; > + try { > + wv.validate(linuxLegal); > + } catch (Exception eex) { > + ex = eex; > + } > + Assert.assertTrue(ex instanceof IllegalArgumentException); > + } > +} Happy hacking, -Adam From kapetr at mizera.cz Fri Mar 22 09:04:14 2013 From: kapetr at mizera.cz (kapetr at mizera.cz) Date: Fri, 22 Mar 2013 17:04:14 +0100 Subject: webstart problem Message-ID: <514C80FE.1060500@mizera.cz> Hello, it fails launching/running this: https://www.fio.cz/apps/fiosign.php It is signing app for internet banking. I use IcedTea-plugin/netx/... ver. 1.2.2 in Ubuntu 12.04 64b. The stderr log is in attachment. Running the downloaded app works: wget -N http://www.fio.cz/apps/signer_client.jar wget -N http://www.fio.cz/apps/bcprov-jdk16-146.jar java -cp bcprov-jdk16-146.jar:signer_client.jar cz.fio.signer.client.gui.Main The bank support sees problem in icedTea webstart support of Log4J and JAXB. Could please someone check this ? I do not understand Java things at all. I'm just user. --kapetr -------------- next part -------------- Exception in thread "Fio podpis 4" java.lang.ClassFormatError: Truncated class file at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:634) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at net.sourceforge.jnlp.runtime.JNLPClassLoader$CodeBaseClassLoader.findClass(JNLPClassLoader.java:1903) at net.sourceforge.jnlp.runtime.JNLPClassLoader.findClass(JNLPClassLoader.java:1509) at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClassExt(JNLPClassLoader.java:1526) at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClass(JNLPClassLoader.java:1341) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:266) at com.sun.beans.finder.ClassFinder.findClass(ClassFinder.java:102) at java.beans.Introspector.instantiate(Introspector.java:1492) at java.beans.Introspector.findExplicitBeanInfo(Introspector.java:447) at java.beans.Introspector.(Introspector.java:396) at java.beans.Introspector.getBeanInfo(Introspector.java:190) at org.apache.log4j.config.PropertySetter.introspect(PropertySetter.java:83) at org.apache.log4j.config.PropertySetter.getPropertyDescriptor(PropertySetter.java:294) at org.apache.log4j.config.PropertySetter.setProperty(PropertySetter.java:195) at org.apache.log4j.xml.DOMConfigurator.setParameter(DOMConfigurator.java:691) at org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:265) at org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.java:176) at org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigurator.java:191) at org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMConfigurator.java:523) at org.apache.log4j.xml.DOMConfigurator.parseRoot(DOMConfigurator.java:492) at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:1001) at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:867) at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:773) at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:483) at org.apache.log4j.LogManager.(LogManager.java:127) at org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:64) at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:253) at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:265) at cz.fio.signer.client.gui.Main.(Main.java:69) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at net.sourceforge.jnlp.Launcher.launchApplication(Launcher.java:594) at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:889) From adomurad at redhat.com Fri Mar 22 12:25:23 2013 From: adomurad at redhat.com (Adam Domurad) Date: Fri, 22 Mar 2013 15:25:23 -0400 Subject: [fyi][icedtea-web] backend and itw-settings for extended applets security In-Reply-To: <514C715B.2050000@redhat.com> References: <510E532C.8040401@redhat.com> <51119426.9090000@redhat.com> <511D1142.2090501@redhat.com> <511D2AA8.2040709@redhat.com> <5124C5D0.7080309@redhat.com> <512545CD.4080305@redhat.com> <51269AAA.8090606@redhat.com> <512B8F37.9020703@redhat.com> <512F83FC.1080101@redhat.com> <5130E0EF.2030003@redhat.com> <513F2610.8070602@redhat.com> <514337CA.3040400@redhat.com> <514A01AC.5080301@redhat.com> <514C715B.2050000@redhat.com> Message-ID: <514CB023.1050901@redhat.com> On 03/22/2013 10:57 AM, Jiri Vanek wrote: > On 03/20/2013 07:36 PM, Adam Domurad wrote: >> On 03/15/2013 11:01 AM, Jiri Vanek wrote: >>> On 03/12/2013 01:56 PM, Adam Domurad wrote: >>>> On 03/01/2013 12:10 PM, Adam Domurad wrote: >>>>> [ large snip ] >>>>>> New version attached. >>>>>> -Adam >>>>> >>>>> Woops. In the back&forth between 1.2 and HEAD I have forgot to add >>>>> the normalization stuff. >>>>> >>>>> Rough location of the changes (sorry for the odd format, I just >>>>> grepped them): >>>>> >>>>> + private static UnsignedAppletActionEntry >>>>> getMatchingItem(UnsignedAppletActionStorage >>>>> actionStorage, PluginBridge file) { >>>>> + return actionStorage.getMatchingItem( >>>>> + normalizeURLQuietly(file.getSourceLocation()).toString(), >>>>> + normalizeURLQuietly(file.getCodeBase()).toString(), >>>>> + file.getArchiveJars()); >>>>> + } >>>>> + >>>>> + static private URL normalizeURLQuietly(URL url) { >>>>> + try { >>>>> + System.out.println("Normalizing " + url + " to " + >>>>> ResourceTracker.normalizeUrl(url, false)); >>>>> + return ResourceTracker.normalizeUrl(url, false); >>>>> + } catch (IOException e) { >>>>> + e.printStackTrace(); >>>>> + } catch (URISyntaxException e) { >>>>> + e.printStackTrace(); >>>>> + } >>>>> + return url; >>>>> + } >>>>> -- >>>>> + } >>>>> + >>>>> + URL codebase = normalizeURLQuietly(file.getCodeBase()); >>>>> + URL documentbase = normalizeURLQuietly(file.getSourceLocation()); >>>>> + >>>>> + /* Else, create a new entry */ >>>>> + UrlRegEx codebaseRegex = new UrlRegEx("\\Q" + codebase + "\\E"); >>>>> + UrlRegEx documentbaseRegex = new UrlRegEx("\\Q" + documentbase + >>>>> "\\E"); >>>>> + >>>>> + UnsignedAppletActionEntry entry = new UnsignedAppletActionEntry( >>>>> + behaviour, >>>>> >>>>> >>>>> Happy hacking, >>>>> -Adam >>>> >>>> Ping? >>> >>> Sorry for taking so long, but it was not working as expected. >>> Few issues remains: >>> 1)The "wildcard do not work" issue as we have discussed - they do :) >>> But i had (for some >>> reason???) included archives comaprsion also for not stored >>> archvies. So when there was wildchards >>> an no archives, but the matching against fully qualified applet then >>> failed. Attached is patch >>> with fix and test. [rfc] >> >> Looks OK to me. > > pushed. >> >>> 2)parameters - as you are already aware, all parameters are stored >>> to urls. As those can be some >>> dinamical ID or simialr, then I think we should strip them both >>> from bases and from jars. For >>> jars the tshe strip is easy (all behind ? , including ?).For urls >>> I'm not so sure. Maybe the best >>> is to strip both saved and compared? or strip just form saved with >>> be "...\E.*" or >>> "...?\E.*addition to such a base? [rfc] >> >> Hmm. OK, sounds good (stripping both). > > looks like working. >> >>> >>> 3)archives saved with full url. On one side I'm not sure how wrong >>> this is. On the second side I >>> would probably prefer to have just plain archive names . This >>> happens during all, except "plain >>> archives tag". Good reproducer is jnlp href. I'm for simple "scratch >>> everything before last slash" >>> - before saving and comparing [rfc] >> >> >> 'Scratch everything before last slash' was not sufficient, but OK >> used URI#relativize > > Also looks as working axcept the "invalid url" states as we discussed > on IRC. Please fix. I had to ditch URI#relativize as trying to get it to handle invalid URL character's was a minefield. We should be fine just matching the start of the codebase against the archives URLs, and falling back to storing full URL. >> >>> >>> >>> With fix on my previous work the whole concept looks to be working >>> as expected. Maybe you can >>> push, and fix following issues separately. Depends what do you >>> prefer to fight with during >>> packporting to 1.3;) >>> Also the "ask once for matching appelts" looks like working,a nd I >>> have seen both red and green >>> text finally :) >>> I think that also the backport to 1.2 is affected by above issues, >>> so I would hold it off.. or >>> maybe do not do it at all. (and just live with this 1.3 and head) >> > Looking forward for this, (as it will allow to "allow several same > codebase appelts" at once)! >> It's easy to fix. I'll do it once we get this in. >> >>> >>> >>> J. >>> >> >> >> New version posted. Changes in UnsignedAppletTrustConfirmation.java, >> see extractRelativeArchives & >> normalizeUrlAndStripParams. I also added some extra debug logging. > > Please unittest all unitility methods! I added unit tests for the utility methods. Let me know if there's more you want unit tested. > > > hmm... I have found one regression between _3 and _4 - it seems that > also signed appelts are being verified for low, high and very high, > but they should not be... Is it just my imagination? I hope so -- it's either that, or ghosts, because I can't reproduce it. > > > > J. > -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: integrated-dialogue5.patch Type: text/x-patch Size: 36845 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130322/8e4a31e7/integrated-dialogue5.patch From jfabriko at icedtea.classpath.org Mon Mar 25 03:36:46 2013 From: jfabriko at icedtea.classpath.org (jfabriko at icedtea.classpath.org) Date: Mon, 25 Mar 2013 10:36:46 +0000 Subject: /hg/icedtea-web: adding JavascriptFuncParam reproducer for testi... Message-ID: changeset 4deea6488148 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=4deea6488148 author: Jana Fabrikova date: Mon Mar 25 11:39:38 2013 +0100 adding JavascriptFuncParam reproducer for testing LiveConnect, calling JS functions from Java with various parameters diffstat: ChangeLog | 12 + tests/reproducers/simple/JavascriptFuncParam/resources/JavascriptFuncParam.html | 40 + tests/reproducers/simple/JavascriptFuncParam/resources/javascript-funcparam.jnlp | 23 + tests/reproducers/simple/JavascriptFuncParam/srcs/JavascriptFuncParam.java | 146 ++++++ tests/reproducers/simple/JavascriptFuncParam/testcases/JavascriptFuncParamTest.java | 234 ++++++++++ 5 files changed, 455 insertions(+), 0 deletions(-) diffs (478 lines): diff -r e5b423479f99 -r 4deea6488148 ChangeLog --- a/ChangeLog Fri Mar 22 10:32:05 2013 -0400 +++ b/ChangeLog Mon Mar 25 11:39:38 2013 +0100 @@ -1,3 +1,15 @@ +2013-03-25 Jana Fabrikova + + * tests/reproducers/simple/JavascriptFuncParam/testcases/JavascriptFuncParamTest.java + adding 19 testcases for calling javascript functions from java with + parameters of various types + * tests/reproducers/simple/JavascriptFuncParam/resources/JavascriptFuncParam.html + the html page for displaying browser tests + * tests/reproducers/simple/JavascriptFuncParam/resources/javascript-funcparam.jnlp + jnlp file for embedding the applet in html page + * tests/reproducers/simple/JavascriptFuncParam/srcs/JavascriptFuncParam.java + the applet that calls functions from javascript + 2013-03-22 Adam Domurad * plugin/icedteanp/java/sun/applet/PluginParameterParser.java diff -r e5b423479f99 -r 4deea6488148 tests/reproducers/simple/JavascriptFuncParam/resources/JavascriptFuncParam.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncParam/resources/JavascriptFuncParam.html Mon Mar 25 11:39:38 2013 +0100 @@ -0,0 +1,40 @@ + + + + Java JavaScript LiveConnect - Function Parameters + + + + +

The JToJSFuncParam html page

+ + + + + + + + + diff -r e5b423479f99 -r 4deea6488148 tests/reproducers/simple/JavascriptFuncParam/resources/javascript-funcparam.jnlp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncParam/resources/javascript-funcparam.jnlp Mon Mar 25 11:39:38 2013 +0100 @@ -0,0 +1,23 @@ + + + + + Java to JavaScript LiveConnect - FuncParam + IcedTea + + LiveConnect - tests for parameter conversion between Java and JavaScript. + + + + + + + + + + diff -r e5b423479f99 -r 4deea6488148 tests/reproducers/simple/JavascriptFuncParam/srcs/JavascriptFuncParam.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncParam/srcs/JavascriptFuncParam.java Mon Mar 25 11:39:38 2013 +0100 @@ -0,0 +1,146 @@ +import java.applet.Applet; +import netscape.javascript.JSObject; + +public class JavascriptFuncParam extends Applet { + + public DummyObject dummyObject = new DummyObject("DummyObject1"); + private JSObject window; + + private final String jsFunctionName = "JJSParameterTypeFunc"; + + public void init() { + window = JSObject.getWindow(this); + String initStr = "JToJSFuncParam applet initialized."; + System.out.println(initStr); + } + + //methods for testing calling JavaScript function with different parameters + public void jjsCallintParam(){ + int i = 1; + passToJavascript(i); + } + + public void jjsCalldoubleParam(){ + double d = 1.1; + passToJavascript(d); + } + + public void jjsCallfloatParam(){ + float f = 1.5f; + passToJavascript(f); + } + + public void jjsCalllongParam(){ + long l = 10000; + passToJavascript(l); + } + + public void jjsCallshortParam(){ + short s = 1; + passToJavascript(s); + } + + public void jjsCallbyteParam(){ + byte b = 1; + passToJavascript(b); + } + + public void jjsCallcharParam(){ + char c = 'a'; + passToJavascript(c, "97"); + } + + public void jjsCallbooleanParam(){ + boolean b = true; + passToJavascript(b); + } + + public void jjsCallIntegerParam(){ + Integer i = new Integer(1); + passToJavascript(i); + } + + public void jjsCallDoubleParam(){ + Double i = new Double(1.5); + passToJavascript(i); + } + + public void jjsCallFloatParam(){ + Float i = new Float(1.5); + passToJavascript(i); + } + + public void jjsCallLongParam(){ + Long i = new Long(10000); + passToJavascript(i); + } + + public void jjsCallShortParam(){ + Short i = new Short((short)1); + passToJavascript(i); + } + + public void jjsCallByteParam(){ + Byte i = new Byte((byte)1); + passToJavascript(i); + } + + public void jjsCallBooleanParam(){ + Boolean i = new Boolean(true); + passToJavascript(i); + } + + public void jjsCallCharacterParam(){ + Character i = new Character('a');//97 + passToJavascript(i, "97"); + } + + public void jjsCallStringParam(){ + String i = "teststring"; + passToJavascript(i, "\"teststring\""); + } + + public void jjsCallDummyObjectParam(){ + DummyObject i = new DummyObject("dummy1"); + passToJavascript(i, "applet.getNewDummyObject(\"dummy1\")"); + } + + public void jjsCallJSObjectParam(){ + JSObject i = window; + passToJavascript(i, "window"); + } + + private void passToJavascript(Object obj, String repr){ + window.call(jsFunctionName, new Object[]{ obj, repr }); + } + + private void passToJavascript(Object obj){ + passToJavascript(obj, obj.toString()); + } + + // auxiliary methods and class: + public void printOut(String s) { + System.out.println(s); + } + + public class DummyObject { + private String str; + + public DummyObject(String s) { + this.str = s; + } + + public void setStr(String s) { + this.str = s; + } + + public String toString() { + return str; + } + } + + public DummyObject getNewDummyObject(String s){ + return new DummyObject(s); + } + +} diff -r e5b423479f99 -r 4deea6488148 tests/reproducers/simple/JavascriptFuncParam/testcases/JavascriptFuncParamTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncParam/testcases/JavascriptFuncParamTest.java Mon Mar 25 11:39:38 2013 +0100 @@ -0,0 +1,234 @@ +/* JToJSFuncParamTest.java +Copyright (C) 2012 Red Hat, Inc. + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 2. + +IcedTea is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. + */ + +import net.sourceforge.jnlp.ProcessResult; +import net.sourceforge.jnlp.ServerAccess; +import net.sourceforge.jnlp.browsertesting.BrowserTest; +import net.sourceforge.jnlp.browsertesting.Browsers; +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; +import net.sourceforge.jnlp.annotations.NeedsDisplay; +import net.sourceforge.jnlp.annotations.TestInBrowsers; +import net.sourceforge.jnlp.annotations.KnownToFail; +import org.junit.Assert; + +import org.junit.Test; + +public class JavascriptFuncParamTest extends BrowserTest { + + public final boolean doNotRunInOpera = true; + + private final String initStr = "JToJSFuncParam applet initialized."; + private final String afterStr = "afterTests"; + private final String globStart = "Call with "; + private final String globEnd = " from JS"; + private final String jEnd = " from J"; + + private class CountingClosingListenerImpl extends CountingClosingListener { + + @Override + protected boolean isAlowedToFinish(String s) { + return (s.contains(initStr) && s.contains(afterStr)); + } + } + + private void evaluateStdoutContents(ProcessResult pr) { + // Assert that the applet was initialized. + Assert.assertTrue("JToJSFuncParamTest stdout should contain " + initStr + " but it didnt.", pr.stdout.contains(initStr)); + + // Assert that the results of two calls of js func are the same + + int gs = pr.stdout.indexOf(globStart); + int ge = pr.stdout.indexOf(globEnd); + int je = pr.stdout.indexOf(jEnd); + int jss = je + jEnd.length() + 1; + + String javaOutput = pr.stdout.substring(gs, je); + String jsOutput = pr.stdout.substring(jss, ge); + + Assert.assertTrue("JToJSFuncParam: the J and JS outputs are not equal!", javaOutput.equals(jsOutput)); + } + + private void javaToJSFuncParamTest(String funcStr) throws Exception { + + if( doNotRunInOpera){ + Browsers b = server.getCurrentBrowser().getID(); + if(b == Browsers.opera){ + return; + } + } + + String strURL = "/JavascriptFuncParam.html?" + funcStr; + ProcessResult pr = server.executeBrowser(strURL, new CountingClosingListenerImpl(), new CountingClosingListenerImpl()); + evaluateStdoutContents(pr); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_int_Test() throws Exception { + javaToJSFuncParamTest("jjsCallintParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_double_Test() throws Exception { + javaToJSFuncParamTest("jjsCalldoubleParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_float_Test() throws Exception { + javaToJSFuncParamTest("jjsCallfloatParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_long_Test() throws Exception { + javaToJSFuncParamTest("jjsCalllongParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_short_Test() throws Exception { + javaToJSFuncParamTest("jjsCallshortParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_byte_Test() throws Exception { + javaToJSFuncParamTest("jjsCallbyteParam"); + } + + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_char_Test() throws Exception { + javaToJSFuncParamTest("jjsCallcharParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_boolean_Test() throws Exception { + javaToJSFuncParamTest("jjsCallbooleanParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_Integer_Test() throws Exception { + javaToJSFuncParamTest("jjsCallIntegerParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_Double_Test() throws Exception { + javaToJSFuncParamTest("jjsCallDoubleParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_Float_Test() throws Exception { + javaToJSFuncParamTest("jjsCallFloatParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_Long_Test() throws Exception { + javaToJSFuncParamTest("jjsCallLongParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_Short_Test() throws Exception { + javaToJSFuncParamTest("jjsCallShortParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_Byte_Test() throws Exception { + javaToJSFuncParamTest("jjsCallByteParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_Boolean_Test() throws Exception { + javaToJSFuncParamTest("jjsCallBooleanParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_Character_Test() throws Exception { + javaToJSFuncParamTest("jjsCallCharacterParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_String_Test() throws Exception { + javaToJSFuncParamTest("jjsCallStringParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncParam_DummyObject_Test() throws Exception { + javaToJSFuncParamTest("jjsCallDummyObjectParam"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + //@KnownToFail(failsIn={Browsers.google-chrome, Browsers.chromium-browser}) + public void AppletJToJSFuncParam_JSObject_Test() throws Exception { + javaToJSFuncParamTest("jjsCallJSObjectParam"); + } + +} From jvanek at redhat.com Mon Mar 25 03:54:33 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Mon, 25 Mar 2013 11:54:33 +0100 Subject: webstart problem In-Reply-To: <514C80FE.1060500@mizera.cz> References: <514C80FE.1060500@mizera.cz> Message-ID: <51502CE9.3090103@redhat.com> Hi! I have cheked the issue and I'm afraid it is not in IcedTea-Web but in BounceCastle extension. IcedTea-Web do not allow broken certificates, but it seems that fio's BounceCastle's is expired. output from jarsigner is broken for fio's BounceCastle jar and (little bit for latest official release too ;) ): [jvanek at jvanek dta]$ jarsigner --verify signer_client.jar jar verified. [jvanek at jvanek dta]$ jarsigner --verify bcprov-jdk15on-148.jar jar verified. Warning: This jar contains entries whose certificate chain is not validated. [jvanek at jvanek dta]$ jarsigner --verify bcprov-jdk16-146.jar jar verified. Warning: This jar contains entries whose signer certificate has expired. This jar contains entries whose certificate chain is not validated. You can see taht fio's one is expired. Thats why IcedTea-Web is rejecting it. And thats also why your java command have worked - because it do not verify certificates. For to-be-sure I have cc'd bounce castle too, and you should contact fio support again. I have successfully run your signing app with selfsigned (on my own) bcprov-jdk16-146.jar on my local server so I believe my conclusions are correct. If issues remian, I will cc dev-crypto-request at bouncycastle.org to get some more information from them. J. On 03/22/2013 05:04 PM, kapetr at mizera.cz wrote: > Hello, > > it fails launching/running this: > https://www.fio.cz/apps/fiosign.php > > It is signing app for internet banking. > > I use IcedTea-plugin/netx/... ver. 1.2.2 in Ubuntu 12.04 64b. > > The stderr log is in attachment. > > Running the downloaded app works: > > wget -N http://www.fio.cz/apps/signer_client.jar > wget -N http://www.fio.cz/apps/bcprov-jdk16-146.jar > > java -cp bcprov-jdk16-146.jar:signer_client.jar cz.fio.signer.client.gui.Main > > The bank support sees problem in icedTea webstart support of Log4J and JAXB. > > Could please someone check this ? > I do not understand Java things at all. I'm just user. > > --kapetr From jfabriko at icedtea.classpath.org Mon Mar 25 06:07:59 2013 From: jfabriko at icedtea.classpath.org (jfabriko at icedtea.classpath.org) Date: Mon, 25 Mar 2013 13:07:59 +0000 Subject: /hg/icedtea-web: adding new reproducer JavascriptGet for reading... Message-ID: changeset 5cd74575f737 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=5cd74575f737 author: Jana Fabrikova date: Mon Mar 25 14:10:50 2013 +0100 adding new reproducer JavascriptGet for reading JS values from Java applet diffstat: ChangeLog | 13 + tests/reproducers/simple/JavascriptGet/resources/JavascriptGet.html | 27 + tests/reproducers/simple/JavascriptGet/resources/Javascript_Get.js | 14 + tests/reproducers/simple/JavascriptGet/resources/javascript-get.jnlp | 23 + tests/reproducers/simple/JavascriptGet/srcs/JavascriptGet.java | 91 ++++++ tests/reproducers/simple/JavascriptGet/testcases/JavascriptGetTest.java | 141 ++++++++++ 6 files changed, 309 insertions(+), 0 deletions(-) diffs (336 lines): diff -r 4deea6488148 -r 5cd74575f737 ChangeLog --- a/ChangeLog Mon Mar 25 11:39:38 2013 +0100 +++ b/ChangeLog Mon Mar 25 14:10:50 2013 +0100 @@ -1,3 +1,16 @@ +2013-03-25 Jana Fabrikova + + * tests/reproducers/simple/JavascriptGet/testcases/JavascriptGetTest.java + adding 7 new testcases for reading JS values from Java + * tests/reproducers/simple/JavascriptGet/resources/JavascriptGet.html + the html page for displaying browser tests + * tests/reproducers/simple/JavascriptGet/resources/Javascript_Get.js + auxiliary javascript functions + * tests/reproducers/simple/JavascriptGet/resources/javascript-get.jnlp + jnlp file for embedding the applet in the html page + * tests/reproducers/simple/JavascriptGet/srcs/JavascriptGet.java + the applet that reads values from javascript + 2013-03-25 Jana Fabrikova * tests/reproducers/simple/JavascriptFuncParam/testcases/JavascriptFuncParamTest.java diff -r 4deea6488148 -r 5cd74575f737 tests/reproducers/simple/JavascriptGet/resources/JavascriptGet.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptGet/resources/JavascriptGet.html Mon Mar 25 14:10:50 2013 +0100 @@ -0,0 +1,27 @@ + + + + Java JavaScript LiveConnect - Get values from applet + + + + + + + +

The JToJSGet html page

+ + + + + + + + + diff -r 4deea6488148 -r 5cd74575f737 tests/reproducers/simple/JavascriptGet/resources/Javascript_Get.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptGet/resources/Javascript_Get.js Mon Mar 25 14:10:50 2013 +0100 @@ -0,0 +1,14 @@ +function doJToJSGetTests(){ + + var applet = document.getElementById('jtojsGetApplet'); + + var urlArgs = document.URL.split("?"); + var testParams = urlArgs[1].split(";"); + var func = testParams[0]; + var value = decodeURIComponent(testParams[1]); + + eval('jsvar='+value); + eval('applet.'+func+'()'); + + applet.writeAfterTests(); +} diff -r 4deea6488148 -r 5cd74575f737 tests/reproducers/simple/JavascriptGet/resources/javascript-get.jnlp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptGet/resources/javascript-get.jnlp Mon Mar 25 14:10:50 2013 +0100 @@ -0,0 +1,23 @@ + + + + + Java to JavaScript LiveConnect - Get + IcedTea + + LiveConnect - tests for reading JavaScript values from Java. + + + + + + + + + + diff -r 4deea6488148 -r 5cd74575f737 tests/reproducers/simple/JavascriptGet/srcs/JavascriptGet.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptGet/srcs/JavascriptGet.java Mon Mar 25 14:10:50 2013 +0100 @@ -0,0 +1,91 @@ +import java.applet.Applet; +import java.util.Arrays; +import netscape.javascript.JSObject; + +public class JavascriptGet extends Applet { + + public DummyObject dummyObject = new DummyObject("DummyObject1"); + public Object value; + private JSObject window; + + private final String jsvar = "jsvar"; + + public void init() { + window = JSObject.getWindow(this); + + String initStr = "JToJSGet applet initialized."; + System.out.println(initStr); + } + + // methods for testing read from JavaScript variables + public void jjsReadInt() { +// value = new Integer(window.getMember(jsvar).toString()); + int num = ((Number) window.getMember(jsvar)).intValue(); + System.out.println(value); + } + + public void jjsReadDouble() { + value = new Double(window.getMember(jsvar).toString()); + System.out.println(value); + } + + public void jjsReadBoolean() { + value = new Boolean(window.getMember(jsvar).toString()); + System.out.println(value); + } + + public void jjsReadString() { + value = window.getMember(jsvar).toString(); + System.out.println(value); + } + + public void jjsReadObject() { + value = window.getMember(jsvar).toString(); + System.out.println(value); + } + + public void jjsRead1DArray() { + Object[] arrayvalue = (Object[]) window.getMember(jsvar); + + System.out.println(Arrays.toString(arrayvalue)); + } + + public void jjsRead2DArray() { + Object[][] arrayvalue = (Object[][])window.getMember(jsvar); + + System.out.println(Arrays.deepToString(arrayvalue)); + } + + public void jjsReadJSObject() { + JSObject jsobjectvalue = (JSObject) window.getMember(jsvar); + + System.out.println(jsobjectvalue); + } + + //auxiliary class DummyObject + public class DummyObject { + private String str; + + public DummyObject(String s) { + this.str = s; + } + + public void setStr(String s) { + this.str = s; + } + + public String toString() { + return str; + } + } + + //auxiliary methods: + public DummyObject getNewDummyObject(String s){ + return new DummyObject(s); + } + + public void writeAfterTests(){ + System.out.println("afterTests"); + } + +} diff -r 4deea6488148 -r 5cd74575f737 tests/reproducers/simple/JavascriptGet/testcases/JavascriptGetTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptGet/testcases/JavascriptGetTest.java Mon Mar 25 14:10:50 2013 +0100 @@ -0,0 +1,141 @@ +/* JToJSGetTest.java +Copyright (C) 2012 Red Hat, Inc. + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 2. + +IcedTea is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. + */ + +import net.sourceforge.jnlp.ProcessResult; +import net.sourceforge.jnlp.ServerAccess; +import net.sourceforge.jnlp.browsertesting.BrowserTest; +import net.sourceforge.jnlp.browsertesting.Browsers; +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; +import net.sourceforge.jnlp.annotations.NeedsDisplay; +import net.sourceforge.jnlp.annotations.TestInBrowsers; +import net.sourceforge.jnlp.annotations.KnownToFail; +import org.junit.Assert; + +import org.junit.Test; + +public class JavascriptGetTest extends BrowserTest { + + public final boolean doNotRunInOpera = true; + + private final String initStr = "JToJSGet applet initialized."; + private final String afterStr = "afterTests"; + + private class CountingClosingListenerImpl extends CountingClosingListener { + + @Override + protected boolean isAlowedToFinish(String s) { + + return (s.contains(initStr) && s.contains(afterStr)); + + } + } + + private void evaluateStdoutContents(String expectedStdout, ProcessResult pr) { + // Assert that the applet was initialized. + Assert.assertTrue("JToJSGetTest stdout should contain " + initStr + + " but it didnt.", pr.stdout.contains(initStr)); + + // Assert that the values get from JavaScript are ok + Assert.assertTrue("JToJSGet: the output should include: "+expectedStdout+", but it didnt.", pr.stdout.contains(expectedStdout)); + } + + private void javaToJSGetTest(String funcStr, String paramStr, String expectedVal) throws Exception { + + if( doNotRunInOpera){ + Browsers b = server.getCurrentBrowser().getID(); + if(b == Browsers.opera){ + return; + } + } + + String strURL = "/JavascriptGet.html?" + funcStr + ";" + paramStr; + ProcessResult pr = server.executeBrowser(strURL, new CountingClosingListenerImpl(), new CountingClosingListenerImpl()); + evaluateStdoutContents(expectedVal, pr); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSGet_double_Test() throws Exception { + javaToJSGetTest("jjsReadDouble", "1.1", "1.1"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSGet_boolean_Test() throws Exception { + javaToJSGetTest("jjsReadBoolean", "true", "true"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSGet_string_Test() throws Exception { + javaToJSGetTest("jjsReadString", "\"teststring\"", "teststring"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSGet_object_Test() throws Exception { + javaToJSGetTest("jjsReadObject", "applet.getNewDummyObject(\"dummy1\")", "dummy1"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + //@KnownToFail(failsIn={Browsers.midori, Browsers.epiphany, Browsers.google-chrome, Browsers.chromium-browser}) + public void AppletJToJSGet_1DArray_Test() throws Exception { + javaToJSGetTest("jjsRead1DArray", "[1,2,3]", "[1, 2, 3]"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + //@KnownToFail(failsIn={Browsers.midori, Browsers.epiphany, Browsers.google-chrome, Browsers.chromium-browser}) + public void AppletJToJSGet_2DArray_Test() throws Exception { + javaToJSGetTest("jjsRead2DArray", "[[1,2],[3,4]]","[[1, 2], [3, 4]]"); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSGet_JSObject_Test() throws Exception { + javaToJSGetTest("jjsReadJSObject", "window","Window]");//[object Window], [object DOMWindow] + } + +} From jfabriko at icedtea.classpath.org Mon Mar 25 06:46:43 2013 From: jfabriko at icedtea.classpath.org (jfabriko at icedtea.classpath.org) Date: Mon, 25 Mar 2013 13:46:43 +0000 Subject: /hg/icedtea-web: adding new reproducer JavascriptSet that test s... Message-ID: changeset 2b15b37a60e2 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=2b15b37a60e2 author: Jana Fabrikova date: Mon Mar 25 14:49:34 2013 +0100 adding new reproducer JavascriptSet that test setting javascript values from java diffstat: ChangeLog | 13 + tests/reproducers/simple/JavascriptSet/resources/JavascriptSet.html | 27 + tests/reproducers/simple/JavascriptSet/resources/Javascript_Set.js | 31 + tests/reproducers/simple/JavascriptSet/resources/javascript-set.jnlp | 23 + tests/reproducers/simple/JavascriptSet/srcs/JavascriptSet.java | 123 +++++ tests/reproducers/simple/JavascriptSet/testcases/JavascriptSetTest.java | 238 ++++++++++ 6 files changed, 455 insertions(+), 0 deletions(-) diffs (482 lines): diff -r 5cd74575f737 -r 2b15b37a60e2 ChangeLog --- a/ChangeLog Mon Mar 25 14:10:50 2013 +0100 +++ b/ChangeLog Mon Mar 25 14:49:34 2013 +0100 @@ -1,3 +1,16 @@ +2013-03-25 Jana Fabrikova + + * tests/reproducers/simple/JavascriptSet/testcases/JavascriptSetTest.java + adding 21 testcases for testing setting javascript variables from java + * tests/reproducers/simple/JavascriptSet/resources/JavascriptSet.html + the html page for displaying browser tests + * tests/reproducers/simple/JavascriptSet/resources/Javascript_Set.js + auxiliary javascript functions + * tests/reproducers/simple/JavascriptSet/resources/javascript-set.jnlp + jnlp file for embedding applet in the html page + * tests/reproducers/simple/JavascriptSet/srcs/JavascriptSet.java + the applet that sets javascript variables + 2013-03-25 Jana Fabrikova * tests/reproducers/simple/JavascriptGet/testcases/JavascriptGetTest.java diff -r 5cd74575f737 -r 2b15b37a60e2 tests/reproducers/simple/JavascriptSet/resources/JavascriptSet.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptSet/resources/JavascriptSet.html Mon Mar 25 14:49:34 2013 +0100 @@ -0,0 +1,27 @@ + + + + Java JavaScript LiveConnect - Set values from applet + + + + + + + +

The JToJSSet html page

+ + + + + + + + + diff -r 5cd74575f737 -r 2b15b37a60e2 tests/reproducers/simple/JavascriptSet/resources/Javascript_Set.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptSet/resources/Javascript_Set.js Mon Mar 25 14:49:34 2013 +0100 @@ -0,0 +1,31 @@ +function doJToJSSetTests(){ + + var applet = document.getElementById('jtojsSetApplet'); + + var urlArgs = document.URL.split("?"); + var func = urlArgs[1]; + + //pre-initialization of arrays + if(func === "jjsSet1DArray"){ + setvar = new Array(); + }else if(func === "jjsSet2DArray" ){ + setvar = new Array(); + setvar[1] = new Array(); + } + + //calling the applet function + eval('applet.'+func+'()'); + + //preparing jsvar value string for output + if(func === "jjsSet1DArray"){ + str = ""+setvar[1]; + }else if(func === "jjsSet2DArray" ){ + str = ""+setvar[1][1]; + }else if(func === "jjsSetObject" ){ + str = setvar.toString(); + }else{ + var str = ""+setvar; + } + + applet.printStrAndFinish(str); +} diff -r 5cd74575f737 -r 2b15b37a60e2 tests/reproducers/simple/JavascriptSet/resources/javascript-set.jnlp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptSet/resources/javascript-set.jnlp Mon Mar 25 14:49:34 2013 +0100 @@ -0,0 +1,23 @@ + + + + + Java to JavaScript LiveConnect - Set + IcedTea + + LiveConnect - tests for setting JS values from Java. + + + + + + + + + + diff -r 5cd74575f737 -r 2b15b37a60e2 tests/reproducers/simple/JavascriptSet/srcs/JavascriptSet.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptSet/srcs/JavascriptSet.java Mon Mar 25 14:49:34 2013 +0100 @@ -0,0 +1,123 @@ +import java.applet.Applet; +import netscape.javascript.JSObject; + +public class JavascriptSet extends Applet { + + private JSObject window; + + public void init() { + window = JSObject.getWindow(this); + String initStr = "JToJSSet applet initialized."; + System.out.println(initStr); + } + + // methods for testing setting of JavaScript variables + public void jjsSetInt() { + window.setMember("setvar", (int) 1); + } + + public void jjsSetInteger() { + window.setMember("setvar", new Integer(2)); + } + + public void jjsSetdouble() { + window.setMember("setvar", (double) 2.5); + } + + public void jjsSetDouble() { + window.setMember("setvar", new Double(2.5)); + } + + public void jjsSetfloat() { + window.setMember("setvar", (float) 2.5); + } + + public void jjsSetFloat() { + window.setMember("setvar", new Float(2.5)); + } + + public void jjsSetshort() { + window.setMember("setvar", (short) 3); + } + + public void jjsSetShort() { + window.setMember("setvar", new Short((short) 4)); + } + + public void jjsSetlong() { + window.setMember("setvar", (long) 4294967296L); + } + + public void jjsSetLong() { + window.setMember("setvar", new Long(4294967297L)); + } + + public void jjsSetbyte() { + window.setMember("setvar", (byte) 5); + } + + public void jjsSetByte() { + window.setMember("setvar", new Byte((byte) 6)); + } + + public void jjsSetchar() { + window.setMember("setvar", (char) 'a'); + } + + public void jjsSetCharacter() { + window.setMember("setvar", new Character('a')); + } + + public void jjsSetboolean() { + window.setMember("setvar", (boolean) true); + } + + public void jjsSetBoolean() { + window.setMember("setvar", new Boolean(true)); + } + + public void jjsSetString() { + window.setMember("setvar", "?????????$?????????"); + } + + public void jjsSetObject() { + DummyObject dummyObject = new DummyObject("DummyObject2"); + window.setMember("setvar", dummyObject); + } + + public void jjsSet1DArray() { + ((JSObject) window.getMember("setvar")).setSlot(1, 100); + } + + public void jjsSet2DArray() { + ((JSObject) ((JSObject) window.getMember("setvar")).getSlot(1)).setSlot(1, 200); + } + + public void jjsSetJSObject(){ + window.setMember("setvar", window); + } + + + // auxiliary class and method for writing output: + public void printStrAndFinish(String str){ + System.out.println(str); + System.out.println("afterTests"); + } + + public class DummyObject { + private String str; + + public DummyObject(String s) { + this.str = s; + } + + public void setStr(String s) { + this.str = s; + } + + public String toString() { + return str; + } + } + +} diff -r 5cd74575f737 -r 2b15b37a60e2 tests/reproducers/simple/JavascriptSet/testcases/JavascriptSetTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptSet/testcases/JavascriptSetTest.java Mon Mar 25 14:49:34 2013 +0100 @@ -0,0 +1,238 @@ +/* JToJSSetTest.java +Copyright (C) 2012 Red Hat, Inc. + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 2. + +IcedTea is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. + */ + +import net.sourceforge.jnlp.ProcessResult; +import net.sourceforge.jnlp.ServerAccess; +import net.sourceforge.jnlp.browsertesting.BrowserTest; +import net.sourceforge.jnlp.browsertesting.Browsers; +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; +import net.sourceforge.jnlp.annotations.NeedsDisplay; +import net.sourceforge.jnlp.annotations.TestInBrowsers; +import org.junit.Assert; + +import org.junit.Test; + +public class JavascriptSetTest extends BrowserTest { + + public final boolean doNotRunInOpera = true; + + private final String initStr = "JToJSSet applet initialized."; + private final String afterStr = "afterTests"; + + private class CountingClosingListenerImpl extends CountingClosingListener { + + @Override + protected boolean isAlowedToFinish(String s) { + return (s.contains(initStr) && s.contains(afterStr)); + } + } + + private void evaluateStdoutContents(String[] expectedStdoutsOR, ProcessResult pr) { + // Assert that the applet was initialized. + Assert.assertTrue("JToJSSetTest stdout should contain " + initStr + " but it didnt.", pr.stdout.contains(initStr)); + + // Assert that the values set from JavaScript are ok + boolean atLeastOne = false; + for(String s : expectedStdoutsOR){ + if(pr.stdout.contains(s)) atLeastOne = true; + } + Assert.assertTrue("JToJSSet: the output should include at least one of expected Stdouts, but it didnt.", atLeastOne); + } + + private void javaToJSSetTest(String urlEnd, String[] expectedValsOR) throws Exception { + + if( doNotRunInOpera){ + Browsers b = server.getCurrentBrowser().getID(); + if(b == Browsers.opera){ + return; + } + } + + String strURL = "/JavascriptSet.html?" + urlEnd; + ProcessResult pr = server.executeBrowser(strURL, new CountingClosingListenerImpl(), new CountingClosingListenerImpl()); + evaluateStdoutContents(expectedValsOR, pr); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_int_Test() throws Exception { + javaToJSSetTest("jjsSetInt", new String[] {"1"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_Integer_Test() throws Exception { + javaToJSSetTest("jjsSetInteger", new String[] {"2"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_double_Test() throws Exception { + javaToJSSetTest("jjsSetdouble", new String[] {"2.5"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_Double_Test() throws Exception { + javaToJSSetTest("jjsSetDouble", new String[] {"2.5"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_float_Test() throws Exception { + javaToJSSetTest("jjsSetfloat", new String[]{"2.5"}); //2.3->2.2999... + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_Float_Test() throws Exception { + javaToJSSetTest("jjsSetFloat", new String[] {"2.5"}); + } + + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_long_Test() throws Exception { + javaToJSSetTest("jjsSetlong", new String[] {"4294967296"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_Long_Test() throws Exception { + javaToJSSetTest("jjsSetLong", new String[] {"4294967297"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_short_Test() throws Exception { + javaToJSSetTest("jjsSetshort", new String[] {"3"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_Short_Test() throws Exception { + javaToJSSetTest("jjsSetShort", new String[] {"4"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_byte_Test() throws Exception { + javaToJSSetTest("jjsSetbyte", new String[] {"5"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_Byte_Test() throws Exception { + javaToJSSetTest("jjsSetByte", new String[] {"6"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_char_Test() throws Exception { + javaToJSSetTest("jjsSetchar", new String[] {"97"}); //i.e. 'a' + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_Character_Test() throws Exception { + javaToJSSetTest("jjsSetCharacter", new String[] {"97"}); //i.e. 'a' + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_boolean_Test() throws Exception { + javaToJSSetTest("jjsSetboolean", new String[] {"true"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_Boolean_Test() throws Exception { + javaToJSSetTest("jjsSetBoolean", new String[] {"true"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_String_Test() throws Exception { + javaToJSSetTest("jjsSetString", new String[] {"?????????$?????????"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_object_Test() throws Exception { + javaToJSSetTest("jjsSetObject", new String[] {"DummyObject2"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_1DArrayElement_Test() throws Exception { + javaToJSSetTest("jjsSet1DArray", new String[] {"100"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_2DArrayElement_Test() throws Exception { + javaToJSSetTest("jjsSet2DArray", new String[] {"200"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSSet_JSObject_Test() throws Exception { + javaToJSSetTest("jjsSetJSObject", new String[] {"[object Window]","[object DOMWindow]", "[object Object]"}); + } + +} From jfabriko at icedtea.classpath.org Mon Mar 25 07:12:13 2013 From: jfabriko at icedtea.classpath.org (jfabriko at icedtea.classpath.org) Date: Mon, 25 Mar 2013 14:12:13 +0000 Subject: /hg/icedtea-web: adding new reproducer JavascriptFuncReturn for ... Message-ID: changeset 4112d14feddf in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=4112d14feddf author: Jana Fabrikova date: Mon Mar 25 15:15:06 2013 +0100 adding new reproducer JavascriptFuncReturn for testing calling javascript functions with various return types from java diffstat: ChangeLog | 14 + tests/reproducers/simple/JavascriptFuncReturn/resources/JavascriptFuncReturn.html | 27 ++ tests/reproducers/simple/JavascriptFuncReturn/resources/Javascript_FuncReturn.js | 15 + tests/reproducers/simple/JavascriptFuncReturn/resources/javascript-funcreturn.jnlp | 23 + tests/reproducers/simple/JavascriptFuncReturn/srcs/JavascriptFuncReturn.java | 46 +++ tests/reproducers/simple/JavascriptFuncReturn/testcases/JavascriptFuncReturnTest.java | 125 ++++++++++ 6 files changed, 250 insertions(+), 0 deletions(-) diffs (277 lines): diff -r 2b15b37a60e2 -r 4112d14feddf ChangeLog --- a/ChangeLog Mon Mar 25 14:49:34 2013 +0100 +++ b/ChangeLog Mon Mar 25 15:15:06 2013 +0100 @@ -1,3 +1,17 @@ +2013-03-25 Jana Fabrikova + + * tests/reproducers/simple/JavascriptFuncReturn/testcases/JavascriptFuncReturnTest.java + adding 5 testcases for testing calling javascript functions with + various return types from java + * tests/reproducers/simple/JavascriptFuncReturn/resources/JavascriptFuncReturn.html + the html page for displaying browser tests + * tests/reproducers/simple/JavascriptFuncReturn/resources/Javascript_FuncReturn.js + auxiliary javascript functions + * tests/reproducers/simple/JavascriptFuncReturn/resources/javascript-funcreturn.jnlp + jnlp file for embedding applet in the html page + * tests/reproducers/simple/JavascriptFuncReturn/srcs/JavascriptFuncReturn.java + the applet that calls javascript functions + 2013-03-25 Jana Fabrikova * tests/reproducers/simple/JavascriptSet/testcases/JavascriptSetTest.java diff -r 2b15b37a60e2 -r 4112d14feddf tests/reproducers/simple/JavascriptFuncReturn/resources/JavascriptFuncReturn.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncReturn/resources/JavascriptFuncReturn.html Mon Mar 25 15:15:06 2013 +0100 @@ -0,0 +1,27 @@ + + + + Java JavaScript LiveConnect - Function Return types + + + + + + + +

The JToJSFuncReturn html page

+ + + + + + + + + diff -r 2b15b37a60e2 -r 4112d14feddf tests/reproducers/simple/JavascriptFuncReturn/resources/Javascript_FuncReturn.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncReturn/resources/Javascript_FuncReturn.js Mon Mar 25 15:15:06 2013 +0100 @@ -0,0 +1,15 @@ +function doJToJSFuncReturnTests(){ + var applet = document.getElementById('jtojsFuncReturnApplet'); + + var urlArgs = document.URL.split("?"); + value = eval(decodeURIComponent(urlArgs[1])); + + applet.jCallJSFunction(); + + applet.writeAfterTests(); +} + +function jsReturningFunction(){ + return value; +} + diff -r 2b15b37a60e2 -r 4112d14feddf tests/reproducers/simple/JavascriptFuncReturn/resources/javascript-funcreturn.jnlp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncReturn/resources/javascript-funcreturn.jnlp Mon Mar 25 15:15:06 2013 +0100 @@ -0,0 +1,23 @@ + + + + + Java to JavaScript LiveConnect - FuncReturn + IcedTea + + LiveConnect - tests for returning different types of values when calling JS function from Java. + + + + + + + + + + diff -r 2b15b37a60e2 -r 4112d14feddf tests/reproducers/simple/JavascriptFuncReturn/srcs/JavascriptFuncReturn.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncReturn/srcs/JavascriptFuncReturn.java Mon Mar 25 15:15:06 2013 +0100 @@ -0,0 +1,46 @@ +import java.applet.Applet; +import netscape.javascript.JSObject; + +public class JavascriptFuncReturn extends Applet { + + private JSObject window; + + public void init() { + window = JSObject.getWindow(this); + String initStr = "JToJSFuncReturn applet initialized."; + System.out.println(initStr); + } + + // method for testing return types of JavaScript function + public void jCallJSFunction() { + String returnTypeTestFuncName = "jsReturningFunction"; + Object ret = window.call(returnTypeTestFuncName, new Object[]{}); + System.out.println(ret.toString()); + } + + // auxiliary class and methods + public void writeAfterTests() { + System.out.print("afterTests"); + } + + public class DummyObject { + private String str; + + public DummyObject(String s) { + this.str = s; + } + + public void setStr(String s) { + this.str = s; + } + + public String toString() { + return str; + } + } + + public DummyObject getNewDummyObject(String s){ + return new DummyObject(s); + } + +} diff -r 2b15b37a60e2 -r 4112d14feddf tests/reproducers/simple/JavascriptFuncReturn/testcases/JavascriptFuncReturnTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/reproducers/simple/JavascriptFuncReturn/testcases/JavascriptFuncReturnTest.java Mon Mar 25 15:15:06 2013 +0100 @@ -0,0 +1,125 @@ +/* JToJSFuncReturnTest.java +Copyright (C) 2012 Red Hat, Inc. + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 2. + +IcedTea is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. + */ + +import net.sourceforge.jnlp.ProcessResult; +import net.sourceforge.jnlp.ServerAccess; +import net.sourceforge.jnlp.browsertesting.BrowserTest; +import net.sourceforge.jnlp.browsertesting.Browsers; +import net.sourceforge.jnlp.closinglisteners.CountingClosingListener; +import net.sourceforge.jnlp.annotations.NeedsDisplay; +import net.sourceforge.jnlp.annotations.TestInBrowsers; +import org.junit.Assert; + +import org.junit.Test; + +public class JavascriptFuncReturnTest extends BrowserTest { + + public final boolean doNotRunInOpera = true; + + private final String initStr = "JToJSFuncReturn applet initialized."; + private final String afterStr = "afterTests"; + + private class CountingClosingListenerImpl extends CountingClosingListener { + + @Override + protected boolean isAlowedToFinish(String s) { + return (s.contains(initStr) && s.contains(afterStr)); + } + } + + private void evaluateStdoutContents(String[] expectedStdoutsOR, ProcessResult pr) { + // Assert that the applet was initialized. + Assert.assertTrue("JToJSFuncReturnTest stdout should contain " + initStr + " but it didnt.", pr.stdout.contains(initStr)); + + // Assert that the values set from JavaScript are ok + boolean atLeastOne = false; + for(String s : expectedStdoutsOR){ + if(pr.stdout.contains(s)) atLeastOne = true; + } + Assert.assertTrue("JToJSFuncReturn: the output should include at least one of expected Stdouts, but it didnt.", atLeastOne); + } + + private void javaToJSFuncReturnTest(String urlEnd, String[] expectedValsOR) throws Exception { + + if( doNotRunInOpera){ + Browsers b = server.getCurrentBrowser().getID(); + if(b == Browsers.opera){ + return; + } + } + + String strURL = "/JavascriptFuncReturn.html?" + urlEnd; + ProcessResult pr = server.executeBrowser(strURL, new CountingClosingListenerImpl(), new CountingClosingListenerImpl()); + evaluateStdoutContents(expectedValsOR, pr); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncReturn_number_Test() throws Exception { + javaToJSFuncReturnTest("123", new String[] {"123"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncReturn_boolean_Test() throws Exception { + javaToJSFuncReturnTest("true", new String[] {"true"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncReturn_String_Test() throws Exception { + javaToJSFuncReturnTest("\"?????????$?????????\"", new String[] {"?????????$?????????"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncReturn_Object_Test() throws Exception { + javaToJSFuncReturnTest("applet.getNewDummyObject(\"dummy1\")", new String[] {"dummy1"}); + } + + @Test + @TestInBrowsers(testIn = { Browsers.all }) + @NeedsDisplay + public void AppletJToJSFuncReturn_JSObject_Test() throws Exception { + javaToJSFuncReturnTest("window", new String[] {"[object Window]", "[object DOMWindow]"}); + } + +} From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 08:44:01 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 15:44:01 +0000 Subject: [Bug 1356] New: [IcedTea8] Update default project in configure help Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1356 Bug ID: 1356 Summary: [IcedTea8] Update default project in configure help Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-March/022396.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/e6892408/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 08:44:44 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 15:44:44 +0000 Subject: [Bug 1356] [IcedTea8] Update default project in configure help In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1356 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/0b26e7ac/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 08:44:44 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 15:44:44 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1356 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/b4b7eca8/attachment.html From gnu.andrew at redhat.com Mon Mar 25 08:45:48 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Mon, 25 Mar 2013 11:45:48 -0400 (EDT) Subject: [PATCH] fix configure --help In-Reply-To: <20130321091024.GA29368@linux-xtv2.site> Message-ID: <321516424.23511117.1364226348322.JavaMail.root@redhat.com> ----- Original Message ----- > Hi, > > following patch fixes a help string for --with-project. It changes > jdk7/jdk8 and prints jdk8 as a default value, instead of icedtea. > > It is made on top of 2469:14ea939ddd75 from > http://icedtea.classpath.org/hg/icedtea/ > > 2013-03-21 Michal Vyskocil > > jdk8 is default value for --with-project > * acinclude.m4: Updated. > > Regards > Michal Vyskocil > Tracked here: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1356 -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 08:50:59 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 15:50:59 +0000 Subject: [Bug 1357] New: [IcedTea8] Make XRender mandatory Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1357 Bug ID: 1357 Summary: [IcedTea8] Make XRender mandatory Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: x86_64 OS: Linux Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org XRender should always be checked for, as it is no longer conditional as it was in 6: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-March/022402.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/bfb5d1c7/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 08:51:45 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 15:51:45 +0000 Subject: [Bug 1357] [IcedTea8] Make XRender mandatory In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1357 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/80dd150a/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 08:51:45 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 15:51:45 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1357 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/3fdb5480/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 08:54:56 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 15:54:56 +0000 Subject: [Bug 1358] New: [IcedTea7] Make XRender mandatory Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1358 Bug ID: 1358 Summary: [IcedTea7] Make XRender mandatory Classification: Unclassified Product: IcedTea Version: 7-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org XRender should always be checked for, as it is no longer conditional as it was in 6: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-March/022402.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/7db95942/attachment.html From gnu.andrew at redhat.com Mon Mar 25 09:10:56 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Mon, 25 Mar 2013 12:10:56 -0400 (EDT) Subject: [PATCH] make xrender mandatory In-Reply-To: <2002513555.22221079.1363868183940.JavaMail.root@redhat.com> Message-ID: <1062256348.23530473.1364227856986.JavaMail.root@redhat.com> ----- Original Message ----- > ----- Original Message ----- > > On Thu, Mar 21, 2013 at 11:02:11AM +0100, Michal Vyskocil wrote: > > > Hi, > > > > > > the build have ended with an error, because libXrender-devel has > > > been > > > missing. > > > > now with patch attached > > > > Regards > > Michal Vyskocil > > > > > > > > In file included from > > > /home/mvyskocil/work/JVM/openjdk/icedtea/openjdk.build-boot/jdk/gensrc_x11wrappers/sizer.64.c:11:0: > > > /home/mvyskocil/work/JVM/openjdk/icedtea/openjdk-boot/jdk/src/solaris/native/sun/awt/awt_p.h:51:36: > > > fatal error: X11/extensions/Xrender.h: No such file or directory > > > compilation terminated. > > > gmake[3]: *** > > > [/home/mvyskocil/work/JVM/openjdk/icedtea/openjdk.build-boot/jdk/gensrc_x11wrappers/sizer.64.exe] > > > Error 1 > > > > > > Looking on configure.ac, the --enable-xrender seems to be > > > expected, but no AC_ARG_ENABLE([xrender], has been found. And > > > looking on > > > awt_p.h it seems that Xrender.h is mandatory, thus I've made it > > > mandatory in configure.ac as well. > > > > > > 2013-03-21 Michal Vyskocil > > > > > > * configure.ac: > > > (XRENDER): Make it mandatory. > > > > > > Regards > > > Michal Vyskocil > > > > > > > > Nice catch. I wonder if we fixed that in 7 too. 8 forked from 7 > when 2.0 was released. > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > Broken in 7 too: 7: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1358 8: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1357 -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 09:54:03 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 16:54:03 +0000 Subject: [Bug 1359] New: [IcedTea8] Check for /usr/lib64 JVMs and generic JPackage alternative Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1359 Bug ID: 1359 Summary: [IcedTea8] Check for /usr/lib64 JVMs and generic JPackage alternative Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-March/022411.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/3a511152/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 09:55:44 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 16:55:44 +0000 Subject: [Bug 1359] [IcedTea8] Check for /usr/lib64 JVMs and generic JPackage alternative In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1359 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/0a9beea1/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 09:55:44 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 16:55:44 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1359 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/edcb9b73/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 10:00:38 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 17:00:38 +0000 Subject: [Bug 1360] New: [IcedTea7] Check for /usr/lib64 JVMs and generic JPackage alternative Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1360 Bug ID: 1360 Summary: [IcedTea7] Check for /usr/lib64 JVMs and generic JPackage alternative Classification: Unclassified Product: IcedTea Version: 7-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-March/022411.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/3a18f90a/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 10:04:21 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 17:04:21 +0000 Subject: [Bug 1274] [TRACKER] IcedTea 2.4.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1274 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |728 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/7009f599/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 10:06:08 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 17:06:08 +0000 Subject: [Bug 1360] [IcedTea7] Check for /usr/lib64 JVMs and generic JPackage alternative In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1360 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1274 Target Milestone|--- |2.4.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/30ea5ed4/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 10:06:08 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 17:06:08 +0000 Subject: [Bug 1274] [TRACKER] IcedTea 2.4.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1274 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1360 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/0735fb47/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 10:06:50 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 17:06:50 +0000 Subject: [Bug 1358] [IcedTea7] Make XRender mandatory In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1358 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1274 Target Milestone|--- |2.4.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/106622d5/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 10:06:50 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 17:06:50 +0000 Subject: [Bug 1274] [TRACKER] IcedTea 2.4.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1274 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1358 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/1e3c58d1/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 10:08:34 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 17:08:34 +0000 Subject: [Bug 1361] New: [IcedTea6] Check for /usr/lib64 JVMs and generic JPackage alternative Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1361 Bug ID: 1361 Summary: [IcedTea6] Check for /usr/lib64 JVMs and generic JPackage alternative Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-March/022411.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/066bb3f2/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 11:05:25 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 18:05:25 +0000 Subject: [Bug 1342] java.lang.ArrayIndexOutOfBoundsException - LOG4j In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1342 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |WONTFIX Severity|critical |normal --- Comment #3 from Andrew John Hughes --- IcedTea 1.9.8 is no longer supported. Please re-open against a current version with a reproducer. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/74d4986b/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 11:12:54 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 18:12:54 +0000 Subject: [Bug 1336] [IcedTea6] Bootstrap failure on Fedora 17/18 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1336 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |6-1.11.10 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/e2d11d29/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 11:14:46 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 18:14:46 +0000 Subject: [Bug 1362] New: [IcedTea6] Fedora 19 / rawhide FTBFS SIGILL Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1362 Bug ID: 1362 Summary: [IcedTea6] Fedora 19 / rawhide FTBFS SIGILL Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: arm OS: Linux Status: NEW Severity: normal Priority: P3 Component: Thumb2 JIT Assignee: aph at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/0303f74a/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 11:17:50 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 18:17:50 +0000 Subject: [Bug 1362] [IcedTea6] Fedora 19 / rawhide FTBFS SIGILL In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1362 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |6-1.11.10 --- Comment #1 from Andrew John Hughes --- http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot/rev/4e4dd75d54e7 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/1b1952eb/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 11:18:37 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 18:18:37 +0000 Subject: [Bug 1363] New: [IcedTea7] Fedora 19 / rawhide FTBFS SIGILL Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1363 Bug ID: 1363 Summary: [IcedTea7] Fedora 19 / rawhide FTBFS SIGILL Classification: Unclassified Product: IcedTea Version: 7-hg Hardware: arm OS: Linux Status: NEW Severity: normal Priority: P3 Component: Thumb2 JIT Assignee: aph at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/hotspot/rev/4e4dd75d54e7 2.1 & 2.3 need to use this updated version. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/8912e6d4/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 11:22:03 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 18:22:03 +0000 Subject: [Bug 1363] [IcedTea7] Fedora 19 / rawhide FTBFS SIGILL In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1363 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|aph at redhat.com |gnu.andrew at redhat.com Target Milestone|--- |2.1.8 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/32718dd4/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:03:25 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:03:25 +0000 Subject: [Bug 1272] [TRACKER] IcedTea6 1.13 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1272 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1361 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/6ef9a0d8/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:03:25 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:03:25 +0000 Subject: [Bug 1361] [IcedTea6] Check for /usr/lib64 JVMs and generic JPackage alternative In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1361 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1272 Target Milestone|--- |6-1.13.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/58cdde68/attachment.html From gnu.andrew at redhat.com Mon Mar 25 12:04:50 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Mon, 25 Mar 2013 15:04:50 -0400 (EDT) Subject: [PATCH] search alternatives for system jdk In-Reply-To: <1089412477.22290380.1363875194209.JavaMail.root@redhat.com> Message-ID: <1511485124.23617214.1364238289999.JavaMail.root@redhat.com> ----- Original Message ----- > > > ----- Original Message ----- > > On Thu, Mar 21, 2013 at 08:20:25AM -0400, Andrew Hughes wrote: > > > > > > > > > ----- Original Message ----- > > > > Hi, > > > > > > > > attached patch adds the /etc/alternatives/java_sdk_openjdk to > > > > the > > > > list > > > > of directories where system jdk is searched. It will work on > > > > all > > > > distros > > > > using jpackage.org style alternatives layout and which don't > > > > install > > > > 64bit jvm into /usr/lib/jvm. > > > > > > > > It is made on top of 2469:14ea939ddd75 from > > > > http://icedtea.classpath.org/hg/icedtea/ > > > > > > > > 2013-03-21 Michal Vyskocil > > > > > > > > search /etc/alternatives/java_sdk_openjdk for system jdk. > > > > * acinclude.m4: add alternatives into a list. > > > > * INSTALL: Updated. > > > > > > > > Regards > > > > Michal Vyskocil > > > > > > > > > > I updated this to check specifically for 7 & 8 already, and to > > > drop > > > 6 permanently and gcj for now. > > > > > > http://icedtea.classpath.org/hg/icedtea/rev/04e4a665e0da > > > > > > The alternatives one could be added to all branches as a last > > > ditch > > > attempt though. We don't know which version it is so the others > > > are preferable. > > > > I see - then can you just add /usr/lib64/jvm/java-1.[78].0-openjdk > > to > > the end of each list? This will cover SUSE packaging and will stay > > clear > > in which version and vendor is the default one. > > > > Those are there: > > ICEDTEA7_VMS="/usr/lib/jvm/icedtea7 /usr/lib/jvm/java-1.7.0-openjdk" > ICEDTEA8_VMS="/usr/lib/jvm/icedtea8 /usr/lib/jvm/java-1.8.0-openjdk" > > > Regards > > Michal Vyskocil > > > > > -- > > > Andrew :) > > > > > > Free Java Software Engineer > > > Red Hat, Inc. (http://www.redhat.com) > > > > > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > > > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > > > > > > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > 6: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1361 7: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1360 8: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1359 -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:33:26 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:33:26 +0000 Subject: [Bug 1364] New: [IcedTea8] Replace hgforest support Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1364 Bug ID: 1364 Summary: [IcedTea8] Replace hgforest support Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org The forest extension is now unmaintained and the --enable-hg build should use an alternate way of obtaining the OpenJDK source code, as upstream does. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/1fa82e23/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:34:05 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:34:05 +0000 Subject: [Bug 1364] [IcedTea8] Replace hgforest support In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1364 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/c3d5bc23/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:34:05 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:34:05 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1364 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/8428b7f6/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:34:36 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:34:36 +0000 Subject: [Bug 1365] New: [IcedTea7] Replace hgforest support Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1365 Bug ID: 1365 Summary: [IcedTea7] Replace hgforest support Classification: Unclassified Product: IcedTea Version: 7-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org The forest extension is now unmaintained and the --enable-hg build should use an alternate way of obtaining the OpenJDK source code, as upstream does. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/d7725447/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:35:22 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:35:22 +0000 Subject: [Bug 1365] [IcedTea7] Replace hgforest support In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1365 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1284 Target Milestone|--- |2.5.0 --- Comment #1 from Andrew John Hughes --- The forest extension is now unmaintained and the --enable-hg build should use an alternate way of obtaining the OpenJDK source code, as upstream does. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/8ca4c7eb/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:35:22 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:35:22 +0000 Subject: [Bug 1284] [TRACKER] IcedTea 2.5.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1284 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1365 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/cba6010a/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:36:07 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:36:07 +0000 Subject: [Bug 1366] New: [IcedTea6] Replace hgforest support Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1366 Bug ID: 1366 Summary: [IcedTea6] Replace hgforest support Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org The forest extension is now unmaintained and the --enable-hg build should use an alternate way of obtaining the OpenJDK source code, as upstream does. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/92d91af5/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:36:32 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:36:32 +0000 Subject: [Bug 1366] [IcedTea6] Replace hgforest support In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1366 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1272 Target Milestone|--- |6-1.13.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/18c2bdee/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:36:32 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:36:32 +0000 Subject: [Bug 1272] [TRACKER] IcedTea6 1.13 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1272 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1366 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/6282f062/attachment.html From andrew at icedtea.classpath.org Mon Mar 25 12:59:17 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:59:17 +0000 Subject: /hg/icedtea: 2 new changesets Message-ID: changeset 4b0fee4fb143 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=4b0fee4fb143 author: Andrew John Hughes date: Mon Mar 25 19:23:33 2013 +0000 PR1357: Make XRender mandatory 2013-03-25 Andrew John Hughes * THANKYOU: Add Michal Vyskocil. * NEWS: Updated. 2013-03-21 Michal Vyskocil PR1357: Make XRender mandatory * configure.ac: (XRENDER): Make it mandatory. changeset f4763c22ae76 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=f4763c22ae76 author: Andrew John Hughes date: Mon Mar 25 19:57:59 2013 +0000 PR1325: Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK 2012-08-16 Andrew John Hughes PR1325: Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK * Makefile.am: (rt-source-files.txt): Remove dead ICEDTEA_BOOTSTRAP_DIRS which has not been set for some time. (rt-class-files.stamp): Replace LACKS_SUN_AWT_TOOLKIT conditional with test of contents of ICEDTEA_BOOTSTRAP_CLASSES. Note; need to use grep as field contains whitespace. (rt.stamp): Likewise. * configure.ac: Remove sun.awt.SunToolkit check. * NEWS: Updated. diffstat: ChangeLog | 27 +++++++++++++++++++++++++++ Makefile.am | 40 ++++++++++++++++++---------------------- NEWS | 3 +++ THANKYOU | 1 + configure.ac | 12 ++++-------- 5 files changed, 53 insertions(+), 30 deletions(-) diffs (146 lines): diff -r fa408e2cd92e -r f4763c22ae76 ChangeLog --- a/ChangeLog Thu Mar 21 00:27:57 2013 +0000 +++ b/ChangeLog Mon Mar 25 19:57:59 2013 +0000 @@ -1,3 +1,30 @@ +2012-08-16 Andrew John Hughes + + PR1325: Only add classes to rt-source-files.txt if the + class (or one or more of its methods/fields) + are actually missing from the boot JDK + * Makefile.am: + (rt-source-files.txt): Remove dead ICEDTEA_BOOTSTRAP_DIRS + which has not been set for some time. + (rt-class-files.stamp): Replace LACKS_SUN_AWT_TOOLKIT + conditional with test of contents of ICEDTEA_BOOTSTRAP_CLASSES. + Note; need to use grep as field contains whitespace. + (rt.stamp): Likewise. + * configure.ac: + Remove sun.awt.SunToolkit check. + * NEWS: Updated. + +2013-03-25 Andrew John Hughes + + * THANKYOU: Add Michal Vyskocil. + * NEWS: Updated. + +2013-03-21 Michal Vyskocil + + PR1357: Make XRender mandatory + * configure.ac: + (XRENDER): Make it mandatory. + 2013-03-20 Andrew John Hughes * patches/nss-not-enabled-config.patch: diff -r fa408e2cd92e -r f4763c22ae76 Makefile.am --- a/Makefile.am Thu Mar 21 00:27:57 2013 +0000 +++ b/Makefile.am Mon Mar 25 19:57:59 2013 +0000 @@ -2063,10 +2063,6 @@ rt-source-files.txt: $(OPENJDK_BOOT_TREE) rm -f $@ - for dir in $(ICEDTEA_BOOTSTRAP_DIRS) ; \ - do \ - $(FIND) $(abs_top_builddir)/$$dir -name '*.java' >> $@; \ - done for files in $(ICEDTEA_BOOTSTRAP_CLASSES) ; \ do \ echo $$files >> $@ ; \ @@ -2075,28 +2071,28 @@ stamps/rt-class-files.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP) rt-source-files.txt mkdir -p lib/rt -if LACKS_SUN_AWT_TOOLKIT - $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) -d lib/rt \ - -classpath $(SYSTEM_JDK_DIR)/jre/lib/rt.jar \ - -sourcepath '$(SOURCEPATH_DIRS)' \ - -bootclasspath \'\' @rt-source-files.txt ; -endif + if echo $(ICEDTEA_BOOTSTRAP_CLASSES) | grep '\S' &> /dev/null ; then \ + $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) -d lib/rt \ + -classpath $(SYSTEM_JDK_DIR)/jre/lib/rt.jar \ + -sourcepath '$(SOURCEPATH_DIRS)' \ + -bootclasspath \'\' @rt-source-files.txt ; \ + fi mkdir -p stamps touch $@ stamps/rt.stamp: stamps/rt-class-files.stamp -if LACKS_SUN_AWT_TOOLKIT - (set -e ; \ - cd lib/rt ; \ - for dirs in $(ICEDTEA_BOOTSTRAP_RESOURCES) ; \ - do \ - destpath=`echo $$dirs|sed -e 's#$(LANGTOOLS)/##' -e 's#$(SHARE)/##'` ; \ - mkdir -p `dirname $$destpath` ; \ - cp -a ../../$$dirs $$destpath ; \ - done ; \ - $(ZIP) -qur $(STAGE1_BOOT_DIR)/jre/lib/rt.jar \ - com java javax sun ); -endif + if echo $(ICEDTEA_BOOTSTRAP_CLASSES) | grep '\S' &> /dev/null ; then \ + (set -e ; \ + cd lib/rt ; \ + for dirs in $(ICEDTEA_BOOTSTRAP_RESOURCES) ; \ + do \ + destpath=`echo $$dirs|sed -e 's#$(LANGTOOLS)/##' -e 's#$(SHARE)/##'` ; \ + mkdir -p `dirname $$destpath` ; \ + cp -a ../../$$dirs $$destpath ; \ + done ; \ + $(ZIP) -qur $(STAGE1_BOOT_DIR)/jre/lib/rt.jar \ + com java javax sun ); \ + fi mkdir -p stamps touch $@ diff -r fa408e2cd92e -r f4763c22ae76 NEWS --- a/NEWS Thu Mar 21 00:27:57 2013 +0000 +++ b/NEWS Mon Mar 25 19:57:59 2013 +0000 @@ -15,6 +15,9 @@ * Bug fixes - PR1346: Filter out -j option to make - PR1347: Update list of checked JDKs + - PR1357: Make XRender mandatory + - PR1325: Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) + are actually missing from the boot JDK New in release 2.0 (2011-XX-XX): diff -r fa408e2cd92e -r f4763c22ae76 THANKYOU --- a/THANKYOU Thu Mar 21 00:27:57 2013 +0000 +++ b/THANKYOU Mon Mar 25 19:57:59 2013 +0000 @@ -7,3 +7,4 @@ Alon Bar-Lev (alon.barlev at gmail.com) C. K. Jester-Young (cky944 at gmail.com) Damien Raude-Morvan (drazzib at drazzib.com) +Michal Vyskocil (mvyskocil at suse.cz) diff -r fa408e2cd92e -r f4763c22ae76 configure.ac --- a/configure.ac Thu Mar 21 00:27:57 2013 +0000 +++ b/configure.ac Mon Mar 25 19:57:59 2013 +0000 @@ -115,7 +115,6 @@ IT_PR40630_CHECK IT_CHECK_FOR_CLASS([JAVAX_ANNOTATION_RESOURCE], [javax.annotation.Resource]) IT_GETDTDTYPE_CHECK -IT_CHECK_FOR_CLASS([SUN_AWT_TOOLKIT], [sun.awt.SunToolkit]) IT_CHECK_ENABLE_WARNINGS IT_DIAMOND_CHECK @@ -212,14 +211,11 @@ AC_SUBST(XINERAMA_CFLAGS) AC_SUBST(XINERAMA_LIBS) -if test "x${ENABLE_XRENDER}" = "xyes" +PKG_CHECK_MODULES(XRENDER, xrender, [XRENDER_FOUND=yes], [XRENDER_FOUND=no]) +if test "x${XRENDER_FOUND}" = xno then - PKG_CHECK_MODULES(XRENDER, xrender, [XRENDER_FOUND=yes], [XRENDER_FOUND=no]) - if test "x${XRENDER_FOUND}" = xno - then - AC_MSG_ERROR([Could not find Xrender extension - \ -Try installing libXrender-devel or configure --disable-xrender.]) - fi + AC_MSG_ERROR([Could not find Xrender extension - \ +Try installing libXrender-devel.]) fi if test "x${ENABLE_SYSTEMTAP}" = xyes; then From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:59:26 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:59:26 +0000 Subject: [Bug 1357] [IcedTea8] Make XRender mandatory In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1357 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea?cmd=changeset;node=4b0fee4fb143 author: Andrew John Hughes date: Mon Mar 25 19:23:33 2013 +0000 PR1357: Make XRender mandatory 2013-03-25 Andrew John Hughes * THANKYOU: Add Michal Vyskocil. * NEWS: Updated. 2013-03-21 Michal Vyskocil PR1357: Make XRender mandatory * configure.ac: (XRENDER): Make it mandatory. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/87339a3a/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 12:59:31 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 19:59:31 +0000 Subject: [Bug 1325] [IcedTea8] Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1325 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea?cmd=changeset;node=f4763c22ae76 author: Andrew John Hughes date: Mon Mar 25 19:57:59 2013 +0000 PR1325: Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK 2012-08-16 Andrew John Hughes PR1325: Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK * Makefile.am: (rt-source-files.txt): Remove dead ICEDTEA_BOOTSTRAP_DIRS which has not been set for some time. (rt-class-files.stamp): Replace LACKS_SUN_AWT_TOOLKIT conditional with test of contents of ICEDTEA_BOOTSTRAP_CLASSES. Note; need to use grep as field contains whitespace. (rt.stamp): Likewise. * configure.ac: Remove sun.awt.SunToolkit check. * NEWS: Updated. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/346b11be/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:04:07 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:04:07 +0000 Subject: [Bug 1367] New: [IcedTea8] Add Omair's forwardports of the system library patches to 8 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1367 Bug ID: 1367 Summary: [IcedTea8] Add Omair's forwardports of the system library patches to 8 Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/91e68391/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:04:36 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:04:36 +0000 Subject: [Bug 1367] [IcedTea8] Add Omair's forwardports of the system library patches to 8 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1367 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/e50fda60/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:04:36 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:04:36 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1367 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/6459fecf/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:06:14 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:06:14 +0000 Subject: [Bug 1368] New: [IcedTea8] Ensure debug data is available for all libraries and binaries without redundant files Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1368 Bug ID: 1368 Summary: [IcedTea8] Ensure debug data is available for all libraries and binaries without redundant files Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Every library, from both the JDK and HotSpot, should have: 1. Debugging information when enabled. 2. No redundant .diz file. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/633442cc/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:07:04 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:07:04 +0000 Subject: [Bug 1368] [IcedTea8] Ensure debug data is available for all libraries and binaries without redundant files In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1368 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/077fa463/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:07:04 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:07:04 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1368 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/aaf27646/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:10:49 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:10:49 +0000 Subject: [Bug 1369] New: [IcedTea8] Remove outdated bootstrap configure tests or make them fail on error. Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1369 Bug ID: 1369 Summary: [IcedTea8] Remove outdated bootstrap configure tests or make them fail on error. Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org 6 & 7 provided bootstrap patches for a number of issues in older versions of gcj / GNU Classpath. With 8, we don't provide these so we should either remove the test or fail on error, depending on whether we used to patch them or not. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/ce9c0980/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:11:49 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:11:49 +0000 Subject: [Bug 1370] New: [IcedTea8] Provide option to build without debugging Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1370 Bug ID: 1370 Summary: [IcedTea8] Provide option to build without debugging Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Some users may want slimmer binaries so we should provide the option to build without debugging information enabled. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/acc28616/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:12:29 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:12:29 +0000 Subject: [Bug 1370] [IcedTea8] Provide option to build without debugging In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1370 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Target Milestone|--- |3.0.0 Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/afb6717b/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:13:10 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:13:10 +0000 Subject: [Bug 1369] [IcedTea8] Remove outdated bootstrap configure tests or make them fail on error. In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1369 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/2e621e79/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:13:10 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:13:10 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1369 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/10a89e5a/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:14:37 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:14:37 +0000 Subject: [Bug 1359] [IcedTea8] Check for /usr/lib64 JVMs and generic JPackage alternative In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1359 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/58576911/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:14:44 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:14:44 +0000 Subject: [Bug 1360] [IcedTea7] Check for /usr/lib64 JVMs and generic JPackage alternative In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1360 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/885ae886/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:14:51 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:14:51 +0000 Subject: [Bug 1361] [IcedTea6] Check for /usr/lib64 JVMs and generic JPackage alternative In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1361 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/25d07802/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:15:03 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:15:03 +0000 Subject: [Bug 1288] [IcedTea6] Allow JARs to optionally be compressed by setting COMPRESS_JARS In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1288 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/0850a454/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:15:35 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:15:35 +0000 Subject: [Bug 1289] [IcedTea8] Allow JARs to optionally be compressed by setting COMPRESS_JARS In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1289 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/e2ccc438/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:15:40 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:15:40 +0000 Subject: [Bug 1280] [IcedTea7] Shared class data archive should be generated post-build on architectures with the client VM In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1280 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/8d98822c/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:15:45 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:15:45 +0000 Subject: [Bug 1281] [IcedTea8] Shared class data archive should be generated post-build on architectures with the client VM In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1281 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/a7fec1b7/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:15:51 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:15:51 +0000 Subject: [Bug 1275] [IcedTea8] Provide option to turn off downloading of tarballs (--disable-downloading) In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1275 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/bdfd4a6e/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:16:42 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:16:42 +0000 Subject: [Bug 1273] [IcedTea8] Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1273 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |DUPLICATE --- Comment #2 from Andrew John Hughes --- *** This bug has been marked as a duplicate of bug 1325 *** -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/69bddc30/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:16:42 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:16:42 +0000 Subject: [Bug 1325] [IcedTea8] Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1325 --- Comment #2 from Andrew John Hughes --- *** Bug 1273 has been marked as a duplicate of this bug. *** -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/80115caa/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:16:42 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:16:42 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Bug 1282 depends on bug 1273, which changed state. Bug 1273 Summary: [IcedTea8] Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1273 What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |DUPLICATE -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/e018160d/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:17:46 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:17:46 +0000 Subject: [Bug 1317] [IcedTea6] Provide an option to build with a more up-to-date HotSpot In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1317 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/c90b68af/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:18:49 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:18:49 +0000 Subject: [Bug 1371] New: [IcedTea7] Provide option to build without debugging Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1371 Bug ID: 1371 Summary: [IcedTea7] Provide option to build without debugging Classification: Unclassified Product: IcedTea Version: 7-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Some users may want slimmer binaries so we should provide the option to build without debugging information enabled. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/7dd04196/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:19:28 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:19:28 +0000 Subject: [Bug 1371] [IcedTea7] Provide option to build without debugging In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1371 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1284 Target Milestone|--- |2.5.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/dbc48ecf/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:19:28 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:19:28 +0000 Subject: [Bug 1284] [TRACKER] IcedTea 2.5.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1284 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1371 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/1baca282/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:20:30 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:20:30 +0000 Subject: [Bug 1319] [IcedTea6] Support GIF lib v5 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1319 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/31cc3a01/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:22:08 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:22:08 +0000 Subject: [Bug 1372] New: [IcedTea6] Provide option to build without debugging Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1372 Bug ID: 1372 Summary: [IcedTea6] Provide option to build without debugging Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Some users may want slimmer binaries so we should provide the option to build without debugging information enabled. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/82b5e5ea/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:22:39 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:22:39 +0000 Subject: [Bug 1372] [IcedTea6] Provide option to build without debugging In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1372 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1272 Target Milestone|--- |6-1.13.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/4cdd2a6f/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:22:39 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:22:39 +0000 Subject: [Bug 1272] [TRACKER] IcedTea6 1.13 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1272 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1372 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/ad6fb3ea/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:26:47 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:26:47 +0000 Subject: [Bug 1373] New: [IcedTea6] Provide option to strip and link debugging info after build Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1373 Bug ID: 1373 Summary: [IcedTea6] Provide option to strip and link debugging info after build Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org $ objcopy --only-keep-debug libjvm.so libjvm.so.debug $ objcopy --strip-debug libjvm.so $ objcopy --add-gnu-debuglink=libjvm.so.debug libjvm.so -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/2c1e3796/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:27:20 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:27:20 +0000 Subject: [Bug 1272] [TRACKER] IcedTea6 1.13 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1272 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1373 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/9bc2db70/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:27:20 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:27:20 +0000 Subject: [Bug 1373] [IcedTea6] Provide option to strip and link debugging info after build In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1373 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1272 Target Milestone|--- |6-1.13.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/9da40f89/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:28:03 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:28:03 +0000 Subject: [Bug 1374] New: [IcedTea7] Provide option to strip and link debugging info after build Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1374 Bug ID: 1374 Summary: [IcedTea7] Provide option to strip and link debugging info after build Classification: Unclassified Product: IcedTea Version: 7-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org $ objcopy --only-keep-debug libjvm.so libjvm.so.debug $ objcopy --strip-debug libjvm.so $ objcopy --add-gnu-debuglink=libjvm.so.debug libjvm.so -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/6f19fb11/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:28:42 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:28:42 +0000 Subject: [Bug 1374] [IcedTea7] Provide option to strip and link debugging info after build In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1374 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1284 Target Milestone|--- |2.5.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/a4b5ecfb/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:28:42 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:28:42 +0000 Subject: [Bug 1284] [TRACKER] IcedTea 2.5.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1284 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1374 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/1715b5db/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:29:19 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:29:19 +0000 Subject: [Bug 1375] New: [IcedTea8] Provide option to strip and link debugging info after build Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1375 Bug ID: 1375 Summary: [IcedTea8] Provide option to strip and link debugging info after build Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org $ objcopy --only-keep-debug libjvm.so libjvm.so.debug $ objcopy --strip-debug libjvm.so $ objcopy --add-gnu-debuglink=libjvm.so.debug libjvm.so -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/0f8e43a3/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:30:37 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:30:37 +0000 Subject: [Bug 1375] [IcedTea8] Provide option to strip and link debugging info after build In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1375 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Target Milestone|--- |3.0.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/7f4b46c1/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:31:22 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:31:22 +0000 Subject: [Bug 1223] The return type is incompatible with Attribute.getDTDType() for icedtea6-1.11.5 build In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1223 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #802|application/octet-stream |text/plain mime type| | -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/b48cecd2/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:36:08 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:36:08 +0000 Subject: [Bug 1223] The return type is incompatible with Attribute.getDTDType() for icedtea6-1.11.5 build In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1223 --- Comment #10 from Andrew John Hughes --- This is the problem: configure:10685: checking if javax.xml.stream.events.Attribute.getDTDType() wrongly returns a QName gcj: 5: No such file or directory gcj: 5: No such file or directory gcj: unrecognized option '-cp' gcj: unrecognized option '-source' configure:10760: result: yes /home/c83001/local/bin/javac needs to support the usual javac arguments like -cp and -source. configure is trying to run: ${JAVAC} -cp . ${JAVACFLAGS} -source 5 -target 5 Test.java and failing because your javac doesn't accept -cp or -source. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/0b6057e7/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:39:19 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:39:19 +0000 Subject: [Bug 1376] New: [IcedTea6] Backport javac detection / usability test from IcedTea 2.x Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1376 Bug ID: 1376 Summary: [IcedTea6] Backport javac detection / usability test from IcedTea 2.x Classification: Unclassified Product: IcedTea Version: 6-1.11.5 Hardware: all OS: All Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Later tests for class availability etc. can fail because javac is broken. We should error out before this. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/aefad19c/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:39:47 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:39:47 +0000 Subject: [Bug 1376] [IcedTea6] Backport javac detection / usability test from IcedTea 2.x In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1376 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1272 Target Milestone|--- |6-1.13.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/212ccc2b/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:39:47 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:39:47 +0000 Subject: [Bug 1272] [TRACKER] IcedTea6 1.13 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1272 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1376 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/2e6aeb0b/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:40:39 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:40:39 +0000 Subject: [Bug 1377] New: [IcedTea8] Forwardport javac detection / usability test from IcedTea 2.x Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1377 Bug ID: 1377 Summary: [IcedTea8] Forwardport javac detection / usability test from IcedTea 2.x Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Later tests for class availability etc. can fail because javac is broken. We should error out before this. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/e131bff9/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:41:02 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:41:02 +0000 Subject: [Bug 1377] [IcedTea8] Forwardport javac detection / usability test from IcedTea 2.x In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1377 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/586f96de/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:41:02 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:41:02 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1377 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/8206aae8/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 13:42:11 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 20:42:11 +0000 Subject: [Bug 1223] The return type is incompatible with Attribute.getDTDType() for icedtea6-1.11.5 build In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1223 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |INVALID --- Comment #11 from Andrew John Hughes --- http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1376 will help such builds in having configure error out, but you really need to fix javac. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/7c1be7c6/attachment.html From gnu.andrew at redhat.com Mon Mar 25 14:47:58 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Mon, 25 Mar 2013 17:47:58 -0400 (EDT) Subject: Two AArch64-related patches In-Reply-To: <514C35B5.1080804@redhat.com> Message-ID: <552628385.23675722.1364248078742.JavaMail.root@redhat.com> ----- Original Message ----- > Michal Vyskocil writes: > > > I'm a maintainer of openjdk for SUSE and recently I've got two > > patches > > from our AArch64 team for openjdk7. I have no idea if porting of > > openjdk7 is important for this group, but it is probably better to > > try > > it. > > You may be aware that there is an AArch64 porting project. > > Mailing List > aarch64-dev at openjdk.java.net > http://mail.openjdk.java.net/mailman/listinfo/aarch64-dev > > The actual source code still isn't there, but hopefully will be as > soon as we get all the legal details sorted out. > Is there an intention to backport the AArch64 port to 7? > Now for the patch itself: > > > --- icedtea-2.3.7/openjdk/hotspot/src/os/linux/vm/os_linux.cpp > > +++ icedtea-2.3.7/openjdk/hotspot/src/os/linux/vm/os_linux.cpp > > @@ -1893,7 +1893,8 @@ void * os::dll_load(const char *filename > > {EM_MIPS, EM_MIPS, ELFCLASS32, ELFDATA2MSB, > > (char*)"MIPS"}, > > {EM_PARISC, EM_PARISC, ELFCLASS32, ELFDATA2MSB, > > (char*)"PARISC"}, > > {EM_68K, EM_68K, ELFCLASS32, ELFDATA2MSB, > > (char*)"M68k"}, > > - {EM_SH, EM_SH, ELFCLASS32, ELFDATA2LSB, > > (char*)"SH"} /* Support little endian only*/ > > + {EM_SH, EM_SH, ELFCLASS32, ELFDATA2LSB, > > (char*)"SH"}, /* Support little endian only*/ > > + {EM_AARCH64, EM_AARCH64, ELFCLASS64, ELFDATA2LSB, > > (char*)"AARCH64"} /* Support little endian only*/ > > }; > > > > #if (defined IA32) > > @@ -1926,6 +1927,8 @@ void * os::dll_load(const char *filename > > static Elf32_Half running_arch_code=EM_68K; > > #elif (defined SH) > > static Elf32_Half running_arch_code=EM_SH; > > + #elif (defined AARCH64) > > + static Elf32_Half running_arch_code=EM_AARCH64; > > #else > > #error Method os::dll_load requires that one of following is > > defined:\ > > IA32, AMD64, IA64, __sparc, __powerpc__, ARM, S390, > > ALPHA, MIPS, MIPSEL, PARISC, M68K, SH > > This part seems reasonable. Yes, I'm sure we have similar patches like this for other archs. I'll add it to our trees. Is the little endian comment still applicable or just a copy-and-paste error? > > > --- icedtea-2.3.7/openjdk/hotspot/src/os/linux/vm/os_linux.cpp > > +++ icedtea-2.3.7/openjdk/hotspot/src/os/linux/vm/os_linux.cpp > > @@ -5374,14 +5374,6 @@ void Parker::unpark() { > > > > extern char** environ; > > > > -#ifndef __NR_fork > > -#define __NR_fork IA32_ONLY(2) IA64_ONLY(not defined) > > AMD64_ONLY(57) > > -#endif > > - > > -#ifndef __NR_execve > > -#define __NR_execve IA32_ONLY(11) IA64_ONLY(1033) AMD64_ONLY(59) > > -#endif > > - > > // Run the specified command in a separate process. Return its > > exit value, > > // or -1 on failure (e.g. can't fork a new process). > > // Unlike system(), this function can be called from signal > > handler. It > > @@ -5392,10 +5384,11 @@ int os::fork_and_exec(char* cmd) { > > // fork() in LinuxThreads/NPTL is not async-safe. It needs to > > run > > // pthread_atfork handlers and reset pthread library. All we > > need is a > > // separate process to execve. Make a direct syscall to fork > > process. > > - // On IA64 there's no fork syscall, we have to use fork() and > > hope for > > - // the best... > > - pid_t pid = NOT_IA64(syscall(__NR_fork);) > > - IA64_ONLY(fork();) > > +#ifdef SYS_fork > > + pid_t pid = syscall(SYS_fork); > > +#else > > + pid_t pid = syscall(SYS_clone, SIGCHLD, 0, 0, 0, 0); > > +#endif > > > > if (pid < 0) { > > // fork failed > > @@ -5409,10 +5402,7 @@ int os::fork_and_exec(char* cmd) { > > // not reset by fork() (see notes above), execve() will > > instead kill > > // every thread in the parent process. We know this is the > > only thread > > // in the new process, so make a system call directly. > > - // IA64 should use normal execve() from glibc to match the > > glibc fork() > > - // above. > > - NOT_IA64(syscall(__NR_execve, "/bin/sh", argv, environ);) > > - IA64_ONLY(execve("/bin/sh", (char* const*)argv, environ);) > > + syscall(SYS_execve, "/bin/sh", argv, environ); > > > > // execve failed > > _exit(-1); > > Why have you deleted the IA-64 code? > This makes no sense to me either. > Andrew. > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:50:35 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:50:35 +0000 Subject: [Bug 1378] New: [IcedTea7] Add AArch64 support to Zero Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1378 Bug ID: 1378 Summary: [IcedTea7] Add AArch64 support to Zero Classification: Unclassified Product: IcedTea Version: 7-hg Hardware: unspecified OS: Linux Status: NEW Severity: normal Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/porters-dev/2013-March/000468.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/8cfc08df/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:52:37 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:52:37 +0000 Subject: [Bug 1274] [TRACKER] IcedTea 2.4.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1274 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1378 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/326dcfb2/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:52:37 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:52:37 +0000 Subject: [Bug 1378] [IcedTea7] Add AArch64 support to Zero In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1378 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Hardware|unspecified |aarch64 Version|7-hg |2.3.7 Blocks| |1274 Target Milestone|--- |2.4.0 Severity|normal |enhancement -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/d1e96cc1/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:57:22 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:57:22 +0000 Subject: [Bug 1379] New: [IcedTea8] Add AArch64 support to Zero Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1379 Bug ID: 1379 Summary: [IcedTea8] Add AArch64 support to Zero Classification: Unclassified Product: IcedTea Version: 8-hg Hardware: aarch64 OS: Linux Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/porters-dev/2013-March/000468.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/74050b2f/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:57:56 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:57:56 +0000 Subject: [Bug 1357] [IcedTea8] Make XRender mandatory In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1357 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/5e6e2a19/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:57:56 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:57:56 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Bug 1282 depends on bug 1357, which changed state. Bug 1357 Summary: [IcedTea8] Make XRender mandatory http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1357 What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/3fca3dde/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:58:03 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:58:03 +0000 Subject: [Bug 1379] [IcedTea8] Add AArch64 support to Zero In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1379 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 Target Milestone|--- |3.0.0pre1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/c680255f/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:58:03 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:58:03 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0pre1 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1282 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1379 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/fe9a31ec/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 14:59:11 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 21:59:11 +0000 Subject: [Bug 1325] [IcedTea8] Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1325 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/f26dd625/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 15:00:50 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 22:00:50 +0000 Subject: [Bug 1380] New: [IcedTea6] Add AArch64 support to Zero Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1380 Bug ID: 1380 Summary: [IcedTea6] Add AArch64 support to Zero Classification: Unclassified Product: IcedTea Version: 6-hg Hardware: aarch64 OS: Linux Status: NEW Severity: enhancement Priority: P3 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org http://mail.openjdk.java.net/pipermail/porters-dev/2013-March/000468.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/167f6b87/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 15:01:20 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 22:01:20 +0000 Subject: [Bug 1380] [IcedTea6] Add AArch64 support to Zero In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1380 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1272 Target Milestone|--- |6-1.13.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/5c0f657b/attachment.html From bugzilla-daemon at icedtea.classpath.org Mon Mar 25 15:01:20 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 25 Mar 2013 22:01:20 +0000 Subject: [Bug 1272] [TRACKER] IcedTea6 1.13 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1272 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1380 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130325/107b13c0/attachment.html From ptisnovs at icedtea.classpath.org Tue Mar 26 01:18:44 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 26 Mar 2013 08:18:44 +0000 Subject: /hg/rhino-tests: Added seven new tests into the ScriptEngineClas... Message-ID: changeset 3f01a2f5aaf0 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=3f01a2f5aaf0 author: Pavel Tisnovsky date: Tue Mar 26 09:21:35 2013 +0100 Added seven new tests into the ScriptEngineClassTest test suite: testGetComponentType, testGetClasses, testGetDeclaredClasses, testGetDeclaringClass, testGetEnclosingClass, testGetEnclosingConstructor and testGetEnclosingMethod. diffstat: ChangeLog | 8 ++ src/org/RhinoTests/ScriptEngineClassTest.java | 74 ++++++++++++++++++++++++-- 2 files changed, 74 insertions(+), 8 deletions(-) diffs (143 lines): diff -r 9129b777f336 -r 3f01a2f5aaf0 ChangeLog --- a/ChangeLog Fri Mar 22 10:14:42 2013 +0100 +++ b/ChangeLog Tue Mar 26 09:21:35 2013 +0100 @@ -1,3 +1,11 @@ +2013-03-26 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptEngineClassTest.java: + Added seven new tests into the ScriptEngineClassTest test suite: + testGetComponentType, testGetClasses, testGetDeclaredClasses, + testGetDeclaringClass, testGetEnclosingClass, testGetEnclosingConstructor + and testGetEnclosingMethod. + 2013-03-22 Pavel Tisnovsky * src/org/RhinoTests/ScriptContextClassTest.java: diff -r 9129b777f336 -r 3f01a2f5aaf0 src/org/RhinoTests/ScriptEngineClassTest.java --- a/src/org/RhinoTests/ScriptEngineClassTest.java Fri Mar 22 10:14:42 2013 +0100 +++ b/src/org/RhinoTests/ScriptEngineClassTest.java Tue Mar 26 09:21:35 2013 +0100 @@ -553,7 +553,7 @@ */ protected void testGetMethods() { // following methods should be inherited - final String[] methodsThatShouldExists_jdk6 = { + final String[] methodsThatShouldExist_jdk6 = { "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader) throws javax.script.ScriptException", "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader,javax.script.Bindings) throws javax.script.ScriptException", "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader,javax.script.ScriptContext) throws javax.script.ScriptException", @@ -570,7 +570,7 @@ "public abstract void javax.script.ScriptEngine.setContext(javax.script.ScriptContext)", }; - final String[] methodsThatShouldExists_jdk7 = { + final String[] methodsThatShouldExist_jdk7 = { "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader) throws javax.script.ScriptException", "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader,javax.script.Bindings) throws javax.script.ScriptException", "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader,javax.script.ScriptContext) throws javax.script.ScriptException", @@ -594,9 +594,9 @@ for (Method method : methods) { methodsAsString.add(method.toString()); } - String[] methodsThatShouldExists = getJavaVersion() < 7 ? methodsThatShouldExists_jdk6 : methodsThatShouldExists_jdk7; + String[] methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : methodsThatShouldExists) { + for (String methodThatShouldExists : methodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "method " + methodThatShouldExists + " not found"); } @@ -607,7 +607,7 @@ */ protected void testGetDeclaredMethods() { // following methods should be declared - final String[] declaredMethodsThatShouldExists_jdk6 = { + final String[] declaredMethodsThatShouldExist_jdk6 = { "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader) throws javax.script.ScriptException", "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader,javax.script.Bindings) throws javax.script.ScriptException", "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader,javax.script.ScriptContext) throws javax.script.ScriptException", @@ -624,7 +624,7 @@ "public abstract void javax.script.ScriptEngine.setContext(javax.script.ScriptContext)", }; - final String[] declaredMethodsThatShouldExists_jdk7 = { + final String[] declaredMethodsThatShouldExist_jdk7 = { "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader) throws javax.script.ScriptException", "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader,javax.script.Bindings) throws javax.script.ScriptException", "public abstract java.lang.Object javax.script.ScriptEngine.eval(java.io.Reader,javax.script.ScriptContext) throws javax.script.ScriptException", @@ -648,9 +648,9 @@ for (Method method : declaredMethods) { methodsAsString.add(method.toString()); } - String[] declaredMethodsThatShouldExists = getJavaVersion() < 7 ? declaredMethodsThatShouldExists_jdk6 : declaredMethodsThatShouldExists_jdk7; + String[] declaredMethodsThatShouldExist = getJavaVersion() < 7 ? declaredMethodsThatShouldExist_jdk6 : declaredMethodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : declaredMethodsThatShouldExists) { + for (String methodThatShouldExists : declaredMethodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "declared method " + methodThatShouldExists + " not found"); } @@ -848,6 +848,64 @@ } /** + * Test for method javax.script.ScriptEngine.getClass().getComponentType() + */ + protected void testGetComponentType() { + Class cls = this.scriptEngineClass.getComponentType(); + assertNull(cls, "getComponentType() should returns null"); + } + + /** + * Test for method javax.script.ScriptEngine.getClass().getClasses() + */ + protected void testGetClasses() { + Class[] cls = this.scriptEngineClass.getClasses(); + assertNotNull(cls, "getClasses() returns null"); + assertEquals(cls.length, 0, "getClasses() returns wrong value!"); + } + + /** + * Test for method javax.script.ScriptEngine.getClass().getDeclaredClasses() + */ + protected void testGetDeclaredClasses() { + Class[] cls = this.scriptEngineClass.getDeclaredClasses(); + assertNotNull(cls, "getDeclaredClasses() returns null"); + assertEquals(cls.length, 0, "getDeclaredClasses() returns wrong value!"); + } + + /** + * Test for method javax.script.ScriptEngine.getClass().getDeclaringClass() + */ + protected void testGetDeclaringClass() { + Class cls = this.scriptEngineClass.getDeclaringClass(); + assertNull(cls, "getDeclaringClass() does not return null"); + } + + /** + * Test for method javax.script.ScriptEngine.getClass().getEnclosingClass() + */ + protected void testGetEnclosingClass() { + Class cls = this.scriptEngineClass.getEnclosingClass(); + assertNull(cls, "getEnclosingClass() does not return null"); + } + + /** + * Test for method javax.script.ScriptEngine.getClass().getEnclosingConstructor() + */ + protected void testGetEnclosingConstructor() { + Constructor cons = this.scriptEngineClass.getEnclosingConstructor(); + assertNull(cons, "getEnclosingConstructor() does not return null"); + } + + /** + * Test for method javax.script.ScriptEngine.getClass().getEnclosingMethod() + */ + protected void testGetEnclosingMethod() { + Method m = this.scriptEngineClass.getEnclosingMethod(); + assertNull(m, "getEnclosingMethod() does not return null"); + } + + /** * Test for instanceof operator applied to a class javax.script.ScriptEngine */ @SuppressWarnings("cast") From ptisnovs at icedtea.classpath.org Tue Mar 26 01:29:50 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 26 Mar 2013 08:29:50 +0000 Subject: /hg/gfx-test: Refactoring, added one new Convolve operators and ... Message-ID: changeset e2fa0d65e1be in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=e2fa0d65e1be author: Pavel Tisnovsky date: Tue Mar 26 09:33:01 2013 +0100 Refactoring, added one new Convolve operators and five new tests into the test suite BitBltConvolveOp. diffstat: ChangeLog | 6 + src/org/gfxtest/testsuites/BitBltConvolveOp.java | 103 +++++++++++++++++++++- 2 files changed, 101 insertions(+), 8 deletions(-) diffs (151 lines): diff -r e616a59dd4bd -r e2fa0d65e1be ChangeLog --- a/ChangeLog Fri Mar 22 11:08:41 2013 +0100 +++ b/ChangeLog Tue Mar 26 09:33:01 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-26 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltConvolveOp.java: + Refactoring, added one new Convolve operators and five new tests + into the test suite BitBltConvolveOp. + 2013-03-22 Pavel Tisnovsky * src/org/gfxtest/framework/CommonRenderingStyles.java: diff -r e616a59dd4bd -r e2fa0d65e1be src/org/gfxtest/testsuites/BitBltConvolveOp.java --- a/src/org/gfxtest/testsuites/BitBltConvolveOp.java Fri Mar 22 11:08:41 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltConvolveOp.java Tue Mar 26 09:33:01 2013 +0100 @@ -75,12 +75,29 @@ public class BitBltConvolveOp extends GfxTest { private static final Kernel NoOpKernel = new Kernel(1, 1, new float[] {1}); - private static final Kernel SmoothingKernel1 = new Kernel(2, 2, new float[] {1/4f, 1/4f, 1/4f, 1/4f}); - private static final Kernel SmoothingKernel2 = new Kernel(3, 3, new float[] {1/9f, 1/9f, 1/9f, 1/9f, 1/9f, 1/9f, 1/9f, 1/9f, 1/9f}); + private static final Kernel SmoothingKernel2x2 = new Kernel(2, 2, new float[] { + 1/4f, 1/4f, + 1/4f, 1/4f + }); + + private static final Kernel SmoothingKernel3x3 = new Kernel(3, 3, new float[] { + 1/9f, 1/9f, 1/9f, + 1/9f, 1/9f, 1/9f, + 1/9f, 1/9f, 1/9f + }); + + private static final Kernel SmoothingKernel5x5 = new Kernel(5, 5, new float[] { + 1/25f, 1/25f, 1/25f, 1/25f, 1/25f, + 1/25f, 1/25f, 1/25f, 1/25f, 1/25f, + 1/25f, 1/25f, 1/25f, 1/25f, 1/25f, + 1/25f, 1/25f, 1/25f, 1/25f, 1/25f, + 1/25f, 1/25f, 1/25f, 1/25f, 1/25f, + }); private static final ConvolveOp noopROP = new ConvolveOp(NoOpKernel); - private static final ConvolveOp smoothingROP1 = new ConvolveOp(SmoothingKernel1); - private static final ConvolveOp smoothingROP2 = new ConvolveOp(SmoothingKernel2); + private static final ConvolveOp smoothingKernel2x2ROP = new ConvolveOp(SmoothingKernel2x2); + private static final ConvolveOp smoothingKernel3x3ROP = new ConvolveOp(SmoothingKernel3x3); + private static final ConvolveOp smoothingKernel5x5ROP = new ConvolveOp(SmoothingKernel5x5); /** * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR @@ -118,6 +135,62 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundNoOpROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, noopROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundSmoothingKernel2x2ROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, smoothingKernel2x2ROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundSmoothing3x3ROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, smoothingKernel3x3ROP); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageType3ByteBGRbackgroundSmoothing5x5ROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageType3ByteRGB(image, graphics2d, smoothingKernel5x5ROP); + } + + /** * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. * * @param image @@ -140,9 +213,9 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundSmoothingROP1(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundSmoothingKernel2x2ROP(TestImage image, Graphics2D graphics2d) { - return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, smoothingROP1); + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, smoothingKernel2x2ROP); } /** @@ -154,9 +227,23 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundSmoothingROP2(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundSmoothingKernel3x3ROP(TestImage image, Graphics2D graphics2d) { - return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, smoothingROP2); + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, smoothingKernel3x3ROP); + } + + /** + * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType3ByteBGRbackgroundSmoothingKernel5x5ROP(TestImage image, Graphics2D graphics2d) + { + return doBitBltCheckerBufferedImageType3ByteRGB(image, graphics2d, smoothingKernel5x5ROP); } /** From jvanek at redhat.com Tue Mar 26 02:26:43 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 26 Mar 2013 10:26:43 +0100 Subject: [rfc][icedtea-web] Ensure JarFile handles do not leak, introduce closeSilently utility In-Reply-To: <511BC2C2.90208@redhat.com> References: <511ABA6D.3080204@redhat.com> <511BC2C2.90208@redhat.com> Message-ID: <515169D3.1090407@redhat.com> On 02/13/2013 05:43 PM, Adam Domurad wrote: > On 02/12/2013 04:55 PM, Adam Domurad wrote: >> This squelches some Eclipse warnings. >> >>> 2013-XX-XX Adam Domurad >>> >>> Ensure JarFile handles do not leak. >>> * netx/net/sourceforge/jnlp/util/StreamUtils.java: >>> New, introduces 'closeSilently'. Ignores nulls & exceptions when >>> closing. >>> * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: >>> Ensure StreamUtils.closeSilently or close is called for each >>> JarFile. > > OK that patch had a bug in it, and was probably too paranoid. This ones better. > > Turns out JNLPClassLoader already had a closeStreams utility function. > > 2013-XX-XX Adam Domurad > > Ensure JarFile handles do not leak. > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: > Ensure close is called for each JarFile. > > Idea is good and I'm ok with it after two things are fixed 1) can we have an reproducer/test for this? > closeJarFiles2.patch > > > diff --git a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > --- a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > +++ b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > @@ -812,6 +812,8 @@ public class JNLPClassLoader extends URL > break; > } > } > + > + jarFile.close(); > } catch (IOException e) { > /* > * After this exception is caught, it is escaped. This will skip > @@ -834,12 +836,15 @@ public class JNLPClassLoader extends URL > File f = tracker.getCacheFile(location); > > if( f != null) { > + JarFile mainJar = null; > try { > - JarFile mainJar = new JarFile(f); > + mainJar = new JarFile(f); > mainClass = mainJar.getManifest(). > getMainAttributes().getValue("Main-Class"); > } catch (IOException ioe) { > mainClass = null; > + } finally { > + closeStream(mainJar); 2)This have not compiled in head. The method do not exists.... If this is doing something similar to StreamUtils.closeSilently then I'm ok with it. But have to compile...I not found it ;( Also StreamUtils.closeSilently(mainJar); have not compiled... :( > } > } > > @@ -1269,6 +1274,7 @@ public class JNLPClassLoader extends URL > jarEntries.add(je.getName()); > } > > + jarFile.close(); > } > > addURL(jar.getLocation()); > @@ -1292,6 +1298,8 @@ public class JNLPClassLoader extends URL > JarIndex index = JarIndex.getJarIndex(jarFile, null); > if (index != null) > jarIndexes.add(index); > + > + jarFile.close(); > } else { > CachedJarFileCallback.getInstance().addMapping(jar.getLocation(), jar.getLocation()); > } > @@ -1365,6 +1373,7 @@ public class JNLPClassLoader extends URL > new FileOutputStream(outFile)); > > } > + jarFile.close(); Just thinking about - why not to finally block too? To verbose? To rare? /me do not insists, just thinking > } catch (IOException ex) { > if (JNLPRuntime.isDebug()) > ex.printStackTrace(); Thanx for check! J. From aph at redhat.com Tue Mar 26 02:35:35 2013 From: aph at redhat.com (Andrew Haley) Date: Tue, 26 Mar 2013 09:35:35 +0000 Subject: Two AArch64-related patches In-Reply-To: <552628385.23675722.1364248078742.JavaMail.root@redhat.com> References: <552628385.23675722.1364248078742.JavaMail.root@redhat.com> Message-ID: <51516BE7.7030803@redhat.com> On 03/25/2013 09:47 PM, Andrew Hughes wrote: > ----- Original Message ----- >> Michal Vyskocil writes: >> >> > I'm a maintainer of openjdk for SUSE and recently I've got two >> > patches >> > from our AArch64 team for openjdk7. I have no idea if porting of >> > openjdk7 is important for this group, but it is probably better to >> > try >> > it. >> >> You may be aware that there is an AArch64 porting project. >> >> Mailing List >> aarch64-dev at openjdk.java.net >> http://mail.openjdk.java.net/mailman/listinfo/aarch64-dev >> >> The actual source code still isn't there, but hopefully will be as >> soon as we get all the legal details sorted out. > > Is there an intention to backport the AArch64 port to 7? It's entirely confined to HotSpot, so I don't think there's any need to backport anything: I hope that we'll be able to use a newer HotSpot with 7. Andrew. From bugzilla-daemon at icedtea.classpath.org Tue Mar 26 03:28:20 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 26 Mar 2013 10:28:20 +0000 Subject: [Bug 1373] [IcedTea6] Provide option to strip and link debugging info after build In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1373 Andrew Haley changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |aph at redhat.com --- Comment #1 from Andrew Haley --- I'm a bit baffled. Why does IcedTea need this? Distros that package separate debuginfo do this themselves. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130326/4a9aaec0/attachment.html From stefan at complang.tuwien.ac.at Tue Mar 26 05:39:16 2013 From: stefan at complang.tuwien.ac.at (Stefan Ring) Date: Tue, 26 Mar 2013 13:39:16 +0100 Subject: icedtea6 fails to bootstrap on Fedora 17/18 In-Reply-To: <1926255158.2897679.1362517025998.JavaMail.root@redhat.com> References: <1926255158.2897679.1362517025998.JavaMail.root@redhat.com> Message-ID: >> Interestingly, the package has been updated only rather recently (Oct >> 2012, long after the F17 release): >> . >> The build works just fine with the previous version. >> > > Ugh, sorry this causes you pain! In case you are wondering, this update > was largely driven by demand: > https://bugzilla.redhat.com/show_bug.cgi?id=813352 Well, you can find demand for almost anything. That doesn't automatically make it worthwile. But now that it has already happened, let's progress forward and not dwell on it any longer. F17 will be obsolete fairly soon. > I see you've been pointed at a workaround, but do you mind filing this > as a bug? I can't promise to look at it right away, but it would be > great if it was tracked. As long as I know the cause of my problem and a workaround for it, I'm happy. I don't know of any clear rules which files get picked up and compiled by a Java compiler. This seems to me rather nebulous at best and probably subject to change over time, so we can only accept that it behaves the way it does. For this reason, I wouldn't even know what to report in a new bug report. It would be pointlessly wasted effort. Let's just try to cope with it and move on. Cheers From jvanek at icedtea.classpath.org Tue Mar 26 05:48:44 2013 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Tue, 26 Mar 2013 12:48:44 +0000 Subject: /hg/icedtea-web: Path validator fixed to be correctly multiplatform Message-ID: changeset bb971f25eb42 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=bb971f25eb42 author: Jiri Vanek date: Tue Mar 26 13:51:26 2013 +0100 Path validator fixed to be correctly multiplatform diffstat: ChangeLog | 9 + netx/net/sourceforge/jnlp/config/BasicValueValidators.java | 16 +- tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java | 133 ++++++++++ 3 files changed, 152 insertions(+), 6 deletions(-) diffs (196 lines): diff -r 4112d14feddf -r bb971f25eb42 ChangeLog --- a/ChangeLog Mon Mar 25 15:15:06 2013 +0100 +++ b/ChangeLog Tue Mar 26 13:51:26 2013 +0100 @@ -1,3 +1,12 @@ +2013-03-26 Jiri Vanek + + Path validator fixed to be correctly multiplatform + * netx/net/sourceforge/jnlp/config/BasicValueValidators.java : + (FilePathValidator) now check absolute file by File.isAbsolute() instead + of by plain "/". + * tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java : + New file to test new functionality. + 2013-03-25 Jana Fabrikova * tests/reproducers/simple/JavascriptFuncReturn/testcases/JavascriptFuncReturnTest.java diff -r 4112d14feddf -r bb971f25eb42 netx/net/sourceforge/jnlp/config/BasicValueValidators.java --- a/netx/net/sourceforge/jnlp/config/BasicValueValidators.java Mon Mar 25 15:15:06 2013 +0100 +++ b/netx/net/sourceforge/jnlp/config/BasicValueValidators.java Tue Mar 26 13:51:26 2013 +0100 @@ -37,6 +37,7 @@ package net.sourceforge.jnlp.config; +import java.io.File; import static net.sourceforge.jnlp.runtime.Translator.R; import java.net.URL; @@ -86,8 +87,9 @@ * Checks if a value is a valid file path (not a valid file!). The actual * file may or may not exist */ - private static class FilePathValidator implements ValueValidator { - + //package private for testing purposes + static class FilePathValidator implements ValueValidator { + @Override public void validate(Object value) throws IllegalArgumentException { if (value == null) { @@ -97,13 +99,15 @@ Object possibleValue = value; if (!(possibleValue instanceof String)) { - throw new IllegalArgumentException(); + throw new IllegalArgumentException("Value should be string!"); } String possibleFile = (String) possibleValue; - if (!(possibleFile.startsWith("/"))) { - throw new IllegalArgumentException(); - } + + boolean absolute = new File(possibleFile).isAbsolute(); + if (!absolute) { + throw new IllegalArgumentException("File must be absolute"); + } } diff -r 4112d14feddf -r bb971f25eb42 tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/netx/unit/net/sourceforge/jnlp/config/BasicValueValidatorsTests.java Tue Mar 26 13:51:26 2013 +0100 @@ -0,0 +1,133 @@ +/* +Copyright (C) 2013 Red Hat, Inc. + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 2. + +IcedTea is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. + */ +package net.sourceforge.jnlp.config; + +import org.junit.Assert; +import org.junit.Test; + +public class BasicValueValidatorsTests { + + //decomposed for testing + public static boolean canBeWindows(String s) { + return s.toLowerCase().contains("windows"); + } + + /** + * guess the OS of user, if legal, or windows + * @return + */ + public static boolean isOsWindows() { + return canBeWindows(System.getProperty("os.name")); + } + private static final BasicValueValidators.FilePathValidator pv = new BasicValueValidators.FilePathValidator(); + private final String neverLegal = "aaa/bb/cc"; + private final String winLegal = "C:\\aaa\\bb\\cc"; + private final String linuxLegal = "/aaa/bb/cc"; + + @Test + public void testWindowsDetction() { + Assert.assertTrue(canBeWindows("blah windows blah")); + Assert.assertTrue(canBeWindows("blah Windows blah")); + Assert.assertTrue(canBeWindows(" WINDOWS 7")); + Assert.assertFalse(canBeWindows("blah windy miracle blah")); + Assert.assertFalse(canBeWindows("blah wind blah")); + Assert.assertTrue(canBeWindows("windows")); + Assert.assertFalse(canBeWindows("linux")); + Assert.assertFalse(canBeWindows("blah mac blah")); + Assert.assertFalse(canBeWindows("blah solaris blah")); + } + + @Test + public void testLinuxAbsoluteFilePathValidator() { + if (!isOsWindows()) { + Exception ex = null; + try { + pv.validate(linuxLegal); + } catch (Exception eex) { + ex = eex; + } + Assert.assertTrue(ex == null); + + ex = null; + try { + pv.validate(neverLegal); + } catch (Exception eex) { + ex = eex; + } + Assert.assertTrue(ex instanceof IllegalArgumentException); + + + ex = null; + try { + pv.validate(winLegal); + } catch (Exception eex) { + ex = eex; + } + Assert.assertTrue(ex instanceof IllegalArgumentException); + } + } + + @Test + public void testWindowsAbsoluteFilePathValidator() { + if (isOsWindows()) { + Exception ex = null; + try { + pv.validate(winLegal); + } catch (Exception eex) { + ex = eex; + } + Assert.assertTrue(ex == null); + + ex = null; + try { + pv.validate(neverLegal); + } catch (Exception eex) { + ex = eex; + } + Assert.assertTrue(ex instanceof IllegalArgumentException); + + + ex = null; + try { + pv.validate(linuxLegal); + } catch (Exception eex) { + ex = eex; + } + Assert.assertTrue(ex instanceof IllegalArgumentException); + } + } +} From jvanek at redhat.com Tue Mar 26 07:11:19 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 26 Mar 2013 15:11:19 +0100 Subject: [fyi][icedtea-web] backend and itw-settings for extended applets security In-Reply-To: <512BC7F5.9030704@redhat.com> References: <510E532C.8040401@redhat.com> <51119426.9090000@redhat.com> <511D1142.2090501@redhat.com> <511D2AA8.2040709@redhat.com> <5124C5D0.7080309@redhat.com> <512545CD.4080305@redhat.com> <51269AAA.8090606@redhat.com> <512BA227.6040404@redhat.com> <512BC7F5.9030704@redhat.com> Message-ID: <5151AC87.40103@redhat.com> On 02/25/2013 09:22 PM, Adam Domurad wrote: > On 02/25/2013 12:40 PM, Jiri Vanek wrote: >> On 02/21/2013 11:07 PM, Adam Domurad wrote: >>> On 02/20/2013 04:53 PM, Adam Domurad wrote: >>>> Here are some proposed fixes. Thanks. >>>> >>>> - comapre -> compare typo fix >>>> - Never return from a finally block! (Eclipse underlines the whole finally block as a warning.) >>>> See http://weblogs.java.net/blog/staufferjames/archive/2007/06/_dont_return_in.html >>>> - Added a null check so we don't compare if a null archive list is stored. >>>> >>>> - Adam >>>> >>>> >>> >>> Ignore that one, this trumps it. >>> >>> OK. I tried to separate what would be considered changes to Jiri's part out. >>> AppletSecuritySettings.java had to be moved out of sun.applet to make it accessible. >>> >>> First apply Jiris latest patch, then the rest of them with integrated-dialogue2.patch last. >>> >>> Here are the patches. Will make a ChangeLog sometime soon. >>> >>> All the applet security levels should be working in this patch, as well it should honour the global >>> applet settings. >>> >>> Red/green text indicates if you've accepted a patch before. >>> >>> Further implementation question: >>> - Currently when many applets share a single classloader on a page and one is rejected, it'd be nice >>> if the it did not ask for rejection for all the other applets. It is tricky to get this right. >>> Perhaps rejecting a certain unique key should be permanent for a session ? There should be no harm, >>> as you can always restart your browser if you accidentally hit reject. And indeed there is harm in >>> the other direction, if you reject an applet but accidentally hit OK for one of the other applet >>> dialogues that come up. >>> >>> Let me know of any issues. >>> >>> Happy hacking, >>> -Adam >> >> >> ugh. Next round of backend: >> >> My OriginalPatch, added filtering for table and removed mainClass - all as separate changes. >> Also agreedChangesToLockingFile.diff ( I agree with your changes, nextTime I will merge them inside) >> I have rewritten your strength matching algorithm - newMAtchByStrength.diff - I hope it will still suits (the only change was actually to returnimidiately when strong match is found - return first week otherwise) >> >> Thanx for suggestions, as Omair suggested - lets fire this! (means merge above, add tests and push) >> >> ps: I hope I have not forget some occurence of mainCLass somewhere :-/ >> pps: test tests and tests on my side :-/ > > Great. > > Mainclass: > >> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java >> --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java Mon Feb 25 16:26:29 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java Mon Feb 25 18:32:10 2013 +0100 >> @@ -37,11 +37,11 @@ >> >> import java.util.Date; >> import javax.swing.table.AbstractTableModel; >> +import net.sourceforge.jnlp.runtime.Translator; >> import net.sourceforge.jnlp.security.appletextendedsecurity.ExecuteUnsignedApplet; >> import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletActionEntry; >> import net.sourceforge.jnlp.security.appletextendedsecurity.UrlRegEx; >> import net.sourceforge.jnlp.security.appletextendedsecurity.impl.UnsignedAppletActionStorageExtendedImpl; >> -import net.sourceforge.jnlp.runtime.Translator; >> >> public class UnsignedAppletActionTableModel extends AbstractTableModel { >> >> @@ -50,7 +50,7 @@ >> Translator.R("APPEXTSECguiTableModelTableColumnDateOfAction"), >> Translator.R("APPEXTSECguiTableModelTableColumnDocumentBase"), >> Translator.R("APPEXTSECguiTableModelTableColumnCodeBase"), >> - Translator.R("APPEXTSECguiTableModelTableColumnMainClass"), >> + //Translator.R("APPEXTSECguiTableModelTableColumnMainClass"), > > I noticed you kept the translator stuff as comments, but I'd be in favour of just dropping it. Theres already too many comments in ITW that have long-forgotten purpose :-) > >> Translator.R("APPEXTSECguiTableModelTableColumnArchives")}; >> >> public UnsignedAppletActionTableModel(UnsignedAppletActionStorageExtendedImpl back) { >> @@ -86,10 +86,10 @@ >> if (columnIndex == 3) { >> return UrlRegEx.class; >> } >> - if (columnIndex == 3) { >> + if (columnIndex == 4) { >> return String.class; >> } >> - if (columnIndex == 3) { >> + if (columnIndex == 5) { >> return String.class; >> } >> return Object.class; >> @@ -129,9 +129,6 @@ >> return source.getCodeBase(); >> } >> if (columnIndex == 4) { >> - return source.getMainClass(); >> - } >> - if (columnIndex == 5) { >> return UnsignedAppletActionEntry.createArchivesString(source.getArchives()); >> } >> return null; >> @@ -152,7 +149,6 @@ >> new Date(), >> new UrlRegEx(s), >> new UrlRegEx(s), >> - null, >> null)); >> fireTableRowsInserted(i, i + 1); >> } >> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java >> --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Feb 25 16:26:29 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Feb 25 18:32:10 2013 +0100 >> @@ -186,7 +186,7 @@ >> + "\n (" + Translator.R("APPEXTSECguiPanelAppletInfoHederPart2", i.getUnsignedAppletAction(), DateFormat.getInstance().format(i.getTimeStamp())) >> + "\n " + Translator.R("APPEXTSECguiTableModelTableColumnDocumentBase") + ": " + i.getDocumentBase().getFilteredRegEx() >> + "\n " + Translator.R("APPEXTSECguiTableModelTableColumnCodeBase") + ": " + i.getCodeBase().getFilteredRegEx() >> - + "\n " + Translator.R("APPEXTSECguiTableModelTableColumnMainClass") + ": " + ((i.getMainClass() == null) ? "" : i.getMainClass()) >> + //+ "\n " + Translator.R("APPEXTSECguiTableModelTableColumnMainClass") + ": " + ((i.getMainClass() == null) ? "" : i.getMainClass()) >> + "\n " + Translator.R("APPEXTSECguiTableModelTableColumnArchives") + ": " + UnsignedAppletActionEntry.createArchivesString(i.getArchives()); >> } >> >> @@ -540,7 +540,7 @@ >> lastDoc = s1; >> lastCode = s2; >> try { >> - List i = currentModel.back.getMatchingItems(s1, s2, null, null); >> + List i = currentModel.back.getMatchingItems(s1, s2, null); >> if (i == null || i.isEmpty()) { >> JOptionPane.showMessageDialog(this, Translator.R("APPEXTSECguiPanelNoMatch")); >> } else { >> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionEntry.java >> --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionEntry.java Mon Feb 25 16:26:29 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionEntry.java Mon Feb 25 18:32:10 2013 +0100 >> @@ -47,7 +47,6 @@ >> private Date timeStamp; >> private UrlRegEx documentBase; >> private UrlRegEx codeBase; >> - private String mainClass; >> private List archives; >> >> public static UnsignedAppletActionEntry createFromString(String s) { >> @@ -57,26 +56,21 @@ >> new Date(new Long(split[1])), >> new UrlRegEx(split[2]), >> null, >> - null, >> null); >> if (split.length > 3) { >> nw.setCodeBase(new UrlRegEx(split[3])); >> } >> if (split.length > 4) { >> - nw.setMainClass(split[4]); >> - } >> - if (split.length > 5) { >> - nw.setArchives(createArchivesList(s.substring(s.indexOf(split[4]) + split[4].length()).trim())); >> + nw.setArchives(createArchivesList(s.substring(s.lastIndexOf(split[3]) + split[3].length()).trim())); >> } >> return nw; >> } >> >> - public UnsignedAppletActionEntry(ExecuteUnsignedApplet unsignedAppletAction, Date timeStamp, UrlRegEx documentBase, UrlRegEx codeBase, String mainClass, List archives) { >> + public UnsignedAppletActionEntry(ExecuteUnsignedApplet unsignedAppletAction, Date timeStamp, UrlRegEx documentBase, UrlRegEx codeBase, List archives) { >> this.unsignedAppletAction = unsignedAppletAction; >> this.timeStamp = timeStamp; >> this.documentBase = documentBase; >> this.codeBase = codeBase; >> - this.mainClass = mainClass; >> this.archives = archives; >> >> } >> @@ -96,7 +90,6 @@ >> + " " + ((timeStamp == null) ? "1" : timeStamp.getTime()) >> + " " + ((documentBase == null) ? "" : documentBase.getRegEx()) >> + " " + ((codeBase == null) ? "" : codeBase.getRegEx()) >> - + " " + ((mainClass == null) ? "" : mainClass) >> + " " + createArchivesString(archives); >> } >> >> @@ -132,14 +125,6 @@ >> this.codeBase = codeBase; >> } >> >> - public String getMainClass() { >> - return mainClass; >> - } >> - >> - public void setMainClass(String mainClass) { >> - this.mainClass = mainClass; >> - } >> - >> public List getArchives() { >> return archives; >> } >> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionStorage.java >> --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionStorage.java Mon Feb 25 16:26:29 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionStorage.java Mon Feb 25 18:32:10 2013 +0100 >> @@ -1,19 +1,37 @@ >> -/* >> - Copyright (C) 2013 Red Hat >> +/* Copyright (C) 2013 Red Hat, Inc. >> >> - This program is free software; you can redistribute it and/or modify >> - it under the terms of the GNU General Public License as published by >> - the Free Software Foundation; either version 2 of the License, or >> - (at your option) any later version. >> + This file is part of IcedTea. >> >> - This program is distributed in the hope that it will be useful, but >> - WITHOUT ANY WARRANTY; without even the implied warranty of >> - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> + IcedTea is free software; you can redistribute it and/or >> + modify it under the terms of the GNU General Public License as published by >> + the Free Software Foundation, version 2. >> + >> + IcedTea is distributed in the hope that it will be useful, >> + but WITHOUT ANY WARRANTY; without even the implied warranty of >> + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> General Public License for more details. >> >> You should have received a copy of the GNU General Public License >> - along with this program; if not, write to the Free Software >> - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA >> + along with IcedTea; see the file COPYING. If not, write to >> + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA >> + 02110-1301 USA. >> + >> + Linking this library statically or dynamically with other modules is >> + making a combined work based on this library. Thus, the terms and >> + conditions of the GNU General Public License cover the whole >> + combination. >> + >> + As a special exception, the copyright holders of this library give you >> + permission to link this library with independent modules to produce an >> + executable, regardless of the license terms of these independent >> + modules, and to copy and distribute the resulting executable under >> + terms of your choice, provided that you also meet, for each linked >> + independent module, the terms and conditions of the license of that >> + module. An independent module is a module which is not derived from >> + or based on this library. If you modify this library, you may extend >> + this exception to your version of the library, but you are not >> + obligated to do so. If you do not wish to do so, delete this >> + exception statement from your version. >> */ >> package net.sourceforge.jnlp.security.appletextendedsecurity; >> >> @@ -50,7 +68,7 @@ >> * @param archives >> * @return >> */ >> - public UnsignedAppletActionEntry getMatchingItem(String documentBase, String codeBase, String mainClass, List archives); >> + public UnsignedAppletActionEntry getMatchingItem(String documentBase, String codeBase, List archives); >> >> /** >> * Shortcut getMatchingItem(documentBase, null,null,null) >> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageExtendedImpl.java >> --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageExtendedImpl.java Mon Feb 25 16:26:29 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageExtendedImpl.java Mon Feb 25 18:32:10 2013 +0100 >> @@ -166,9 +166,6 @@ >> source.setCodeBase(new UrlRegEx((String) aValue)); >> } >> if (columnIndex == 4) { >> - source.setMainClass((String) aValue); >> - } >> - if (columnIndex == 5) { >> source.setArchives(UnsignedAppletActionEntry.createArchivesList((String) aValue)); >> } >> >> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java >> --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java Mon Feb 25 16:26:29 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java Mon Feb 25 18:32:10 2013 +0100 >> @@ -131,8 +131,8 @@ >> } >> >> @Override >> - public UnsignedAppletActionEntry getMatchingItem(String documentBase, String codeBase, String mainClass, List archives) { >> - List results = getMatchingItems(documentBase, codeBase, mainClass, archives); >> + public UnsignedAppletActionEntry getMatchingItem(String documentBase, String codeBase, List archives) { >> + List results = getMatchingItems(documentBase, codeBase, archives); >> if (results == null || results.isEmpty()) { >> return null; >> } >> @@ -150,7 +150,7 @@ >> return results.get(0); >> } >> >> - public List getMatchingItems(String documentBase, String codeBase, String mainClass, List archives) { >> + public List getMatchingItems(String documentBase, String codeBase, List archives) { >> List result = new ArrayList(); >> lock(); >> try { >> @@ -159,7 +159,7 @@ >> return result; >> } >> for (UnsignedAppletActionEntry unsignedAppletActionEntry : items) { >> - if (isMatching(unsignedAppletActionEntry, documentBase, codeBase, mainClass, archives)) { >> + if (isMatching(unsignedAppletActionEntry, documentBase, codeBase, archives)) { >> result.add(unsignedAppletActionEntry); >> } >> } >> @@ -171,7 +171,7 @@ >> return result; >> } >> >> - private boolean isMatching(UnsignedAppletActionEntry unsignedAppletActionEntry, String documentBase, String codeBase, String mainClass, List archives) { >> + private boolean isMatching(UnsignedAppletActionEntry unsignedAppletActionEntry, String documentBase, String codeBase, List archives) { >> boolean result = true; >> if (documentBase != null && !documentBase.trim().isEmpty()) { >> result = result && documentBase.matches(unsignedAppletActionEntry.getDocumentBase().getRegEx()); >> @@ -179,10 +179,6 @@ >> if (codeBase != null && !codeBase.trim().isEmpty()) { >> result = result && codeBase.matches(unsignedAppletActionEntry.getCodeBase().getRegEx()); >> } >> - if (mainClass != null && !mainClass.trim().isEmpty()) { >> - result = result && mainClass.equals(unsignedAppletActionEntry.getMainClass()); >> - } >> - >> if (archives != null) { >> result = result && compareArchives(archives, unsignedAppletActionEntry.getArchives()); >> } >> @@ -195,6 +191,15 @@ >> } >> >> private boolean compareArchives(List archives, List saved) { >> + if (archives == null && saved !=null){ >> + return false; >> + } >> + if (archives != null && saved ==null){ >> + return false; >> + } >> + if (archives == null && saved ==null){ >> + return true; >> + } >> if (archives.size() != saved.size()) { >> return false; >> } >> @@ -220,16 +225,16 @@ >> >> @Override >> public UnsignedAppletActionEntry getMatchingItemByDocumentBase(String documentBase) { >> - return getMatchingItem(documentBase, null, null, null); >> + return getMatchingItem(documentBase, null, null); >> } >> >> @Override >> public UnsignedAppletActionEntry getMatchingItemByCodeBase(String codeBase) { >> - return getMatchingItem(null, codeBase, null, null); >> + return getMatchingItem(null, codeBase, null); >> } >> >> @Override >> public UnsignedAppletActionEntry getMatchingItemByBases(String documentBase, String codeBase) { >> - return getMatchingItem(documentBase, codeBase, null, null); >> + return getMatchingItem(documentBase, codeBase, null); >> } >> } >> diff -r 98060d84ad58 tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java >> --- a/tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java Mon Feb 25 16:26:29 2013 +0100 >> +++ b/tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java Mon Feb 25 18:32:10 2013 +0100 >> @@ -59,22 +59,20 @@ >> f2 = File.createTempFile("itwMatching", "testFile2"); >> f3 = File.createTempFile("itwMatching", "testFile3"); >> f4 = File.createTempFile("itwMatching", "testFile4"); >> - ServerAccess.saveFile("A 123456 .* .* main jar1,jar2", f1); >> - ServerAccess.saveFile("A 123456 .* \\Qbla\\E main jar1,jar2", f2); >> + ServerAccess.saveFile("A 123456 .* .* jar1,jar2", f1); >> + ServerAccess.saveFile("A 123456 .* \\Qbla\\E jar1,jar2", f2); >> } >> >> @Test >> public void allMatchingDocAndCode() { >> UnsignedAppletActionStorageImpl i1 = new UnsignedAppletActionStorageImpl(f1); >> - UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", "main", Arrays.asList(new String[]{"jar1", "jar2"})); >> + UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", Arrays.asList(new String[]{"jar1", "jar2"})); >> Assert.assertNotNull("r1 should be found", r1); >> - UnsignedAppletActionEntry r3 = i1.getMatchingItem("blah", "blaBla", "main", Arrays.asList(new String[]{"jar2", "jar1"})); >> + UnsignedAppletActionEntry r3 = i1.getMatchingItem("blah", "blaBla", Arrays.asList(new String[]{"jar2", "jar1"})); >> Assert.assertNotNull("r3 should be found", r1); >> - UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBlam", "wrong_main", Arrays.asList(new String[]{"jar1", "jar2"})); >> - Assert.assertNull("r2 should NOT be found", r2); >> - UnsignedAppletActionEntry r4 = i1.getMatchingItem("blha", "blaBlam", "main", Arrays.asList(new String[]{"jar2", "wrong_jar"})); >> + UnsignedAppletActionEntry r4 = i1.getMatchingItem("blha", "blaBlam", Arrays.asList(new String[]{"jar2", "wrong_jar"})); >> Assert.assertNull("r4 should NOT be found", r4); >> - UnsignedAppletActionEntry r5 = i1.getMatchingItem("blaBla", "blaBlaBla", "main", Arrays.asList(new String[]{"jar2"})); >> + UnsignedAppletActionEntry r5 = i1.getMatchingItem("blaBla", "blaBlaBla", Arrays.asList(new String[]{"jar2"})); >> Assert.assertNull("r5 should NOT be found", r5); >> >> } >> @@ -82,13 +80,13 @@ >> @Test >> public void allMatchingDocAndStrictCode() { >> UnsignedAppletActionStorageImpl i1 = new UnsignedAppletActionStorageImpl(f2); >> - UnsignedAppletActionEntry r1 = i1.getMatchingItem("whatever", "bla", "main", Arrays.asList(new String[]{"jar1", "jar2"})); >> + UnsignedAppletActionEntry r1 = i1.getMatchingItem("whatever", "bla", Arrays.asList(new String[]{"jar1", "jar2"})); >> Assert.assertNotNull("r1 should be found", r1); >> - UnsignedAppletActionEntry r3 = i1.getMatchingItem("whatever", null, "main", Arrays.asList(new String[]{"jar2", "jar1"})); >> + UnsignedAppletActionEntry r3 = i1.getMatchingItem("whatever", null, Arrays.asList(new String[]{"jar2", "jar1"})); >> Assert.assertNotNull("r3 should be found", r1); >> - UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBlam", "main", Arrays.asList(new String[]{"jar1", "jar2"})); >> + UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBlam", Arrays.asList(new String[]{"jar1", "jar2"})); >> Assert.assertNull("r2 should NOT be found", r2); >> - UnsignedAppletActionEntry r4 = i1.getMatchingItem(null, "blaBlam", null, null); >> + UnsignedAppletActionEntry r4 = i1.getMatchingItem(null, "blaBlam", null); >> Assert.assertNull("r4 should NOT be found", r4); >> >> } >> @@ -96,19 +94,19 @@ >> @Test >> public void allMatchingDocAndCodeWithNulls() { >> UnsignedAppletActionStorageImpl i1 = new UnsignedAppletActionStorageImpl(f1); >> - UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", null, null); >> + UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", null); >> Assert.assertNotNull("r1 should be found", r1); >> - UnsignedAppletActionEntry r3 = i1.getMatchingItem("bla", "whatever", "", null); >> + UnsignedAppletActionEntry r3 = i1.getMatchingItem("bla", "whatever", null); >> Assert.assertNotNull("r3 should be found", r1); >> - UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBla", null, Arrays.asList(new String[]{"jar2", "jar1"})); >> + UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBla", Arrays.asList(new String[]{"jar2", "jar1"})); >> Assert.assertNotNull("r2 should be found", r2); >> - UnsignedAppletActionEntry r4 = i1.getMatchingItem("bla", "blaBla", "main", null); >> + UnsignedAppletActionEntry r4 = i1.getMatchingItem("bla", "blaBla", null); >> Assert.assertNotNull("r4 should be found", r4); >> - UnsignedAppletActionEntry r5 = i1.getMatchingItem("", "blaBla", "main", Arrays.asList(new String[]{"jar2", "jar1"})); >> + UnsignedAppletActionEntry r5 = i1.getMatchingItem("", "blaBla", Arrays.asList(new String[]{"jar2", "jar1"})); >> Assert.assertNotNull("r5 should be found", r5); >> - UnsignedAppletActionEntry r6 = i1.getMatchingItem(null, null, "main", Arrays.asList(new String[]{"jar2", "jar1"})); >> + UnsignedAppletActionEntry r6 = i1.getMatchingItem(null, null, Arrays.asList(new String[]{"jar2", "jar1"})); >> Assert.assertNotNull("r6 should be found", r6); >> - UnsignedAppletActionEntry r7 = i1.getMatchingItem(null, null, "main", Arrays.asList(new String[]{"jar2", "jar11"})); >> + UnsignedAppletActionEntry r7 = i1.getMatchingItem(null, null, Arrays.asList(new String[]{"jar2", "jar11"})); >> Assert.assertNull("r7 should NOT be found", r7); >> > > Looks good to me. > > agreedChangesToLockingFile -- agreed. > > > newMatchByStrength -- looks fine. > > > addingFilteringForTable: > > This seems a bit overly complex TBH. I don't think the user needs to be aware of the 'temporaries' at all. There are too many options as-is... However it is done, so I will review it. > >> diff -r 886c91766b45 -r b281229f08cc netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java >> --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java Mon Feb 25 12:50:15 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java Mon Feb 25 14:53:30 2013 +0100 >> @@ -145,7 +145,7 @@ >> } >> >> public void addRow() { >> - int i = back.toArray().length; >> + int i = back.toArray().length-1; >> String s = "\\Qhttp://localhost:80/\\E.*"; >> back.add(new UnsignedAppletActionEntry( >> ExecuteUnsignedApplet.NEVER, >> @@ -163,7 +163,7 @@ >> } >> >> public void clear() { >> - int i = getRowCount(); >> + int i = getRowCount()-1; >> back.clear(); >> fireTableRowsDeleted(0, i); >> } >> @@ -175,14 +175,14 @@ >> } >> >> void moveUp(int selectedRow) { >> - int i = getRowCount(); >> + int i = getRowCount()-1; >> back.moveUp(selectedRow); >> - fireTableRowsUpdated(i - 1, i); >> + fireTableRowsUpdated(i, i); >> } >> >> void moveDown(int selectedRow) { >> - int i = getRowCount(); >> + int i = getRowCount()-1; >> back.moveDown(selectedRow); >> - fireTableRowsUpdated(i, i + 1); >> + fireTableRowsUpdated(i, i); >> } >> } >> diff -r 886c91766b45 -r b281229f08cc netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java >> --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Feb 25 12:50:15 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Feb 25 14:53:30 2013 +0100 >> @@ -37,6 +37,8 @@ >> >> import java.awt.BorderLayout; >> import java.awt.Component; >> +import java.awt.event.ActionEvent; >> +import java.awt.event.ActionListener; >> import java.awt.event.KeyAdapter; >> import java.awt.event.KeyEvent; >> import java.awt.event.KeyListener; >> @@ -57,6 +59,8 @@ >> import javax.swing.JPanel; >> import javax.swing.JTable; >> import javax.swing.JTextField; >> +import javax.swing.RowFilter; >> +import javax.swing.RowFilter.Entry; >> import javax.swing.event.ChangeEvent; >> import javax.swing.event.ChangeListener; >> import javax.swing.event.ListSelectionEvent; >> @@ -66,6 +70,7 @@ >> import javax.swing.table.TableCellEditor; >> import javax.swing.table.TableCellRenderer; >> import javax.swing.table.TableModel; >> +import javax.swing.table.TableRowSorter; >> import net.sourceforge.jnlp.config.DeploymentConfiguration; >> import net.sourceforge.jnlp.runtime.Translator; >> import net.sourceforge.jnlp.security.appletextendedsecurity.AppletSecurityLevel; >> @@ -88,6 +93,7 @@ >> private javax.swing.JCheckBox filterRegexesCheckBox; >> private javax.swing.JComboBox mainPolicyComboBox; >> private javax.swing.JComboBox deleteTypeComboBox; >> + private javax.swing.JComboBox viewFilter; >> private javax.swing.JLabel globalBehaviourLabel; >> private javax.swing.JLabel securityLevelLabel; >> private javax.swing.JScrollPane userTableScrollPane; >> @@ -99,6 +105,8 @@ >> private final UnsignedAppletActionStorageExtendedImpl globalBackEnd; >> private final UnsignedAppletActionTableModel customModel; >> private final UnsignedAppletActionTableModel globalModel; >> + private final ByPermanenciFilter customFilter; >> + private final ByPermanenciFilter globalFilter; >> private final DeploymentConfiguration conf; >> private javax.swing.JTable currentTable; >> private UnsignedAppletActionTableModel currentModel; >> @@ -143,7 +151,11 @@ >> globalBackEnd = new UnsignedAppletActionStorageExtendedImpl(globalSettings); >> customModel = new UnsignedAppletActionTableModel(customBackEnd); >> globalModel = new UnsignedAppletActionTableModel(globalBackEnd); >> + customFilter = new ByPermanenciFilter(customModel); >> + globalFilter = new ByPermanenciFilter(globalModel); >> initComponents(); >> + userTable.setRowSorter(customFilter); >> + globalTable.setRowSorter(globalFilter); >> this.conf = conf; >> AppletSecurityLevel gs = AppletSecurityLevel.getDefault(); >> String s = conf.getProperty(DeploymentConfiguration.KEY_SECURITY_LEVEL); >> @@ -154,8 +166,8 @@ >> userTable.getSelectionModel().addListSelectionListener(new SingleSelectionListenerImpl(userTable)); >> globalTable.getSelectionModel().addListSelectionListener(new SingleSelectionListenerImpl(globalTable)); >> >> - userTable.addKeyListener(new deleteAdapter(userTable)); >> - globalTable.addKeyListener(new deleteAdapter(globalTable)); >> + userTable.addKeyListener(new DeleteAdapter(userTable)); >> + globalTable.addKeyListener(new DeleteAdapter(globalTable)); >> currentTable = userTable; >> currentModel = customModel; >> setButtons((!currentModel.back.isReadOnly())); >> @@ -246,6 +258,7 @@ >> securityLevelLabel = new javax.swing.JLabel(); >> globalBehaviourLabel = new javax.swing.JLabel(); >> deleteTypeComboBox = new javax.swing.JComboBox(); >> + viewFilter = new javax.swing.JComboBox(); >> deleteButton = new javax.swing.JButton(); >> testUrlButton = new javax.swing.JButton(); >> addRowButton = new javax.swing.JButton(); >> @@ -275,6 +288,45 @@ >> mainPolicyComboBoxActionPerformed(evt); >> } >> }); >> + >> + viewFilter.addActionListener(new ActionListener() { >> + @Override >> + public void actionPerformed(ActionEvent e) { >> + int i = viewFilter.getSelectedIndex(); >> + switch (i) { >> + case 0: >> + customFilter.setRowFilter(ByPermanenciFilter.showPernamnetns); >> + globalFilter.setRowFilter(ByPermanenciFilter.showPernamnetns); >> + break; >> + case 1: >> + customFilter.setRowFilter(ByPermanenciFilter.showTemporals); >> + globalFilter.setRowFilter(ByPermanenciFilter.showTemporals); >> + break; >> + case 2: >> + customFilter.setRowFilter(ByPermanenciFilter.showAll); >> + globalFilter.setRowFilter(ByPermanenciFilter.showAll); >> + break; >> + case 3: >> + customFilter.setRowFilter(ByPermanenciFilter.showPernamnetnA); >> + globalFilter.setRowFilter(ByPermanenciFilter.showPernamnetnA); >> + break; >> + case 4: >> + customFilter.setRowFilter(ByPermanenciFilter.showPernamnetnN); >> + globalFilter.setRowFilter(ByPermanenciFilter.showPernamnetnN); >> + break; >> + case 5: >> + customFilter.setRowFilter(ByPermanenciFilter.showTemporalY); >> + globalFilter.setRowFilter(ByPermanenciFilter.showTemporalY); >> + break; >> + case 6: >> + customFilter.setRowFilter(ByPermanenciFilter.showTemporalN); >> + globalFilter.setRowFilter(ByPermanenciFilter.showTemporalN); >> + break; >> + } >> + >> + } >> + }); >> + >> >> securityLevelLabel.setText(Translator.R("APPEXTSECguiPanelSecurityLevel")); >> >> @@ -287,6 +339,15 @@ >> Translator.R("APPEXTSECguiPanelDeleteMenuAlly"), >> Translator.R("APPEXTSECguiPanelDeleteMenuAlln"), >> Translator.R("APPEXTSECguiPanelDeleteMenuAllAll")})); >> + >> + viewFilter.setModel(new javax.swing.DefaultComboBoxModel(new String[]{ >> + Translator.R("APPEXTSECguiPanelShowOnlyPermanent"), >> + Translator.R("APPEXTSECguiPanelShowOnlyTemporal"), >> + Translator.R("APPEXTSECguiPanelShowAll"), >> + Translator.R("APPEXTSECguiPanelShowOnlyPermanentA"), >> + Translator.R("APPEXTSECguiPanelShowOnlyPermanentN"), >> + Translator.R("APPEXTSECguiPanelShowOnlyTemporalY"), >> + Translator.R("APPEXTSECguiPanelShowOnlyTemporalN")})); >> >> deleteButton.setText(Translator.R("APPEXTSECguiPanelDeleteButton")); >> deleteButton.setToolTipText(Translator.R("APPEXTSECguiPanelDeleteButtonToolTip")); >> @@ -383,7 +444,8 @@ >> .addComponent(invertSelectionButton)) >> .addGroup(layout.createSequentialGroup() >> .addComponent(askBeforeActionCheckBox).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) >> - .addComponent(filterRegexesCheckBox))).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 93, Short.MAX_VALUE) >> + .addComponent(filterRegexesCheckBox).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 93, Short.MAX_VALUE) >> + .addComponent(viewFilter))).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) >> .addComponent(helpButton, javax.swing.GroupLayout.PREFERRED_SIZE, 108, javax.swing.GroupLayout.PREFERRED_SIZE))).addContainerGap())); >> layout.setVerticalGroup( >> layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) >> @@ -400,7 +462,8 @@ >> .addComponent(invertSelectionButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) >> .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) >> .addComponent(askBeforeActionCheckBox) >> - .addComponent(filterRegexesCheckBox))) >> + .addComponent(filterRegexesCheckBox) >> + .addComponent(viewFilter))) >> .addComponent(helpButton, javax.swing.GroupLayout.PREFERRED_SIZE, 53, javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) >> .addComponent(mainTabPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 161, Short.MAX_VALUE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) >> .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) >> @@ -561,7 +624,13 @@ >> >> private void moveRowUpButtonActionPerformed(java.awt.event.ActionEvent evt) { >> int orig = currentTable.getSelectedRow(); >> + if (orig<0 || orig>=currentTable.getRowCount()) { >> + return; >> + } >> int i = currentTable.convertRowIndexToModel(orig); >> + if (i<=0) { >> + return; >> + } >> currentModel.moveUp(i); >> reloadTable(); >> if (orig >= 1) { >> @@ -571,7 +640,13 @@ >> >> private void moveRowDownButtonActionPerformed(java.awt.event.ActionEvent evt) { >> int orig = currentTable.getSelectedRow(); >> + if (orig<0 || orig>=currentTable.getRowCount()) { >> + return; >> + } >> int i = currentTable.convertRowIndexToModel(orig); >> + if (i>=currentTable.getRowCount()-1) { >> + return; >> + } >> currentModel.moveDown(i); >> reloadTable(); >> if (orig < currentModel.getRowCount()) { >> @@ -720,7 +795,7 @@ >> } >> } >> >> - private class SingleSelectionListenerImpl implements ListSelectionListener { >> + private final class SingleSelectionListenerImpl implements ListSelectionListener { >> >> private final JTable table; >> >> @@ -740,11 +815,11 @@ >> } >> } >> >> - private class deleteAdapter implements KeyListener { >> + private final class DeleteAdapter implements KeyListener { >> >> private final JTable table; >> >> - public deleteAdapter(JTable table) { >> + public DeleteAdapter(JTable table) { >> this.table = table; >> } >> >> @@ -763,4 +838,82 @@ >> public void keyReleased(KeyEvent e) { >> } >> } >> + >> + >> + private static final class ByPermanenciFilter extends TableRowSorter { > > Permanent and Temporal are very confusing names for what I just consider the 'decisions' and the 'hints'. > Anyway, ByPermanenciFilter -> ByPermanencyFilter > >> + >> + private static final class ShowAll extends RowFilter { >> + >> + @Override >> + public boolean include(Entry entry) { >> + return true; >> + } >> + } >> + >> + private static final class ShowPernamnetns extends RowFilter { > > ShowPernamnetns -> ShowPermanents > >> + >> + @Override >> + public boolean include(Entry entry) { >> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >> + return (o.equals(ExecuteUnsignedApplet.ALWAYS) || o.equals(ExecuteUnsignedApplet.NEVER)); >> + } >> + } >> + >> + private static final class ShowPernamnetnA extends RowFilter { > > ShowPernamnetnA -> ShowPermanentA > > I would just have this as 'ShowAlways' though, no ? > >> + >> + @Override >> + public boolean include(Entry entry) { >> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >> + return (o.equals(ExecuteUnsignedApplet.ALWAYS)); >> + } >> + } >> + >> + private static final class ShowPernamnetnN extends RowFilter { > > ShowPernamnetnN -> ShowPermanentN > > I would just have this as 'ShowNever' though, no ? > >> + >> + @Override >> + public boolean include(Entry entry) { >> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >> + return (o.equals(ExecuteUnsignedApplet.NEVER)); >> + } >> + } >> + >> + private static final class ShowTemporals extends RowFilter { >> + >> + @Override >> + public boolean include(Entry entry) { >> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >> + return (o.equals(ExecuteUnsignedApplet.YES) || o.equals(ExecuteUnsignedApplet.NO)); >> + } >> + } >> + >> + private static final class ShowTemporalY extends RowFilter { > > Too many complications for something the user shouldn't really care about managing IMO. > But anyway, I prefer ShowHasChosenYes > >> + >> + @Override >> + public boolean include(Entry entry) { >> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >> + return (o.equals(ExecuteUnsignedApplet.YES)); >> + } >> + } >> + >> + private static final class ShowTemporalN extends RowFilter { > > See above, but anyway I prefer ShowHasChosenNo > >> + >> + @Override >> + public boolean include(Entry entry) { >> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >> + return (o.equals(ExecuteUnsignedApplet.NO)); >> + } >> + } >> + public static final ShowAll showAll = new ShowAll(); >> + public static final ShowPernamnetns showPernamnetns = new ShowPernamnetns(); >> + public static final ShowPernamnetnA showPernamnetnA = new ShowPernamnetnA(); >> + public static final ShowPernamnetnN showPernamnetnN = new ShowPernamnetnN(); >> + public static final ShowTemporals showTemporals = new ShowTemporals(); >> + public static final ShowTemporalY showTemporalY = new ShowTemporalY(); >> + public static final ShowTemporalN showTemporalN = new ShowTemporalN(); >> + >> + public ByPermanenciFilter(UnsignedAppletActionTableModel model) { >> + super(model); >> + setRowFilter(showPernamnetns); >> + } >> + } >> } >> diff -r 886c91766b45 -r b281229f08cc netx/net/sourceforge/jnlp/resources/Messages.properties >> --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Mon Feb 25 12:50:15 2013 +0100 >> +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Mon Feb 25 14:53:30 2013 +0100 >> @@ -528,4 +528,11 @@ >> APPEXTSECguiPanelEmptyDoc=All document-bases must be full >> APPEXTSECguiPanelEmptyCode=All code-bases must be full >> APPEXTSECguiPanelTableValid=Table looks valid >> -APPEXTSECguiPanelTableInvalid=Invalid with following error: {0} >> \ No newline at end of file >> +APPEXTSECguiPanelTableInvalid=Invalid with following error: {0} >> +APPEXTSECguiPanelShowOnlyPermanent=Show only permanent records >> +APPEXTSECguiPanelShowOnlyTemporal=Show only temporal records >> +APPEXTSECguiPanelShowAll=Show all records >> +APPEXTSECguiPanelShowOnlyPermanentA=Show only allowed permanent records >> +APPEXTSECguiPanelShowOnlyPermanentN=Show only forbidden permanent records >> +APPEXTSECguiPanelShowOnlyTemporalY=Show only temporally allowed records > > Funny, 'temporally' is technically a valid word here, but I'm sure you meant 'temporarily' :-) but this is much clearer as 'Show previously allowed applets'. Calling something that was allowed once 'temporarily allowed' is confusing. > >> +APPEXTSECguiPanelShowOnlyTemporalN=Show only temporally denied records > > 'Show previously denied applets' > >> \ No newline at end of file > > Overall not sure how I feel about this one, but I guess I'm OK with it in the interest of getting this into HEAD. > > BTW You never did give me that URL encoding suggestion :-) > > -Adam huh... I'm getting drowned from this and it seems its doing whats expected. So enjoy the writing of changelog and fire it :) /me looking forward for extend version and for embeded version O:P J. From gnu.andrew at redhat.com Tue Mar 26 07:45:22 2013 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Tue, 26 Mar 2013 10:45:22 -0400 (EDT) Subject: Two AArch64-related patches In-Reply-To: <51516BE7.7030803@redhat.com> Message-ID: <1976740502.23970105.1364309122054.JavaMail.root@redhat.com> ----- Original Message ----- > On 03/25/2013 09:47 PM, Andrew Hughes wrote: > > ----- Original Message ----- > >> Michal Vyskocil writes: > >> > >> > I'm a maintainer of openjdk for SUSE and recently I've got two > >> > patches > >> > from our AArch64 team for openjdk7. I have no idea if porting > >> > of > >> > openjdk7 is important for this group, but it is probably better > >> > to > >> > try > >> > it. > >> > >> You may be aware that there is an AArch64 porting project. > >> > >> Mailing List > >> aarch64-dev at openjdk.java.net > >> http://mail.openjdk.java.net/mailman/listinfo/aarch64-dev > >> > >> The actual source code still isn't there, but hopefully will be as > >> soon as we get all the legal details sorted out. > > > > Is there an intention to backport the AArch64 port to 7? > > It's entirely confined to HotSpot, so I don't think there's any > need to backport anything: I hope that we'll be able to use > a newer HotSpot with 7. > Well, it'll still have to be backported to the 7u repositories, but yes, I see what you mean; it will no doubt just get included in one of the bulk updates by default. But that's a long way off and I see no harm in making Zero work in the meantime. Has it been run on a completely AArch64 system yet? I'm wondering if any minor JDK issues might come up once a full build is done purely on AArch64 without the emulator. > Andrew. > > > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 From aph at redhat.com Tue Mar 26 08:08:18 2013 From: aph at redhat.com (Andrew Haley) Date: Tue, 26 Mar 2013 15:08:18 +0000 Subject: Two AArch64-related patches In-Reply-To: <1976740502.23970105.1364309122054.JavaMail.root@redhat.com> References: <1976740502.23970105.1364309122054.JavaMail.root@redhat.com> Message-ID: <5151B9E2.4040409@redhat.com> On 03/26/2013 02:45 PM, Andrew Hughes wrote: > Has it been run on a completely AArch64 system yet? No. > I'm wondering if any minor JDK issues might come up once a full > build is done purely on AArch64 without the emulator. I would be astonished if there were no problems. Andrew. From jvanek at redhat.com Tue Mar 26 09:16:35 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 26 Mar 2013 17:16:35 +0100 Subject: [fyi][icedtea-web] backend and itw-settings for extended applets security In-Reply-To: <5151AC87.40103@redhat.com> References: <510E532C.8040401@redhat.com> <51119426.9090000@redhat.com> <511D1142.2090501@redhat.com> <511D2AA8.2040709@redhat.com> <5124C5D0.7080309@redhat.com> <512545CD.4080305@redhat.com> <51269AAA.8090606@redhat.com> <512BA227.6040404@redhat.com> <512BC7F5.9030704@redhat.com> <5151AC87.40103@redhat.com> Message-ID: <5151C9E3.5040502@redhat.com> On 03/26/2013 03:11 PM, Jiri Vanek wrote: > On 02/25/2013 09:22 PM, Adam Domurad wrote: >> On 02/25/2013 12:40 PM, Jiri Vanek wrote: >>> On 02/21/2013 11:07 PM, Adam Domurad wrote: >>>> On 02/20/2013 04:53 PM, Adam Domurad wrote: >>>>> Here are some proposed fixes. Thanks. >>>>> >>>>> - comapre -> compare typo fix >>>>> - Never return from a finally block! (Eclipse underlines the whole finally block as a warning.) >>>>> See http://weblogs.java.net/blog/staufferjames/archive/2007/06/_dont_return_in.html >>>>> - Added a null check so we don't compare if a null archive list is stored. >>>>> >>>>> - Adam >>>>> >>>>> >>>> >>>> Ignore that one, this trumps it. >>>> >>>> OK. I tried to separate what would be considered changes to Jiri's part out. >>>> AppletSecuritySettings.java had to be moved out of sun.applet to make it accessible. >>>> >>>> First apply Jiris latest patch, then the rest of them with integrated-dialogue2.patch last. >>>> >>>> Here are the patches. Will make a ChangeLog sometime soon. >>>> >>>> All the applet security levels should be working in this patch, as well it should honour the global >>>> applet settings. >>>> >>>> Red/green text indicates if you've accepted a patch before. >>>> >>>> Further implementation question: >>>> - Currently when many applets share a single classloader on a page and one is rejected, it'd be nice >>>> if the it did not ask for rejection for all the other applets. It is tricky to get this right. >>>> Perhaps rejecting a certain unique key should be permanent for a session ? There should be no harm, >>>> as you can always restart your browser if you accidentally hit reject. And indeed there is harm in >>>> the other direction, if you reject an applet but accidentally hit OK for one of the other applet >>>> dialogues that come up. >>>> >>>> Let me know of any issues. >>>> >>>> Happy hacking, >>>> -Adam >>> >>> >>> ugh. Next round of backend: >>> >>> My OriginalPatch, added filtering for table and removed mainClass - all as separate changes. >>> Also agreedChangesToLockingFile.diff ( I agree with your changes, nextTime I will merge them inside) >>> I have rewritten your strength matching algorithm - newMAtchByStrength.diff - I hope it will still suits (the only change was actually to returnimidiately when strong match is found - return first week otherwise) >>> >>> Thanx for suggestions, as Omair suggested - lets fire this! (means merge above, add tests and push) >>> >>> ps: I hope I have not forget some occurence of mainCLass somewhere :-/ >>> pps: test tests and tests on my side :-/ >> >> Great. >> >> Mainclass: >> >>> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java >>> --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java Mon Feb 25 16:26:29 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java Mon Feb 25 18:32:10 2013 +0100 >>> @@ -37,11 +37,11 @@ >>> >>> import java.util.Date; >>> import javax.swing.table.AbstractTableModel; >>> +import net.sourceforge.jnlp.runtime.Translator; >>> import net.sourceforge.jnlp.security.appletextendedsecurity.ExecuteUnsignedApplet; >>> import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletActionEntry; >>> import net.sourceforge.jnlp.security.appletextendedsecurity.UrlRegEx; >>> import net.sourceforge.jnlp.security.appletextendedsecurity.impl.UnsignedAppletActionStorageExtendedImpl; >>> -import net.sourceforge.jnlp.runtime.Translator; >>> >>> public class UnsignedAppletActionTableModel extends AbstractTableModel { >>> >>> @@ -50,7 +50,7 @@ >>> Translator.R("APPEXTSECguiTableModelTableColumnDateOfAction"), >>> Translator.R("APPEXTSECguiTableModelTableColumnDocumentBase"), >>> Translator.R("APPEXTSECguiTableModelTableColumnCodeBase"), >>> - Translator.R("APPEXTSECguiTableModelTableColumnMainClass"), >>> + //Translator.R("APPEXTSECguiTableModelTableColumnMainClass"), >> >> I noticed you kept the translator stuff as comments, but I'd be in favour of just dropping it. Theres already too many comments in ITW that have long-forgotten purpose :-) >> >>> Translator.R("APPEXTSECguiTableModelTableColumnArchives")}; >>> >>> public UnsignedAppletActionTableModel(UnsignedAppletActionStorageExtendedImpl back) { >>> @@ -86,10 +86,10 @@ >>> if (columnIndex == 3) { >>> return UrlRegEx.class; >>> } >>> - if (columnIndex == 3) { >>> + if (columnIndex == 4) { >>> return String.class; >>> } >>> - if (columnIndex == 3) { >>> + if (columnIndex == 5) { >>> return String.class; >>> } >>> return Object.class; >>> @@ -129,9 +129,6 @@ >>> return source.getCodeBase(); >>> } >>> if (columnIndex == 4) { >>> - return source.getMainClass(); >>> - } >>> - if (columnIndex == 5) { >>> return UnsignedAppletActionEntry.createArchivesString(source.getArchives()); >>> } >>> return null; >>> @@ -152,7 +149,6 @@ >>> new Date(), >>> new UrlRegEx(s), >>> new UrlRegEx(s), >>> - null, >>> null)); >>> fireTableRowsInserted(i, i + 1); >>> } >>> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java >>> --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Feb 25 16:26:29 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Feb 25 18:32:10 2013 +0100 >>> @@ -186,7 +186,7 @@ >>> + "\n (" + Translator.R("APPEXTSECguiPanelAppletInfoHederPart2", i.getUnsignedAppletAction(), DateFormat.getInstance().format(i.getTimeStamp())) >>> + "\n " + Translator.R("APPEXTSECguiTableModelTableColumnDocumentBase") + ": " + i.getDocumentBase().getFilteredRegEx() >>> + "\n " + Translator.R("APPEXTSECguiTableModelTableColumnCodeBase") + ": " + i.getCodeBase().getFilteredRegEx() >>> - + "\n " + Translator.R("APPEXTSECguiTableModelTableColumnMainClass") + ": " + ((i.getMainClass() == null) ? "" : i.getMainClass()) >>> + //+ "\n " + Translator.R("APPEXTSECguiTableModelTableColumnMainClass") + ": " + ((i.getMainClass() == null) ? "" : i.getMainClass()) >>> + "\n " + Translator.R("APPEXTSECguiTableModelTableColumnArchives") + ": " + UnsignedAppletActionEntry.createArchivesString(i.getArchives()); >>> } >>> >>> @@ -540,7 +540,7 @@ >>> lastDoc = s1; >>> lastCode = s2; >>> try { >>> - List i = currentModel.back.getMatchingItems(s1, s2, null, null); >>> + List i = currentModel.back.getMatchingItems(s1, s2, null); >>> if (i == null || i.isEmpty()) { >>> JOptionPane.showMessageDialog(this, Translator.R("APPEXTSECguiPanelNoMatch")); >>> } else { >>> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionEntry.java >>> --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionEntry.java Mon Feb 25 16:26:29 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionEntry.java Mon Feb 25 18:32:10 2013 +0100 >>> @@ -47,7 +47,6 @@ >>> private Date timeStamp; >>> private UrlRegEx documentBase; >>> private UrlRegEx codeBase; >>> - private String mainClass; >>> private List archives; >>> >>> public static UnsignedAppletActionEntry createFromString(String s) { >>> @@ -57,26 +56,21 @@ >>> new Date(new Long(split[1])), >>> new UrlRegEx(split[2]), >>> null, >>> - null, >>> null); >>> if (split.length > 3) { >>> nw.setCodeBase(new UrlRegEx(split[3])); >>> } >>> if (split.length > 4) { >>> - nw.setMainClass(split[4]); >>> - } >>> - if (split.length > 5) { >>> - nw.setArchives(createArchivesList(s.substring(s.indexOf(split[4]) + split[4].length()).trim())); >>> + nw.setArchives(createArchivesList(s.substring(s.lastIndexOf(split[3]) + split[3].length()).trim())); >>> } >>> return nw; >>> } >>> >>> - public UnsignedAppletActionEntry(ExecuteUnsignedApplet unsignedAppletAction, Date timeStamp, UrlRegEx documentBase, UrlRegEx codeBase, String mainClass, List archives) { >>> + public UnsignedAppletActionEntry(ExecuteUnsignedApplet unsignedAppletAction, Date timeStamp, UrlRegEx documentBase, UrlRegEx codeBase, List archives) { >>> this.unsignedAppletAction = unsignedAppletAction; >>> this.timeStamp = timeStamp; >>> this.documentBase = documentBase; >>> this.codeBase = codeBase; >>> - this.mainClass = mainClass; >>> this.archives = archives; >>> >>> } >>> @@ -96,7 +90,6 @@ >>> + " " + ((timeStamp == null) ? "1" : timeStamp.getTime()) >>> + " " + ((documentBase == null) ? "" : documentBase.getRegEx()) >>> + " " + ((codeBase == null) ? "" : codeBase.getRegEx()) >>> - + " " + ((mainClass == null) ? "" : mainClass) >>> + " " + createArchivesString(archives); >>> } >>> >>> @@ -132,14 +125,6 @@ >>> this.codeBase = codeBase; >>> } >>> >>> - public String getMainClass() { >>> - return mainClass; >>> - } >>> - >>> - public void setMainClass(String mainClass) { >>> - this.mainClass = mainClass; >>> - } >>> - >>> public List getArchives() { >>> return archives; >>> } >>> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionStorage.java >>> --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionStorage.java Mon Feb 25 16:26:29 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionStorage.java Mon Feb 25 18:32:10 2013 +0100 >>> @@ -1,19 +1,37 @@ >>> -/* >>> - Copyright (C) 2013 Red Hat >>> +/* Copyright (C) 2013 Red Hat, Inc. >>> >>> - This program is free software; you can redistribute it and/or modify >>> - it under the terms of the GNU General Public License as published by >>> - the Free Software Foundation; either version 2 of the License, or >>> - (at your option) any later version. >>> + This file is part of IcedTea. >>> >>> - This program is distributed in the hope that it will be useful, but >>> - WITHOUT ANY WARRANTY; without even the implied warranty of >>> - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >>> + IcedTea is free software; you can redistribute it and/or >>> + modify it under the terms of the GNU General Public License as published by >>> + the Free Software Foundation, version 2. >>> + >>> + IcedTea is distributed in the hope that it will be useful, >>> + but WITHOUT ANY WARRANTY; without even the implied warranty of >>> + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >>> General Public License for more details. >>> >>> You should have received a copy of the GNU General Public License >>> - along with this program; if not, write to the Free Software >>> - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA >>> + along with IcedTea; see the file COPYING. If not, write to >>> + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA >>> + 02110-1301 USA. >>> + >>> + Linking this library statically or dynamically with other modules is >>> + making a combined work based on this library. Thus, the terms and >>> + conditions of the GNU General Public License cover the whole >>> + combination. >>> + >>> + As a special exception, the copyright holders of this library give you >>> + permission to link this library with independent modules to produce an >>> + executable, regardless of the license terms of these independent >>> + modules, and to copy and distribute the resulting executable under >>> + terms of your choice, provided that you also meet, for each linked >>> + independent module, the terms and conditions of the license of that >>> + module. An independent module is a module which is not derived from >>> + or based on this library. If you modify this library, you may extend >>> + this exception to your version of the library, but you are not >>> + obligated to do so. If you do not wish to do so, delete this >>> + exception statement from your version. >>> */ >>> package net.sourceforge.jnlp.security.appletextendedsecurity; >>> >>> @@ -50,7 +68,7 @@ >>> * @param archives >>> * @return >>> */ >>> - public UnsignedAppletActionEntry getMatchingItem(String documentBase, String codeBase, String mainClass, List archives); >>> + public UnsignedAppletActionEntry getMatchingItem(String documentBase, String codeBase, List archives); >>> >>> /** >>> * Shortcut getMatchingItem(documentBase, null,null,null) >>> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageExtendedImpl.java >>> --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageExtendedImpl.java Mon Feb 25 16:26:29 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageExtendedImpl.java Mon Feb 25 18:32:10 2013 +0100 >>> @@ -166,9 +166,6 @@ >>> source.setCodeBase(new UrlRegEx((String) aValue)); >>> } >>> if (columnIndex == 4) { >>> - source.setMainClass((String) aValue); >>> - } >>> - if (columnIndex == 5) { >>> source.setArchives(UnsignedAppletActionEntry.createArchivesList((String) aValue)); >>> } >>> >>> diff -r 98060d84ad58 netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java >>> --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java Mon Feb 25 16:26:29 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImpl.java Mon Feb 25 18:32:10 2013 +0100 >>> @@ -131,8 +131,8 @@ >>> } >>> >>> @Override >>> - public UnsignedAppletActionEntry getMatchingItem(String documentBase, String codeBase, String mainClass, List archives) { >>> - List results = getMatchingItems(documentBase, codeBase, mainClass, archives); >>> + public UnsignedAppletActionEntry getMatchingItem(String documentBase, String codeBase, List archives) { >>> + List results = getMatchingItems(documentBase, codeBase, archives); >>> if (results == null || results.isEmpty()) { >>> return null; >>> } >>> @@ -150,7 +150,7 @@ >>> return results.get(0); >>> } >>> >>> - public List getMatchingItems(String documentBase, String codeBase, String mainClass, List archives) { >>> + public List getMatchingItems(String documentBase, String codeBase, List archives) { >>> List result = new ArrayList(); >>> lock(); >>> try { >>> @@ -159,7 +159,7 @@ >>> return result; >>> } >>> for (UnsignedAppletActionEntry unsignedAppletActionEntry : items) { >>> - if (isMatching(unsignedAppletActionEntry, documentBase, codeBase, mainClass, archives)) { >>> + if (isMatching(unsignedAppletActionEntry, documentBase, codeBase, archives)) { >>> result.add(unsignedAppletActionEntry); >>> } >>> } >>> @@ -171,7 +171,7 @@ >>> return result; >>> } >>> >>> - private boolean isMatching(UnsignedAppletActionEntry unsignedAppletActionEntry, String documentBase, String codeBase, String mainClass, List archives) { >>> + private boolean isMatching(UnsignedAppletActionEntry unsignedAppletActionEntry, String documentBase, String codeBase, List archives) { >>> boolean result = true; >>> if (documentBase != null && !documentBase.trim().isEmpty()) { >>> result = result && documentBase.matches(unsignedAppletActionEntry.getDocumentBase().getRegEx()); >>> @@ -179,10 +179,6 @@ >>> if (codeBase != null && !codeBase.trim().isEmpty()) { >>> result = result && codeBase.matches(unsignedAppletActionEntry.getCodeBase().getRegEx()); >>> } >>> - if (mainClass != null && !mainClass.trim().isEmpty()) { >>> - result = result && mainClass.equals(unsignedAppletActionEntry.getMainClass()); >>> - } >>> - >>> if (archives != null) { >>> result = result && compareArchives(archives, unsignedAppletActionEntry.getArchives()); >>> } >>> @@ -195,6 +191,15 @@ >>> } >>> >>> private boolean compareArchives(List archives, List saved) { >>> + if (archives == null && saved !=null){ >>> + return false; >>> + } >>> + if (archives != null && saved ==null){ >>> + return false; >>> + } >>> + if (archives == null && saved ==null){ >>> + return true; >>> + } >>> if (archives.size() != saved.size()) { >>> return false; >>> } >>> @@ -220,16 +225,16 @@ >>> >>> @Override >>> public UnsignedAppletActionEntry getMatchingItemByDocumentBase(String documentBase) { >>> - return getMatchingItem(documentBase, null, null, null); >>> + return getMatchingItem(documentBase, null, null); >>> } >>> >>> @Override >>> public UnsignedAppletActionEntry getMatchingItemByCodeBase(String codeBase) { >>> - return getMatchingItem(null, codeBase, null, null); >>> + return getMatchingItem(null, codeBase, null); >>> } >>> >>> @Override >>> public UnsignedAppletActionEntry getMatchingItemByBases(String documentBase, String codeBase) { >>> - return getMatchingItem(documentBase, codeBase, null, null); >>> + return getMatchingItem(documentBase, codeBase, null); >>> } >>> } >>> diff -r 98060d84ad58 tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java >>> --- a/tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java Mon Feb 25 16:26:29 2013 +0100 >>> +++ b/tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/impl/UnsignedAppletActionStorageImplTest.java Mon Feb 25 18:32:10 2013 +0100 >>> @@ -59,22 +59,20 @@ >>> f2 = File.createTempFile("itwMatching", "testFile2"); >>> f3 = File.createTempFile("itwMatching", "testFile3"); >>> f4 = File.createTempFile("itwMatching", "testFile4"); >>> - ServerAccess.saveFile("A 123456 .* .* main jar1,jar2", f1); >>> - ServerAccess.saveFile("A 123456 .* \\Qbla\\E main jar1,jar2", f2); >>> + ServerAccess.saveFile("A 123456 .* .* jar1,jar2", f1); >>> + ServerAccess.saveFile("A 123456 .* \\Qbla\\E jar1,jar2", f2); >>> } >>> >>> @Test >>> public void allMatchingDocAndCode() { >>> UnsignedAppletActionStorageImpl i1 = new UnsignedAppletActionStorageImpl(f1); >>> - UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", "main", Arrays.asList(new String[]{"jar1", "jar2"})); >>> + UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", Arrays.asList(new String[]{"jar1", "jar2"})); >>> Assert.assertNotNull("r1 should be found", r1); >>> - UnsignedAppletActionEntry r3 = i1.getMatchingItem("blah", "blaBla", "main", Arrays.asList(new String[]{"jar2", "jar1"})); >>> + UnsignedAppletActionEntry r3 = i1.getMatchingItem("blah", "blaBla", Arrays.asList(new String[]{"jar2", "jar1"})); >>> Assert.assertNotNull("r3 should be found", r1); >>> - UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBlam", "wrong_main", Arrays.asList(new String[]{"jar1", "jar2"})); >>> - Assert.assertNull("r2 should NOT be found", r2); >>> - UnsignedAppletActionEntry r4 = i1.getMatchingItem("blha", "blaBlam", "main", Arrays.asList(new String[]{"jar2", "wrong_jar"})); >>> + UnsignedAppletActionEntry r4 = i1.getMatchingItem("blha", "blaBlam", Arrays.asList(new String[]{"jar2", "wrong_jar"})); >>> Assert.assertNull("r4 should NOT be found", r4); >>> - UnsignedAppletActionEntry r5 = i1.getMatchingItem("blaBla", "blaBlaBla", "main", Arrays.asList(new String[]{"jar2"})); >>> + UnsignedAppletActionEntry r5 = i1.getMatchingItem("blaBla", "blaBlaBla", Arrays.asList(new String[]{"jar2"})); >>> Assert.assertNull("r5 should NOT be found", r5); >>> >>> } >>> @@ -82,13 +80,13 @@ >>> @Test >>> public void allMatchingDocAndStrictCode() { >>> UnsignedAppletActionStorageImpl i1 = new UnsignedAppletActionStorageImpl(f2); >>> - UnsignedAppletActionEntry r1 = i1.getMatchingItem("whatever", "bla", "main", Arrays.asList(new String[]{"jar1", "jar2"})); >>> + UnsignedAppletActionEntry r1 = i1.getMatchingItem("whatever", "bla", Arrays.asList(new String[]{"jar1", "jar2"})); >>> Assert.assertNotNull("r1 should be found", r1); >>> - UnsignedAppletActionEntry r3 = i1.getMatchingItem("whatever", null, "main", Arrays.asList(new String[]{"jar2", "jar1"})); >>> + UnsignedAppletActionEntry r3 = i1.getMatchingItem("whatever", null, Arrays.asList(new String[]{"jar2", "jar1"})); >>> Assert.assertNotNull("r3 should be found", r1); >>> - UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBlam", "main", Arrays.asList(new String[]{"jar1", "jar2"})); >>> + UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBlam", Arrays.asList(new String[]{"jar1", "jar2"})); >>> Assert.assertNull("r2 should NOT be found", r2); >>> - UnsignedAppletActionEntry r4 = i1.getMatchingItem(null, "blaBlam", null, null); >>> + UnsignedAppletActionEntry r4 = i1.getMatchingItem(null, "blaBlam", null); >>> Assert.assertNull("r4 should NOT be found", r4); >>> >>> } >>> @@ -96,19 +94,19 @@ >>> @Test >>> public void allMatchingDocAndCodeWithNulls() { >>> UnsignedAppletActionStorageImpl i1 = new UnsignedAppletActionStorageImpl(f1); >>> - UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", null, null); >>> + UnsignedAppletActionEntry r1 = i1.getMatchingItem("bla", "blaBla", null); >>> Assert.assertNotNull("r1 should be found", r1); >>> - UnsignedAppletActionEntry r3 = i1.getMatchingItem("bla", "whatever", "", null); >>> + UnsignedAppletActionEntry r3 = i1.getMatchingItem("bla", "whatever", null); >>> Assert.assertNotNull("r3 should be found", r1); >>> - UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBla", null, Arrays.asList(new String[]{"jar2", "jar1"})); >>> + UnsignedAppletActionEntry r2 = i1.getMatchingItem("bla", "blaBla", Arrays.asList(new String[]{"jar2", "jar1"})); >>> Assert.assertNotNull("r2 should be found", r2); >>> - UnsignedAppletActionEntry r4 = i1.getMatchingItem("bla", "blaBla", "main", null); >>> + UnsignedAppletActionEntry r4 = i1.getMatchingItem("bla", "blaBla", null); >>> Assert.assertNotNull("r4 should be found", r4); >>> - UnsignedAppletActionEntry r5 = i1.getMatchingItem("", "blaBla", "main", Arrays.asList(new String[]{"jar2", "jar1"})); >>> + UnsignedAppletActionEntry r5 = i1.getMatchingItem("", "blaBla", Arrays.asList(new String[]{"jar2", "jar1"})); >>> Assert.assertNotNull("r5 should be found", r5); >>> - UnsignedAppletActionEntry r6 = i1.getMatchingItem(null, null, "main", Arrays.asList(new String[]{"jar2", "jar1"})); >>> + UnsignedAppletActionEntry r6 = i1.getMatchingItem(null, null, Arrays.asList(new String[]{"jar2", "jar1"})); >>> Assert.assertNotNull("r6 should be found", r6); >>> - UnsignedAppletActionEntry r7 = i1.getMatchingItem(null, null, "main", Arrays.asList(new String[]{"jar2", "jar11"})); >>> + UnsignedAppletActionEntry r7 = i1.getMatchingItem(null, null, Arrays.asList(new String[]{"jar2", "jar11"})); >>> Assert.assertNull("r7 should NOT be found", r7); >>> >> >> Looks good to me. >> >> agreedChangesToLockingFile -- agreed. >> >> >> newMatchByStrength -- looks fine. >> >> >> addingFilteringForTable: >> >> This seems a bit overly complex TBH. I don't think the user needs to be aware of the 'temporaries' at all. There are too many options as-is... However it is done, so I will review it. >> >>> diff -r 886c91766b45 -r b281229f08cc netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java >>> --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java Mon Feb 25 12:50:15 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletActionTableModel.java Mon Feb 25 14:53:30 2013 +0100 >>> @@ -145,7 +145,7 @@ >>> } >>> >>> public void addRow() { >>> - int i = back.toArray().length; >>> + int i = back.toArray().length-1; >>> String s = "\\Qhttp://localhost:80/\\E.*"; >>> back.add(new UnsignedAppletActionEntry( >>> ExecuteUnsignedApplet.NEVER, >>> @@ -163,7 +163,7 @@ >>> } >>> >>> public void clear() { >>> - int i = getRowCount(); >>> + int i = getRowCount()-1; >>> back.clear(); >>> fireTableRowsDeleted(0, i); >>> } >>> @@ -175,14 +175,14 @@ >>> } >>> >>> void moveUp(int selectedRow) { >>> - int i = getRowCount(); >>> + int i = getRowCount()-1; >>> back.moveUp(selectedRow); >>> - fireTableRowsUpdated(i - 1, i); >>> + fireTableRowsUpdated(i, i); >>> } >>> >>> void moveDown(int selectedRow) { >>> - int i = getRowCount(); >>> + int i = getRowCount()-1; >>> back.moveDown(selectedRow); >>> - fireTableRowsUpdated(i, i + 1); >>> + fireTableRowsUpdated(i, i); >>> } >>> } >>> diff -r 886c91766b45 -r b281229f08cc netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java >>> --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Feb 25 12:50:15 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Feb 25 14:53:30 2013 +0100 >>> @@ -37,6 +37,8 @@ >>> >>> import java.awt.BorderLayout; >>> import java.awt.Component; >>> +import java.awt.event.ActionEvent; >>> +import java.awt.event.ActionListener; >>> import java.awt.event.KeyAdapter; >>> import java.awt.event.KeyEvent; >>> import java.awt.event.KeyListener; >>> @@ -57,6 +59,8 @@ >>> import javax.swing.JPanel; >>> import javax.swing.JTable; >>> import javax.swing.JTextField; >>> +import javax.swing.RowFilter; >>> +import javax.swing.RowFilter.Entry; >>> import javax.swing.event.ChangeEvent; >>> import javax.swing.event.ChangeListener; >>> import javax.swing.event.ListSelectionEvent; >>> @@ -66,6 +70,7 @@ >>> import javax.swing.table.TableCellEditor; >>> import javax.swing.table.TableCellRenderer; >>> import javax.swing.table.TableModel; >>> +import javax.swing.table.TableRowSorter; >>> import net.sourceforge.jnlp.config.DeploymentConfiguration; >>> import net.sourceforge.jnlp.runtime.Translator; >>> import net.sourceforge.jnlp.security.appletextendedsecurity.AppletSecurityLevel; >>> @@ -88,6 +93,7 @@ >>> private javax.swing.JCheckBox filterRegexesCheckBox; >>> private javax.swing.JComboBox mainPolicyComboBox; >>> private javax.swing.JComboBox deleteTypeComboBox; >>> + private javax.swing.JComboBox viewFilter; >>> private javax.swing.JLabel globalBehaviourLabel; >>> private javax.swing.JLabel securityLevelLabel; >>> private javax.swing.JScrollPane userTableScrollPane; >>> @@ -99,6 +105,8 @@ >>> private final UnsignedAppletActionStorageExtendedImpl globalBackEnd; >>> private final UnsignedAppletActionTableModel customModel; >>> private final UnsignedAppletActionTableModel globalModel; >>> + private final ByPermanenciFilter customFilter; >>> + private final ByPermanenciFilter globalFilter; >>> private final DeploymentConfiguration conf; >>> private javax.swing.JTable currentTable; >>> private UnsignedAppletActionTableModel currentModel; >>> @@ -143,7 +151,11 @@ >>> globalBackEnd = new UnsignedAppletActionStorageExtendedImpl(globalSettings); >>> customModel = new UnsignedAppletActionTableModel(customBackEnd); >>> globalModel = new UnsignedAppletActionTableModel(globalBackEnd); >>> + customFilter = new ByPermanenciFilter(customModel); >>> + globalFilter = new ByPermanenciFilter(globalModel); >>> initComponents(); >>> + userTable.setRowSorter(customFilter); >>> + globalTable.setRowSorter(globalFilter); >>> this.conf = conf; >>> AppletSecurityLevel gs = AppletSecurityLevel.getDefault(); >>> String s = conf.getProperty(DeploymentConfiguration.KEY_SECURITY_LEVEL); >>> @@ -154,8 +166,8 @@ >>> userTable.getSelectionModel().addListSelectionListener(new SingleSelectionListenerImpl(userTable)); >>> globalTable.getSelectionModel().addListSelectionListener(new SingleSelectionListenerImpl(globalTable)); >>> >>> - userTable.addKeyListener(new deleteAdapter(userTable)); >>> - globalTable.addKeyListener(new deleteAdapter(globalTable)); >>> + userTable.addKeyListener(new DeleteAdapter(userTable)); >>> + globalTable.addKeyListener(new DeleteAdapter(globalTable)); >>> currentTable = userTable; >>> currentModel = customModel; >>> setButtons((!currentModel.back.isReadOnly())); >>> @@ -246,6 +258,7 @@ >>> securityLevelLabel = new javax.swing.JLabel(); >>> globalBehaviourLabel = new javax.swing.JLabel(); >>> deleteTypeComboBox = new javax.swing.JComboBox(); >>> + viewFilter = new javax.swing.JComboBox(); >>> deleteButton = new javax.swing.JButton(); >>> testUrlButton = new javax.swing.JButton(); >>> addRowButton = new javax.swing.JButton(); >>> @@ -275,6 +288,45 @@ >>> mainPolicyComboBoxActionPerformed(evt); >>> } >>> }); >>> + >>> + viewFilter.addActionListener(new ActionListener() { >>> + @Override >>> + public void actionPerformed(ActionEvent e) { >>> + int i = viewFilter.getSelectedIndex(); >>> + switch (i) { >>> + case 0: >>> + customFilter.setRowFilter(ByPermanenciFilter.showPernamnetns); >>> + globalFilter.setRowFilter(ByPermanenciFilter.showPernamnetns); >>> + break; >>> + case 1: >>> + customFilter.setRowFilter(ByPermanenciFilter.showTemporals); >>> + globalFilter.setRowFilter(ByPermanenciFilter.showTemporals); >>> + break; >>> + case 2: >>> + customFilter.setRowFilter(ByPermanenciFilter.showAll); >>> + globalFilter.setRowFilter(ByPermanenciFilter.showAll); >>> + break; >>> + case 3: >>> + customFilter.setRowFilter(ByPermanenciFilter.showPernamnetnA); >>> + globalFilter.setRowFilter(ByPermanenciFilter.showPernamnetnA); >>> + break; >>> + case 4: >>> + customFilter.setRowFilter(ByPermanenciFilter.showPernamnetnN); >>> + globalFilter.setRowFilter(ByPermanenciFilter.showPernamnetnN); >>> + break; >>> + case 5: >>> + customFilter.setRowFilter(ByPermanenciFilter.showTemporalY); >>> + globalFilter.setRowFilter(ByPermanenciFilter.showTemporalY); >>> + break; >>> + case 6: >>> + customFilter.setRowFilter(ByPermanenciFilter.showTemporalN); >>> + globalFilter.setRowFilter(ByPermanenciFilter.showTemporalN); >>> + break; >>> + } >>> + >>> + } >>> + }); >>> + >>> >>> securityLevelLabel.setText(Translator.R("APPEXTSECguiPanelSecurityLevel")); >>> >>> @@ -287,6 +339,15 @@ >>> Translator.R("APPEXTSECguiPanelDeleteMenuAlly"), >>> Translator.R("APPEXTSECguiPanelDeleteMenuAlln"), >>> Translator.R("APPEXTSECguiPanelDeleteMenuAllAll")})); >>> + >>> + viewFilter.setModel(new javax.swing.DefaultComboBoxModel(new String[]{ >>> + Translator.R("APPEXTSECguiPanelShowOnlyPermanent"), >>> + Translator.R("APPEXTSECguiPanelShowOnlyTemporal"), >>> + Translator.R("APPEXTSECguiPanelShowAll"), >>> + Translator.R("APPEXTSECguiPanelShowOnlyPermanentA"), >>> + Translator.R("APPEXTSECguiPanelShowOnlyPermanentN"), >>> + Translator.R("APPEXTSECguiPanelShowOnlyTemporalY"), >>> + Translator.R("APPEXTSECguiPanelShowOnlyTemporalN")})); >>> >>> deleteButton.setText(Translator.R("APPEXTSECguiPanelDeleteButton")); >>> deleteButton.setToolTipText(Translator.R("APPEXTSECguiPanelDeleteButtonToolTip")); >>> @@ -383,7 +444,8 @@ >>> .addComponent(invertSelectionButton)) >>> .addGroup(layout.createSequentialGroup() >>> .addComponent(askBeforeActionCheckBox).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) >>> - .addComponent(filterRegexesCheckBox))).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 93, Short.MAX_VALUE) >>> + .addComponent(filterRegexesCheckBox).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 93, Short.MAX_VALUE) >>> + .addComponent(viewFilter))).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) >>> .addComponent(helpButton, javax.swing.GroupLayout.PREFERRED_SIZE, 108, javax.swing.GroupLayout.PREFERRED_SIZE))).addContainerGap())); >>> layout.setVerticalGroup( >>> layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) >>> @@ -400,7 +462,8 @@ >>> .addComponent(invertSelectionButton, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) >>> .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) >>> .addComponent(askBeforeActionCheckBox) >>> - .addComponent(filterRegexesCheckBox))) >>> + .addComponent(filterRegexesCheckBox) >>> + .addComponent(viewFilter))) >>> .addComponent(helpButton, javax.swing.GroupLayout.PREFERRED_SIZE, 53, javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) >>> .addComponent(mainTabPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 161, Short.MAX_VALUE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) >>> .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) >>> @@ -561,7 +624,13 @@ >>> >>> private void moveRowUpButtonActionPerformed(java.awt.event.ActionEvent evt) { >>> int orig = currentTable.getSelectedRow(); >>> + if (orig<0 || orig>=currentTable.getRowCount()) { >>> + return; >>> + } >>> int i = currentTable.convertRowIndexToModel(orig); >>> + if (i<=0) { >>> + return; >>> + } >>> currentModel.moveUp(i); >>> reloadTable(); >>> if (orig >= 1) { >>> @@ -571,7 +640,13 @@ >>> >>> private void moveRowDownButtonActionPerformed(java.awt.event.ActionEvent evt) { >>> int orig = currentTable.getSelectedRow(); >>> + if (orig<0 || orig>=currentTable.getRowCount()) { >>> + return; >>> + } >>> int i = currentTable.convertRowIndexToModel(orig); >>> + if (i>=currentTable.getRowCount()-1) { >>> + return; >>> + } >>> currentModel.moveDown(i); >>> reloadTable(); >>> if (orig < currentModel.getRowCount()) { >>> @@ -720,7 +795,7 @@ >>> } >>> } >>> >>> - private class SingleSelectionListenerImpl implements ListSelectionListener { >>> + private final class SingleSelectionListenerImpl implements ListSelectionListener { >>> >>> private final JTable table; >>> >>> @@ -740,11 +815,11 @@ >>> } >>> } >>> >>> - private class deleteAdapter implements KeyListener { >>> + private final class DeleteAdapter implements KeyListener { >>> >>> private final JTable table; >>> >>> - public deleteAdapter(JTable table) { >>> + public DeleteAdapter(JTable table) { >>> this.table = table; >>> } >>> >>> @@ -763,4 +838,82 @@ >>> public void keyReleased(KeyEvent e) { >>> } >>> } >>> + >>> + >>> + private static final class ByPermanenciFilter extends TableRowSorter { >> >> Permanent and Temporal are very confusing names for what I just consider the 'decisions' and the 'hints'. >> Anyway, ByPermanenciFilter -> ByPermanencyFilter >> >>> + >>> + private static final class ShowAll extends RowFilter { >>> + >>> + @Override >>> + public boolean include(Entry entry) { >>> + return true; >>> + } >>> + } >>> + >>> + private static final class ShowPernamnetns extends RowFilter { >> >> ShowPernamnetns -> ShowPermanents >> >>> + >>> + @Override >>> + public boolean include(Entry entry) { >>> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >>> + return (o.equals(ExecuteUnsignedApplet.ALWAYS) || o.equals(ExecuteUnsignedApplet.NEVER)); >>> + } >>> + } >>> + >>> + private static final class ShowPernamnetnA extends RowFilter { >> >> ShowPernamnetnA -> ShowPermanentA >> >> I would just have this as 'ShowAlways' though, no ? >> >>> + >>> + @Override >>> + public boolean include(Entry entry) { >>> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >>> + return (o.equals(ExecuteUnsignedApplet.ALWAYS)); >>> + } >>> + } >>> + >>> + private static final class ShowPernamnetnN extends RowFilter { >> >> ShowPernamnetnN -> ShowPermanentN >> >> I would just have this as 'ShowNever' though, no ? >> >>> + >>> + @Override >>> + public boolean include(Entry entry) { >>> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >>> + return (o.equals(ExecuteUnsignedApplet.NEVER)); >>> + } >>> + } >>> + >>> + private static final class ShowTemporals extends RowFilter { >>> + >>> + @Override >>> + public boolean include(Entry entry) { >>> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >>> + return (o.equals(ExecuteUnsignedApplet.YES) || o.equals(ExecuteUnsignedApplet.NO)); >>> + } >>> + } >>> + >>> + private static final class ShowTemporalY extends RowFilter { >> >> Too many complications for something the user shouldn't really care about managing IMO. >> But anyway, I prefer ShowHasChosenYes >> >>> + >>> + @Override >>> + public boolean include(Entry entry) { >>> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >>> + return (o.equals(ExecuteUnsignedApplet.YES)); >>> + } >>> + } >>> + >>> + private static final class ShowTemporalN extends RowFilter { >> >> See above, but anyway I prefer ShowHasChosenNo >> >>> + >>> + @Override >>> + public boolean include(Entry entry) { >>> + ExecuteUnsignedApplet o = (ExecuteUnsignedApplet) entry.getModel().getValueAt(entry.getIdentifier(), 0); >>> + return (o.equals(ExecuteUnsignedApplet.NO)); >>> + } >>> + } >>> + public static final ShowAll showAll = new ShowAll(); >>> + public static final ShowPernamnetns showPernamnetns = new ShowPernamnetns(); >>> + public static final ShowPernamnetnA showPernamnetnA = new ShowPernamnetnA(); >>> + public static final ShowPernamnetnN showPernamnetnN = new ShowPernamnetnN(); >>> + public static final ShowTemporals showTemporals = new ShowTemporals(); >>> + public static final ShowTemporalY showTemporalY = new ShowTemporalY(); >>> + public static final ShowTemporalN showTemporalN = new ShowTemporalN(); >>> + >>> + public ByPermanenciFilter(UnsignedAppletActionTableModel model) { >>> + super(model); >>> + setRowFilter(showPernamnetns); >>> + } >>> + } >>> } >>> diff -r 886c91766b45 -r b281229f08cc netx/net/sourceforge/jnlp/resources/Messages.properties >>> --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Mon Feb 25 12:50:15 2013 +0100 >>> +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Mon Feb 25 14:53:30 2013 +0100 >>> @@ -528,4 +528,11 @@ >>> APPEXTSECguiPanelEmptyDoc=All document-bases must be full >>> APPEXTSECguiPanelEmptyCode=All code-bases must be full >>> APPEXTSECguiPanelTableValid=Table looks valid >>> -APPEXTSECguiPanelTableInvalid=Invalid with following error: {0} >>> \ No newline at end of file >>> +APPEXTSECguiPanelTableInvalid=Invalid with following error: {0} >>> +APPEXTSECguiPanelShowOnlyPermanent=Show only permanent records >>> +APPEXTSECguiPanelShowOnlyTemporal=Show only temporal records >>> +APPEXTSECguiPanelShowAll=Show all records >>> +APPEXTSECguiPanelShowOnlyPermanentA=Show only allowed permanent records >>> +APPEXTSECguiPanelShowOnlyPermanentN=Show only forbidden permanent records >>> +APPEXTSECguiPanelShowOnlyTemporalY=Show only temporally allowed records >> >> Funny, 'temporally' is technically a valid word here, but I'm sure you meant 'temporarily' :-) but this is much clearer as 'Show previously allowed applets'. Calling something that was allowed once 'temporarily allowed' is confusing. >> >>> +APPEXTSECguiPanelShowOnlyTemporalN=Show only temporally denied records >> >> 'Show previously denied applets' >> >>> \ No newline at end of file >> >> Overall not sure how I feel about this one, but I guess I'm OK with it in the interest of getting this into HEAD. >> >> BTW You never did give me that URL encoding suggestion :-) >> >> -Adam > > huh... I'm getting drowned from this and it seems its doing whats expected. > So enjoy the writing of changelog and fire it :) > /me looking forward for extend version and for embeded version O:P > Actually it would be nice to have reproducers for individual cases. But I definitely do not want to waste your time on it.It can be easy task for the new intern in Toronto. > > J. From adomurad at icedtea.classpath.org Tue Mar 26 11:56:17 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Tue, 26 Mar 2013 18:56:17 +0000 Subject: /hg/icedtea-web: Integration of unsigned applet confirmation dia... Message-ID: changeset 1c26ce1e1cb3 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=1c26ce1e1cb3 author: Adam Domurad date: Tue Mar 26 14:57:33 2013 -0400 Integration of unsigned applet confirmation dialogue. diffstat: ChangeLog | 32 + netx/net/sourceforge/jnlp/PluginBridge.java | 4 + netx/net/sourceforge/jnlp/resources/Messages.properties | 9 + netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java | 17 +- netx/net/sourceforge/jnlp/security/SecurityDialog.java | 3 + netx/net/sourceforge/jnlp/security/SecurityDialogs.java | 24 + netx/net/sourceforge/jnlp/security/UnsignedAppletTrustWarningDialog.java | 63 ++ netx/net/sourceforge/jnlp/security/UnsignedAppletTrustWarningPanel.java | 228 ++++++++++ netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionStorage.java | 17 +- netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java | 209 +++++++++ plugin/icedteanp/java/sun/applet/PluginAppletViewer.java | 13 +- tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java | 59 ++ 12 files changed, 668 insertions(+), 10 deletions(-) diffs (truncated from 868 to 500 lines): diff -r bb971f25eb42 -r 1c26ce1e1cb3 ChangeLog --- a/ChangeLog Tue Mar 26 13:51:26 2013 +0100 +++ b/ChangeLog Tue Mar 26 14:57:33 2013 -0400 @@ -1,3 +1,35 @@ +2013-03-26 Adam Domurad + + Integration of unsigned applet confirmation dialogue. + * netx/net/sourceforge/jnlp/PluginBridge.java + (getArchiveJars): New, returns archive jars as list + * netx/net/sourceforge/jnlp/resources/Messages.properties: + Confirmation messages added to properties file + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java + (getInstance): Initialization refactored into createInstance + (createInstance): New, checks if unsigned applet is allowed, + initializes classloader. + (initializeResources): Don't consider no-jar applets signed. + * netx/net/sourceforge/jnlp/security/SecurityDialogs.java + (showUnsignedWarningDialog): Creates message with + DialogType.UNSIGNED_WARNING + * netx/net/sourceforge/jnlp/security/SecurityDialog.java + (installPanel): Add case for DialogType.UNSIGNED_WARNING + * netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletActionStorage.java: + Expose locking members from interface + * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java + (handleInitializationMessage): Do nothing if applets have been + disabled. + * netx/net/sourceforge/jnlp/security/UnsignedAppletTrustWarningDialog.java: + New, security dialog that asks for unsigned applet confirmation. + * netx/net/sourceforge/jnlp/security/UnsignedAppletTrustWarningPanel.java: + Implements the dialog contents for unsigned applet confirmation. + * netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java: + Updates and checks applet confirmation storage, creates warning dialog + if required. + * tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java: + New, tests relative & normalized path creation helpers. + 2013-03-26 Jiri Vanek Path validator fixed to be correctly multiplatform diff -r bb971f25eb42 -r 1c26ce1e1cb3 netx/net/sourceforge/jnlp/PluginBridge.java --- a/netx/net/sourceforge/jnlp/PluginBridge.java Tue Mar 26 13:51:26 2013 +0100 +++ b/netx/net/sourceforge/jnlp/PluginBridge.java Tue Mar 26 14:57:33 2013 -0400 @@ -206,6 +206,10 @@ } } + public List getArchiveJars() { + return new ArrayList(jars); + } + public boolean codeBaseLookup() { return params.useCodebaseLookup(); } diff -r bb971f25eb42 -r 1c26ce1e1cb3 netx/net/sourceforge/jnlp/resources/Messages.properties --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Tue Mar 26 13:51:26 2013 +0100 +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Tue Mar 26 14:57:33 2013 -0400 @@ -80,6 +80,9 @@ LUnsignedJarWithSecurityInfo=Application requested security permissions, but jars are not signed. LSignedJNLPAppDifferentCerts=The JNLP application is not fully signed by a single cert. LSignedJNLPAppDifferentCertsInfo=The JNLP application has its components individually signed, however there must be a common signer to all entries. +LUnsignedApplet=The applet was unsigned. +LUnsignedAppletPolicyDenied=The applet was unsigned, and the security policy prevented it from running. +LUnsignedAppletUserDenied=The applet was unsigned, and was not trusted. LSignedAppJarUsingUnsignedJar=Signed application using unsigned jars. LSignedAppJarUsingUnsignedJarInfo=The main application jar is signed, but some of the jars it is using aren't. LSignedJNLPFileDidNotMatch=The signed JNLP file did not match the launching JNLP file. @@ -220,6 +223,12 @@ SUnverified=(unverified) SAlwaysTrustPublisher=Always trust content from this publisher SHttpsUnverified=The website's HTTPS certificate cannot be verified. +SRememberOption=Remember this option? +SUnsignedSummary=An unsigned Java application wants to run +SUnsignedDetail=An unsigned application from the following location wants to run:
{0}

It is recommended you only run applications from sites you trust. +SUnsignedAllowedBefore=You have accepted this applet previously. +SUnsignedRejectedBefore=You have rejected this applet previously. +SUnsignedQuestion=Allow the applet to run? SNotAllSignedSummary=Only parts of this application code are signed. SNotAllSignedDetail=This application contains both signed and unsigned code. While signed code is safe if you trust the provider, unsigned code may imply code outside of the trusted provider's control. SNotAllSignedQuestion=Do you wish to proceed and run this application anyway? diff -r bb971f25eb42 -r 1c26ce1e1cb3 netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java --- a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Tue Mar 26 13:51:26 2013 +0100 +++ b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Tue Mar 26 14:57:33 2013 -0400 @@ -63,6 +63,7 @@ import java.util.jar.JarFile; import java.util.jar.Manifest; +import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletTrustConfirmation; import net.sourceforge.jnlp.AppletDesc; import net.sourceforge.jnlp.ApplicationDesc; import net.sourceforge.jnlp.DownloadOptions; @@ -380,6 +381,13 @@ JNLPClassLoader baseLoader = uniqueKeyToLoader.get(uniqueKey); JNLPClassLoader loader = new JNLPClassLoader(file, policy, mainName); + // If security level is 'high' or greater, we must check if the user allows unsigned applets + // when the JNLPClassLoader is created. We do so here, because doing so in the constructor + // causes unwanted side-effects for some applets + if (!loader.getSigning() && file instanceof PluginBridge) { + UnsignedAppletTrustConfirmation.checkUnsignedWithUserIfRequired((PluginBridge)file); + } + // New loader init may have caused extentions to create a // loader for this unique key. Check. JNLPClassLoader extLoader = uniqueKeyToLoader.get(uniqueKey); @@ -596,9 +604,9 @@ JARDesc jars[] = resources.getJARs(); - if (jars == null || jars.length == 0) { + if (jars.length == 0) { - boolean allSigned = true; + boolean allSigned = (loaders.length > 1) /* has extensions */; for (int i = 1; i < loaders.length; i++) { if (!loaders[i].getSigning()) { allSigned = false; @@ -681,7 +689,6 @@ !SecurityDialogs.showNotAllSignedWarningDialog(file)) throw new LaunchException(file, null, R("LSFatal"), R("LCClient"), R("LSignedAppJarUsingUnsignedJar"), R("LSignedAppJarUsingUnsignedJarInfo")); - // Check for main class in the downloaded jars, and check/verify signed JNLP fill checkForMain(initialJars); @@ -718,9 +725,9 @@ } } else { + // Otherwise this jar is simply unsigned -- make sure to ask + // for permission on certain actions signing = false; - //otherwise this jar is simply unsigned -- make sure to ask - //for permission on certain actions } } diff -r bb971f25eb42 -r 1c26ce1e1cb3 netx/net/sourceforge/jnlp/security/SecurityDialog.java --- a/netx/net/sourceforge/jnlp/security/SecurityDialog.java Tue Mar 26 13:51:26 2013 +0100 +++ b/netx/net/sourceforge/jnlp/security/SecurityDialog.java Tue Mar 26 14:57:33 2013 -0400 @@ -38,6 +38,7 @@ package net.sourceforge.jnlp.security; import net.sourceforge.jnlp.JNLPFile; +import net.sourceforge.jnlp.PluginBridge; import net.sourceforge.jnlp.runtime.JNLPRuntime; import net.sourceforge.jnlp.security.SecurityDialogs.AccessType; import net.sourceforge.jnlp.security.SecurityDialogs.DialogType; @@ -306,6 +307,8 @@ panel = new AppletWarningPane(this, this.certVerifier); else if (dialogType == DialogType.NOTALLSIGNED_WARNING) panel = new NotAllSignedWarningPane(this); + else if (dialogType == DialogType.UNSIGNED_WARNING) // Only necessary for applets on 'high security' or above + panel = new UnsignedAppletTrustWarningDialog(this, (PluginBridge)file); else if (dialogType == DialogType.AUTHENTICATION) panel = new PasswordAuthenticationPane(this, extras); diff -r bb971f25eb42 -r 1c26ce1e1cb3 netx/net/sourceforge/jnlp/security/SecurityDialogs.java --- a/netx/net/sourceforge/jnlp/security/SecurityDialogs.java Tue Mar 26 13:51:26 2013 +0100 +++ b/netx/net/sourceforge/jnlp/security/SecurityDialogs.java Tue Mar 26 14:57:33 2013 -0400 @@ -37,6 +37,8 @@ package net.sourceforge.jnlp.security; +import net.sourceforge.jnlp.security.appletextendedsecurity.ExecuteUnsignedApplet; + import java.awt.Dialog.ModalityType; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; @@ -70,6 +72,7 @@ SINGLE_CERT_INFO, ACCESS_WARNING, NOTALLSIGNED_WARNING, + UNSIGNED_WARNING, /* requires confirmation with 'high-security' setting */ APPLET_WARNING, AUTHENTICATION, } @@ -86,6 +89,7 @@ VERIFIED, UNVERIFIED, NOTALLSIGNED, + UNSIGNED, /* requires confirmation with 'high-security' setting */ SIGNING_ERROR } @@ -173,6 +177,26 @@ } /** + * Shows a warning dialog for when a plugin applet is unsigned. + * This is used with 'high-security' setting. + * + * @return true if permission was granted by the user, false otherwise. + */ + public static ExecuteUnsignedApplet showUnsignedWarningDialog(JNLPFile file) { + + if (!shouldPromptUser()) { + return ExecuteUnsignedApplet.NO; + } + + final SecurityDialogMessage message = new SecurityDialogMessage(); + message.dialogType = DialogType.UNSIGNED_WARNING; + message.accessType = AccessType.UNSIGNED; + message.file = file; + + return (ExecuteUnsignedApplet)getUserResponse(message); + } + + /** * Shows a security warning dialog according to the specified type of * access. If type is one of AccessType.VERIFIED or * AccessType.UNVERIFIED, extra details will be available with regards diff -r bb971f25eb42 -r 1c26ce1e1cb3 netx/net/sourceforge/jnlp/security/UnsignedAppletTrustWarningDialog.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/netx/net/sourceforge/jnlp/security/UnsignedAppletTrustWarningDialog.java Tue Mar 26 14:57:33 2013 -0400 @@ -0,0 +1,63 @@ +/* Copyright (C) 2013 Red Hat, Inc. + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 2. + +IcedTea is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. + */ + +package net.sourceforge.jnlp.security; + +import net.sourceforge.jnlp.PluginBridge; +import net.sourceforge.jnlp.security.UnsignedAppletTrustWarningPanel.ActionChoiceListener; +import net.sourceforge.jnlp.security.appletextendedsecurity.ExecuteUnsignedApplet; + +/** + * A panel that confirms that the user is OK with unsigned code running. + * + */ +public class UnsignedAppletTrustWarningDialog extends SecurityDialogPanel { + + public UnsignedAppletTrustWarningDialog(SecurityDialog x, PluginBridge file) { + super(x); + + add(new UnsignedAppletTrustWarningPanel(file, + new ActionChoiceListener() { + @Override + public void actionChosen(ExecuteUnsignedApplet action) { + parent.setValue(action); + parent.dispose(); + } + }) + ); + } + +} diff -r bb971f25eb42 -r 1c26ce1e1cb3 netx/net/sourceforge/jnlp/security/UnsignedAppletTrustWarningPanel.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/netx/net/sourceforge/jnlp/security/UnsignedAppletTrustWarningPanel.java Tue Mar 26 14:57:33 2013 -0400 @@ -0,0 +1,228 @@ +/* Copyright (C) 2013 Red Hat, Inc. + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License as published by +the Free Software Foundation, version 2. + +IcedTea is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. + */ + +package net.sourceforge.jnlp.security; + +import static net.sourceforge.jnlp.runtime.Translator.R; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Dimension; +import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import javax.swing.BorderFactory; +import javax.swing.BoxLayout; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.SwingConstants; + +import net.sourceforge.jnlp.JNLPFile; +import net.sourceforge.jnlp.PluginBridge; +import net.sourceforge.jnlp.security.appletextendedsecurity.ExecuteUnsignedApplet; +import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletTrustConfirmation; + +public class UnsignedAppletTrustWarningPanel extends JPanel { + + /* + * Callback for when action is decided. + */ + public static interface ActionChoiceListener { + void actionChosen(ExecuteUnsignedApplet action); + } + + private final int PANE_WIDTH = 500; + + private final int TOP_PANEL_HEIGHT = 60; + private final int INFO_PANEL_HEIGHT = 100; + private final int INFO_PANEL_HINT_HEIGHT = 25; + private final int QUESTION_PANEL_HEIGHT = 35; + + private JButton allowButton; + private JButton rejectButton; + private JCheckBox permanencyCheckBox; + + private PluginBridge file; + + private ActionChoiceListener actionChoiceListener; + + public UnsignedAppletTrustWarningPanel(PluginBridge file, ActionChoiceListener actionChoiceListener) { + + this.file = file; + this.actionChoiceListener = actionChoiceListener; + + addComponents(); + } + + public JButton getAllowButton() { + return allowButton; + } + + public JButton getRejectButton() { + return rejectButton; + } + + private String htmlWrap(String text) { + return "" + text + ""; + } + + private ImageIcon infoImage() { + final String location = "net/sourceforge/jnlp/resources/info-small.png"; + final ClassLoader appLoader = new sun.misc.Launcher().getClassLoader(); + return new ImageIcon(appLoader.getResource(location)); + } + + private void setupTopPanel() { + final String topLabelText = R("SUnsignedSummary"); + + JLabel topLabel = new JLabel(htmlWrap(topLabelText), infoImage(), + SwingConstants.LEFT); + topLabel.setFont(new Font(topLabel.getFont().toString(), Font.BOLD, 12)); + + JPanel topPanel = new JPanel(new BorderLayout()); + topPanel.setBackground(Color.WHITE); + topPanel.add(topLabel, BorderLayout.CENTER); + topPanel.setPreferredSize(new Dimension(PANE_WIDTH, TOP_PANEL_HEIGHT)); + topPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); + + add(topPanel); + } + + private void setupInfoPanel() { + String infoLabelText = R("SUnsignedDetail", file.getCodeBase()); + ExecuteUnsignedApplet rememberedAction = UnsignedAppletTrustConfirmation.getStoredAction((PluginBridge)file); + int panelHeight = INFO_PANEL_HEIGHT; + if (rememberedAction == ExecuteUnsignedApplet.YES) { + infoLabelText += "
" + R("SUnsignedAllowedBefore"); + panelHeight += INFO_PANEL_HINT_HEIGHT; + } else if (rememberedAction == ExecuteUnsignedApplet.NO) { + infoLabelText += "
" + R("SUnsignedRejectedBefore"); + panelHeight += INFO_PANEL_HINT_HEIGHT; + } + + JLabel infoLabel = new JLabel(htmlWrap(infoLabelText)); + JPanel infoPanel = new JPanel(new BorderLayout()); + infoPanel.add(infoLabel, BorderLayout.CENTER); + infoPanel.setPreferredSize(new Dimension(PANE_WIDTH, panelHeight)); + infoPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); + + add(infoPanel); + } + + private void setupQuestionsPanel() { + JPanel questionPanel = new JPanel(new BorderLayout()); + + questionPanel.add(new JLabel(htmlWrap(R("SUnsignedQuestion"))), BorderLayout.EAST); + + questionPanel.setPreferredSize(new Dimension(PANE_WIDTH, QUESTION_PANEL_HEIGHT)); + questionPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); + + add(questionPanel); + } + + private JPanel createCheckBoxPanel() { + JPanel checkBoxPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT)); + + permanencyCheckBox = new JCheckBox(htmlWrap(R("SRememberOption"))); + checkBoxPanel.add(permanencyCheckBox); + + checkBoxPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); + + return checkBoxPanel; + } + + private JPanel createButtonPanel() { + JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT)); + + allowButton = new JButton(R("ButProceed")); + rejectButton = new JButton(R("ButCancel")); + + allowButton.addActionListener(chosenActionSetter(true)); + rejectButton.addActionListener(chosenActionSetter(false)); + + buttonPanel.add(allowButton); + buttonPanel.add(rejectButton); + + buttonPanel.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10)); + + return buttonPanel; + } + + // Set up 'Remember Option' checkbox & Proceed/Cancel buttons + private void setupButtonAndCheckBoxPanel() { + JPanel outerPanel = new JPanel(new BorderLayout()); + + outerPanel.add(createCheckBoxPanel(), BorderLayout.WEST); + outerPanel.add(createButtonPanel(), BorderLayout.EAST); + + add(outerPanel); + } + + /** + * Creates the actual GUI components, and adds it to this panel + */ + private void addComponents() { + setLayout(new BoxLayout(this, BoxLayout.Y_AXIS)); + + setupTopPanel(); + setupInfoPanel(); + setupQuestionsPanel(); + setupButtonAndCheckBoxPanel(); + } + + // Sets action depending on allowApplet + checkbox state + private ActionListener chosenActionSetter(final boolean allowApplet) { + return new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + ExecuteUnsignedApplet action; + + if (allowApplet) { From gitne at excite.co.jp Tue Mar 26 17:10:39 2013 From: gitne at excite.co.jp (=?ISO-2022-JP?B?SmFjb2IgV2lzb3I=?=) Date: Wed, 27 Mar 2013 09:10:39 +0900 Subject: =?ISO-2022-JP?B?UmU6IFJlcXVlc3QgZm9yIHJldmlldyBvbiBHZXJtYW4gbG9jYWxpemF0aW9ucyBmb3IgaWNlZHRlYS13ZWI=?= Message-ID: <201303270010.r2R0Ad8K014241@mail-web01.excite.co.jp> Hello! @Jiri: Sorry, I did not have time to test your patch yet. I had to do some stupid stuff for the german bureaucracy (sigh). But, a week on vacation has made me forget almost all troubles. ;) "Adam Domurad" wrote: >> + >> +This file is part of IcedTea. >> + >> +IcedTea is free software; you can redistribute it and/or >> +modify it under the terms of the GNU General Public License as >> published by >> +the Free Software Foundation, version 2. >> + >> +IcedTea is distributed in the hope that it will be useful, >> +but WITHOUT ANY WARRANTY; without even the implied warranty of >> +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU >> +General Public License for more details. >> + >> +You should have received a copy of the GNU General Public License >> +along with IcedTea; see the file COPYING. If not, write to >> +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, >> Boston, MA >> +02110-1301 USA. >> + >> +Linking this library statically or dynamically with other modules is >> +making a combined work based on this library. Thus, the terms and >> +conditions of the GNU General Public License cover the whole >> +combination. >> + >> +As a special exception, the copyright holders of this library give you >> +permission to link this library with independent modules to produce an >> +executable, regardless of the license terms of these independent >> +modules, and to copy and distribute the resulting executable under >> +terms of your choice, provided that you also meet, for each linked >> +independent module, the terms and conditions of the license of that >> +module. An independent module is a module which is not derived from >> +or based on this library. If you modify this library, you may extend >> +this exception to your version of the library, but you are not >> +obligated to do so. If you do not wish to do so, delete this >> +exception statement from your version. >> + */ >> +package net.sourceforge.jnlp.config; >> + >> +import org.junit.Assert; >> +import org.junit.Test; >> + >> +public class BasicValueValidatorsTests { >> + >> + //decomposed for testing >> + public static boolean canBeWindows(String s) { >> + //is just win bullet proof enough? SOme winfows mark themselves as >> win32 or similar >> + //but I can imagine linux distribution with some Name containing win:( >> + //so I guess windows should be good enough as I have not seen >> not-windows idf since XP >> + return s.toLowerCase().contains("windows"); > > s/SOme/some/, s/winfows/Windows/, s/Name/name/ > idf -> ??? idf -> identifier ;) Probably... > Anyway, I haven't see any reference that os.name can return 'win32', do > you have one ? > [nit] I'd be in favour of a shorter note here, it's a bit of a ramble :-) Right, please use more generic and neutral language. Try to avoid 'I'. > > + } > > + > > + /** > > + * guess the OS of user, if legal, or windows > > + * @return > > + */ > > + public static boolean canOsBeWindows() { > > + return canBeWindows(System.getProperty("os.name")); > > + } > > >From what I read on the internet, > System.getProperty("os.name").startsWith("Windows") is the accepted way > to do this. (I don't think we need to worry about this being inadequate > until we have proof it doesn't handle some version of windows). > [nit] I'd just call it isWindows() or isOsWindows() or similar. Agreed, isWindows() or isOSWindows() are better fitting names. But, the documentation should probably mention that the check is not rock-solid or that it is based on the "os.name" property. Unfortunately, there is no way in Java to check precisely for a specific OS, unless you try to load a native library and do the actual OS check in that native code. AFAIK the J2SE specification is not clear enough on what the value of the "os.name" property should look like. It is ment to be just some kind of note than a bullet proof means to determine the underlying OS. So, as long as the value is checked for a "Windows" sub-string in all of its variations, it should be enough. Regards, Jacob From ptisnovs at icedtea.classpath.org Wed Mar 27 01:37:44 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 27 Mar 2013 08:37:44 +0000 Subject: /hg/gfx-test: Added support for BufferedImages of type TYPE_BYTE... Message-ID: changeset 9a5b185894cb in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=9a5b185894cb author: Pavel Tisnovsky date: Wed Mar 27 09:40:55 2013 +0100 Added support for BufferedImages of type TYPE_BYTE_INDEXED. Eight new tests added into the test suite BitBltUsingBgColor. diffstat: ChangeLog | 6 + src/org/gfxtest/testsuites/BitBltUsingBgColor.java | 137 +++++++++++++++++++++ 2 files changed, 143 insertions(+), 0 deletions(-) diffs (167 lines): diff -r e2fa0d65e1be -r 9a5b185894cb ChangeLog --- a/ChangeLog Tue Mar 26 09:33:01 2013 +0100 +++ b/ChangeLog Wed Mar 27 09:40:55 2013 +0100 @@ -1,3 +1,9 @@ +2013-03-27 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltUsingBgColor.java: + Added support for BufferedImages of type TYPE_BYTE_INDEXED. + Eight new tests added into the test suite BitBltUsingBgColor. + 2013-03-26 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltConvolveOp.java: diff -r e2fa0d65e1be -r 9a5b185894cb src/org/gfxtest/testsuites/BitBltUsingBgColor.java --- a/src/org/gfxtest/testsuites/BitBltUsingBgColor.java Tue Mar 26 09:33:01 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltUsingBgColor.java Wed Mar 27 09:40:55 2013 +0100 @@ -235,6 +235,23 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeByteIndexed(TestImage image, Graphics2D graphics2d, + Color backgroundColor) + { + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_BYTE_INDEXED, backgroundColor); + } + + /** * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB * * @param image @@ -1366,6 +1383,126 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Background color is set to Color.black. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexedBackgroundBlack(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeByteIndexed(image, graphics2d, Color.black); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Background color is set to Color.blue. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexedBackgroundBlue(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeByteIndexed(image, graphics2d, Color.blue); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Background color is set to Color.green. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexedBackgroundGreen(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeByteIndexed(image, graphics2d, Color.green); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Background color is set to Color.cyan. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexedBackgroundCyan(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeByteIndexed(image, graphics2d, Color.cyan); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Background color is set to Color.red. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexedBackgroundRed(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeByteIndexed(image, graphics2d, Color.red); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Background color is set to Color.magenta. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexedBackgroundMagenta(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeByteIndexed(image, graphics2d, Color.magenta); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Background color is set to Color.yellow. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexedBackgroundYellow(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeByteIndexed(image, graphics2d, Color.yellow); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Background color is set to Color.white. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexedBackgroundWhite(TestImage image, Graphics2D graphics2d) + { + return doBitBltEmptyBufferedImageTypeByteIndexed(image, graphics2d, Color.white); + } + + /** * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. * Background color is set to Color.black. * From ptisnovs at icedtea.classpath.org Wed Mar 27 01:40:31 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 27 Mar 2013 08:40:31 +0000 Subject: /hg/rhino-tests: Nine new tests added into the CompiledScriptCla... Message-ID: changeset 17efcaa18b1d in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=17efcaa18b1d author: Pavel Tisnovsky date: Wed Mar 27 09:43:44 2013 +0100 Nine new tests added into the CompiledScriptClassTest test suite. diffstat: ChangeLog | 5 + src/org/RhinoTests/CompiledScriptClassTest.java | 107 ++++++++++++++++++++++++ 2 files changed, 112 insertions(+), 0 deletions(-) diffs (129 lines): diff -r 3f01a2f5aaf0 -r 17efcaa18b1d ChangeLog --- a/ChangeLog Tue Mar 26 09:21:35 2013 +0100 +++ b/ChangeLog Wed Mar 27 09:43:44 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-27 Pavel Tisnovsky + + * src/org/RhinoTests/CompiledScriptClassTest.java: + Nine new tests added into the CompiledScriptClassTest test suite. + 2013-03-26 Pavel Tisnovsky * src/org/RhinoTests/ScriptEngineClassTest.java: diff -r 3f01a2f5aaf0 -r 17efcaa18b1d src/org/RhinoTests/CompiledScriptClassTest.java --- a/src/org/RhinoTests/CompiledScriptClassTest.java Tue Mar 26 09:21:35 2013 +0100 +++ b/src/org/RhinoTests/CompiledScriptClassTest.java Wed Mar 27 09:43:44 2013 +0100 @@ -776,6 +776,113 @@ } /** + * Test for method javax.script.CompiledScript.getClass().getDeclaredAnnotations() + */ + protected void testGetDeclaredAnnotations() { + // following annotations should be provided + final String[] annotationsThatShouldExists_jdk6 = { + }; + + final String[] annotationsThatShouldExists_jdk7 = { + }; + + // get all annotations + Annotation[] annotations = this.compiledScriptClass.getDeclaredAnnotations(); + // and transform the array into a list of annotation names + List annotationsAsString = new ArrayList(); + for (Annotation annotation : annotations) { + annotationsAsString.add(annotation.toString()); + } + String[] annotationsThatShouldExists = getJavaVersion() < 7 ? annotationsThatShouldExists_jdk6 : annotationsThatShouldExists_jdk7; + // check if all required annotations really exists + for (String annotationThatShouldExists : annotationsThatShouldExists) { + assertTrue(annotationsAsString.contains(annotationThatShouldExists), + "annotation " + annotationThatShouldExists + " not found"); + } + } + + /** + * Test for method javax.script.CompiledScript.getClass().getAnnotation() + */ + protected void testGetAnnotation() { + Annotation annotation; + annotation = this.compiledScriptClass.getAnnotation(java.lang.annotation.Annotation.class); + assertNull(annotation, "annotation java.lang.annotation.Annotation should not be returned"); + annotation = this.compiledScriptClass.getAnnotation(java.lang.annotation.Documented.class); + assertNull(annotation, "annotation java.lang.annotation.Documented should not be returned"); + annotation = this.compiledScriptClass.getAnnotation(java.lang.annotation.Inherited.class); + assertNull(annotation, "annotation java.lang.annotation.Inherited should not be returned"); + annotation = this.compiledScriptClass.getAnnotation(java.lang.annotation.Retention.class); + assertNull(annotation, "annotation java.lang.annotation.Retention should not be returned"); + annotation = this.compiledScriptClass.getAnnotation(java.lang.annotation.Target.class); + assertNull(annotation, "annotation java.lang.annotation.Target should not be returned"); + annotation = this.compiledScriptClass.getAnnotation(java.lang.Deprecated.class); + assertNull(annotation, "annotation java.lang.Deprecated should not be returned"); + annotation = this.compiledScriptClass.getAnnotation(java.lang.Override.class); + assertNull(annotation, "annotation java.lang.Override should not be returned"); + annotation = this.compiledScriptClass.getAnnotation(java.lang.SuppressWarnings.class); + assertNull(annotation, "annotation java.lang.SuppressWarnings should not be returned"); + } + + /** + * Test for method javax.script.CompiledScript.getClass().getComponentType() + */ + protected void testGetComponentType() { + Class cls = this.compiledScriptClass.getComponentType(); + assertNull(cls, "getComponentType() should returns null"); + } + + /** + * Test for method javax.script.CompiledScript.getClass().getClasses() + */ + protected void testGetClasses() { + Class[] cls = this.compiledScriptClass.getClasses(); + assertNotNull(cls, "getClasses() returns null"); + assertEquals(cls.length, 0, "getClasses() returns wrong value!"); + } + + /** + * Test for method javax.script.CompiledScript.getClass().getDeclaredClasses() + */ + protected void testGetDeclaredClasses() { + Class[] cls = this.compiledScriptClass.getDeclaredClasses(); + assertNotNull(cls, "getDeclaredClasses() returns null"); + assertEquals(cls.length, 0, "getDeclaredClasses() returns wrong value!"); + } + + /** + * Test for method javax.script.CompiledScript.getClass().getDeclaringClass() + */ + protected void testGetDeclaringClass() { + Class cls = this.compiledScriptClass.getDeclaringClass(); + assertNull(cls, "getDeclaringClass() does not return null"); + } + + /** + * Test for method javax.script.CompiledScript.getClass().getEnclosingClass() + */ + protected void testGetEnclosingClass() { + Class cls = this.compiledScriptClass.getEnclosingClass(); + assertNull(cls, "getEnclosingClass() does not return null"); + } + + /** + * Test for method javax.script.CompiledScript.getClass().getEnclosingConstructor() + */ + protected void testGetEnclosingConstructor() { + Constructor cons = this.compiledScriptClass.getEnclosingConstructor(); + assertNull(cons, "getEnclosingConstructor() does not return null"); + } + + /** + * Test for method javax.script.CompiledScript.getClass().getEnclosingMethod() + */ + protected void testGetEnclosingMethod() { + Method m = this.compiledScriptClass.getEnclosingMethod(); + assertNull(m, "getEnclosingMethod() does not return null"); + } + + /** * Test for instanceof operator applied to a class javax.script.CompiledScript */ @SuppressWarnings("cast") From bugzilla-daemon at icedtea.classpath.org Wed Mar 27 12:49:16 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 27 Mar 2013 19:49:16 +0000 Subject: [Bug 1204] Archive URL wrongly resolved In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1204 --- Comment #2 from Adam Domurad --- Hi, I'll look into this, but IMHO applets relying on this is very rare. Why is this needed for a java detection applet ? As well, if you don't want double slashes simply 'app/res/pub/channel.jar...' should work, no ? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130327/e03ce707/attachment.html From adomurad at redhat.com Wed Mar 27 13:20:34 2013 From: adomurad at redhat.com (Adam Domurad) Date: Wed, 27 Mar 2013 16:20:34 -0400 Subject: [rfc][icedtea-web] Strip parameters from document-base Message-ID: <51535492.2050100@redhat.com> It appears having parameters in the URL for the stored document-base can cause problems with some applets, namely the Oracle LMS applet. A small bit of refactoring is needed to move the URL stripping code: Refactoring ChangeLog: 2013-03-26 Adam Domurad * netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java (normalizeUrlAndStripParams): Moved. * netx/net/sourceforge/jnlp/util/UrlUtils.java (normalizeUrlAndStripParams): New, moved from UnsignedAppletTrustConfirmation. * tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java (testNormalizeUrlAndStripParams): Moved. * tests/netx/unit/net/sourceforge/jnlp/util/UrlUtilsTest.java: New, has (testNormalizeUrlAndStripParams) from UnsignedAppletTrustConfirmationTest. And the fix itself: 2013-03-26 Adam Domurad * netx/net/sourceforge/jnlp/NetxPanel.java (NetxPanel): Ensure documentURL has stripped parameters Happy hacking, -Adam -------------- next part -------------- A non-text attachment was scrubbed... Name: move-strip-to-url-utils.patch Type: text/x-patch Size: 7435 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130327/b0b48b06/move-strip-to-url-utils.patch -------------- next part -------------- A non-text attachment was scrubbed... Name: strip-documentbase.patch Type: text/x-patch Size: 910 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130327/b0b48b06/strip-documentbase.patch From andrew at icedtea.classpath.org Wed Mar 27 14:14:22 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 27 Mar 2013 21:14:22 +0000 Subject: /hg/icedtea6: Add langtools backports suggested by Joe Darcy and... Message-ID: changeset 241d297ff5e3 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=241d297ff5e3 author: Andrew John Hughes date: Wed Mar 27 21:14:08 2013 +0000 Add langtools backports suggested by Joe Darcy and backport for bundled HotSpot suggested by Xerxes. 2013-03-26 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new backports (HotSpot one only to bundled HotSpot build). * patches/hotspot/original/6840152-jvm_crashes_with_heavyweight_monitors.patch: Backport suggested by Xerxes for hs20. * patches/openjdk/6500343-bad_code_from_conditionals.patch, * patches/openjdk/6682380-foreach_crash.patch, * patches/openjdk/6718364-inference_failure.patch, * patches/openjdk/7003595-incompatibleclasschangeerror.patch, * patches/openjdk/7024568-long_method_resolution_oom_error.patch, * patches/openjdk/7046929-fix_t6397104_test_failure.patch: Langtools backports present in the proprietary JDK 6 tree, as listed by Joe Darcy. diffstat: ChangeLog | 18 +- Makefile.am | 11 +- patches/hotspot/original/6840152-jvm_crashes_with_heavyweight_monitors.patch | 32 + patches/openjdk/6500343-bad_code_from_conditionals.patch | 129 +++ patches/openjdk/6682380-foreach_crash.patch | 97 ++ patches/openjdk/6718364-inference_failure.patch | 76 ++ patches/openjdk/7003595-incompatibleclasschangeerror.patch | 351 ++++++++++ patches/openjdk/7024568-long_method_resolution_oom_error.patch | 115 +++ patches/openjdk/7046929-fix_t6397104_test_failure.patch | 42 + 9 files changed, 868 insertions(+), 3 deletions(-) diffs (truncated from 930 to 500 lines): diff -r 02a65b9914d5 -r 241d297ff5e3 ChangeLog --- a/ChangeLog Fri Mar 22 14:18:47 2013 +0000 +++ b/ChangeLog Wed Mar 27 21:14:08 2013 +0000 @@ -1,3 +1,19 @@ +2013-03-26 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new backports (HotSpot + one only to bundled HotSpot build). + * patches/hotspot/original/6840152-jvm_crashes_with_heavyweight_monitors.patch: + Backport suggested by Xerxes for hs20. + * patches/openjdk/6500343-bad_code_from_conditionals.patch, + * patches/openjdk/6682380-foreach_crash.patch, + * patches/openjdk/6718364-inference_failure.patch, + * patches/openjdk/7003595-incompatibleclasschangeerror.patch, + * patches/openjdk/7024568-long_method_resolution_oom_error.patch, + * patches/openjdk/7046929-fix_t6397104_test_failure.patch: + Langtools backports present in the proprietary JDK 6 tree, + as listed by Joe Darcy. + 2013-03-22 Andrew John Hughes * Makefile.am: @@ -9,7 +25,7 @@ add sun.misc.Unsafe.copyMemory method from 7. * patches/jvmtiEnv.patch: Moved to... * patches/hotspot/original/jvmtiEnv.patch: here. - + 2013-03-18 Andrew John Hughes * Makefile.am: diff -r 02a65b9914d5 -r 241d297ff5e3 Makefile.am --- a/Makefile.am Fri Mar 22 14:18:47 2013 +0000 +++ b/Makefile.am Wed Mar 27 21:14:08 2013 +0000 @@ -478,7 +478,13 @@ patches/pr1319-support_giflib_5.patch \ patches/openjdk/8007393.patch \ patches/openjdk/8007611.patch \ - patches/copy_memory.patch + patches/copy_memory.patch \ + patches/openjdk/6718364-inference_failure.patch \ + patches/openjdk/6682380-foreach_crash.patch \ + patches/openjdk/7046929-fix_t6397104_test_failure.patch + patches/openjdk/7024568-long_method_resolution_oom_error.patch \ + patches/openjdk/7003595-incompatibleclasschangeerror.patch \ + patches/openjdk/6500343-bad_code_from_conditionals.patch if WITH_ALT_HSBUILD ICEDTEA_PATCHES += \ @@ -528,7 +534,8 @@ patches/openjdk/7010849-modernise_sa.patch \ patches/hotspot/original/7197906-handle_32_bit_shifts.patch \ patches/hotspot/original/fix_get_stack_bounds_leak.patch \ - patches/hotspot/original/jvmtiEnv.patch + patches/hotspot/original/jvmtiEnv.patch \ + patches/hotspot/original/6840152-jvm_crashes_with_heavyweight_monitors.patch endif if WITH_RHINO diff -r 02a65b9914d5 -r 241d297ff5e3 patches/hotspot/original/6840152-jvm_crashes_with_heavyweight_monitors.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/original/6840152-jvm_crashes_with_heavyweight_monitors.patch Wed Mar 27 21:14:08 2013 +0000 @@ -0,0 +1,32 @@ +# HG changeset patch +# User coleenp +# Date 1297874084 18000 +# Node ID c08677f982895c7e89d370768ec261c00b0d6e2d +# Parent 5415131bc5ab69d30d14636e414d1fa400800408 +6840152: JVM crashes when heavyweight monitors are used +Summary: Turn off biased locking if !UseFastLocking or UseHeavyMonitors options are requested. +Reviewed-by: phh, never, dcubed, dholmes + +diff --git a/src/share/vm/runtime/arguments.cpp b/src/share/vm/runtime/arguments.cpp +--- openjdk/hotspot/src/share/vm/runtime/arguments.cpp ++++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp +@@ -3103,6 +3103,19 @@ + // Set flags if Aggressive optimization flags (-XX:+AggressiveOpts) enabled. + set_aggressive_opts_flags(); + ++ // Turn off biased locking for locking debug mode flags, ++ // which are subtlely different from each other but neither works with ++ // biased locking. ++ if (!UseFastLocking || UseHeavyMonitors) { ++ if (!FLAG_IS_DEFAULT(UseBiasedLocking) && UseBiasedLocking) { ++ // flag set to true on command line; warn the user that they ++ // can't enable biased locking here ++ warning("Biased Locking is not supported with locking debug flags" ++ "; ignoring UseBiasedLocking flag." ); ++ } ++ UseBiasedLocking = false; ++ } ++ + #ifdef CC_INTERP + // Clear flags not supported by the C++ interpreter + FLAG_SET_DEFAULT(ProfileInterpreter, false); diff -r 02a65b9914d5 -r 241d297ff5e3 patches/openjdk/6500343-bad_code_from_conditionals.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6500343-bad_code_from_conditionals.patch Wed Mar 27 21:14:08 2013 +0000 @@ -0,0 +1,129 @@ +# HG changeset patch +# User mcimadamore +# Date 1222684483 -3600 +# Node ID ddd110646d215c6f504b1908d501ab964bf75574 +# Parent 1e83972f53fb28e27ea3ec762b8c33d0684443c1 +6500343: compiler generates bad code when translating conditional expressions +Summary: TransTypes needs to deal with intersection types coming from conditional expressions +Reviewed-by: jjg + +diff --git a/src/share/classes/com/sun/tools/javac/comp/TransTypes.java b/src/share/classes/com/sun/tools/javac/comp/TransTypes.java +--- openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/TransTypes.java ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/TransTypes.java +@@ -534,7 +534,7 @@ + tree.truepart = translate(tree.truepart, erasure(tree.type)); + tree.falsepart = translate(tree.falsepart, erasure(tree.type)); + tree.type = erasure(tree.type); +- result = tree; ++ result = retype(tree, tree.type, pt); + } + + public void visitIf(JCIf tree) { +diff --git a/test/tools/javac/conditional/6500343/T6500343a.java b/test/tools/javac/conditional/6500343/T6500343a.java +new file mode 100644 +--- /dev/null ++++ openjdk/langtools/test/tools/javac/conditional/6500343/T6500343a.java +@@ -0,0 +1,50 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6500343 ++ * @summary compiler generates bad code when translating conditional expressions ++ * @author Maurizio Cimadamore ++ * ++ */ ++ ++public class T6500343a { ++ static class Base {} ++ static interface I {} ++ static class A1 extends Base implements I {} ++ static class A2 extends Base implements I {} ++ ++ static Object crash(I i, A1 a1, A2 a2, boolean b1, boolean b2) { ++ return b1 ? i : b2 ? a2 : a1; ++ // lub(I, lub(A1, A2)) ==> lub(I, Base&I) ==> I (doesn't compile on 1.4 ok >1.5) ++ } ++ ++ public static void main(String[] args) { ++ T6500343a.crash(new A1(), new A1(), new A2(), true, false); ++ T6500343a.crash(new A1(), new A1(), new A2(), false, true); ++ T6500343a.crash(new A1(), new A1(), new A2(), false, false); ++ T6500343a.crash(new A1(), new A1(), new A2(), true, true); ++ } ++} ++ +diff --git a/test/tools/javac/conditional/6500343/T6500343b.java b/test/tools/javac/conditional/6500343/T6500343b.java +new file mode 100644 +--- /dev/null ++++ openjdk/langtools/test/tools/javac/conditional/6500343/T6500343b.java +@@ -0,0 +1,48 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6500343 ++ * @summary compiler generates bad code when translating conditional expressions ++ * @author Maurizio Cimadamore ++ * ++ */ ++ ++public class T6500343b { ++ ++ final static int i1 = 0; ++ final static int i2 = 1; ++ ++ static void crash(int i) { ++ switch (i) { ++ case (true ? 0 : 1): ++ case (i1 == 5 ? 1 : 2): ++ case (i1 == i2 ? 2 : 3): ++ } ++ } ++ ++ public static void main(String[] args) { ++ T6500343b.crash(0); ++ } ++} diff -r 02a65b9914d5 -r 241d297ff5e3 patches/openjdk/6682380-foreach_crash.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6682380-foreach_crash.patch Wed Mar 27 21:14:08 2013 +0000 @@ -0,0 +1,97 @@ +# HG changeset patch +# User mcimadamore +# Date 1208967003 -3600 +# Node ID ec29a1a284ca0b0be1b3b44b1643e7eb6acefb69 +# Parent 627deea1ea4fba84a0e9182fbdc24110d4f5448c +6682380: Foreach loop with generics inside finally block crashes javac with -target 1.5 +Summary: A missing type-erasure in Lower.java causes the compiler to crash since JDK6 +Reviewed-by: jjg + +diff --git a/src/share/classes/com/sun/tools/javac/comp/Lower.java b/src/share/classes/com/sun/tools/javac/comp/Lower.java +--- openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Lower.java ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Lower.java +@@ -2863,13 +2863,15 @@ + JCExpressionStatement step = make.Exec(makeUnary(JCTree.PREINC, make.Ident(index))); + + Type elemtype = types.elemtype(tree.expr.type); +- JCStatement loopvarinit = make. +- VarDef(tree.var.sym, +- make. +- Indexed(make.Ident(arraycache), make.Ident(index)). +- setType(elemtype)); ++ JCExpression loopvarinit = make.Indexed(make.Ident(arraycache), ++ make.Ident(index)).setType(elemtype); ++ JCVariableDecl loopvardef = (JCVariableDecl)make.VarDef(tree.var.mods, ++ tree.var.name, ++ tree.var.vartype, ++ loopvarinit).setType(tree.var.type); ++ loopvardef.sym = tree.var.sym; + JCBlock body = make. +- Block(0, List.of(loopvarinit, tree.body)); ++ Block(0, List.of(loopvardef, tree.body)); + + result = translate(make. + ForLoop(loopinit, +@@ -2944,7 +2946,11 @@ + JCExpression vardefinit = make.App(make.Select(make.Ident(itvar), next)); + if (iteratorTarget != syms.objectType) + vardefinit = make.TypeCast(iteratorTarget, vardefinit); +- JCVariableDecl indexDef = make.VarDef(tree.var.sym, vardefinit); ++ JCVariableDecl indexDef = (JCVariableDecl)make.VarDef(tree.var.mods, ++ tree.var.name, ++ tree.var.vartype, ++ vardefinit).setType(tree.var.type); ++ indexDef.sym = tree.var.sym; + JCBlock body = make.Block(0, List.of(indexDef, tree.body)); + result = translate(make. + ForLoop(List.of(init), +diff --git a/test/tools/javac/foreach/T6682380.java b/test/tools/javac/foreach/T6682380.java +new file mode 100644 +--- /dev/null ++++ openjdk/langtools/test/tools/javac/foreach/T6682380.java +@@ -0,0 +1,45 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6682380 6679509 ++ * @summary Foreach loop with generics inside finally block crashes javac with -target 1.5 ++ * @author Jan Lahoda, Maurizio Cimadamore ++ * @compile -target 1.5 T6682380.java ++ */ ++ ++import java.util.List; ++ ++public class T6682380 { ++ ++ public static void main(String[] args) { ++ try { ++ } finally { ++ List> l = null; ++ T6682380[] a = null; ++ for (T6682380 e1 : l); ++ for (T6682380 e2 : a); ++ } ++ } ++} diff -r 02a65b9914d5 -r 241d297ff5e3 patches/openjdk/6718364-inference_failure.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6718364-inference_failure.patch Wed Mar 27 21:14:08 2013 +0000 @@ -0,0 +1,76 @@ +# HG changeset patch +# User mcimadamore +# Date 1218213500 -3600 +# Node ID 30a415f8667f66f38aa33ad8d289048cb8d3f614 +# Parent d635feaf3747d1c3111fc84cbff603ccaa75577d +6718364: inference fails when a generic method is invoked with raw arguments +Summary: Bug in the implementation of Types.isSubtypeUnchecked +Reviewed-by: jjg + +diff --git a/src/share/classes/com/sun/tools/javac/code/Types.java b/src/share/classes/com/sun/tools/javac/code/Types.java +--- openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java +@@ -305,6 +305,11 @@ + else if (t.tag == TYPEVAR) { + return isSubtypeUnchecked(t.getUpperBound(), s, warn); + } ++ else if (s.tag == UNDETVAR) { ++ UndetVar uv = (UndetVar)s; ++ if (uv.inst != null) ++ return isSubtypeUnchecked(t, uv.inst, warn); ++ } + else if (!s.isRaw()) { + Type t2 = asSuper(t, s.tsym); + if (t2 != null && t2.isRaw()) { +diff --git a/test/tools/javac/generics/inference/6718364/T6718364.java b/test/tools/javac/generics/inference/6718364/T6718364.java +new file mode 100644 +--- /dev/null ++++ openjdk/langtools/test/tools/javac/generics/inference/6718364/T6718364.java +@@ -0,0 +1,38 @@ ++/* ++ * Copyright 2008 Sun Microsystems, Inc. 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/** ++ * @test ++ * @bug 6718364 ++ * @summary inference fails when a generic method is invoked with raw arguments ++ * @compile/ref=T6718364.out -XDstdout -XDrawDiagnostics -Xlint:unchecked T6718364.java ++ */ ++class T6718364 { ++ class X {} ++ ++ public void m(X x, T t) {} ++ ++ public void test() { ++ m(new X>(), new X()); ++ } ++} +diff --git a/test/tools/javac/generics/inference/6718364/T6718364.out b/test/tools/javac/generics/inference/6718364/T6718364.out +new file mode 100644 +--- /dev/null ++++ openjdk/langtools/test/tools/javac/generics/inference/6718364/T6718364.out +@@ -0,0 +1,3 @@ ++T6718364.java:36:32: compiler.warn.prob.found.req: (- compiler.misc.unchecked.assign), T6718364.X, T6718364.X ++T6718364.java:36:10: compiler.warn.unchecked.meth.invocation.applied: m(T6718364.X,T), T6718364, , T6718364.X>,T6718364.X ++2 warnings +\ No newline at end of file diff -r 02a65b9914d5 -r 241d297ff5e3 patches/openjdk/7003595-incompatibleclasschangeerror.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/7003595-incompatibleclasschangeerror.patch Wed Mar 27 21:14:08 2013 +0000 @@ -0,0 +1,351 @@ +# HG changeset patch +# User dmeetry +# Date 1325086840 -14400 +# Node ID 41a303cb946ebfadabb94e0625448bfbfe4dccc0 +# Parent 3ff13f513bc2478e05ff229fd5139989596d1850 +7003595: IncompatibleClassChangeError with unreferenced local class with subclass +Summary: Compiler omits unreferenced local inner classes from the InnerClasses attribute +Reviewed-by: mcimadamore + +diff --git a/src/share/classes/com/sun/tools/javac/code/Symbol.java b/src/share/classes/com/sun/tools/javac/code/Symbol.java +--- openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Symbol.java ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Symbol.java +@@ -726,6 +726,11 @@ + */ + public JavaFileObject classfile; + ++ /** the list of translated local classes (used for generating ++ * InnerClasses attribute) ++ */ ++ public List trans_local; ++ + /** the constant pool of the class + */ + public Pool pool; +diff --git a/src/share/classes/com/sun/tools/javac/comp/Lower.java b/src/share/classes/com/sun/tools/javac/comp/Lower.java +--- openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Lower.java ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Lower.java +@@ -2271,6 +2271,14 @@ + tree.extending = translate(tree.extending); + tree.implementing = translate(tree.implementing); + ++ if (currentClass.isLocal()) { ++ ClassSymbol encl = currentClass.owner.enclClass(); ++ if (encl.trans_local == null) { ++ encl.trans_local = List.nil(); ++ } ++ encl.trans_local = encl.trans_local.prepend(currentClass); ++ } ++ + // Recursively translate members, taking into account that new members + // might be created during the translation and prepended to the member + // list `tree.defs'. +diff --git a/src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java b/src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java +--- openjdk/langtools/src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java +@@ -863,10 +863,10 @@ + } + if (c.type.tag != CLASS) return; // arrays + if (pool != null && // pool might be null if called from xClassName +- c.owner.kind != PCK && ++ c.owner.enclClass() != null && + (innerClasses == null || !innerClasses.contains(c))) { + // log.errWriter.println("enter inner " + c);//DEBUG +- if (c.owner.kind == TYP) enterInner((ClassSymbol)c.owner); ++ enterInner(c.owner.enclClass()); + pool.put(c); + pool.put(c.name); + if (innerClasses == null) { +@@ -1505,6 +1505,13 @@ + default : Assert.error(); + } + } ++ ++ if (c.trans_local != null) { ++ for (ClassSymbol local : c.trans_local) { ++ enterInner(local); ++ } ++ } ++ + databuf.appendChar(fieldsCount); + writeFields(c.members().elems); + databuf.appendChar(methodsCount); +diff --git a/test/tools/javac/7003595/T7003595.java b/test/tools/javac/7003595/T7003595.java +new file mode 100644 +--- /dev/null ++++ openjdk/langtools/test/tools/javac/7003595/T7003595.java +@@ -0,0 +1,233 @@ ++/* ++ * Copyright (c) 2011, 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 ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT From bugzilla-daemon at icedtea.classpath.org Thu Mar 28 00:10:21 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 28 Mar 2013 07:10:21 +0000 Subject: [Bug 1204] Archive URL wrongly resolved In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1204 --- Comment #3 from vigouroux.christophe at gmail.com --- Hi, we use the "i" parameter with a random value to force the downloading of the applet. We had some cases where the applet was resolved from the java plugin cache, even if a newer one was available. I'm not sure that 'app/res/pub/channel.jar...' would work, because this is a relative URL and as such would be resolved from the page containing the applet definition, and in our case, this page is under 'app/jsp'. So the plugin would try to find 'app/jsp/app/res/pub/channel.jar', or am I misleading ? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130328/51b984fd/attachment.html From ptisnovs at icedtea.classpath.org Thu Mar 28 03:00:51 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 28 Mar 2013 10:00:51 +0000 Subject: /hg/gfx-test: Nine new tests added into BitBltBasicTests, test c... Message-ID: changeset 5a69c7d7e2f4 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=5a69c7d7e2f4 author: Pavel Tisnovsky date: Thu Mar 28 11:04:02 2013 +0100 Nine new tests added into BitBltBasicTests, test case reorganization. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltBasicTests.java | 1197 ++++++++++++--------- 2 files changed, 671 insertions(+), 531 deletions(-) diffs (truncated from 1485 to 500 lines): diff -r 9a5b185894cb -r 5a69c7d7e2f4 ChangeLog --- a/ChangeLog Wed Mar 27 09:40:55 2013 +0100 +++ b/ChangeLog Thu Mar 28 11:04:02 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-28 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltBasicTests.java: + Nine new tests added into BitBltBasicTests, test case reorganization. + 2013-03-27 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltUsingBgColor.java: diff -r 9a5b185894cb -r 5a69c7d7e2f4 src/org/gfxtest/testsuites/BitBltBasicTests.java --- a/src/org/gfxtest/testsuites/BitBltBasicTests.java Wed Mar 27 09:40:55 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltBasicTests.java Thu Mar 28 11:04:02 2013 +0100 @@ -139,6 +139,36 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteIndexed(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_BYTE_INDEXED); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeByteGray(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY); + } + + /** * Test basic BitBlt operation for empty buffered image with type TYPE_INT_RGB. * * @param image @@ -154,6 +184,21 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltEmptyBufferedImageTypeIntBGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_INT_BGR); + } + + /** * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB. * * @param image @@ -184,21 +229,6 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_INT_BGR. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltEmptyBufferedImageTypeIntBGR(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_INT_BGR); - } - - /** * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. * * @param image @@ -229,21 +259,6 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltEmptyBufferedImageTypeByteGray(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY); - } - - /** * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_GRAY. * * @param image @@ -259,6 +274,51 @@ } /** + * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType3ByteBGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR); + } + + /** + * Test basic BitBlt operation for checker buffered image with type TYPE_4BYTE_ABGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType4ByteABGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR); + } + + /** + * Test basic BitBlt operation for checker buffered image with type TYPE_4BYTE_ABGR_PRE. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageType4ByteABGR_PRE(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR_PRE); + } + + /** * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_BINARY. * * @param image @@ -274,6 +334,36 @@ } /** + * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_INDEXED. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageTypeByteIndexed(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_INDEXED); + } + + /** + * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_GRAY. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltCheckerBufferedImageTypeByteGray(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY); + } + + /** * Test basic BitBlt operation for checker buffered image with type TYPE_INT_RGB. * * @param image @@ -334,66 +424,6 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_4BYTE_ABGR. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltCheckerBufferedImageType4ByteABGR(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR); - } - - /** - * Test basic BitBlt operation for checker buffered image with type TYPE_4BYTE_ABGR_PRE. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltCheckerBufferedImageType4ByteABGR_PRE(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR_PRE); - } - - /** - * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_GRAY. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltCheckerBufferedImageTypeByteGray(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY); - } - - /** - * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_GRAY. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltCheckerBufferedImageTypeUshortGray(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_USHORT_GRAY); - } - - /** * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_565_RGB. * * @param image @@ -424,7 +454,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_GRAY. * * @param image * image used as a destination for BitBlt-type operations @@ -432,10 +462,55 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltCheckerBufferedImageType3ByteBGR(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltCheckerBufferedImageTypeUshortGray(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR); + return CommonBitmapOperations.doBitBltTestWithCheckerImage(image, graphics2d, BufferedImage.TYPE_USHORT_GRAY); + } + + /** + * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltDiagonalCheckerBufferedImageType3ByteBGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR); + } + + /** + * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_4BYTE_ABGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltDiagonalCheckerBufferedImageType4ByteABGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR); + } + + /** + * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_4BYTE_ABGR_PRE. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltDiagonalCheckerBufferedImageType4ByteABGR_PRE(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR_PRE); } /** @@ -454,6 +529,36 @@ } /** + * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_BYTE_INDEXED. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltDiagonalCheckerBufferedImageTypeByteIndexed(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_INDEXED); + } + + /** + * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_BYTE_GRAY. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltDiagonalCheckerBufferedImageTypeByteGray(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY); + } + + /** * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_INT_RGB. * * @param image @@ -514,66 +619,6 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_4BYTE_ABGR. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltDiagonalCheckerBufferedImageType4ByteABGR(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR); - } - - /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_4BYTE_ABGR_PRE. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltDiagonalCheckerBufferedImageType4ByteABGR_PRE(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR_PRE); - } - - /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_BYTE_GRAY. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltDiagonalCheckerBufferedImageTypeByteGray(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY); - } - - /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_USHORT_GRAY. - * - * @param image - * image used as a destination for BitBlt-type operations - * @param graphics2d - * graphics canvas - * @return test result status - PASSED, FAILED or ERROR - */ - public TestResult testBitBltDiagonalCheckerBufferedImageTypeUshortGray(TestImage image, Graphics2D graphics2d) - { - // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_USHORT_GRAY); - } - - /** * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_USHORT_565_RGB. * * @param image @@ -604,7 +649,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_USHORT_GRAY. * * @param image * image used as a destination for BitBlt-type operations @@ -612,10 +657,55 @@ * graphics canvas * @return test result status - PASSED, FAILED or ERROR */ - public TestResult testBitBltDiagonalCheckerBufferedImageType3ByteBGR(TestImage image, Graphics2D graphics2d) + public TestResult testBitBltDiagonalCheckerBufferedImageTypeUshortGray(TestImage image, Graphics2D graphics2d) { // create new buffered image and then perform basic BitBlt test. - return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR); + return CommonBitmapOperations.doBitBltTestWithDiagonalCheckerImage(image, graphics2d, BufferedImage.TYPE_USHORT_GRAY); + } + + /** + * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltGridBufferedImageType3ByteBGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithGridImage(image, graphics2d, BufferedImage.TYPE_3BYTE_BGR); + } + + /** + * Test basic BitBlt operation for grid buffered image with type TYPE_4BYTE_ABGR. + * + * @param image + * image used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testBitBltGridBufferedImageType4ByteABGR(TestImage image, Graphics2D graphics2d) + { + // create new buffered image and then perform basic BitBlt test. + return CommonBitmapOperations.doBitBltTestWithGridImage(image, graphics2d, BufferedImage.TYPE_4BYTE_ABGR); + } + + /** + * Test basic BitBlt operation for grid buffered image with type TYPE_4BYTE_ABGR_PRE. + * + * @param image From ptisnovs at icedtea.classpath.org Thu Mar 28 03:13:30 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 28 Mar 2013 10:13:30 +0000 Subject: /hg/rhino-tests: Updated ScriptContextClassTest to works correct... Message-ID: changeset d5fa3238778f in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=d5fa3238778f author: Pavel Tisnovsky date: Thu Mar 28 11:16:35 2013 +0100 Updated ScriptContextClassTest to works correctly with JDK6 and JDK7 too. diffstat: ChangeLog | 5 + src/org/RhinoTests/ScriptEngineFactoryClassTest.java | 52 +++++++++++++------ 2 files changed, 40 insertions(+), 17 deletions(-) diffs (150 lines): diff -r 17efcaa18b1d -r d5fa3238778f ChangeLog --- a/ChangeLog Wed Mar 27 09:43:44 2013 +0100 +++ b/ChangeLog Thu Mar 28 11:16:35 2013 +0100 @@ -1,3 +1,8 @@ +2013-03-28 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptEngineFactoryClassTest.java: + Updated ScriptContextClassTest to works correctly with JDK6 and JDK7 too. + 2013-03-27 Pavel Tisnovsky * src/org/RhinoTests/CompiledScriptClassTest.java: diff -r 17efcaa18b1d -r d5fa3238778f src/org/RhinoTests/ScriptEngineFactoryClassTest.java --- a/src/org/RhinoTests/ScriptEngineFactoryClassTest.java Wed Mar 27 09:43:44 2013 +0100 +++ b/src/org/RhinoTests/ScriptEngineFactoryClassTest.java Thu Mar 28 11:16:35 2013 +0100 @@ -388,8 +388,14 @@ */ protected void testGetFields() { // following fields should exists - final String[] fieldsThatShouldExists = { + final String[] fieldsThatShouldExist_jdk6 = { }; + final String[] fieldsThatShouldExist_jdk7 = { + }; + + // get the right array of field signatures + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + // get all fields Field[] fields = this.scriptEngineFactoryClass.getFields(); // and transform the array into a list of field names @@ -398,7 +404,7 @@ fieldsAsString.add(field.toString()); } // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { + for (String fieldThatShouldExists : fieldsThatShouldExist) { assertTrue(fieldsAsString.contains(fieldThatShouldExists), "field " + fieldThatShouldExists + " not found"); } @@ -408,9 +414,16 @@ * Test for method javax.script.ScriptEngineFactory.getClass().getDeclaredFields() */ protected void testGetDeclaredFields() { + // following declared fields should exists + final String[] declaredFieldsThatShouldExist_jdk6 = { + }; + final String[] declaredFieldsThatShouldExist_jdk7 = { + }; + + // get the right array of field signatures // following fields should be declared - final String[] fieldsThatShouldExists = { - }; + final String[] declaredFieldsThatShouldExist = getJavaVersion() < 7 ? declaredFieldsThatShouldExist_jdk6 : declaredFieldsThatShouldExist_jdk7; + // get all declared fields Field[] declaredFields = this.scriptEngineFactoryClass.getDeclaredFields(); // and transform the array into a list of field names @@ -419,9 +432,9 @@ declaredFieldsAsString.add(field.toString()); } // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { - assertTrue(declaredFieldsAsString.contains(fieldThatShouldExists), - "field " + fieldThatShouldExists + " not found"); + for (String declaredFieldThatShouldExists : declaredFieldsThatShouldExist) { + assertTrue(declaredFieldsAsString.contains(declaredFieldThatShouldExists), + "field " + declaredFieldThatShouldExists + " not found"); } } @@ -430,10 +443,15 @@ */ protected void testGetField() { // following fields should exists - final String[] fieldsThatShouldExists = { + final String[] fieldsThatShouldExist_jdk6 = { }; + final String[] fieldsThatShouldExist_jdk7 = { + }; + + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { + for (String fieldThatShouldExists : fieldsThatShouldExist) { try { Field field = this.scriptEngineFactoryClass.getField(fieldThatShouldExists); String fieldName = field.getName(); @@ -452,7 +470,7 @@ */ protected void testGetMethods() { // following methods should be inherited - final String[] methodsThatShouldExists_jdk6 = { + final String[] methodsThatShouldExist_jdk6 = { "public abstract java.lang.Object javax.script.ScriptEngineFactory.getParameter(java.lang.String)", "public abstract java.lang.String javax.script.ScriptEngineFactory.getEngineName()", "public abstract java.lang.String javax.script.ScriptEngineFactory.getEngineVersion()", @@ -467,7 +485,7 @@ "public abstract javax.script.ScriptEngine javax.script.ScriptEngineFactory.getScriptEngine()", }; - final String[] methodsThatShouldExists_jdk7 = { + final String[] methodsThatShouldExist_jdk7 = { "public abstract java.lang.Object javax.script.ScriptEngineFactory.getParameter(java.lang.String)", "public abstract java.lang.String javax.script.ScriptEngineFactory.getEngineName()", "public abstract java.lang.String javax.script.ScriptEngineFactory.getEngineVersion()", @@ -489,9 +507,9 @@ for (Method method : methods) { methodsAsString.add(method.toString()); } - String[] methodsThatShouldExists = getJavaVersion() < 7 ? methodsThatShouldExists_jdk6 : methodsThatShouldExists_jdk7; + String[] methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : methodsThatShouldExists) { + for (String methodThatShouldExists : methodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "method " + methodThatShouldExists + " not found"); } @@ -502,7 +520,7 @@ */ protected void testGetDeclaredMethods() { // following methods should be declared - final String[] declaredMethodsThatShouldExists_jdk6 = { + final String[] declaredMethodsThatShouldExist_jdk6 = { "public abstract java.lang.Object javax.script.ScriptEngineFactory.getParameter(java.lang.String)", "public abstract java.lang.String javax.script.ScriptEngineFactory.getEngineName()", "public abstract java.lang.String javax.script.ScriptEngineFactory.getEngineVersion()", @@ -517,7 +535,7 @@ "public abstract javax.script.ScriptEngine javax.script.ScriptEngineFactory.getScriptEngine()", }; - final String[] declaredMethodsThatShouldExists_jdk7 = { + final String[] declaredMethodsThatShouldExist_jdk7 = { "public abstract java.lang.Object javax.script.ScriptEngineFactory.getParameter(java.lang.String)", "public abstract java.lang.String javax.script.ScriptEngineFactory.getEngineName()", "public abstract java.lang.String javax.script.ScriptEngineFactory.getEngineVersion()", @@ -539,9 +557,9 @@ for (Method method : declaredMethods) { methodsAsString.add(method.toString()); } - String[] declaredMethodsThatShouldExists = getJavaVersion() < 7 ? declaredMethodsThatShouldExists_jdk6 : declaredMethodsThatShouldExists_jdk7; + String[] declaredMethodsThatShouldExist = getJavaVersion() < 7 ? declaredMethodsThatShouldExist_jdk6 : declaredMethodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : declaredMethodsThatShouldExists) { + for (String methodThatShouldExists : declaredMethodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "declared method " + methodThatShouldExists + " not found"); } From jvanek at redhat.com Thu Mar 28 04:53:35 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 28 Mar 2013 12:53:35 +0100 Subject: [rfc][icedtea-web] Strip parameters from document-base In-Reply-To: <51535492.2050100@redhat.com> References: <51535492.2050100@redhat.com> Message-ID: <51542F3F.6060409@redhat.com> On 03/27/2013 09:20 PM, Adam Domurad wrote: > It appears having parameters in the URL for the stored document-base can cause problems with some > applets, namely the Oracle LMS applet. > > A small bit of refactoring is needed to move the URL stripping code: > > Refactoring ChangeLog: > 2013-03-26 Adam Domurad > > * netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java > (normalizeUrlAndStripParams): Moved. > * netx/net/sourceforge/jnlp/util/UrlUtils.java > (normalizeUrlAndStripParams): New, moved from > UnsignedAppletTrustConfirmation. > * > tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java > > (testNormalizeUrlAndStripParams): Moved. > * tests/netx/unit/net/sourceforge/jnlp/util/UrlUtilsTest.java: > New, has (testNormalizeUrlAndStripParams) from > UnsignedAppletTrustConfirmationTest. > > > And the fix itself: > 2013-03-26 Adam Domurad > > * netx/net/sourceforge/jnlp/NetxPanel.java > (NetxPanel): Ensure documentURL has stripped parameters > > Happy hacking, > -Adam The refactoring is ok. But to use completely stripped codeabse in base codebase sounds to me as quite big change. As far as i looked, I was not able to judge all the impact and would rather stay with more conservative change or with very deep testing of this change on your side. J. From adomurad at redhat.com Thu Mar 28 06:11:54 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 28 Mar 2013 09:11:54 -0400 Subject: [rfc][icedtea-web] read properties values from C part - library edition :) In-Reply-To: <514C3168.3070307@redhat.com> References: <51277540.7040804@redhat.com> <5127B294.2010100@redhat.com> <512A3291.7070807@redhat.com> <512A360E.4060007@redhat.com> <51474DD3.7080003@redhat.com> <51476654.3070908@redhat.com> <51486B08.10005@redhat.com> <514879D5.6090109@redhat.com> <5149C578.5090004@redhat.com> <5149CB84.1090501@redhat.com> <514B3833.6060604@redhat.com> <514B3E9E.4000600@redhat.com> <514B4C13.4070105@redhat.com> <514B68B2.3040004@redhat.com> <514C3168.3070307@redhat.com> Message-ID: <5154419A.9060301@redhat.com> [..snip..] On 03/22/2013 06:24 AM, Jiri Vanek wrote: > On 03/21/2013 09:08 PM, Adam Domurad wrote: >> Looks good, just one thing -- all the other string utilities are >> static functions in the class >> IcedTeaPluginUtilities. I'd prefer strongly if this was consistent >> (even if a bit more wordy). When >> a person looks for such a utility function, they may miss it otherwise. > > Sure, sorry for for overlooking it in previous round:( > > J. > Looks good. [..large snip..] > +//This is different from common get property, as it is avoiding to > search in *java* > +//properties files [nit] I found this comment a bit hard to understand, consider being more explicit. [..large snip..] Anyway, good to push either way. -Adam From ptisnovs at redhat.com Thu Mar 28 06:39:44 2013 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Thu, 28 Mar 2013 09:39:44 -0400 (EDT) Subject: [rfc][icedtea-web] Ensure applet shutdown finishes without exceptions In-Reply-To: <51408B3A.2070500@redhat.com> Message-ID: <1917926909.7775839.1364477984429.JavaMail.root@redhat.com> Hi Adam, points #2 and #3 looks ok. Do you want to push this change into HEAD or also into some branch? Cheers, Pavel ----- Adam Domurad wrote: > On 01/31/2013 05:05 PM, Adam Domurad wrote: > > Hi all. Another round of what I think could be important stability > > fixes for icedtea-web. > > > > I noticed while doing my unsigned-applet-confirmation patch that > > JNLPClassLoader instances did not always reach reference-count == 0 > > when all their instances should have been destroyed. The first part of > > that was the applet synchronization issue, that I have posted a patch > > for. > > > > 3 additional problems fixed here: > > > > Fixed in npe-fix-and-wait-for-init.patch: > > 1.) There was a sometimes-occurring NPE in > > JNLPClassLoader#getPermisions, when a CodeSource did not have an > > associated location when an applet was destroyed. This could cause the > > destroyApplet code to not finish. This was fixed with a simple null > > check guard. This fixes some spurious exceptions being printed out > > during shutdown (causing some noise in reproducer system). > > > > 2.) Applets can actually be destroyed from one thread *in the middle > > of initialization*, while somewhat hard to reproduce, spamming refresh > > on a many-applet page inevitably caused it. Luckily a mechanism was > > already in place for efficiently waiting for applets to initialize. > > > > Fixed in dont-interrupt-workers.patch: > > > > 3.) Applets were being interrupted while shutting down -- a major > > cause of spurious exceptions being printed out (causing even more > > noise in reproducer system). This interrupt facility was too > > heavy-weight for the desired task. Instead Java's builtin wait & > > notify facilities are now used to perform the same operation on a much > > finer scale. > > > > ** Note that I looked into the matter and saw that the method > > notifyWorkerIsFree did not actually perform the desired task and was > > removed as misleading. In fact the consumer thread spins around > > looking for free workers and did not wait for an interruption. This > > behaviour has not changed, and the method is not needed (nor was it > > needed how the code was before). > > > > npe-fix-and-wait-for-init.patch changes: > > 2013-XX-XX Adam Domurad > > > > Ensure applet destruction cannot in the middle of initialization. > > Prevent NPE that can sometimes occurs (especially with this change). > > * netx/net/sourceforge/jnlp/NetxPanel.java > > (destroyApplet): wait for applet initialization > > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > > (getPermissions): avoid potential NPE if code source location is > > missing > > > > dont-interrupt-workers.patch changes: > > 2013-XX-XX Adam Domurad > > > > Don't interrupt worker/consumer threads (can prevent shutdown code > > from > > executing); instead use Object wait/notify methods. > > * plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java > > (notifyHasWork): Replacement for thread interruption > > (waitForWork): Replacement for thread sleeping > > (run): Use waitForWork instead of Thread.sleep > > (notifyWorkerIsFree): Removed -- misleading method. > > * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > > (message): Make volatile, as it should have always been. > > (notifyHasWork): Replacement for thread interruption > > (waitForWork): Replacement for thread sleeping > > (run): Use waitForWork instead of Thread.sleep > > (getPermissions): avoid potential NPE if code source location is > > missing > > (free): Remove reference to notifyWorkerIsFree. > > Ping ? (for dont-interrupt-workers.patch) This is IMO quite an > improvement for stability. It's also bugging me seeing this avoidable > InterruptedException over and over. > > > > > > > I am excited to see these changes get in. I will see soon if there's > > any effect on the amount of noise in the test system. > > > > Happy hacking, > > -Adam > > -Adam From adomurad at redhat.com Thu Mar 28 06:43:14 2013 From: adomurad at redhat.com (Adam Domurad) Date: Thu, 28 Mar 2013 09:43:14 -0400 Subject: [rfc][icedtea-web] Ensure applet shutdown finishes without exceptions In-Reply-To: <1917926909.7775839.1364477984429.JavaMail.root@redhat.com> References: <1917926909.7775839.1364477984429.JavaMail.root@redhat.com> Message-ID: <515448F2.30607@redhat.com> On 03/28/2013 09:39 AM, Pavel Tisnovsky wrote: > Hi Adam, > > points #2 and #3 looks ok. > > Do you want to push this change into HEAD or also into some branch? I think just HEAD. It can be lived with until 1.4 release, which has related fixes. Thanks for the review! -Adam > > Cheers, > Pavel > > ----- Adam Domurad wrote: >> On 01/31/2013 05:05 PM, Adam Domurad wrote: >>> Hi all. Another round of what I think could be important stability >>> fixes for icedtea-web. >>> >>> I noticed while doing my unsigned-applet-confirmation patch that >>> JNLPClassLoader instances did not always reach reference-count == 0 >>> when all their instances should have been destroyed. The first part of >>> that was the applet synchronization issue, that I have posted a patch >>> for. >>> >>> 3 additional problems fixed here: >>> >>> Fixed in npe-fix-and-wait-for-init.patch: >>> 1.) There was a sometimes-occurring NPE in >>> JNLPClassLoader#getPermisions, when a CodeSource did not have an >>> associated location when an applet was destroyed. This could cause the >>> destroyApplet code to not finish. This was fixed with a simple null >>> check guard. This fixes some spurious exceptions being printed out >>> during shutdown (causing some noise in reproducer system). >>> >>> 2.) Applets can actually be destroyed from one thread *in the middle >>> of initialization*, while somewhat hard to reproduce, spamming refresh >>> on a many-applet page inevitably caused it. Luckily a mechanism was >>> already in place for efficiently waiting for applets to initialize. >>> >>> Fixed in dont-interrupt-workers.patch: >>> >>> 3.) Applets were being interrupted while shutting down -- a major >>> cause of spurious exceptions being printed out (causing even more >>> noise in reproducer system). This interrupt facility was too >>> heavy-weight for the desired task. Instead Java's builtin wait & >>> notify facilities are now used to perform the same operation on a much >>> finer scale. >>> >>> ** Note that I looked into the matter and saw that the method >>> notifyWorkerIsFree did not actually perform the desired task and was >>> removed as misleading. In fact the consumer thread spins around >>> looking for free workers and did not wait for an interruption. This >>> behaviour has not changed, and the method is not needed (nor was it >>> needed how the code was before). >>> >>> npe-fix-and-wait-for-init.patch changes: >>> 2013-XX-XX Adam Domurad >>> >>> Ensure applet destruction cannot in the middle of initialization. >>> Prevent NPE that can sometimes occurs (especially with this change). >>> * netx/net/sourceforge/jnlp/NetxPanel.java >>> (destroyApplet): wait for applet initialization >>> * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java >>> (getPermissions): avoid potential NPE if code source location is >>> missing >>> >>> dont-interrupt-workers.patch changes: >>> 2013-XX-XX Adam Domurad >>> >>> Don't interrupt worker/consumer threads (can prevent shutdown code >>> from >>> executing); instead use Object wait/notify methods. >>> * plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java >>> (notifyHasWork): Replacement for thread interruption >>> (waitForWork): Replacement for thread sleeping >>> (run): Use waitForWork instead of Thread.sleep >>> (notifyWorkerIsFree): Removed -- misleading method. >>> * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java >>> (message): Make volatile, as it should have always been. >>> (notifyHasWork): Replacement for thread interruption >>> (waitForWork): Replacement for thread sleeping >>> (run): Use waitForWork instead of Thread.sleep >>> (getPermissions): avoid potential NPE if code source location is >>> missing >>> (free): Remove reference to notifyWorkerIsFree. >> Ping ? (for dont-interrupt-workers.patch) This is IMO quite an >> improvement for stability. It's also bugging me seeing this avoidable >> InterruptedException over and over. >> >>> >>> I am excited to see these changes get in. I will see soon if there's >>> any effect on the amount of noise in the test system. >>> >>> Happy hacking, >>> -Adam >> -Adam From andrew at icedtea.classpath.org Thu Mar 28 07:15:50 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 28 Mar 2013 14:15:50 +0000 Subject: /hg/icedtea7: Bring in giflib 5 support. Message-ID: changeset 9b9b5df83038 in /hg/icedtea7 details: http://icedtea.classpath.org/hg/icedtea7?cmd=changeset;node=9b9b5df83038 author: Andrew John Hughes date: Thu Mar 28 00:18:00 2013 +0000 Bring in giflib 5 support. 2013-03-27 Andrew John Hughes * Makefile.am: (JDK_CHANGESET): Bring in giflib 5 support. (JDK_SHA256SUM): Likewise. diffstat: ChangeLog | 6 ++++++ Makefile.am | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diffs (33 lines): diff -r 898867dc123e -r 9b9b5df83038 ChangeLog --- a/ChangeLog Tue Mar 12 20:04:59 2013 +0000 +++ b/ChangeLog Thu Mar 28 00:18:00 2013 +0000 @@ -1,3 +1,9 @@ +2013-03-27 Andrew John Hughes + + * Makefile.am: + (JDK_CHANGESET): Bring in giflib 5 support. + (JDK_SHA256SUM): Likewise. + 2013-03-12 Andrew John Hughes * NEWS: Add release notes for 2.3.8, 2.1.7 & diff -r 898867dc123e -r 9b9b5df83038 Makefile.am --- a/Makefile.am Tue Mar 12 20:04:59 2013 +0000 +++ b/Makefile.am Thu Mar 28 00:18:00 2013 +0000 @@ -7,14 +7,14 @@ CORBA_CHANGESET = 679412ed11d5 JAXP_CHANGESET = cba4d3377850 JAXWS_CHANGESET = a7541d353428 -JDK_CHANGESET = bbfd732ae37d +JDK_CHANGESET = 67b0266bbd5d LANGTOOLS_CHANGESET = 31539542e9e5 OPENJDK_CHANGESET = 2d1ddf672d61 CORBA_SHA256SUM = 20b9840fa09f8e89a141cbe0b08794588f8534ba760cf08cee34feaea3018bc4 JAXP_SHA256SUM = d04ae1702118dd42e5f7c3796dab0214a44f27b8381464536877cded732f6b77 JAXWS_SHA256SUM = ada222989022c456d6ebd417891fb4b575d47da1134bd0ca631fb5deea7cbed8 -JDK_SHA256SUM = f3e534cabdf0892b8311133da977823bbecabab7cf5f8a5115ef4fd3b2f81b06 +JDK_SHA256SUM = 8f7b1ce3fea28901366530e152c479117cbb3c37a5a7f069a52531f7b7d01c4f LANGTOOLS_SHA256SUM = 7cc3816acebfeac0211161cc39472b38f87587f4d41fa3e153109e27df4c02c8 OPENJDK_SHA256SUM = 43aef86d067f66f2cd3b6895cc166e056b05603ee585ba50b5a82d41e7924a16 From jvanek at icedtea.classpath.org Thu Mar 28 07:51:28 2013 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Thu, 28 Mar 2013 14:51:28 +0000 Subject: /hg/icedtea-web: Added code to parse properties and to find corr... Message-ID: changeset b40198000d7c in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=b40198000d7c author: Jiri Vanek date: Thu Mar 28 15:51:38 2013 +0100 Added code to parse properties and to find correct configuration files from c++ part of plugin. diffstat: ChangeLog | 15 + Makefile.am | 4 +- plugin/icedteanp/IcedTeaParseProperties.cc | 244 +++++++++ plugin/icedteanp/IcedTeaParseProperties.h | 53 ++ plugin/icedteanp/IcedTeaPluginUtils.cc | 17 + plugin/icedteanp/IcedTeaPluginUtils.h | 7 + tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc | 525 +++++++++++++++++++++ tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc | 40 + 8 files changed, 903 insertions(+), 2 deletions(-) diffs (truncated from 987 to 500 lines): diff -r 1c26ce1e1cb3 -r b40198000d7c ChangeLog --- a/ChangeLog Tue Mar 26 14:57:33 2013 -0400 +++ b/ChangeLog Thu Mar 28 15:51:38 2013 +0100 @@ -1,3 +1,18 @@ +2013-03-22 Jiri Vanek + + Added code to parse properties and to find correct configuration files + from c++ part of plugin + * Makefile.am: IcedTeaParseProperties.cc added to be compiled with rest + of plugin + * plugin/icedteanp/IcedTeaParseProperties.cc: new file, contains implementation + for searching for config files and to read value from them + * plugin/icedteanp/IcedTeaParseProperties.h: public api for "library" + * plugin/icedteanp/IcedTeaPluginUtils.cc: + * plugin/icedteanp/IcedTeaPluginUtils.h: added new methods (trim) and + (file_exists) + * tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc: tests for library methods + * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc: added tests for new methods + 2013-03-26 Adam Domurad Integration of unsigned applet confirmation dialogue. diff -r 1c26ce1e1cb3 -r b40198000d7c Makefile.am --- a/Makefile.am Tue Mar 26 14:57:33 2013 -0400 +++ b/Makefile.am Thu Mar 28 15:51:38 2013 +0100 @@ -284,11 +284,11 @@ PLUGIN_SRC=IcedTeaNPPlugin.cc IcedTeaScriptablePluginObject.cc \ IcedTeaJavaRequestProcessor.cc IcedTeaPluginRequestProcessor.cc \ - IcedTeaPluginUtils.cc + IcedTeaPluginUtils.cc IcedTeaParseProperties.cc PLUGIN_OBJECTS=IcedTeaNPPlugin.o IcedTeaScriptablePluginObject.o \ IcedTeaJavaRequestProcessor.o IcedTeaPluginRequestProcessor.o \ - IcedTeaPluginUtils.o + IcedTeaPluginUtils.o IcedTeaParseProperties.o $(PLUGIN_DIR)/%.o: $(PLUGIN_SRCDIR)/%.cc mkdir -p $(PLUGIN_DIR) && \ diff -r 1c26ce1e1cb3 -r b40198000d7c plugin/icedteanp/IcedTeaParseProperties.cc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugin/icedteanp/IcedTeaParseProperties.cc Thu Mar 28 15:51:38 2013 +0100 @@ -0,0 +1,244 @@ +/* IcedTeaRunnable.cc + + Copyright (C) 2013 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#include "IcedTeaPluginUtils.h" + +#include "IcedTeaParseProperties.h" +/* + The public api is nearly impossible to test due to "hardcoded paths" + All public methods have theirs equivalents wit set-up-able files, and those are + tested. +*/ + +using namespace std; +//private api + +void remove_all_spaces(string& str); +bool get_property_value(string c, string& dest); +bool starts_with(string c1, string c2); +string user_properties_file(); +string main_properties_file(); +string default_java_properties_file(); +//for passing three dummy files +bool find_system_config_file(string main_file, string custom_jre_file, bool usecustom_jre, string default_java_file, string& dest); +bool find_property(string filename, string property, string& dest); +//for passing two dummy files +bool read_deploy_property_value(string user_file, string system_file, bool usesystem_file, string property, string& dest); +//for passing two dummy files +bool find_custom_jre(string user_file, string main_file,string& dest); +//end of non-public IcedTeaParseProperties api + + +void remove_all_spaces(string& str) +{ + for(int i=0; ipw_dir)+"/.icedtea/"+default_file_ITW_deploy_props_name; +} + + +string main_properties_file(){ + return "/etc/.java/deployment/"+default_file_ITW_deploy_props_name; +} + +string default_java_properties_file(){ + return ICEDTEA_WEB_JRE "/lib/"+default_file_ITW_deploy_props_name; +} + + +/* this is the same search done by icedtea-web settings: + try the main file in /etc/.java/deployment + if found, then return this file + try to find setUp jre + if found, then try if this file exists and end + if no jre custom jvm is set, then tries default jre + if its deploy file exists, then return + not found otherwise*/ +bool find_system_config_file(string& dest){ + string jdest; + bool found = find_custom_jre(jdest); + if (found) { + jdest = jdest + "/lib/"+default_file_ITW_deploy_props_name; + } + return find_system_config_file(main_properties_file(), jdest, found, default_java_properties_file(), dest); +} +//abstraction for testing purposes +bool find_system_config_file(string main_file, string custom_jre_file, bool usecustom_jre, string default_java_file, string& dest){ + if (IcedTeaPluginUtilities::file_exists(main_file)) { + dest = main_file; + return true; + } else { + if (usecustom_jre){ + if(IcedTeaPluginUtilities::file_exists(custom_jre_file) ) { + dest = custom_jre_file; + return true; + } + } else { + if(IcedTeaPluginUtilities::file_exists(default_java_file)) { + dest = default_java_file; + return true; + } + } + } +return false; //nothing of above found +} + +//Returns whether property was found, if found stores result in 'dest' +bool find_property(string filename, string property, string& dest){ + string property_matcher(property); + IcedTeaPluginUtilities::trim( property_matcher); + property_matcher= property_matcher+"="; + ifstream input( filename.c_str() ); + for( string line; getline( input, line ); ){ /* read a line */ + string copy = line; + //java tolerates spaces around = char, remove them for matching + remove_all_spaces(copy); + if (starts_with(copy, property_matcher)) { + //provide non-spaced value, trimming is done in get_property_value + get_property_value(line, dest); + return true; + } + } + + return false; + } + + +/* this is reimplementation of itw-settings operations + first check in user's settings, if found, return + then check in global file (see the magic of find_system_config_file)*/ +bool read_deploy_property_value(string property, string& dest){ + string futurefile; + bool found = find_system_config_file(futurefile); + return read_deploy_property_value(user_properties_file(), futurefile, found, property, dest); +} +//abstraction for testing purposes +bool read_deploy_property_value(string user_file, string system_file, bool usesystem_file, string property, string& dest){ + //is it in user's file? + bool found = find_property(user_file, property, dest); + if (found) { + return true; + } + //is it in global file? + if (usesystem_file) { + return find_property(system_file, property, dest); + } + return false; +} + +//This is different from common get property, as it is avoiding to search in *java* +//properties files +bool find_custom_jre(string& dest){ + return find_custom_jre(user_properties_file(), main_properties_file(), dest); +} +//abstraction for testing purposes +bool find_custom_jre(string user_file, string main_file,string& dest){ + string key = custom_jre_key; + if(IcedTeaPluginUtilities::file_exists(user_file)) { + bool a = find_property(user_file, key, dest); + if (a) { + return true; + } + } + if(IcedTeaPluginUtilities::file_exists(main_file)) { + return find_property(main_file, key, dest); + } +return false; +} + + + +int test_main(void){ + cout << ("user's settings file\n"); + cout << user_properties_file(); + cout << ("\nmain settings file:\n"); + cout << (main_properties_file()); + cout << ("\njava settings file \n"); + cout << (default_java_properties_file()); + cout << ("\nsystem config file\n"); + string a1; + find_system_config_file(a1); + cout << a1; + cout << ("\ncustom jre\n"); + string a2; + find_custom_jre(a2); + cout << a2; + cout << ("\nsome custom property\n"); + string a3; + read_deploy_property_value("deployment.security.level", a3); + cout << a3; + cout << ("\n"); + return 0; +} diff -r 1c26ce1e1cb3 -r b40198000d7c plugin/icedteanp/IcedTeaParseProperties.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/plugin/icedteanp/IcedTeaParseProperties.h Thu Mar 28 15:51:38 2013 +0100 @@ -0,0 +1,53 @@ +/* IcedTeaPluginUtils.h + + Copyright (C) 2013 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + +/** + * Utility classes for parsing values from properties files + */ +#include + + +//public api +std::string user_properties_file(); +bool find_system_config_file(std::string& dest); +bool find_custom_jre(std::string& dest); +bool read_deploy_property_value(std::string property, std::string& dest); +//half public api +const std::string default_file_ITW_deploy_props_name = "deployment.properties"; +const std::string custom_jre_key = "deployment.jre.dir"; +//end of public api diff -r 1c26ce1e1cb3 -r b40198000d7c plugin/icedteanp/IcedTeaPluginUtils.cc --- a/plugin/icedteanp/IcedTeaPluginUtils.cc Tue Mar 26 14:57:33 2013 -0400 +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc Thu Mar 28 15:51:38 2013 +0100 @@ -39,6 +39,7 @@ #include "IcedTeaNPPlugin.h" #include "IcedTeaScriptablePluginObject.h" #include "IcedTeaPluginUtils.h" +#include /** * Misc. utility functions used by the plugin @@ -1068,6 +1069,21 @@ } while(1); } +void IcedTeaPluginUtilities::trim(std::string& str) { + size_t start = str.find_first_not_of(" \t\n"), end = str.find_last_not_of(" \t\n"); + if (start == std::string::npos) { + return; + } + str = str.substr(start, end - start + 1); +} + +bool IcedTeaPluginUtilities::file_exists(std::string filename) +{ + std::ifstream infile(filename.c_str()); + return infile.good(); +} + + /****************************************** * Begin JavaMessageSender implementation * ****************************************** @@ -1203,3 +1219,4 @@ PLUGIN_DEBUG("%p unlocked...\n", &msg_queue_mutex); } + diff -r 1c26ce1e1cb3 -r b40198000d7c plugin/icedteanp/IcedTeaPluginUtils.h --- a/plugin/icedteanp/IcedTeaPluginUtils.h Tue Mar 26 14:57:33 2013 -0400 +++ b/plugin/icedteanp/IcedTeaPluginUtils.h Thu Mar 28 15:51:38 2013 +0100 @@ -279,6 +279,11 @@ /* Posts call in async queue and waits till execution completes */ static void callAndWaitForResult(NPP instance, void (*func) (void *), AsyncCallThreadData* data); + + /*cutting whitespaces from end and start of string*/ + static void trim(std::string& str); + static bool file_exists(std::string filename); + }; /* @@ -345,4 +350,6 @@ void post(const char* message); }; + + #endif // __ICEDTEAPLUGINUTILS_H__ diff -r 1c26ce1e1cb3 -r b40198000d7c tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc Thu Mar 28 15:51:38 2013 +0100 @@ -0,0 +1,525 @@ +/* Copyright (C) 2012 Red Hat + + This file is part of IcedTea. + + IcedTea is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + IcedTea is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with IcedTea; see the file COPYING. If not, write to the + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. + + Linking this library statically or dynamically with other modules is + making a combined work based on this library. Thus, the terms and + conditions of the GNU General Public License cover the whole + combination. + + As a special exception, the copyright holders of this library give you + permission to link this library with independent modules to produce an + executable, regardless of the license terms of these independent + modules, and to copy and distribute the resulting executable under + terms of your choice, provided that you also meet, for each linked + independent module, the terms and conditions of the license of that + module. An independent module is a module which is not derived from + or based on this library. If you modify this library, you may extend + this exception to your version of the library, but you are not + obligated to do so. If you do not wish to do so, delete this + exception statement from your version. */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "IcedTeaParseProperties.h" + +using namespace std; + +//not exposed via IcedTeaParseProperties but needed +extern void remove_all_spaces(string& str); +extern bool get_property_value(string c, string& dest); +extern bool starts_with(string c1, string c2); +extern string user_properties_file(); +extern string main_properties_file(); +extern string default_java_properties_file(); +//for passing three dummy files +bool find_system_config_file(string main_file, string custom_jre_file, bool usecustom_jre, string default_java_file, string& dest); +bool find_property(string filename, string property, string& dest); +//for passing two dummy files +bool read_deploy_property_value(string user_file, string system_file, bool usesystem_file, string property, string& dest); +//for passing two dummy files +bool find_custom_jre(string user_file, string main_file,string& dest); +//end of non-public IcedTeaParseProperties api + +/* Creates a temporary file with the specified contents */ +static string temporary_file(const string& contents) { + string path = tmpnam(NULL); /* POSIX function, fine for test suite */ + ofstream myfile; + myfile.open (path.c_str()); + myfile << contents; + myfile.close(); + return path; +} + + + +/*private api fundamental tests*/ +TEST(RemoveAllSpaces) { + string toBeTrimmed = string(" te st X "); + remove_all_spaces (toBeTrimmed); + CHECK_EQUAL("testX", toBeTrimmed); + + string toBeTrimmed1 = string(" te st X "); + remove_all_spaces (toBeTrimmed1); + CHECK_EQUAL("testX", toBeTrimmed1); + + string toBeTrimmed2 = string(" \t t e\nst\tX\n"); + remove_all_spaces (toBeTrimmed2); From bugzilla-daemon at icedtea.classpath.org Thu Mar 28 09:21:42 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 28 Mar 2013 16:21:42 +0000 Subject: [Bug 1204] Archive URL wrongly resolved In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1204 --- Comment #4 from Adam Domurad --- Sorry, I misunderstood. OK, getting rid of the double slash is a reasonable request then. I'm tempted to call this parameter passing a hack (the last-modified field of the http request *should* control the caching). But, I can only assume that there's more applets out there that have grown to rely on this. I'll look getting the URL behaviour more in-line with the proprietary plug-in, thanks for the bug report! -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130328/0a253048/attachment.html From adomurad at icedtea.classpath.org Thu Mar 28 09:52:04 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Thu, 28 Mar 2013 16:52:04 +0000 Subject: /hg/icedtea-web: Don't interrupt message handling threads Message-ID: changeset 866020eb16cf in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=866020eb16cf author: Adam Domurad date: Thu Mar 28 12:38:52 2013 -0400 Don't interrupt message handling threads diffstat: ChangeLog | 18 +++++ plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java | 29 ++++++--- plugin/icedteanp/java/sun/applet/PluginMessageHandlerWorker.java | 31 +++++---- 3 files changed, 55 insertions(+), 23 deletions(-) diffs (148 lines): diff -r b40198000d7c -r 866020eb16cf ChangeLog --- a/ChangeLog Thu Mar 28 15:51:38 2013 +0100 +++ b/ChangeLog Thu Mar 28 12:38:52 2013 -0400 @@ -13,6 +13,24 @@ * tests/cpp-unit-tests/IcedTeaParsePropertiesTest.cc: tests for library methods * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc: added tests for new methods +2013-03-28 Adam Domurad + + Don't interrupt worker/consumer threads (can prevent shutdown code from + executing); instead use Object wait/notify methods. + * plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java + (notifyHasWork): Replacement for thread interruption + (waitForWork): Replacement for thread sleeping + (run): Use waitForWork instead of Thread.sleep + (notifyWorkerIsFree): Removed -- misleading method. + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java + (message): Make volatile, as it should have always been. + (notifyHasWork): Replacement for thread interruption + (waitForWork): Replacement for thread sleeping + (run): Use waitForWork instead of Thread.sleep + (getPermissions): avoid potential NPE if code source location is + missing + (free): Remove reference to notifyWorkerIsFree. + 2013-03-26 Adam Domurad Integration of unsigned applet confirmation dialogue. diff -r b40198000d7c -r 866020eb16cf plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java --- a/plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java Thu Mar 28 15:51:38 2013 +0100 +++ b/plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java Thu Mar 28 12:38:52 2013 -0400 @@ -116,17 +116,13 @@ return null; } - public void notifyWorkerIsFree(PluginMessageHandlerWorker worker) { - consumerThread.interrupt(); - } - public void queue(String message) { synchronized (readQueue) { readQueue.addLast(message); } // Wake that lazy consumer thread - consumerThread.interrupt(); + consumerThread.notifyHasWork(); } protected class ConsumerThread extends Thread { @@ -135,6 +131,22 @@ super("PluginMessageConsumer.ConsumerThread"); } + // Notify that either work is ready to do, or a worker is available + public synchronized void notifyHasWork() { + notifyAll(); + } + + // Wait a bit until either work is ready to do, or a worker is available + public synchronized void waitForWork() { + try { + // Do not wait indefinitely to avoid the potential of deadlock + wait(1000); + } catch (InterruptedException e) { + // Should not typically occur + e.printStackTrace(); + } + } + /** * Scans the readQueue for priority messages and brings them to the front */ @@ -194,13 +206,10 @@ } worker.setmessage(message); - worker.interrupt(); + worker.notifyHasWork(); } else { - try { - Thread.sleep(1000); - } catch (InterruptedException ie) { - } + waitForWork(); } } } diff -r b40198000d7c -r 866020eb16cf plugin/icedteanp/java/sun/applet/PluginMessageHandlerWorker.java --- a/plugin/icedteanp/java/sun/applet/PluginMessageHandlerWorker.java Thu Mar 28 15:51:38 2013 +0100 +++ b/plugin/icedteanp/java/sun/applet/PluginMessageHandlerWorker.java Thu Mar 28 12:38:52 2013 -0400 @@ -42,10 +42,24 @@ private boolean free = true; private final boolean isPriorityWorker; private final int id; - private String message; + private volatile String message; private PluginStreamHandler streamHandler; private PluginMessageConsumer consumer; + public synchronized void notifyHasWork() { + notifyAll(); + } + + public synchronized void waitForWork() { + try { + // Do not wait indefinitely to avoid the potential of deadlock + wait(1000); + } catch (InterruptedException e) { + // Should not typically occur + e.printStackTrace(); + } + } + public PluginMessageHandlerWorker( PluginMessageConsumer consumer, PluginStreamHandler streamHandler, int id, @@ -93,16 +107,10 @@ free(); } else { + waitForWork(); - // Sleep when there is nothing to do - try { - Thread.sleep(Integer.MAX_VALUE); - PluginDebug.debug("Consumer thread ", id, " sleeping..."); - } catch (InterruptedException ie) { - PluginDebug.debug("Consumer thread ", id, " woken..."); - // nothing.. someone woke us up, see if there - // is work to do - } + // Someone woke us up, see if there is work to do + PluginDebug.debug("Consumer thread ", id, " woken..."); } } } @@ -120,9 +128,6 @@ public void free() { synchronized (this) { this.free = true; - - // Signal the consumer that we are done in case it was waiting - consumer.notifyWorkerIsFree(this); } } From bugzilla-daemon at icedtea.classpath.org Thu Mar 28 11:08:40 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 28 Mar 2013 18:08:40 +0000 Subject: [Bug 1332] Error running Netbeans 7.3 on Debian 6.0.7 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1332 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #839|text/x-log |text/plain mime type| | -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130328/7c737e2a/attachment.html From adomurad at icedtea.classpath.org Thu Mar 28 11:39:00 2013 From: adomurad at icedtea.classpath.org (adomurad at icedtea.classpath.org) Date: Thu, 28 Mar 2013 18:39:00 +0000 Subject: /hg/icedtea-web: Move normalizeUrlAndStripParams to UrlUtils Message-ID: changeset 3405d5fc4339 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=3405d5fc4339 author: Adam Domurad date: Thu Mar 28 14:40:11 2013 -0400 Move normalizeUrlAndStripParams to UrlUtils diffstat: ChangeLog | 13 ++++ netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java | 23 ++----- netx/net/sourceforge/jnlp/util/UrlUtils.java | 17 +++++ tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java | 20 ------ tests/netx/unit/net/sourceforge/jnlp/util/UrlUtilsTest.java | 30 ++++++++++ 5 files changed, 66 insertions(+), 37 deletions(-) diffs (164 lines): diff -r 866020eb16cf -r 3405d5fc4339 ChangeLog --- a/ChangeLog Thu Mar 28 12:38:52 2013 -0400 +++ b/ChangeLog Thu Mar 28 14:40:11 2013 -0400 @@ -1,3 +1,16 @@ +2013-03-28 Adam Domurad + + * netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java + (normalizeUrlAndStripParams): Moved. + * netx/net/sourceforge/jnlp/util/UrlUtils.java + (normalizeUrlAndStripParams): New, moved from + UnsignedAppletTrustConfirmation. + * tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java + (testNormalizeUrlAndStripParams): Moved. + * tests/netx/unit/net/sourceforge/jnlp/util/UrlUtilsTest.java: + New, has (testNormalizeUrlAndStripParams) from + UnsignedAppletTrustConfirmationTest. + 2013-03-22 Jiri Vanek Added code to parse properties and to find correct configuration files diff -r 866020eb16cf -r 3405d5fc4339 netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java --- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java Thu Mar 28 12:38:52 2013 -0400 +++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java Thu Mar 28 14:40:11 2013 -0400 @@ -45,6 +45,8 @@ import java.util.Date; import java.util.List; + +import net.sourceforge.jnlp.util.UrlUtils; import net.sourceforge.jnlp.LaunchException; import net.sourceforge.jnlp.PluginBridge; import net.sourceforge.jnlp.cache.ResourceTracker; @@ -96,24 +98,11 @@ private static UnsignedAppletActionEntry getMatchingItem(UnsignedAppletActionStorage actionStorage, PluginBridge file) { return actionStorage.getMatchingItem( - normalizeUrlAndStripParams(file.getSourceLocation()).toString(), - normalizeUrlAndStripParams(file.getCodeBase()).toString(), + UrlUtils.normalizeUrlAndStripParams(file.getSourceLocation()).toString(), + UrlUtils.normalizeUrlAndStripParams(file.getCodeBase()).toString(), toRelativePaths(file.getArchiveJars(), file.getCodeBase().toString())); } - static URL normalizeUrlAndStripParams(URL url) { - try { - String[] urlParts = url.toString().split("\\?"); - URL strippedUrl = new URL(urlParts[0]); - return ResourceTracker.normalizeUrl(strippedUrl, false); - } catch (IOException e) { - e.printStackTrace(); - } catch (URISyntaxException e) { - e.printStackTrace(); - } - return url; - } - /* Extract the archives as relative paths */ static List toRelativePaths(List paths, String rootPath) { List fileNames = new ArrayList(); @@ -142,8 +131,8 @@ return; } - URL codebase = normalizeUrlAndStripParams(file.getCodeBase()); - URL documentbase = normalizeUrlAndStripParams(file.getSourceLocation()); + URL codebase = UrlUtils.normalizeUrlAndStripParams(file.getCodeBase()); + URL documentbase = UrlUtils.normalizeUrlAndStripParams(file.getSourceLocation()); /* Else, create a new entry */ UrlRegEx codebaseRegex = new UrlRegEx("\\Q" + codebase + "\\E"); diff -r 866020eb16cf -r 3405d5fc4339 netx/net/sourceforge/jnlp/util/UrlUtils.java --- a/netx/net/sourceforge/jnlp/util/UrlUtils.java Thu Mar 28 12:38:52 2013 -0400 +++ b/netx/net/sourceforge/jnlp/util/UrlUtils.java Thu Mar 28 14:40:11 2013 -0400 @@ -37,10 +37,27 @@ package net.sourceforge.jnlp.util; +import java.io.IOException; +import java.net.URISyntaxException; import java.net.URL; +import net.sourceforge.jnlp.cache.ResourceTracker; + public class UrlUtils { + public static URL normalizeUrlAndStripParams(URL url) { + try { + String[] urlParts = url.toString().split("\\?"); + URL strippedUrl = new URL(urlParts[0]); + return ResourceTracker.normalizeUrl(strippedUrl, false); + } catch (IOException e) { + e.printStackTrace(); + } catch (URISyntaxException e) { + e.printStackTrace(); + } + return url; + } + public static boolean isLocalFile(URL url) { if (url.getProtocol().equals("file") && diff -r 866020eb16cf -r 3405d5fc4339 tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java --- a/tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java Thu Mar 28 12:38:52 2013 -0400 +++ b/tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java Thu Mar 28 14:40:11 2013 -0400 @@ -36,24 +36,4 @@ assertEquals(toList("test .jar"), UnsignedAppletTrustConfirmation.toRelativePaths(toList("http://example.com/test .jar"), "http://example.com/")); } - - @Test - public void testNormalizeUrlAndStripParams() throws Exception { - /* Test that URL is normalized (encoded if not already encoded, leading whitespace trimmed, etc) */ - assertEquals("http://example.com/%20test%20test", - UnsignedAppletTrustConfirmation.normalizeUrlAndStripParams(new URL("http://example.com/ test%20test ")).toString()); - /* Test that a URL without '?' is left unchanged */ - assertEquals("http://example.com/test", - UnsignedAppletTrustConfirmation.normalizeUrlAndStripParams(new URL("http://example.com/test")).toString()); - /* Test that parts of a URL that come after '?' are stripped */ - assertEquals("http://example.com/test", - UnsignedAppletTrustConfirmation.normalizeUrlAndStripParams(new URL("http://example.com/test?test=test")).toString()); - /* Test that everything after the first '?' is stripped */ - assertEquals("http://example.com/test", - UnsignedAppletTrustConfirmation.normalizeUrlAndStripParams(new URL("http://example.com/test?http://example.com/?test")).toString()); - - /* Test normalization + stripping */ - assertEquals("http://example.com/%20test%20test", - UnsignedAppletTrustConfirmation.normalizeUrlAndStripParams(new URL("http://www.example.com/ test%20test ?test=test")).toString()); - } } \ No newline at end of file diff -r 866020eb16cf -r 3405d5fc4339 tests/netx/unit/net/sourceforge/jnlp/util/UrlUtilsTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/netx/unit/net/sourceforge/jnlp/util/UrlUtilsTest.java Thu Mar 28 14:40:11 2013 -0400 @@ -0,0 +1,30 @@ +package net.sourceforge.jnlp.util; + +import static org.junit.Assert.*; + +import java.net.URL; + +import org.junit.Test; + +public class UrlUtilsTest { + + @Test + public void testNormalizeUrlAndStripParams() throws Exception { + /* Test that URL is normalized (encoded if not already encoded, leading whitespace trimmed, etc) */ + assertEquals("http://example.com/%20test%20test", + UrlUtils.normalizeUrlAndStripParams(new URL("http://example.com/ test%20test ")).toString()); + /* Test that a URL without '?' is left unchanged */ + assertEquals("http://example.com/test", + UrlUtils.normalizeUrlAndStripParams(new URL("http://example.com/test")).toString()); + /* Test that parts of a URL that come after '?' are stripped */ + assertEquals("http://example.com/test", + UrlUtils.normalizeUrlAndStripParams(new URL("http://example.com/test?test=test")).toString()); + /* Test that everything after the first '?' is stripped */ + assertEquals("http://example.com/test", + UrlUtils.normalizeUrlAndStripParams(new URL("http://example.com/test?http://example.com/?test")).toString()); + + /* Test normalization + stripping */ + assertEquals("http://example.com/%20test%20test", + UrlUtils.normalizeUrlAndStripParams(new URL("http://example.com/ test%20test ?test=test")).toString()); + } +} From andrew at icedtea.classpath.org Thu Mar 28 14:53:50 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 28 Mar 2013 21:53:50 +0000 Subject: /hg/icedtea: 3 new changesets Message-ID: changeset 7ccecd20f4ec in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=7ccecd20f4ec author: Andrew John Hughes date: Thu Mar 28 18:07:07 2013 +0000 Remove non-existent clean-generated target. 2013-03-28 Andrew John Hughes * Makefile.am: (clean-local): Remove non-existent clean-generated. changeset bb28304dad10 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=bb28304dad10 author: Andrew John Hughes date: Thu Mar 28 18:14:53 2013 +0000 Include debugging info in all JDK libraries, not just a random selection. 2013-03-28 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * patches/pr1368-debug_jdk_libs.patch: Add debugging info to *all* libraries, not just some random selection chosen by Oracle. changeset 4ad1bfbc9033 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=4ad1bfbc9033 author: Andrew John Hughes date: Thu Mar 28 21:53:41 2013 +0000 Fix "make distcheck" by removing dead patch directories. 2013-03-28 Andrew John Hughes * Makefile.am: (EXTRA_DIST): Remove dead patches directories to make "make distcheck" pass. diffstat: ChangeLog | 19 + Makefile.am | 7 +- patches/pr1368-debug_jdk_libs.patch | 460 ++++++++++++++++++++++++++++++++++++ 3 files changed, 482 insertions(+), 4 deletions(-) diffs (truncated from 524 to 500 lines): diff -r f4763c22ae76 -r 4ad1bfbc9033 ChangeLog --- a/ChangeLog Mon Mar 25 19:57:59 2013 +0000 +++ b/ChangeLog Thu Mar 28 21:53:41 2013 +0000 @@ -1,3 +1,22 @@ +2013-03-28 Andrew John Hughes + + * Makefile.am: + (EXTRA_DIST): Remove dead patches directories + to make "make distcheck" pass. + +2013-03-28 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * patches/pr1368-debug_jdk_libs.patch: + Add debugging info to *all* libraries, not just + some random selection chosen by Oracle. + +2013-03-28 Andrew John Hughes + + * Makefile.am: + (clean-local): Remove non-existent clean-generated. + 2012-08-16 Andrew John Hughes PR1325: Only add classes to rt-source-files.txt if the diff -r f4763c22ae76 -r 4ad1bfbc9033 Makefile.am --- a/Makefile.am Mon Mar 25 19:57:59 2013 +0000 +++ b/Makefile.am Thu Mar 28 21:53:41 2013 +0000 @@ -215,7 +215,8 @@ patches/override-redirect-metacity.patch \ patches/alt-jar.patch \ patches/cacao/arch.patch \ - patches/disable-intree-ec.patch + patches/disable-intree-ec.patch \ + patches/pr1368-debug_jdk_libs.patch # Conditional patches @@ -485,11 +486,9 @@ $(top_srcdir)/pulseaudio/COPYING EXTRA_DIST = $(top_srcdir)/patches/*.patch \ - $(top_srcdir)/patches/boot/*.patch \ $(top_srcdir)/patches/cacao/*.patch \ $(top_srcdir)/patches/debian/*.patch \ $(top_srcdir)/patches/jamvm/*.patch \ - $(top_srcdir)/patches/security/*.patch \ tools-copy contrib overlays \ javaws.png javaws.desktop \ jconsole.desktop policytool.desktop \ @@ -515,7 +514,7 @@ clean-icedtea clean-icedtea-debug clean-icedtea-boot clean-clone clean-clone-boot \ clean-bootstrap-directory-stage1 clean-bootstrap-directory-stage2 \ clean-bootstrap-directory-symlink-stage1 clean-bootstrap-directory-symlink-stage2 \ - clean-extract clean-generated clean-native-ecj clean-hgforest clean-icedtea-stage2 \ + clean-extract clean-native-ecj clean-hgforest clean-icedtea-stage2 \ clean-icedtea-debug-stage2 clean-icedtea-stage1 clean-add-zero clean-add-zero-debug \ clean-add-cacao clean-add-cacao-debug clean-rt clean-rewrite-rhino clean-rewriter if [ -e bootstrap ]; then \ diff -r f4763c22ae76 -r 4ad1bfbc9033 patches/pr1368-debug_jdk_libs.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/pr1368-debug_jdk_libs.patch Thu Mar 28 21:53:41 2013 +0000 @@ -0,0 +1,460 @@ +diff --git a/makefiles/CompileNativeLibraries.gmk b/makefiles/CompileNativeLibraries.gmk +--- openjdk/jdk/makefiles/CompileNativeLibraries.gmk ++++ openjdk/jdk/makefiles/CompileNativeLibraries.gmk +@@ -63,7 +63,12 @@ + # Use this variable to set DEBUG_SYMBOLS true on windows for all libraries, but + # not on other platforms. + ifeq ($(OPENJDK_TARGET_OS), windows) +- WINDOWS_ONLY := true ++ DEBUG_ALL_BINARIES := true ++endif ++ ++# Build everything with debugging on OpenJDK ++ifdef OPENJDK ++ DEBUG_ALL_BINARIES := true + endif + + # +@@ -91,7 +96,8 @@ + -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\ + CFLAGS_windows_debug:=-DLOGGING,\ + ARFLAGS:=$(ARFLAGS),\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + else + +@@ -105,7 +111,8 @@ + CFLAGS:=$(CFLAGS_JDKLIB) \ + -I$(JDK_TOPDIR)/src/share/native/java/lang/fdlibm/include,\ + LDFLAGS:=-nostdlib -r -arch x86_64,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfdlibm,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBFDLIBM := $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)fdlibm$(STATIC_LIBRARY_SUFFIX) + $(BUILD_LIBFDLIBM) : $(BUILD_LIBFDLIBM_MAC) +@@ -257,7 +264,7 @@ + -D "JDK_FTYPE=0x2L",\ + REORDER:=$(LIBJAVA_REORDER), \ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjava,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBJAVA) + +@@ -308,7 +315,7 @@ + -D "JDK_INTERNAL_NAME=mlib_image" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libmlib_image,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBMLIB_IMAGE) : $(BUILD_LIBJAVA) + +@@ -431,7 +438,8 @@ + $(BUILD_LIBMLIB_LDLIBS) -ljava -ljvm \ + $(call SET_SHARED_LIBRARY_ORIGIN),\ + LDFLAGS_SUFFIX_solaris:=-lc,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libmlib_image_v)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libmlib_image_v,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBMLIB_IMAGE_V): $(BUILD_LIBJAVA) + +@@ -739,7 +747,7 @@ + -D "JDK_INTERNAL_NAME=awt" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBAWT) : $(BUILD_LIBJAVA) + +@@ -894,7 +902,8 @@ + -D "JDK_FNAME=xawt.dll" \ + -D "JDK_INTERNAL_NAME=xawt" \ + -D "JDK_FTYPE=0x2L",\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_xawt)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_xawt,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBAWT_XAWT) : $(BUILD_LIBJAVA) + +@@ -955,7 +964,7 @@ + -D "JDK_INTERNAL_NAME=zip" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libzip,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBZIP) : $(BUILD_LIBJAVA) + +@@ -985,7 +994,7 @@ + -D "JDK_FNAME=unpack.dll" \ + -D "JDK_INTERNAL_NAME=unpack" \ + -D "JDK_FTYPE=0x2L",\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBUNPACK) : $(BUILD_LIBJAVA) + +@@ -1099,7 +1108,7 @@ + -D "JDK_INTERNAL_NAME=dt_shmem" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libdt_shmem,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBDT_SHMEM) + +@@ -1133,7 +1142,7 @@ + -D "JDK_INTERNAL_NAME=jdwp" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjdwp,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBJDWP) : $(BUILD_LIBJAVA) + +@@ -1174,7 +1183,7 @@ + -D "JDK_INTERNAL_NAME=$(LIBJAAS_NAME)" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjaas,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBJAAS) : $(BUILD_LIBJAVA) + +@@ -1240,7 +1249,7 @@ + -D "JDK_INTERNAL_NAME=lcms" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/liblcms,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBLCMS) + +@@ -1301,7 +1310,7 @@ + -D "JDK_FTYPE=0x2L",\ + REORDER:=$(BUILD_LIBJPEG_REORDER),\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjpeg,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBJPEG) : $(BUILD_LIBJAVA) + +@@ -1378,7 +1387,7 @@ + -D "JDK_INTERNAL_NAME=fontmanager" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libfontmanager,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBFONTMANAGER) : $(BUILD_LIBAWT) + +@@ -1435,7 +1444,7 @@ + -D "JDK_INTERNAL_NAME=t2k" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libt2k,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + # t2k is linked against fontmanager + $(BUILD_LIBT2K) : $(BUILD_LIBFONTMANAGER) +@@ -1473,7 +1482,7 @@ + -D "JDK_INTERNAL_NAME=jawt" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjawt,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBJAWT) : $(BUILD_LIBAWT) + +@@ -1522,7 +1531,8 @@ + LDFLAGS_SUFFIX_solaris:=$(JAWT_LIBS) $(LDFLAGS_JDKLIB_SUFFIX) -lXrender,\ + LDFLAGS_SUFFIX_macosx:=-Xlinker -rpath -Xlinker @loader_path $(JAWT_LIBS) \ + -framework Cocoa $(LDFLAGS_JDKLIB_SUFFIX),\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjawt)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjawt,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + ifndef BUILD_HEADLESS_ONLY + $(BUILD_LIBJAWT) : $(BUILD_LIBAWT_XAWT) +@@ -1829,7 +1839,7 @@ + -D "JDK_INTERNAL_NAME=net" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnet,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBNET) : $(BUILD_LIBJAVA) + +@@ -1970,7 +1980,7 @@ + -D "JDK_INTERNAL_NAME=nio" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libnio,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBNIO) + +@@ -2007,7 +2017,8 @@ + LDFLAGS_SUFFIX_posix:=-lnio -lnet,\ + LDFLAGS_SUFFIX_solaris:=-lsocket -ljava -ljvm -lc,\ + LDFLAGS_SUFFIX_macosx:=-ljava -ljvm,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsctp)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsctp,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBSCTP) + +@@ -2131,7 +2142,7 @@ + -D "JDK_INTERNAL_NAME=jli" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBJLI) + +@@ -2148,7 +2159,8 @@ + OPTIMIZATION:=HIGH, \ + CFLAGS:=$(STATIC_LIBRARY_FLAGS) $(LIBJLI_CFLAGS),\ + ARFLAGS:=$(ARFLAGS),\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBJLI_STATIC) + +@@ -2166,7 +2178,8 @@ + OPTIMIZATION:=HIGH, \ + CFLAGS:=$(CFLAGS_JDKLIB) $(LIBJLI_CFLAGS),\ + LDFLAGS:=-nostdlib -r,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjli_static,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(JDK_OUTPUTDIR)/objs/libjli_static.a : $(BUILD_LIBJLI_STATIC) + $(CP) -a $< $@ +@@ -2197,7 +2210,7 @@ + -D "JDK_INTERNAL_NAME=jfr" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjfr,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBJFR) + +@@ -2249,7 +2262,7 @@ + -D "JDK_INTERNAL_NAME=kcms" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libkcms,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBKCMS) : $(BUILD_LIBJAVA) + +@@ -2284,7 +2297,8 @@ + LDFLAGS:=$(LDFLAGS_JDKLIB) \ + $(call SET_SHARED_LIBRARY_ORIGIN), \ + LDFLAGS_SUFFIX:=-L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -R$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -ldga -lX11 $(LIBDL) -lc, \ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsunwjdga)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsunwjdga,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBSUNWJDGA) + +@@ -2374,7 +2388,8 @@ + LDFLAGS_SUFFIX_linux:=-ljvm -lawt -lm $(LIBDL) -ljava,\ + LDFLAGS_SUFFIX_solaris:=$(LIBDL) -ljvm -lawt -lm -ljava $(LIBCXX) -lc,\ + LDFLAGS_SUFFIX_macosx:=-ljvm $(LIBCXX) -lawt $(LIBDL) -ljava,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_headless)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_headless,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBAWT_HEADLESS) : $(BUILD_LIBAWT) + +@@ -2462,7 +2477,7 @@ + -D "JDK_INTERNAL_NAME=splashscreen" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsplashscreen,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(LIBSPLASHSCREEN) + +@@ -2504,7 +2519,7 @@ + -D "JDK_INTERNAL_NAME=dcpr" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libdcpr,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBDCPR) : $(BUILD_LIBJAVA) + +@@ -2538,7 +2553,7 @@ + -D "JDK_INTERNAL_NAME=j2pcsc" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2pcsc,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBJ2PCSC) + +@@ -2561,7 +2576,8 @@ + $(call SET_SHARED_LIBRARY_ORIGIN),\ + LDFLAGS_SUFFIX:=$(LIBDL),\ + LDFLAGS_SUFFIX_solaris:=-lc,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2gss)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2gss,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBJ2GSS) + endif +@@ -2601,7 +2617,7 @@ + -D "JDK_INTERNAL_NAME=$(BUILD_LIBKRB5_NAME)" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libkrb5,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBKRB5) + endif +@@ -2627,7 +2643,7 @@ + -D "JDK_INTERNAL_NAME=sunmscapi" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsunmscapi,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBSUNMSCAPI) + endif +@@ -2659,7 +2675,7 @@ + -D "JDK_INTERNAL_NAME=j2pkcs11" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2pkcs11,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBJ2PKCS11) + +@@ -2705,7 +2721,7 @@ + -D "JDK_INTERNAL_NAME=sunec" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libsunec,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBSUNEC) + endif +@@ -2849,7 +2865,7 @@ + -D "JDK_INTERNAL_NAME=jsound" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjsound,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBJSOUND) : $(BUILD_LIBJAVA) + +@@ -2884,7 +2900,8 @@ + LDFLAGS:=$(LDFLAGS_JDKLIB)\ + $(call SET_SHARED_LIBRARY_ORIGIN),\ + LDFLAGS_SUFFIX:=-lasound -ljava -ljvm,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjsoundalsa)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjsoundalsa,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBJSOUNDALSA) : $(BUILD_LIBJAVA) + +@@ -2917,7 +2934,7 @@ + -D "JDK_INTERNAL_NAME=jsoundds" \ + -D "JDK_FTYPE=0x2L",\ + OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libjsoundds,\ +- DEBUG_SYMBOLS:=$(WINDOWS_ONLY))) ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBJSOUNDDS) : $(BUILD_LIBJAVA) + +@@ -2942,7 +2959,8 @@ + LDFLAGS:=$(LDFLAGS_JDKLIB),\ + LDFLAGS_SUFFIX:=$(LIBDL),\ + LDFLAGS_SUFFIX_solaris:=-lc,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2ucrypto)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libj2ucrypto,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBJ2UCRYPTO) : $(BUILD_LIBJAVA) + +@@ -2972,7 +2990,8 @@ + -F/System/Library/Frameworks/JavaVM.framework/Frameworks \ + -framework JavaNativeFoundation \ + $(LDFLAGS_JDKLIB_SUFFIX),\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libAppleScriptEngine)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libAppleScriptEngine,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + $(BUILD_LIBAPPLESCRIPTENGINE) : $(BUILD_LIBJAVA) + +@@ -3011,7 +3030,8 @@ + -framework OpenGL \ + -framework IOSurface \ + -framework QuartzCore, \ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosxapp)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosxapp,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBOSXAPP) + +@@ -3051,7 +3071,8 @@ + -framework Security \ + -framework SystemConfiguration \ + $(LDFLAGS_JDKLIB_SUFFIX), \ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosx)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosx,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBOSX) + +@@ -3184,7 +3205,8 @@ + -framework JavaRuntimeSupport \ + -framework OpenGL \ + -framework QuartzCore -ljava,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_lwawt)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libawt_lwawt,\ ++ DEBUG_SYMBOLS:=$(DEBUG_ALL_BINARIES))) + + BUILD_LIBRARIES += $(BUILD_LIBAWT_LWAWT) + +@@ -3224,7 +3246,8 @@ + -framework JavaNativeFoundation \ + -framework JavaRuntimeSupport \ + -ljava -ljvm,\ +- OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosxui)) ++ OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/libosxui,\ From bugzilla-daemon at icedtea.classpath.org Thu Mar 28 14:53:58 2013 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 28 Mar 2013 21:53:58 +0000 Subject: [Bug 1368] [IcedTea8] Ensure debug data is available for all libraries and binaries without redundant files In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1368 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea?cmd=changeset;node=bb28304dad10 author: Andrew John Hughes date: Thu Mar 28 18:14:53 2013 +0000 Include debugging info in all JDK libraries, not just a random selection. 2013-03-28 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * patches/pr1368-debug_jdk_libs.patch: Add debugging info to *all* libraries, not just some random selection chosen by Oracle. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130328/c113645b/attachment.html From andrew at icedtea.classpath.org Thu Mar 28 14:55:18 2013 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 28 Mar 2013 21:55:18 +0000 Subject: /hg/icedtea: Fix typo in IT_CHECK_FOR_JDK macro. Message-ID: changeset 802dc6e27667 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=802dc6e27667 author: Andrew John Hughes date: Thu Mar 28 21:55:11 2013 +0000 Fix typo in IT_CHECK_FOR_JDK macro. 2013-03-28 Andrew John Hughes * acinclude.m4: (IT_CHECK_FOR_JDK): Fix typo "JDK JDK". diffstat: ChangeLog | 5 +++++ acinclude.m4 | 2 +- 2 files changed, 6 insertions(+), 1 deletions(-) diffs (24 lines): diff -r 4ad1bfbc9033 -r 802dc6e27667 ChangeLog --- a/ChangeLog Thu Mar 28 21:53:41 2013 +0000 +++ b/ChangeLog Thu Mar 28 21:55:11 2013 +0000 @@ -1,3 +1,8 @@ +2013-03-28 Andrew John Hughes + + * acinclude.m4: + (IT_CHECK_FOR_JDK): Fix typo "JDK JDK". + 2013-03-28 Andrew John Hughes * Makefile.am: diff -r 4ad1bfbc9033 -r 802dc6e27667 acinclude.m4 --- a/acinclude.m4 Thu Mar 28 21:53:41 2013 +0000 +++ b/acinclude.m4 Thu Mar 28 21:55:11 2013 +0000 @@ -1153,7 +1153,7 @@ fi AC_MSG_RESULT(${SYSTEM_JDK_DIR}) if ! test -d "${SYSTEM_JDK_DIR}"; then - AC_MSG_ERROR("A JDK JDK home directory could not be found.") + AC_MSG_ERROR("A JDK home directory could not be found.") fi AC_SUBST(SYSTEM_JDK_DIR) ]) From ptisnovs at icedtea.classpath.org Fri Mar 29 02:46:14 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 29 Mar 2013 09:46:14 +0000 Subject: /hg/rhino-tests: Corrected various typos in two test suites: Message-ID: changeset 2e897a757331 in /hg/rhino-tests details: http://icedtea.classpath.org/hg/rhino-tests?cmd=changeset;node=2e897a757331 author: Pavel Tisnovsky date: Fri Mar 29 10:49:24 2013 +0100 Corrected various typos in two test suites: ScriptEngineManagerClassTest and SimpleBindingsClassTest. diffstat: ChangeLog | 7 ++++ src/org/RhinoTests/ScriptEngineManagerClassTest.java | 35 +++++++++++++------ src/org/RhinoTests/SimpleBindingsClassTest.java | 16 ++++---- 3 files changed, 38 insertions(+), 20 deletions(-) diffs (183 lines): diff -r d5fa3238778f -r 2e897a757331 ChangeLog --- a/ChangeLog Thu Mar 28 11:16:35 2013 +0100 +++ b/ChangeLog Fri Mar 29 10:49:24 2013 +0100 @@ -1,3 +1,10 @@ +2013-03-29 Pavel Tisnovsky + + * src/org/RhinoTests/ScriptEngineManagerClassTest.java: + * src/org/RhinoTests/SimpleBindingsClassTest.java: + Corrected various typos in two test suites: + ScriptEngineManagerClassTest and SimpleBindingsClassTest. + 2013-03-28 Pavel Tisnovsky * src/org/RhinoTests/ScriptEngineFactoryClassTest.java: diff -r d5fa3238778f -r 2e897a757331 src/org/RhinoTests/ScriptEngineManagerClassTest.java --- a/src/org/RhinoTests/ScriptEngineManagerClassTest.java Thu Mar 28 11:16:35 2013 +0100 +++ b/src/org/RhinoTests/ScriptEngineManagerClassTest.java Fri Mar 29 10:49:24 2013 +0100 @@ -419,8 +419,14 @@ */ protected void testGetFields() { // following fields should exists - final String[] fieldsThatShouldExists = { + final String[] fieldsThatShouldExist_jdk6 = { }; + final String[] fieldsThatShouldExist_jdk7 = { + }; + + // get the right array of field signatures + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + // get all fields Field[] fields = this.scriptEngineManagerClass.getFields(); // and transform the array into a list of field names @@ -429,7 +435,7 @@ fieldsAsString.add(field.toString()); } // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { + for (String fieldThatShouldExists : fieldsThatShouldExist) { assertTrue(fieldsAsString.contains(fieldThatShouldExists), "field " + fieldThatShouldExists + " not found"); } @@ -467,10 +473,15 @@ */ protected void testGetField() { // following fields should exists - final String[] fieldsThatShouldExists = { + final String[] fieldsThatShouldExist_jdk6 = { }; + final String[] fieldsThatShouldExist_jdk7 = { + }; + + final String[] fieldsThatShouldExist = getJavaVersion() < 7 ? fieldsThatShouldExist_jdk6 : fieldsThatShouldExist_jdk7; + // check if all required fields really exists - for (String fieldThatShouldExists : fieldsThatShouldExists) { + for (String fieldThatShouldExists : fieldsThatShouldExist) { try { Field field = this.scriptEngineManagerClass.getField(fieldThatShouldExists); String fieldName = field.getName(); @@ -489,7 +500,7 @@ */ protected void testGetMethods() { // following methods should be inherited - final String[] methodsThatShouldExists_jdk6 = { + final String[] methodsThatShouldExist_jdk6 = { "public boolean java.lang.Object.equals(java.lang.Object)", "public final native java.lang.Class java.lang.Object.getClass()", "public final native void java.lang.Object.notify()", @@ -512,7 +523,7 @@ "public void javax.script.ScriptEngineManager.setBindings(javax.script.Bindings)", }; - final String[] methodsThatShouldExists_jdk7 = { + final String[] methodsThatShouldExist_jdk7 = { "public boolean java.lang.Object.equals(java.lang.Object)", "public final native java.lang.Class java.lang.Object.getClass()", "public final native void java.lang.Object.notify()", @@ -542,9 +553,9 @@ for (Method method : methods) { methodsAsString.add(method.toString()); } - String[] methodsThatShouldExists = getJavaVersion() < 7 ? methodsThatShouldExists_jdk6 : methodsThatShouldExists_jdk7; + String[] methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : methodsThatShouldExists) { + for (String methodThatShouldExists : methodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "method " + methodThatShouldExists + " not found"); } @@ -555,7 +566,7 @@ */ protected void testGetDeclaredMethods() { // following methods should be declared - final String[] declaredMethodsThatShouldExists_jdk6 = { + final String[] declaredMethodsThatShouldExist_jdk6 = { "private boolean javax.script.ScriptEngineManager.canCallerAccessLoader(java.lang.ClassLoader)", "private boolean javax.script.ScriptEngineManager.isAncestor(java.lang.ClassLoader,java.lang.ClassLoader)", "private java.lang.ClassLoader javax.script.ScriptEngineManager.getCallerClassLoader()", @@ -575,7 +586,7 @@ "static void javax.script.ScriptEngineManager.access$000(javax.script.ScriptEngineManager,java.lang.ClassLoader)", }; - final String[] declaredMethodsThatShouldExists_jdk7 = { + final String[] declaredMethodsThatShouldExist_jdk7 = { "private boolean javax.script.ScriptEngineManager.canCallerAccessLoader(java.lang.ClassLoader)", "private boolean javax.script.ScriptEngineManager.isAncestor(java.lang.ClassLoader,java.lang.ClassLoader)", "private java.lang.ClassLoader javax.script.ScriptEngineManager.getCallerClassLoader()", @@ -602,9 +613,9 @@ for (Method method : declaredMethods) { methodsAsString.add(method.toString()); } - String[] declaredMethodsThatShouldExists = getJavaVersion() < 7 ? declaredMethodsThatShouldExists_jdk6 : declaredMethodsThatShouldExists_jdk7; + String[] declaredMethodsThatShouldExist = getJavaVersion() < 7 ? declaredMethodsThatShouldExist_jdk6 : declaredMethodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : declaredMethodsThatShouldExists) { + for (String methodThatShouldExists : declaredMethodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "declared method " + methodThatShouldExists + " not found"); } diff -r d5fa3238778f -r 2e897a757331 src/org/RhinoTests/SimpleBindingsClassTest.java --- a/src/org/RhinoTests/SimpleBindingsClassTest.java Thu Mar 28 11:16:35 2013 +0100 +++ b/src/org/RhinoTests/SimpleBindingsClassTest.java Fri Mar 29 10:49:24 2013 +0100 @@ -532,7 +532,7 @@ */ protected void testGetMethods() { // following methods should be inherited - final String[] methodsThatShouldExists_jdk6 = { + final String[] methodsThatShouldExist_jdk6 = { "public boolean java.lang.Object.equals(java.lang.Object)", "public boolean javax.script.SimpleBindings.containsKey(java.lang.Object)", "public boolean javax.script.SimpleBindings.containsValue(java.lang.Object)", @@ -557,7 +557,7 @@ "public void javax.script.SimpleBindings.putAll(java.util.Map)", }; - final String[] methodsThatShouldExists_jdk7 = { + final String[] methodsThatShouldExist_jdk7 = { "public boolean java.lang.Object.equals(java.lang.Object)", "public boolean javax.script.SimpleBindings.containsKey(java.lang.Object)", "public boolean javax.script.SimpleBindings.containsValue(java.lang.Object)", @@ -589,9 +589,9 @@ for (Method method : methods) { methodsAsString.add(method.toString()); } - String[] methodsThatShouldExists = getJavaVersion() < 7 ? methodsThatShouldExists_jdk6 : methodsThatShouldExists_jdk7; + String[] methodsThatShouldExist = getJavaVersion() < 7 ? methodsThatShouldExist_jdk6 : methodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : methodsThatShouldExists) { + for (String methodThatShouldExists : methodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "method " + methodThatShouldExists + " not found"); } @@ -602,7 +602,7 @@ */ protected void testGetDeclaredMethods() { // following methods should be declared - final String[] declaredMethodsThatShouldExists_jdk6 = { + final String[] declaredMethodsThatShouldExist_jdk6 = { "private void javax.script.SimpleBindings.checkKey(java.lang.Object)", "public boolean javax.script.SimpleBindings.containsKey(java.lang.Object)", "public boolean javax.script.SimpleBindings.containsValue(java.lang.Object)", @@ -619,7 +619,7 @@ "public void javax.script.SimpleBindings.putAll(java.util.Map)", }; - final String[] declaredMethodsThatShouldExists_jdk7 = { + final String[] declaredMethodsThatShouldExist_jdk7 = { "private void javax.script.SimpleBindings.checkKey(java.lang.Object)", "public boolean javax.script.SimpleBindings.containsKey(java.lang.Object)", "public boolean javax.script.SimpleBindings.containsValue(java.lang.Object)", @@ -643,9 +643,9 @@ for (Method method : declaredMethods) { methodsAsString.add(method.toString()); } - String[] declaredMethodsThatShouldExists = getJavaVersion() < 7 ? declaredMethodsThatShouldExists_jdk6 : declaredMethodsThatShouldExists_jdk7; + String[] declaredMethodsThatShouldExist = getJavaVersion() < 7 ? declaredMethodsThatShouldExist_jdk6 : declaredMethodsThatShouldExist_jdk7; // check if all required methods really exists - for (String methodThatShouldExists : declaredMethodsThatShouldExists) { + for (String methodThatShouldExists : declaredMethodsThatShouldExist) { assertTrue(methodsAsString.contains(methodThatShouldExists), "declared method " + methodThatShouldExists + " not found"); } From ptisnovs at icedtea.classpath.org Fri Mar 29 02:58:06 2013 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 29 Mar 2013 09:58:06 +0000 Subject: /hg/gfx-test: Nine helper methods added into BitBltUsingBgColorA... Message-ID: changeset c515da00a2db in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=c515da00a2db author: Pavel Tisnovsky date: Fri Mar 29 11:01:17 2013 +0100 Nine helper methods added into BitBltUsingBgColorAlpha test suite. diffstat: ChangeLog | 7 +- src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java | 180 ++++++++++++++++ 2 files changed, 186 insertions(+), 1 deletions(-) diffs (207 lines): diff -r 5a69c7d7e2f4 -r c515da00a2db ChangeLog --- a/ChangeLog Thu Mar 28 11:04:02 2013 +0100 +++ b/ChangeLog Fri Mar 29 11:01:17 2013 +0100 @@ -1,7 +1,12 @@ +2013-03-29 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java: + Nine helper methods added into BitBltUsingBgColorAlpha test suite. + 2013-03-28 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltBasicTests.java: - Nine new tests added into BitBltBasicTests, test case reorganization. + Nine new tests added into BitBltBasicTests, test cases reorganization. 2013-03-27 Pavel Tisnovsky diff -r 5a69c7d7e2f4 -r c515da00a2db src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java --- a/src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java Thu Mar 28 11:04:02 2013 +0100 +++ b/src/org/gfxtest/testsuites/BitBltUsingBgColorAlpha.java Fri Mar 29 11:01:17 2013 +0100 @@ -162,6 +162,186 @@ } /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB_PRE + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeIntARGBPre(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_INT_ARGB_PRE, newColor); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_BGR + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeIntBGR(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_INT_BGR, newColor); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_INT_RGB + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeIntRGB(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_INT_RGB, newColor); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeUshort555RGB(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_USHORT_555_RGB, newColor); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeUshort565RGB(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_USHORT_565_RGB, newColor); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_GRAY + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeUshortGray(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_USHORT_GRAY, newColor); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_BINARY + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeByteBinary(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_BYTE_BINARY, newColor); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeByteGray(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_BYTE_GRAY, newColor); + } + + /** + * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED + * + * @param image + * image to used as a destination for BitBlt-type operations + * @param graphics2d + * graphics canvas + * @param backgroundColor + * background color + * @param alpha + * alpha value for background + * @return test result status - PASSED, FAILED or ERROR + */ + private TestResult doBitBltEmptyBufferedImageTypeByteIndexed(TestImage image, Graphics2D graphics2d, + Color backgroundColor, float alpha) + { + Color newColor = calculateTransparentColor(backgroundColor, alpha); + return CommonBitmapOperations.doBitBltTestWithEmptyImage(image, graphics2d, BufferedImage.TYPE_BYTE_INDEXED, newColor); + } + + /** * Calculate color with given alpha value. * * @param backgroundColor From jvanek at redhat.com Fri Mar 29 08:49:16 2013 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 29 Mar 2013 16:49:16 +0100 Subject: [rfc][icedtea-web] dialogue for set jre dir In-Reply-To: <514B26E1.8080502@redhat.com> References: <51277A2D.8050904@redhat.com> <51499582.80604@redhat.com> <514B26E1.8080502@redhat.com> Message-ID: <5155B7FC.1050602@redhat.com> On 03/21/2013 04:27 PM, Adam Domurad wrote: > On 03/20/2013 06:54 AM, Jiri Vanek wrote: >> >> ping? >> >> -------- Original Message -------- >> Subject: [rfc][icedtea-web] dialogue for set jre dir >> Date: Fri, 22 Feb 2013 15:01:17 +0100 >> From: Jiri Vanek >> To: IcedTea Distro List >> >> This is only java part of "make-jredir-configurable after install effort" >> To jvm settings pane it adds text-field to allow to write path to jre, whih is then saved to >> properties. There is also button which fill launch jfilechooser (with correct default location) to >> allow to choose the jre directory >> And one funny button to validate his effort (with funny colourful messages;). As if the user will >> add wrong location, he will not even start itw-settings (later). >> >> >> J. >> >> >> > > It looked quite well done. I liked the visual validation a lot. General comments: > > - We should validate as soon as the user picks a path, and we should not let the user accept a > configuration that couldn't possibly work. (itweb-settings will not be able to save them from a > broken jre dir, correct?) Ok. Although I don like it, added (added checkbox to disable type-time validation) > - I would like a message here stating that misconfiguration of the JRE will require manual editing > of the properties file. God idea. added. Can also cancel closing of dialogue with invalid value. > > - I liked the colourful checking, however note that as it stands we currently only support > *IcedTea*, Not true. We support OpenJdk. >not just some hypothetical OpenJDK without our applet-related patches. We really should > fail on anything else until the plugin/javaws is more flexible. It's a bit sad, because javaws could > work with at the very least the Oracle JRE if NetxPanel were with the rest of the sun.applet.* package. > - Although I see messages for other JRE's other than OpenJDK, it failed to detect my Oracle JRE. > However, see above comment on why we shouldn't accept this anyway. Yah :(( I have fixed detection of oracle jdk. > > >> private File userPropertiesFile = null; >> + >> + /*default user file*/ >> + public static final File USER_FILE = new File(System.getProperty("user.home") + >> File.separator + DEPLOYMENT_DIR >> + + File.separator + DEPLOYMENT_PROPERTIES); > > USER_DEPLOYMENT_PROPERTIES is better ? Or something like that. USER_FILE doesn't really 'speak to me'. fixed. > ... >> + String procesString=""; > > s/procesString/processString/, although to me this seems like 'validationResult' or something. fixed > >> + File jreDirFile = new File (cmd); >> + if (jreDirFile.isDirectory()) { >> + procesString+=""+Translator.R("CPJVMisDir")+"
"; >> + }else{ >> + procesString+=""+Translator.R("CPJVMnotDir")+"
"; >> + } >> + File javaFile = new File (cmd+File.separator+"bin"+File.separator+"java"); >> + if (javaFile.isFile()) { >> + procesString+=""+Translator.R("CPJVMjava")+"
"; >> + }else{ >> + procesString+=""+Translator.R("CPJVMnoJava")+"
"; >> + } >> + File rtFile = new File (cmd+File.separator+"lib"+File.separator+"rt.jar"); >> + if (javaFile.isFile()) { >> + procesString+=""+Translator.R("CPJVMrtJar")+"
"; >> + }else{ >> + procesString+=""+Translator.R("CPJVMnoRtJar")+"
"; >> + } >> + ProcessBuilder sb = new ProcessBuilder(javaFile.getAbsolutePath(), "-version"); >> + Process p = null; >> + String s1 =""; >> + String s2 = ""; > > These strings could use more descriptive names. I'm in favour of 'stdOut' and 'stdErr' or similar. ok :) > >> + Integer r = null; >> + try { >> + p = sb.start(); >> + p.waitFor(); >> + s1 = inputToHtmlString(p.getErrorStream()); >> + s2 = inputToHtmlString(p.getInputStream()); >> + r = p.exitValue(); >> + System.err.println(s1); >> + System.out.println(s2); >> + s1=s1.toLowerCase(); >> + s2=s2.toLowerCase(); >> + } catch (Exception ex) {; >> + ex.printStackTrace(); >> + >> + } >> + if (r == null){ >> + return procesString+""+Translator.R("CPJVMnotLaunched")+""; >> + } >> + if (r.intValue()!=0){ >> + return procesString+""+Translator.R("CPJVMnoSuccess")+""; >> + } >> + if (s1.contains("openjdk") || s2.contains("openjdk")){ >> + return procesString+"> color=\"#00FF00\">"+Translator.R("CPJVMopenJdkFound")+"" ; >> + } > > [nit] I found this green hard on the eyes. Lowered to 00EE00 > >> + if (s1.contains("oracle") || s2.contains("oracle")){ >> + return procesString+""+Translator.R("CPJVMoracleFound")+"" ; >> + } >> + if (s1.contains("ibm") || s2.contains("ibm")){ >> + return procesString+""+Translator.R("CPJVMibmFound")+""; >> + } >> + if (s1.contains("gij") || s2.contains("gij")){ >> + return procesString+""+Translator.R("CPJVMgijFound")+""; >> + } >> + return procesString+""+Translator.R("CPJVMstrangeProcess")+""; >> + >> + } >> + >> + private static String inputToHtmlString(InputStream stream) throws IOException { >> + InputStreamReader is = new InputStreamReader(stream); >> + StringBuilder sb = new StringBuilder(); >> + BufferedReader br = new BufferedReader(is); >> + while (true) { >> + String read = br.readLine(); >> + if (read == null) { >> + break; >> + } >> + sb.append(read); >> + >> + } >> + >> + return sb.toString(); >> + } > > I don't see anything related to HTML here. In fact, I think this is a good candidate for placement > in the StreamUtils class. (readStreamAsString or similar, I think?) ok. Done. > >> + >> + private String resetValidationResult(final String value, String result, String headerKey) { >> + return "" + Translator.R(headerKey) + ":
"+value+"
"+result+"
> />"; >> + } >> } > > > The Swing code looked otherwise fine to me, although I tend to not like to stare at Swing code too > long :-). > >> diff -r 125c427b7a42 netx/net/sourceforge/jnlp/resources/Messages.properties >> --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Thu Feb 14 15:48:21 2013 -0500 >> +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Fri Feb 22 09:45:06 2013 +0100 >> @@ -301,6 +301,25 @@ >> CPDebuggingDescription=Enable options here to help with debugging >> CPDesktopIntegrationDescription=Set whether or not to allow creation of desktop shortcut. >> CPJVMPluginArguments=Set JVM arguments for plugin. >> +CPJVMPluginExec=Set JVM for icedtea-web > > The difference between 'plugin' and 'icedtea-web' setting may not be clear, I'd like to see 'Set JVM > for icedtea-web (plugin and javaws)' If you are refering to CPJVMPluginExec and CPJVMPluginExecValidationthen you are right. If you are referring to CPJVMPluginArguments, then I'm afraid javaws do not read this. But should! Worthy of another, simple patch? Or add CPJVMJavawsArguments ? > >> +CPJVMPluginExecValidation=Validate JVM for icedtea-web >> +CPJVMPluginSelectExec=Select JVM for icedtea-web >> +CPJVMnone=None validation result for > > I'm sorry, I have no clue what 'None validation result' means or why it is needed. From when I saw > it occur, it seems nothing be outputted would suffice. It is used whn there is no valid result (eg erro during processing or no invocation of validation) kept. > >> +CPJVMvalidated=Validation result for >> +CPJVMvalueNotSet=Value is not set. Hardcoded JVM will be used >> +CPJVMnotLaunched=Error, process was not launched, see console outputs for more info > > s/outputs/output/ > >> +CPJVMnoSuccess=Error, process have not ended successfully, see output for details, but your java >> is not set correctly > > It's a nit, but I'd like these all to end with periods. Especially the messages with more than one > sentence. > >> +CPJVMopenJdkFound=Excellent, OpenJDK detected >> +CPJVMoracleFound=Great, Oracle java detected >> +CPJVMibmFound=Good, IBM java detected >> +CPJVMgijFound=Warning, gij detected > > These messages are a little too 'funny' IMHO. Anyway as stated, we should have exactly one correct > state, 'Valid JRE, IcedTea was successfully detected'. You should really just have one message > 'Valid JRE, {0} was successfully detected', to ease translation efforts. GIJ never got past java5, > there's no need to do anything but fail on it (although we can say why). Not mentioned to be funny. Little bit reworded and hints leading to OpenJDK added. > >> +CPJVMstrangeProcess=Your path is executable process, but was not recognized. Ensure yourself in >> console output > > I favour ' Your path had an executable process, but it was not recognized. Verify the Java version > in the console output.' > We can also print the version right on the window, although I don't think it's strictly necessary. > >> +CPJVMnotDir=You must set directory > > I favour 'Problem: The path you chose was not a directory.' > >> +CPJVMisDir=Is directory > > I favour 'The path you chose was a directory, check.' > >> +CPJVMnoJava=Must contains bin/java > > s/contains/contain/ > I favour 'Problem: The directory you choose must contain bin/java.' > >> +CPJVMjava=Contains bin/java > > s/contains/contain/ > I favour 'The directory you chose contains bin/java, check.' > >> +CPJVMnoRtJar=Do not contains lib/rt.jar > > s/Do not contains/Does not contain/ > I favour 'Problem: The directory you chose does not contain bin/java.' > >> +CPJVMrtJar=Do contains lib/rt.jar > > s/contains/contain/ > I favour 'The directory you chose contains bin/java, check.' > >> >> # Control Panel - Buttons >> CPButAbout=About... > Mostly followed the new sentences. Thanx for review! > It really is quite good, though will be better with my suggestions :-D J. -------------- next part -------------- A non-text attachment was scrubbed... Name: setupaAbleJVM-itwsettings_2.diff Type: text/x-patch Size: 22332 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20130329/b25dc8a6/setupaAbleJVM-itwsettings_2.diff