From jvanek at redhat.com Tue Jul 1 08:11:39 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 10:11:39 +0200 Subject: [rfc][icedtea-web][policyeditor] Disable "paste" until "copy" is performed In-Reply-To: <1364493656.840615.1404140319781.JavaMail.zimbra@redhat.com> References: <53AD8D5F.5080908@redhat.com> <53B13A50.8040303@redhat.com> <700942279.790346.1404137265357.JavaMail.zimbra@redhat.com> <53B16FCB.8030608@redhat.com> <1291404810.796849.1404137956493.JavaMail.zimbra@redhat.com> <53B172B7.9080603@redhat.com> <1474092143.808274.1404138787777.JavaMail.zimbra@redhat.com> <53B179DF.5090604@redhat.com> <1364493656.840615.1404140319781.JavaMail.zimbra@redhat.com> Message-ID: <53B26D3B.1070301@redhat.com> On 06/30/2014 04:58 PM, Andrew Azores wrote: > Fair enough. Copy/paste is only in HEAD. > > Thanks, I'm sometimes wondering whether custom Dataflavour is better then formated String. The advantage of custom Dataflavour is, that java<->java is completely work-less job. But trasnport Java->outside is something what I'm not sure, if I dont know how it works, or if it just does not work. To be able to paste (data like you have) also outside of jvm, it may be usefull to copy data as structured text.... well I'm 50/50 to each approach. And hoping little bit that Jacob know this stuff O:) J. > > Andrew A > > ----- Original Message ----- >> On 06/30/2014 04:33 PM, Andrew Azores wrote: >>> Yes, that would be very nice if that work flow could be supported. I'll >>> have Lukasz and/or Jie work with me on this so there's an excuse to make >>> them learn this part of the ITW/PE codebase too ;) >>> >> >> If copypaste is in 1.5, then I'm ok with this to 1.5 But for Head I'm >> strongly for rework the clipboard handling in PE. And so it means that this >> patch is not necessary. >> >> J. >> >>> >>> Andrew A >>> >>> ----- Original Message ----- >>>> On 06/30/2014 04:19 PM, Andrew Azores wrote: >>>>> I didn't think it really made sense to be able to copy/paste actual >>>>> policy >>>>> file codebase entry contents, particularly since PolicyEditor doesn't >>>>> actually have full support right now for everything that can go into a >>>>> policy file eg certain structures of comments or the "principal" >>>>> attribute >>>>> or however you call it. You can copy the selected codebase URL to the >>>>> system clipboard though, and you can paste your system clipboard contents >>>>> into the "New Codebase" dialog which prompts for a codebase URL. >>>>> >>>> >>>> Yes. I'm (now a bit more:) aware of this. >>>> >>>> What about the case when one have more PoliciEditors running? He would be >>>> expecting th transfer things via copy/paste actions. And the buttons are >>>> suggesting, he can. >>>> >>>> The patch itself is good for simple case how it is done now. But it does >>>> not >>>> mean it is the best way how it is handled. >>>>> >>>>> Andrew A >>>>> >>>>> ----- Original Message ----- >>>>>> On 06/30/2014 04:07 PM, Andrew Azores wrote: >>>>>>> Hi, >>>>>>> >>>>>>> The "Copy" in question copies the permissions for a codebase in the >>>>>>> PolicyEditor. Then when you go to "Paste", it asks you for a new >>>>>>> codebase >>>>>>> URL, and creates a new entry in the editor with that URL but all of the >>>>>>> permissions duplicated from the codebase that you copied. So there >>>>>>> isn't >>>>>>> really any way to "copy it from somewhere else" as it doesn't actually >>>>>>> use >>>>>>> the system clipboard, just a "clipboard" within PolicyEditor. >>>>>>> >>>>>> Oh thats misleading. >>>>>> >>>>>> Wouldn't be better to have proper clipboard function? >>>>>> >>>>>> >>>>>>> >>>>>>> Andrew A >>>>>>> >>>>>>> ----- Original Message ----- >>>>>>>> On 06/27/2014 05:27 PM, Andrew Azores wrote: >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> This patch adds a check in the "paste" button action so that the >>>>>>>>> dialog >>>>>>>>> prompting the user for the new URL to paste with does not appear if a >>>>>>>>> codebase has not been previously copied. This would also guard >>>>>>>>> against >>>>>>>>> the >>>>>>>>> dialog appearing when a keyboard shortcut is used to paste. >>>>>>>>> Additionally, >>>>>>>>> the "paste" button in the Edit menu is now disabled until "copy" has >>>>>>>>> been >>>>>>>>> pressed for the first time. >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> >>>>>>>> This seems a bit wrong to me. >>>>>>>> >>>>>>>> What if user copied it from somewhere else? >>>>>>>> >>>>>>>> I was not checking the original "add copy and paste" functinality but. >>>>>>>> >>>>>>>> What is codebase? >>>>>>>> >>>>>>>> If it is plain string, then you definitely should not do this. >>>>>>>> - Just check if something is in clipboard, and if it is string, >>>>>>>> enable >>>>>>>> paste. >>>>>>>> >>>>>>>> If it si not string, have it its own flavour, or syntax which cna be >>>>>>>> recognized? >>>>>>>> - If so, and it was recognized as codebase, please, enable paste >>>>>>>> it. >>>>>>>> >>>>>>>> Otherwise disable paste, and if ctrl+v is forced,, then show error. >>>>>>>> >>>>>>>> >>>>>>>> What do you think? >>>>>>>> >>>>>>>> J. >>>>>>>> >>>>>> >>>>>> >>>> >>>> >> >> From chris.lee at cern.ch Tue Jul 1 08:19:49 2014 From: chris.lee at cern.ch (Chris Lee) Date: Tue, 1 Jul 2014 10:19:49 +0200 Subject: javaws CLI with Icedtea-web In-Reply-To: <53B18D8F.4000001@gmx.de> References: <23C2F298-0602-457E-BA71-362A10334854@cern.ch> <53B16DF5.7000206@redhat.com> <972ECB76-39B1-4604-856D-6D19F2315007@cern.ch> <53B180E1.1070106@gmx.de> <5225D11B-6CB0-4AB0-ACA2-7E9032A8EF6B@cern.ch> <53B18D8F.4000001@gmx.de> Message-ID: <8986292C-3265-4C78-BC4D-E28B9094B176@cern.ch> On Jun 30, 2014, at 6:17 PM, Jacob Wisor wrote: > > When setting JRE properties you should not have any proxy properties set in deployment.properties, or you should set proxy settings to DIRECT for JRE's properties to take effect. As Jiri mentioned, property setting and property sharing has not been well tested in IcedTea-Web, so this is me just giving some hints on how you could perhaps workaround this problem. > > Updating to IcedTea-Web 1.5 will not give you much either because - to my knowledge - code concerning this issue has not been touched. Tthe deployment.propeties file there, but completely empty. I tried using : "javaws -verbose -J-Dhttp.proxyHost=atlasgw-exp.cern.ch -J-Dhttp.proxyPort=3128 http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp" but, thisgives the same result as before, and it does appear that the settings are direct from the output. ie: Selecting proxy for: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp Browser proxy option "4" (Automatic) not supported yet. Browser selected proxies: [DIRECT] Selected proxies: [DIRECT] Selecting proxy for: socket://dipbrowser.web.cern.ch:80 I also tried supplying the application with a different file using -J-Ddeployment.system.config, though that doesn't seem to work either? > > To be honest, I am a little bit baffled that you're relying on web or intranet based JNLP applications to record (highly) valuable experiment data at all. The only possible scenario that I could think of where this would make any sense is to just install some java application locally via JNLP. But, the install feature of JNLP is not supported by IcedTea-Web yet. So, at this point I am a little bit confused about your intent. We don't use this for any data taking. The application itself is external to our detector which is for all intents and purposes, is cut off from the outside world. The application provides values to certain parameters, which internal operations managers can use to verify externally supplied parameters. ie: CERN states that water temperature at point A is X degrees. During full operations runs, software updates within the experiment are locked down, and it wouldn't always be possible to update, Oracle JDK as was required with JAVA 7 update 25 for example. Though the reason that everything else is usually disabled, is the reason why I was hoping to use a CLI command for this one application instead of changing all the global settings. > > Jacob From ptisnovs at icedtea.classpath.org Tue Jul 1 09:07:29 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 01 Jul 2014 09:07:29 +0000 Subject: /hg/gfx-test: Ten new helper methods added into CommonBitmapOper... Message-ID: changeset 9b45e3d53524 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=9b45e3d53524 author: Pavel Tisnovsky date: Tue Jul 01 11:08:23 2014 +0200 Ten new helper methods added into CommonBitmapOperations. diffstat: ChangeLog | 5 + src/org/gfxtest/framework/CommonBitmapOperations.java | 260 ++++++++++++++++++ 2 files changed, 265 insertions(+), 0 deletions(-) diffs (345 lines): diff -r 826784d42ab5 -r 9b45e3d53524 ChangeLog --- a/ChangeLog Thu Jun 19 14:23:03 2014 +0200 +++ b/ChangeLog Tue Jul 01 11:08:23 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-01 Pavel Tisnovsky + + * src/org/gfxtest/framework/CommonBitmapOperations.java: + Ten new helper methods added into CommonBitmapOperations. + 2014-06-19 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltBufferedImageOp.java: diff -r 826784d42ab5 -r 9b45e3d53524 src/org/gfxtest/framework/CommonBitmapOperations.java --- a/src/org/gfxtest/framework/CommonBitmapOperations.java Thu Jun 19 14:23:03 2014 +0200 +++ b/src/org/gfxtest/framework/CommonBitmapOperations.java Tue Jul 01 11:08:23 2014 +0200 @@ -1323,6 +1323,33 @@ * graphics canvas * @param imageType * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithHorizontalColorStripesImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + // bitmap should contains horizontal color stripes + BufferedImage bufferedImage = ImageFactory.createHorizontalColorStripesImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** + * Create new buffered image containing horizontal color stripes and then + * perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image * @param width * width of a image after BitBlt operation is performed * @param height @@ -1404,6 +1431,33 @@ * graphics canvas * @param imageType * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithVerticalColorStripesImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + // bitmap should contains vertical color stripes + BufferedImage bufferedImage = ImageFactory.createVerticalColorStripesImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** + * Create new buffered image containing vertical color stripes and then + * perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image * @param width * width of a image after BitBlt operation is performed * @param height @@ -1485,6 +1539,33 @@ * graphics canvas * @param imageType * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithDiagonalColorStripesImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + // bitmap should contains diagonal color stripes + BufferedImage bufferedImage = ImageFactory.createDiagonalColorStripesImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** + * Create new buffered image containing diagonal color stripes and then + * perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image * @param width * width of a image after BitBlt operation is performed * @param height @@ -1566,6 +1647,33 @@ * graphics canvas * @param imageType * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithBWDotsImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + // bitmap should contains simple black and white dot pattern + BufferedImage bufferedImage = ImageFactory.createBWDotsPatternImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** + * Create new buffered image containing black and white dot pattern and then + * perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image * @param width * width of a image after BitBlt operation is performed * @param height @@ -1637,6 +1745,33 @@ } /** + * Create new buffered image containing color dot pattern and then + * perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithColorDotsImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + // bitmap should contains simple color dot pattern + BufferedImage bufferedImage = ImageFactory.createColorDotsPatternImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing color dot pattern and then perform * basic BitBlt test. * @@ -1717,6 +1852,31 @@ } /** + * Create new buffered image containing horizontal grayscale gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithHorizontalGrayscaleGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createHorizontalGrayscaleGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing horizontal grayscale gradient and then perform * basic BitBlt test. * @@ -1796,6 +1956,31 @@ } /** + * Create new buffered image containing vertical grayscale gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithVerticalGrayscaleGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createVerticalGrayscaleGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing vertical grayscale gradient and then perform * basic BitBlt test. * @@ -1875,6 +2060,31 @@ } /** + * Create new buffered image containing horizontal red gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithHorizontalRedGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createHorizontalRedGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing horizontal red gradient and then perform * basic BitBlt test. * @@ -1954,6 +2164,31 @@ } /** + * Create new buffered image containing vertical red gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithVerticalRedGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createVerticalRedGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing vertical red gradient and then perform * basic BitBlt test. * @@ -2033,6 +2268,31 @@ } /** + * Create new buffered image containing horizontal blue gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithHorizontalBlueGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createHorizontalBlueGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing horizontal blue gradient and then perform * basic BitBlt test. * From jvanek at icedtea.classpath.org Tue Jul 1 09:26:55 2014 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Tue, 01 Jul 2014 09:26:55 +0000 Subject: /hg/release/icedtea-web-1.5: NEWS: mentioned PL localization Message-ID: changeset 3a86eb3b6e0f in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=3a86eb3b6e0f author: Jiri Vanek date: Tue Jul 01 11:26:37 2014 +0200 NEWS: mentioned PL localization diffstat: ChangeLog | 4 ++++ NEWS | 2 +- 2 files changed, 5 insertions(+), 1 deletions(-) diffs (23 lines): diff -r af2c7b195ed8 -r 3a86eb3b6e0f ChangeLog --- a/ChangeLog Thu Jun 26 18:13:30 2014 +0200 +++ b/ChangeLog Tue Jul 01 11:26:37 2014 +0200 @@ -1,3 +1,7 @@ +2014-07-01 Jiri Vanek + + * NEWS: mentioned PL localization + 2014-06-26 Jacob Wisor * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: diff -r af2c7b195ed8 -r 3a86eb3b6e0f NEWS --- a/NEWS Thu Jun 26 18:13:30 2014 +0200 +++ b/NEWS Tue Jul 01 11:26:37 2014 +0200 @@ -10,7 +10,7 @@ New in release 1.5.1 (YYYY-MM-DD): * Improved to be able to run with any JDK -* Added DE localization +* Added DE and PL localizations * Added KEY_ENABLE_MANIFEST_ATTRIBUTES_CHECK deployment property to control scan of Manifest file * Plugin - PR1743 - Intermittant deadlock in PluginRequestProcessor From jvanek at redhat.com Tue Jul 1 09:27:48 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 11:27:48 +0200 Subject: [rfc][icedtea-web]Localized Man Page Script In-Reply-To: <670733420.19187220.1403804376212.JavaMail.zimbra@redhat.com> References: <489988795.5413717.1400610539851.JavaMail.zimbra@redhat.com> <1530337932.5418716.1400611261222.JavaMail.zimbra@redhat.com> <537BA568.6090607@redhat.com> <887325711.5450945.1400615544040.JavaMail.zimbra@redhat.com> <537BB2D0.9090007@redhat.com> <537C5C1F.5080407@redhat.com> <670733420.19187220.1403804376212.JavaMail.zimbra@redhat.com> Message-ID: <53B27F14.3040107@redhat.com> On 06/26/2014 07:39 PM, Jie Kang wrote: > Hello, > > I've started working on a tiny bit of the implementation for the Java-based Local Man Page Generator. Thank you for taking care of it and thank you for sharing thought so early. > > At the moment it lets you create man pages through main() by specifying locale and name of man page. The class looks quite ok, but I'm not sure of it usefulness. Few nits to class itself * I would put all this work to package net.sourceforge.jnlp.resources....generator?util?manpages?infogenerator? * I would not use private classes (non of the enums here have the right to be ) - and each public member should have tests on each method ;) Well the usecase - I think that you do need this class at all. I believe, that before the generation, you can simply set LANG ( LANGBACKUP=$LANG for E in "" ".UTF-8" ; do #some more encoding? Do we need to bother with encodings at all? for L in "" en_US$E pl_PL$E de_DE$E cs_CZ$E ; do #is "" wonted/needed? export LANG=$L java -CP=... net.sourceforge.jnlp.resources.some_main_in_subpackage -output={javaws|policieditor|itwsettings|icedtea-web} -outputDir=someDir done done LANG=$LANGBACKUP export LANG ) and use JNLPRuntime + Translator to get correct messages. But this approach must be verified. Otherwise this will bring up duplicated code. Also I guess the correct location inside outputDir can be guessed from locale (or if it more simple to generate it from $L and $E then I probablky do not care) well my $0.02 :) > This is for during build process. Yes, thats correct. Build time is the place when this is supposed to happen. > > > It is attached. Jiri, could you look over it? I am still unsure if this is the direction you want to go in. Thank you for keeping me in loop! > > ----- Original Message ----- >> On 05/20/2014 09:53 PM, Andrew Azores wrote: >>> On 05/20/2014 03:52 PM, Jie Kang wrote: >>>> Hello, >>>> >>>> I've made all the suggested fixes and am working on the makefile at the >>>> moment. >>>> >>>> Thanks, >>>> >>>> >>> >>> Looks good to me. Please post the new patch when you have your script >>> integrated and tested working >>> in the Makefile. >>> >>> Thanks, >>> >> >> >> hi! >> >> The creepy voice from behind the sea have nasty words to say :( >> >> I'm afraid we ca not use this approach. And as it is it must not be pushed. >> >> The original idea of this feature was to *reuse* already existing, localized >> properties files. >> Also it was intended to share output between manpages *and* applications >> (javaws, policieditor, >> itw-settngs) --help option. Also maybe add icedtea-web manpage, and >> (probably) also have an >> possibility to generate more then man pages - eg html "man pages" or >> whatever. >> >> You can see that -help swihhc already provides eg full list of programs >> switches, or some about >> sntences.... >> >> Well your approach do not implement any of this. Well, as opposite it file >> new file to localize >> and even more fiels to maintain. >> >> My original idea on this to have java based generator, included in netx >> itself. >> Its "main" class will be able to : >> - be called during the build (just put $CLASSES to CLASSPATH and invoke >> main) >> - generate man pages in reqested language >> - genreate html man pages (well I think there is some man2html, so maybe >> this is waste of >> everything) >> - the html files may save as base for help in gui modes >> - be called from javaws/itwsettings/policieditor and so >> - generate -help output >> - implementation detail - do not add "language swithc" generate files baed >> of currently set LOCALE >> - much more :) >> >> As benefit you will get >> - all the messages will come form properties >> - only properties to maintain! >> - parsing of properties in free - unicode support, and insertion of >> parametres from JDK itself >> - improved -help output (from man pages) >> - improved manpages form -help outputs >> - list of all switches >> - all default file locations! >> - get rid of about/help code from main classes of itw >> - much more;) >> >> If some messages are in man pages, but not in properties, you can add them >> into proeprties, but >> please verify that there is no similar in properties. And of course vice >> versa. >> >> Well most of http://icedtea.classpath.org/wiki/IcedTea-Web#Release_Plans >> since 1.3 are mostly >> somehow inserted by me. Sometime from need, sometimes from wish (feel free to >> add yours, or suggest >> modifications!) But pelase, always consult a bit before first patch. Mostly >> IRCis enough :) >> >> Sorry for this email:( But this is really stop show for this approach). >> >> Please try to post the patch ins small hunks, but it can be harder then >> write patch itself, andnot >> always possible, or meaningful. >> I hope I havenot forget something :( But we can tune it during the process. >> But I'm afraid nowyou >> are dammed to wait with final push on this topic to me returned from PTO :o) >> >> All the best! >> J >> >> >> Few notes to code itself just "education purposes": >> - changelog - the first line of changes should be caption. Eg "Added >> generator of man pages" for >> this particualr setthsi >> >> date-name-email >> [emtyline] >> [tab]caption >> [tab]* file:changes >> >> >> In changelog - always clearly say that it is new file. like >> [tab[ * file: new file, its purpose >> >> >> I'm not sure how good templates for man pages will be suitable in java based >> solution.. Well then >> may be. We will see. I hoped to have some class like "Content provider" which >> will use some class >> "markup" and together they will provide >> - context of desired verbosity >> - marked in markup you wont >> >> You can think about it as execise from some "system architecture" because it >> is isolated system in >> netx :) (whch you are designing from ground) >> >> In case of template - I would suggest %{key} rather then simple @KEY >> (although for your sh based >> solution @KEY is most correct) >> >> Otherwise splendid work on code, and sorry for wasting it:( >> >> > From jvanek at redhat.com Tue Jul 1 09:36:15 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 11:36:15 +0200 Subject: [rfc][icedtea-web] Fix handling of UI controls in Java console In-Reply-To: <53AF39FB.8060808@gmx.de> References: <53AF39FB.8060808@gmx.de> Message-ID: <53B2810F.3060403@redhat.com> On 06/28/2014 11:56 PM, Jacob Wisor wrote: > Hello there! > > The subject says it all. ;-) > > Jacob No objections - only one really minor nitpick. When logs cross over several thousands, they can get slow. Then the feature of - hide all messages/headers , then set desired parts and then show messages/headers again, was quite useful. So think about this disabling/enabling before push - well the disabling/enabling looks at least cooler then it was without (and As I know you, I would easily guess the reasons for it :) ) Thank you! J. From jvanek at redhat.com Tue Jul 1 11:19:10 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 13:19:10 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53A99B9B.4040303@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> Message-ID: <53B2992E.5000704@redhat.com> On 06/24/2014 05:39 PM, Andrew Azores wrote: > On 06/24/2014 10:40 AM, Jiri Vanek wrote: >> On 06/24/2014 03:58 PM, Andrew Azores wrote: >>> On 06/19/2014 11:03 AM, Jiri Vanek wrote: >>>> On 06/18/2014 07:44 PM, Andrew Azores wrote: >>>>> On 06/18/2014 12:01 PM, Jiri Vanek wrote: >>>>>> On 05/27/2014 06:23 PM, Andrew Azores wrote: >>>>>>> Hi, >>>>>>> >>>>>>> This patch allows signed applets with sandbox permissions specified in >>>>>>> their manifests to actually >>>>>> >>>>>> >>>>>> How it is dealing with mixed (signed + unsigned code) apps? >>>>> >>>>> I don't have any examples of mixed signing apps with a Permissions manifest attribute, but a >>>>> reproducer could be prepared for this case. >>>> >>>> It seems to be under construction... >>>>> >>>>>>> be run sandboxed. This is in contrast to the current behaviour where >>>>>>> such applets will fail to >>>>>>> launch, and the failure message presented asks the user to try >>>>>>> launching via the Sandbox button next >>>>>>> time. This was because the dialog which presented the Sandbox button >>>>>>> appeared very early in the >>>>>>> JNLPClassLoader's life cycle - early enough that no security settings >>>>>>> had yet been set for the >>>>>>> classloader or any of the applet's JAR locations - whereas the >>>>>>> manifest checks were done later, >>>>>>> after these settings would have already been initialized. Fixing the >>>>>>> issue was not as simple as >>>>>>> doing the manifest checks before presenting the security dialog >>>>>>> because the dialog was presented >>>>>>> part way through the initialization process, where JARs are being >>>>>>> downloaded and checked for >>>>>>> signing, so that the appropriate security dialog could be shown to the >>>>>>> user. Putting the manifest >>>>>>> checks first would therefore not work properly because the JARs were >>>>>>> not yet available. This patch >>>>>>> resolves the issue by moving the manifest checks inside the method >>>>>>> which initializes the relevant >>>>>>> security settings, such that the required resources are available, it >>>>>>> is known what type of applet >>>>>>> is about to be run, but the security settings for the JAR locations >>>>>>> have not yet been initialized >>>>>>> and the applet can thus still be set to run sandboxed safely. >>>>>>> >>>>>>> Additionally, the ManifestAttributesChecker check for the Permissions >>>>>>> attribute is no longer skipped >>>>>>> when Extended Applet Security is set to the Low level, since this >>>>>>> allows for signed applets with >>>>>>> Sandbox permissions specified in their manifests to run with full >>>>>>> permissions when Low security is set. >>>>>>> >>>>>> >>>>>> Well this concept I do not like. >>>>>> >>>>>> Imho the correct approach is to check the attributes, but do not take >>>>>> any actions (except print warnings eg "normally I would fail because >>>>>> of..,but low security is on". >>>>>> >>>>>> With exception on sandbox attribute - here probably warning (strong one) >>>>>> requesting users attention. >>>>>> >>>>>> What do you think? - Well this dialogue would be good place for run in >>>>>> sandbox button too :) >>>>>> >>>>>> Otherwise the only way how to disable manifest check willbe the >>>>>> deployment property which I added. >>>>> >>>>> Sure. I just *really* am not comfortable with leaving it as-is, which means Low Security allows >>>> >>>> I agree. >>>>> applets to be silently granted elevated permissions. I can imagine this too easily being abused >>>>> by a >>>>> malicious applet developer. I'm fine with adding an extra prompt here when on Low Security though, >>>>> warning the user that due to the Low Security the applet may be granted elevated permissions if it >>>>> is run. >>>> >>>> The dialogue canbe added as separate changeset. >>>> >>>> But for current changeset's behavior I would like the low security is not affecting *only* >>>> permissions attribute. Other attributes checks will be skipped. >>>>> >>>>>> >>>> ... >>>>>>> - setSecurity(); >>>>>> >>>>>> I'm wondering, setSecurity moved, but setPermissions remained? >>>>> >>>>> You mean initializePermissions? Yea, it didn't have to be moved. >>>> >>>> Still surprising me. >>>> >>>>> >>>>>>> - >>>>>>> - ManifestAttributesChecker mac = new >>>>>>> ManifestAttributesChecker(security, file, signing, securityDelegate); >>>>>>> - mac.checkAll(); >>>>>>> - >>>>>>> installShutdownHooks(); >>>>>>> >>>>>>> >>>>>>> @@ -592,14 +586,12 @@ public class JNLPClassLoader extends URL >>>>>>> //Check if main jar is found within extensions >>>>>>> foundMainJar = foundMainJar || hasMainInExtensions(); >>>>>>> >>>>>>> + setSecurity(); >>>>>>> + initializeManifestAttributesChecker(); >>>>>>> + mac.checkAll(); >>>>>>> return; >>>>>>> } >>>>>>> - /* >>>>>>> - if (jars == null || jars.length == 0) { >>>>>>> - throw new LaunchException(null, null, R("LSFatal"), >>>>>>> - R("LCInit"), >>>>>>> R("LFatalVerification"), "No jars!"); >>>>>>> - } >>>>>>> - */ >>>>>> >>>>>> This should probably cam in as separate changset. Hmm.. When it was >>>>>> commented Out actually? :) >>>>> >>>> >>>> then please remove as separate changeset. Together with the hunk a bit lower. >>>> >>>>>>> >>>>>>> - jarLocationSecurityMap.put(jarDesc.getLocation(), >>>>>>> jarSecurity); >>>>>>> + if (containsUnsignedJar && containsSignedJar) { >>>>>>> + break; >>>>>>> + } >>>>>>> } >>>>>>> >>>>>>> if (containsSignedJar && containsUnsignedJar) { >>>>>>> checkPartialSigningWithUser(); >>>>>>> } >>>>>>> >>>>>>> + initializeManifestAttributesChecker(); >>>>>>> + mac.checkAll(); >>>>>>> + >>>>>>> + for (JARDesc jarDesc : validJars) { >>>>>> >>>>>> There I'm missing something. Why is this secoond field even needed? >>>>>> In any case, please mention it in changelog. >>>>> >>>>> Which second field? "mac"? >>>> >>>> Oh sorry. no. - The validJars. Can you expalin on them? >>>>> >>>>>>> + final URL codebase = getJnlpFileCodebase(); >>>>>>> + final SecurityDesc jarSecurity = >>>>>>> securityDelegate.getCodebaseSecurityDesc(jarDesc, codebase.getHost()); >>>>>>> + jarLocationSecurityMap.put(jarDesc.getLocation(), >>>>>>> jarSecurity); >>>>>>> + } >>>>>>> + >>>>>>> activateJars(initialJars); >>>>>>> } >>>>>>> + >>>>>>> + private void initializeManifestAttributesChecker() throws >>>>>>> LaunchException { >>>>>>> + if (mac == null) { >>>>>>> + file.getManifestsAttributes().setLoader(this); >>>>>>> + mac = new ManifestAttributesChecker(security, file, >>>>>>> signing, securityDelegate); >>>>>>> + } >>>>>>> + } >>>>>>> + >>>>>>> + private URL getJnlpFileCodebase() { >>>>>>> + final URL codebase; >>>>>>> + if (file.getCodeBase() != null) { >>>>>>> + codebase = file.getCodeBase(); >>>>>>> + } else { >>>>>>> + // FIXME: codebase should be the codebase of the Main Jar >>>>>>> not >>>>>>> + // the location. Although, it still works in the current >>>>>>> state. >>>>>>> + codebase = file.getResources().getMainJAR().getLocation(); >>>>>>> + } >>>>>>> + return codebase; >>>>>>> + } >>>>>>> >>>>>>> /*** >>>>>>> * Checks for the jar that contains the attribute. >>>>>>> @@ -762,13 +780,12 @@ public class JNLPClassLoader extends URL >>>>>>> * @param name attribute to be found >>>>>>> */ >>>>>>> public String checkForAttributeInJars(List jars, >>>>>>> Attributes.Name name) { >>>>>>> - >>>>>>> if (jars.isEmpty()) { >>>>>>> return null; >>>>>>> } >>>>>>> >>>>>>> String result = null; >>>>>>> - >>>>>>> + >>>>>>> // Check main jar >>>>>>> JARDesc mainJarDesc = ResourcesDesc.getMainJAR(jars); >>>>>>> result = getManifestAttribute(mainJarDesc.getLocation(), name); >>>>>>> @@ -776,7 +793,7 @@ public class JNLPClassLoader extends URL >>>>>>> if (result != null) { >>>>>>> return result; >>>>>>> } >>>>>>> - >>>>>>> + >>>>>>> // Check first jar >>>>>>> JARDesc firstJarDesc = jars.get(0); >>>>>>> result = getManifestAttribute(firstJarDesc.getLocation(),name); >>>>>>> @@ -2380,12 +2397,15 @@ public class JNLPClassLoader extends URL >>>>>>> } >>>>>>> >>>>>>> public void setRunInSandbox() throws LaunchException { >>>>>>> - if (promptedForSandbox || classLoader.security != null >>>>>>> - || classLoader.jarLocationSecurityMap.size() != 0) { >>>>>>> + if (runInSandbox && classLoader.security != null >>>>>>> + && classLoader.jarLocationSecurityMap.size() != 0) { >>>>>> >>>>>> Why have this condition changed in thisway? I would expect >>>>>> promptedForSandbox || runInSandbox || classLoader.security != null && ... >>>>> >>>>> The ClassLoader can end up attempting to automatically set the applet to run in sandbox multiple >>>>> times, so that condition would cause it to fail in this situation. The condition was very strong >>>>> before on purpose because it was easily possible for the security settings to have already been >>>>> applied before the sandboxing option appeared to the user. Now, the sandboxing dialog appears well >>>>> beforehand, and automatic sandboxing also happens early enough, so this condition has to be >>>>> slightly >>>>> weakened so that it does allow the call to be performed multiple times, but only if the security >>>>> settings have not yet been applied to the classloader/applet. I haven't tested this but this >>>>> condition should also work fine: >>>> >>>> >>>> /me consuimg this and hoping /me understand well >>>> %-~ >>>> >>>>> >>>>> runInSandbox && (classLoader.security != null || jarLocationSecurityMap.size() != 0) >>>>> >>>>> The classLoader.security and jarLocationSecurityMap conditions should really always be "in sync" >>>>> with each other in this regard though. >>>> hmmh. >>>> >>>>> >>>>>> >>>>>>> throw new LaunchException(classLoader.file, null, >>>> >>>>>> +Permissions: sandbox >>>>>> >>>>>> >>>>>> Do we have/need also one with Permissions: all-permissions ? I recall >>>>>> there is something... >>>>> >>>>> I don't think so, but maybe there is. I couldn't find anything with a quick grep. >>>>> >>>> ...in progress s I guess >>>>>> >>>> .. >>>>>> >>>>>> >>>>>> Why do you need custom reproducers? The manifest is handled by engine >>>>> >>>>> Ah, I forgot about this. Although a custom reproducer would still be needed for the mixed signing >>>>> case, so I can convert this one to mixed and make normal "simple" and "signed" ones as well I >>>>> suppose. >>>>> >>>> >>>> good! >>>> ...snip... >>>>>> + assertTrue("Applet should have printed its exit string", >>>>>> pr.stdout.contains(CLOSE_STRING)); >>>>>> + } >>>>>> +} >>>>>> >>>>>> As this test is already known to fail, it can go (after manifest is >>>>>> resolved) in as independent changeset. >>>>>> >>>>>> >>>> >>>> Well except the issue with low security (and few more expalnationa) I'm ashamed to not have muc >>>> more comments :( >>>> >>>> >>>> J. >>>> >>> >>> Latest version of the patch is attached. initializePermissions was renamed, the comment hunks were >>> removed and done in a separate changeset, and all manifest checks are skipped when on low security >>> with a WARNING_ALL level message logged. Otherwise, no changes from the last patch. >>> >> >> No no. THis is not what I wonted. >> >> As you mentioned - the signed, but with permissions:sandbox app can not be run with all permissions. >> So skip all attrributes, except permissions one >> >> The sandbox one should be checked: >> signed: permissions:all-permissions - all permissions >> unsigned: permissions:all-permissions - sandbox >> unsigned: permissions:sandbox - sandbox >> signed: permissions:sandbox - sandbox >> signed: permissions missing - all permissions >> unsigned: permissions missing - sandbox >> >> On low permissions, no asking. >> >> For other then low permissions user should be asked for each except >> signed: permissions:all-permissions >> unsigned: permissions:sandbox >> cases. >> >> But the dialogue can be done as separate changeset (with custom-permissions button:) >> >> >> >>> New tests are also on the way and with the new tests will come the fixed version of the previously >>> sent test, which will make be a signed reproducer rather than custom. >>> >> >> J. >> > > Okay, I wasn't sure what you had meant. It didn't seem right to skip them all but I thought maybe > you had something else in mind to implement to fix it. So here's another attempt. > > Setting deployment.manifest.attributes.check to false causes all checks to be skipped, except for > the Permissions attribute, which is always checked regardless. Using Low Extended Applet Security > causes the ALACA and Permissions checks to not generate dialogs and assumes that it's OK to run the > applet(s). In the case of the Permissions attribute, it will still auto sandbox if necessary. Is > this what you wanted? > Yes. this looks good. For the deployment.manifest.attributes.check=false I'm hesitating a bit. It should be fallback back to "no manifest attributes do exists" But I'm really not sure here. J. From jvanek at redhat.com Tue Jul 1 11:24:46 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 13:24:46 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <1845325703.19322140.1403815428183.JavaMail.zimbra@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53AC3661.4080107@redhat.com> <1845325703.19322140.1403815428183.JavaMail.zimbra@redhat.com> Message-ID: <53B29A7E.6080401@redhat.com> On 06/26/2014 10:43 PM, Lukasz Dracz wrote: > >> >> And attached is the promised update to the Signed reproducer. >> >> Lukasz, if you could please also send the Partial Signing test that we >> put together. >> >> Thanks, >> >> -- >> Andrew A >> >> > > Hello, > > I have attached the Partial Signing Reproducer Tests we worked on. > Running the tests on your latest patch two of the tests were failing 'testPartiallySignedAppletWithSandboxPermissionsInManifestLaunchWithSignedHTMLApp' and 'testPartiallySignedJNLPAppletWithSandboxPermissionsInManifestLaunchWithSignedApp', what seemed to fix it was getting rid of 'signing != SigningState.NONE' in checkPermissionsAttribute(). For some reason the signing variable is not correctly identifying as Partially Signed. > > Thank you, > Lukasz Dracz > One general remark. Why KnownTofail? Why just not set alaca? Then it willl match,and no dialogue will apear :) (?) J. From jvanek at redhat.com Tue Jul 1 11:27:22 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 13:27:22 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53AC3661.4080107@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53AC3661.4080107@redhat.com> Message-ID: <53B29B1A.10707@redhat.com> On 06/26/2014 05:04 PM, Andrew Azores wrote: > On 06/24/2014 11:39 AM, Andrew Azores wrote: >> On 06/24/2014 10:40 AM, Jiri Vanek wrote: >>> On 06/24/2014 03:58 PM, Andrew Azores wrote: >>>> On 06/19/2014 11:03 AM, Jiri Vanek wrote: >>>>> On 06/18/2014 07:44 PM, Andrew Azores wrote: >>>>>> On 06/18/2014 12:01 PM, Jiri Vanek wrote: >>>>>>> On 05/27/2014 06:23 PM, Andrew Azores wrote: >>>>>>>> Hi, >>>>>>>> >>>>>>>> This patch allows signed applets with sandbox permissions specified in >>>>>>>> their manifests to actually >>>>>>> >>>>>>> >>>>>>> How it is dealing with mixed (signed + unsigned code) apps? >>>>>> >>>>>> I don't have any examples of mixed signing apps with a Permissions manifest attribute, but a >>>>>> reproducer could be prepared for this case. >>>>> >>>>> It seems to be under construction... >>>>>> >>>>>>>> be run sandboxed. This is in contrast to the current behaviour where >>>>>>>> such applets will fail to >>>>>>>> launch, and the failure message presented asks the user to try >>>>>>>> launching via the Sandbox button next >>>>>>>> time. This was because the dialog which presented the Sandbox button >>>>>>>> appeared very early in the >>>>>>>> JNLPClassLoader's life cycle - early enough that no security settings >>>>>>>> had yet been set for the >>>>>>>> classloader or any of the applet's JAR locations - whereas the >>>>>>>> manifest checks were done later, >>>>>>>> after these settings would have already been initialized. Fixing the >>>>>>>> issue was not as simple as >>>>>>>> doing the manifest checks before presenting the security dialog >>>>>>>> because the dialog was presented >>>>>>>> part way through the initialization process, where JARs are being >>>>>>>> downloaded and checked for >>>>>>>> signing, so that the appropriate security dialog could be shown to the >>>>>>>> user. Putting the manifest >>>>>>>> checks first would therefore not work properly because the JARs were >>>>>>>> not yet available. This patch >>>>>>>> resolves the issue by moving the manifest checks inside the method >>>>>>>> which initializes the relevant >>>>>>>> security settings, such that the required resources are available, it >>>>>>>> is known what type of applet >>>>>>>> is about to be run, but the security settings for the JAR locations >>>>>>>> have not yet been initialized >>>>>>>> and the applet can thus still be set to run sandboxed safely. >>>>>>>> >>>>>>>> Additionally, the ManifestAttributesChecker check for the Permissions >>>>>>>> attribute is no longer skipped >>>>>>>> when Extended Applet Security is set to the Low level, since this >>>>>>>> allows for signed applets with >>>>>>>> Sandbox permissions specified in their manifests to run with full >>>>>>>> permissions when Low security is set. >>>>>>>> >>>>>>> >>>>>>> Well this concept I do not like. >>>>>>> >>>>>>> Imho the correct approach is to check the attributes, but do not take >>>>>>> any actions (except print warnings eg "normally I would fail because >>>>>>> of..,but low security is on". >>>>>>> >>>>>>> With exception on sandbox attribute - here probably warning (strong one) >>>>>>> requesting users attention. >>>>>>> >>>>>>> What do you think? - Well this dialogue would be good place for run in >>>>>>> sandbox button too :) >>>>>>> >>>>>>> Otherwise the only way how to disable manifest check willbe the >>>>>>> deployment property which I added. >>>>>> >>>>>> Sure. I just *really* am not comfortable with leaving it as-is, which means Low Security allows >>>>> >>>>> I agree. >>>>>> applets to be silently granted elevated permissions. I can imagine this too easily being >>>>>> abused by a >>>>>> malicious applet developer. I'm fine with adding an extra prompt here when on Low Security >>>>>> though, >>>>>> warning the user that due to the Low Security the applet may be granted elevated permissions >>>>>> if it >>>>>> is run. >>>>> >>>>> The dialogue canbe added as separate changeset. >>>>> >>>>> But for current changeset's behavior I would like the low security is not affecting *only* >>>>> permissions attribute. Other attributes checks will be skipped. >>>>>> >>>>>>> >>>>> ... >>>>>>>> - setSecurity(); >>>>>>> >>>>>>> I'm wondering, setSecurity moved, but setPermissions remained? >>>>>> >>>>>> You mean initializePermissions? Yea, it didn't have to be moved. >>>>> >>>>> Still surprising me. >>>>> >>>>>> >>>>>>>> - >>>>>>>> - ManifestAttributesChecker mac = new >>>>>>>> ManifestAttributesChecker(security, file, signing, securityDelegate); >>>>>>>> - mac.checkAll(); >>>>>>>> - >>>>>>>> installShutdownHooks(); >>>>>>>> >>>>>>>> >>>>>>>> @@ -592,14 +586,12 @@ public class JNLPClassLoader extends URL >>>>>>>> //Check if main jar is found within extensions >>>>>>>> foundMainJar = foundMainJar || hasMainInExtensions(); >>>>>>>> >>>>>>>> + setSecurity(); >>>>>>>> + initializeManifestAttributesChecker(); >>>>>>>> + mac.checkAll(); >>>>>>>> return; >>>>>>>> } >>>>>>>> - /* >>>>>>>> - if (jars == null || jars.length == 0) { >>>>>>>> - throw new LaunchException(null, null, R("LSFatal"), >>>>>>>> - R("LCInit"), >>>>>>>> R("LFatalVerification"), "No jars!"); >>>>>>>> - } >>>>>>>> - */ >>>>>>> >>>>>>> This should probably cam in as separate changset. Hmm.. When it was >>>>>>> commented Out actually? :) >>>>>> >>>>> >>>>> then please remove as separate changeset. Together with the hunk a bit lower. >>>>> >>>>>>>> >>>>>>>> - jarLocationSecurityMap.put(jarDesc.getLocation(), >>>>>>>> jarSecurity); >>>>>>>> + if (containsUnsignedJar && containsSignedJar) { >>>>>>>> + break; >>>>>>>> + } >>>>>>>> } >>>>>>>> >>>>>>>> if (containsSignedJar && containsUnsignedJar) { >>>>>>>> checkPartialSigningWithUser(); >>>>>>>> } >>>>>>>> >>>>>>>> + initializeManifestAttributesChecker(); >>>>>>>> + mac.checkAll(); >>>>>>>> + >>>>>>>> + for (JARDesc jarDesc : validJars) { >>>>>>> >>>>>>> There I'm missing something. Why is this secoond field even needed? >>>>>>> In any case, please mention it in changelog. >>>>>> >>>>>> Which second field? "mac"? >>>>> >>>>> Oh sorry. no. - The validJars. Can you expalin on them? >>>>>> >>>>>>>> + final URL codebase = getJnlpFileCodebase(); >>>>>>>> + final SecurityDesc jarSecurity = >>>>>>>> securityDelegate.getCodebaseSecurityDesc(jarDesc, codebase.getHost()); >>>>>>>> + jarLocationSecurityMap.put(jarDesc.getLocation(), >>>>>>>> jarSecurity); >>>>>>>> + } >>>>>>>> + >>>>>>>> activateJars(initialJars); >>>>>>>> } >>>>>>>> + >>>>>>>> + private void initializeManifestAttributesChecker() throws >>>>>>>> LaunchException { >>>>>>>> + if (mac == null) { >>>>>>>> + file.getManifestsAttributes().setLoader(this); >>>>>>>> + mac = new ManifestAttributesChecker(security, file, >>>>>>>> signing, securityDelegate); >>>>>>>> + } >>>>>>>> + } >>>>>>>> + >>>>>>>> + private URL getJnlpFileCodebase() { >>>>>>>> + final URL codebase; >>>>>>>> + if (file.getCodeBase() != null) { >>>>>>>> + codebase = file.getCodeBase(); >>>>>>>> + } else { >>>>>>>> + // FIXME: codebase should be the codebase of the Main Jar >>>>>>>> not >>>>>>>> + // the location. Although, it still works in the current >>>>>>>> state. >>>>>>>> + codebase = file.getResources().getMainJAR().getLocation(); >>>>>>>> + } >>>>>>>> + return codebase; >>>>>>>> + } >>>>>>>> >>>>>>>> /*** >>>>>>>> * Checks for the jar that contains the attribute. >>>>>>>> @@ -762,13 +780,12 @@ public class JNLPClassLoader extends URL >>>>>>>> * @param name attribute to be found >>>>>>>> */ >>>>>>>> public String checkForAttributeInJars(List jars, >>>>>>>> Attributes.Name name) { >>>>>>>> - >>>>>>>> if (jars.isEmpty()) { >>>>>>>> return null; >>>>>>>> } >>>>>>>> >>>>>>>> String result = null; >>>>>>>> - >>>>>>>> + >>>>>>>> // Check main jar >>>>>>>> JARDesc mainJarDesc = ResourcesDesc.getMainJAR(jars); >>>>>>>> result = getManifestAttribute(mainJarDesc.getLocation(), name); >>>>>>>> @@ -776,7 +793,7 @@ public class JNLPClassLoader extends URL >>>>>>>> if (result != null) { >>>>>>>> return result; >>>>>>>> } >>>>>>>> - >>>>>>>> + >>>>>>>> // Check first jar >>>>>>>> JARDesc firstJarDesc = jars.get(0); >>>>>>>> result = getManifestAttribute(firstJarDesc.getLocation(),name); >>>>>>>> @@ -2380,12 +2397,15 @@ public class JNLPClassLoader extends URL >>>>>>>> } >>>>>>>> >>>>>>>> public void setRunInSandbox() throws LaunchException { >>>>>>>> - if (promptedForSandbox || classLoader.security != null >>>>>>>> - || classLoader.jarLocationSecurityMap.size() != 0) { >>>>>>>> + if (runInSandbox && classLoader.security != null >>>>>>>> + && classLoader.jarLocationSecurityMap.size() != 0) { >>>>>>> >>>>>>> Why have this condition changed in thisway? I would expect >>>>>>> promptedForSandbox || runInSandbox || classLoader.security != null && ... >>>>>> >>>>>> The ClassLoader can end up attempting to automatically set the applet to run in sandbox multiple >>>>>> times, so that condition would cause it to fail in this situation. The condition was very strong >>>>>> before on purpose because it was easily possible for the security settings to have already been >>>>>> applied before the sandboxing option appeared to the user. Now, the sandboxing dialog appears >>>>>> well >>>>>> beforehand, and automatic sandboxing also happens early enough, so this condition has to be >>>>>> slightly >>>>>> weakened so that it does allow the call to be performed multiple times, but only if the security >>>>>> settings have not yet been applied to the classloader/applet. I haven't tested this but this >>>>>> condition should also work fine: >>>>> >>>>> >>>>> /me consuimg this and hoping /me understand well >>>>> %-~ >>>>> >>>>>> >>>>>> runInSandbox && (classLoader.security != null || jarLocationSecurityMap.size() != 0) >>>>>> >>>>>> The classLoader.security and jarLocationSecurityMap conditions should really always be "in sync" >>>>>> with each other in this regard though. >>>>> hmmh. >>>>> >>>>>> >>>>>>> >>>>>>>> throw new LaunchException(classLoader.file, null, >>>>> >>>>>>> +Permissions: sandbox >>>>>>> >>>>>>> >>>>>>> Do we have/need also one with Permissions: all-permissions ? I recall >>>>>>> there is something... >>>>>> >>>>>> I don't think so, but maybe there is. I couldn't find anything with a quick grep. >>>>>> >>>>> ...in progress s I guess >>>>>>> >>>>> .. >>>>>>> >>>>>>> >>>>>>> Why do you need custom reproducers? The manifest is handled by engine >>>>>> >>>>>> Ah, I forgot about this. Although a custom reproducer would still be needed for the mixed signing >>>>>> case, so I can convert this one to mixed and make normal "simple" and "signed" ones as well I >>>>>> suppose. >>>>>> >>>>> >>>>> good! >>>>> ...snip... >>>>>>> + assertTrue("Applet should have printed its exit string", >>>>>>> pr.stdout.contains(CLOSE_STRING)); >>>>>>> + } >>>>>>> +} >>>>>>> >>>>>>> As this test is already known to fail, it can go (after manifest is >>>>>>> resolved) in as independent changeset. >>>>>>> >>>>>>> >>>>> >>>>> Well except the issue with low security (and few more expalnationa) I'm ashamed to not have muc >>>>> more comments :( >>>>> >>>>> >>>>> J. >>>>> >>>> >>>> Latest version of the patch is attached. initializePermissions was renamed, the comment hunks were >>>> removed and done in a separate changeset, and all manifest checks are skipped when on low security >>>> with a WARNING_ALL level message logged. Otherwise, no changes from the last patch. >>>> >>> >>> No no. THis is not what I wonted. >>> >>> As you mentioned - the signed, but with permissions:sandbox app can not be run with all permissions. >>> So skip all attrributes, except permissions one >>> >>> The sandbox one should be checked: >>> signed: permissions:all-permissions - all permissions >>> unsigned: permissions:all-permissions - sandbox >>> unsigned: permissions:sandbox - sandbox >>> signed: permissions:sandbox - sandbox >>> signed: permissions missing - all permissions >>> unsigned: permissions missing - sandbox >>> >>> On low permissions, no asking. >>> >>> For other then low permissions user should be asked for each except >>> signed: permissions:all-permissions >>> unsigned: permissions:sandbox >>> cases. >>> >>> But the dialogue can be done as separate changeset (with custom-permissions button:) >>> >>> >>> >>>> New tests are also on the way and with the new tests will come the fixed version of the previously >>>> sent test, which will make be a signed reproducer rather than custom. >>>> >>> >>> J. >>> >> >> Okay, I wasn't sure what you had meant. It didn't seem right to skip them all but I thought maybe >> you had something else in mind to implement to fix it. So here's another attempt. >> >> Setting deployment.manifest.attributes.check to false causes all checks to be skipped, except for >> the Permissions attribute, which is always checked regardless. Using Low Extended Applet Security >> causes the ALACA and Permissions checks to not generate dialogs and assumes that it's OK to run >> the applet(s). In the case of the Permissions attribute, it will still auto sandbox if necessary. >> Is this what you wanted? >> >> Thanks, >> > > And attached is the promised update to the Signed reproducer. > > Lukasz, if you could please also send the Partial Signing test that we put together. > As for partially signed - Why KnownTofail? Why just not set alaca? Then it willl match,and no dialogue will apear :) (?) If we cannot do this, wee ned to fix the reproducers engine. Adding ton of knowntofail tests have no meaning. J. From jvanek at redhat.com Tue Jul 1 11:32:32 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 13:32:32 +0200 Subject: javaws CLI with Icedtea-web In-Reply-To: <5225D11B-6CB0-4AB0-ACA2-7E9032A8EF6B@cern.ch> References: <23C2F298-0602-457E-BA71-362A10334854@cern.ch> <53B16DF5.7000206@redhat.com> <972ECB76-39B1-4604-856D-6D19F2315007@cern.ch> <53B180E1.1070106@gmx.de> <5225D11B-6CB0-4AB0-ACA2-7E9032A8EF6B@cern.ch> Message-ID: <53B29C50.7010405@redhat.com> On 06/30/2014 05:41 PM, Chris Lee wrote: > Hi Jacob, > On Jun 30, 2014, at 5:23 PM, Jacob Wisor wrote: > >> On 06/30/2014 04:39 PM, Chris Lee wrote: >>> Hi Jiri >>> >>> Thanks so much >>> >>> To explain as well, what I am trying to do is use a specific proxy server and port for a specific website. >>> I had thought that a link to the CLI might be the quickest if I can get it working, If there is an easier way to configure, then I am open to suggestions. >> >> Try using Java's network configuration properties like http.proxyHost, http.proxyPort, https.proxyHost, https.proxyPort, ftp.proxyHost, ftp.proxyPort, gopher.proxyHost, gopher.proxyPort, socksProxyHost, socksProxyPort with the -J-D switch. For more information have a look into >> /lib/net.properties. > Assuming that they can/should be applied in the same manner as the properties from before, but I appear to be having the same issue where it is not being applied. > > ie: > [chlee at pc-atlas-cr-35 .icedtea]$ javaws -verbose -J-Dhttp.proxy.Host=atlasgw-exp.cern.ch -J-Dhttp.proxyPort=3128 http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp > Loading User level properties from: /atlas-home/1/chlee/.icedtea/deployment.properties > Starting security dialog thread > Using firefox's profiles file: /atlas-home/1/chlee/.mozilla/firefox/profiles.ini > Found preferences file: /atlas-home/1/chlee/.mozilla/firefox/4mi0hwbe.default/prefs.js > Read 77 entries from Firefox's preferences > JNLP file location: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp > call privileged method: getCodeBase > result: null > Status: CONNECT STARTED +(CONNECT STARTED) @ /dipbrowser/launch.jnlp > Status: CONNECT DOWNLOAD STARTED +(DOWNLOAD) @ /dipbrowser/launch.jnlp > Status: CONNECTING DOWNLOAD STARTED +(CONNECTING) -(CONNECT) @ /dipbrowser/launch.jnlp > All possible urls for location=http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp state=CONNECTING DOWNLOAD STARTED : [http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp, http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp] > Selecting proxy for: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp > Browser proxy option "4" (Automatic) not supported yet. > Browser selected proxies: [DIRECT] > Selected proxies: [DIRECT] > Selecting proxy for: socket://dipbrowser.web.cern.ch:80 > Browser proxy option "4" (Automatic) not supported yet. > Browser selected proxies: [DIRECT] > Selected proxies: [DIRECT] >> >>>> 1.4.1 is outdated. If you need for some reason to stay with 1.4, please update to 1.4.2, however - please swap to 1.5. It was released few month ago, is stable, and a a lot of fixes was fixed here. >>> >>> This installation is for the ATLAS experiment at CERN. For security reason, we are usually compelled to use what is available in the SLC repos, which unfortunately for me right now is 1.4.1 >> >> If security is key to you, you shouldn't probably be using IcedTea-Web yet. Instead, resort to Oracle's Java Web Start implementation. This product is feature and specification complete, in contrast to IcedTea-Web. Java Web Start has most probably received far more security fixes and screening than IcedTea-Web. Personally, at the current stage of IcedTea-Web I would advise any enterprise or security aware user not to use IcedTea-Web. > I believe we had a number of issues with the Oracles Javaws. somethings like the latest updates forced us to keep things current all the time, and while we are in production runs, things can be locked down for months at a time or we could lose data taking at our experiment. > Right now this is me testing to see if I can get this to work > Chris, Just to completeness, may you try the -Xnofork together with your Experiments? Anyway it sounds like bug. I will look into it. Thank you for investigations. J. From jvanek at redhat.com Tue Jul 1 11:48:42 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 13:48:42 +0200 Subject: javaws CLI with Icedtea-web In-Reply-To: <8986292C-3265-4C78-BC4D-E28B9094B176@cern.ch> References: <23C2F298-0602-457E-BA71-362A10334854@cern.ch> <53B16DF5.7000206@redhat.com> <972ECB76-39B1-4604-856D-6D19F2315007@cern.ch> <53B180E1.1070106@gmx.de> <5225D11B-6CB0-4AB0-ACA2-7E9032A8EF6B@cern.ch> <53B18D8F.4000001@gmx.de> <8986292C-3265-4C78-BC4D-E28B9094B176@cern.ch> Message-ID: <53B2A01A.4070303@redhat.com> >> Updating to IcedTea-Web 1.5 will not give you much either because - to my knowledge - code concerning this issue has not been touched. > Thats not true. The logic have changed between 1.4.1 and 1.4.2 (and of course 1.5 and head) [1] But TBH, I would bet it get even a bit worse. All the tests I had run till now seems to be working :-/ Until "only" the proxy was not working, I thought that system properties are wrongly merged. But now it seems to this being more corrupted somehow :-/ [1] New in release 1.4.2 (2014-02-05): .... New in release 1.4.1 (2013-09-19): and 2013-12-17 Jiri Vanek JNLPRuntime.config changed to proper singleton. This affected the time of loading the properties. Although it should not affect the reading of system properties. And even less affect the merged properties. From jvanek at redhat.com Tue Jul 1 11:52:34 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 13:52:34 +0200 Subject: [rfc][icedtea-web] Decrease verbosity of resources tests was Re: [rfc][icedtea-web] Add new PL localized messages In-Reply-To: <53AA9D68.8000208@redhat.com> References: <53AA9D68.8000208@redhat.com> Message-ID: <53B2A102.4030205@redhat.com> ,,,snip... Most of the tests in this group is comparing only against the main. The one who doeas all x all, was initially for something a bit different then is now. The attached patch is fixing it. The patch for 1.5 is much more readable. (as do the same except cosmetic changes) Thank you! J. hmm. Looking to the patch just before the send-click. The NB did the refactoring of the loop, so the logical change is not visible. It is: - bundles.add(main); ... - for (int j = 0; j < bundles.size(); j++) { - LocalesIdentifier resourceBundle2 = bundles.get(j); - if (resourceBundle1.getLanguage().equals(resourceBundle2.getLanguage())) { - //do not compare same language groups - allLog("Skipping same language " + resourceBundle1.getLocale() + " x " + resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + " x " + resourceBundle2.getIdentifier() + ")"); - break; - } + LocalesIdentifier resourceBundle2 = main; only. The rest re foeach loops, diamonds and the unlucky reformanting which NB did, but They are closed now And I can not do undo :( One aditional logic change is + if (val1.length() > 1000) { + errLog("Skipping chek of: " + key + " too long. (" + val1.length() + ")"); + continue; } This get rid of the 12k long help line (which no one will ever translate :) ) Attached are also results of those two test runs for 1.5 and head. Again, thank you very very much, feel free to use the results as informative only. Any changes to pl/de ( as it is now, or possible celaning) is ok to go to head+1.5 -------------- next part -------------- A non-text attachment was scrubbed... Name: improvedLoalesTest.patch Type: text/x-patch Size: 12252 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: improvedLoalesTest-1.5.patch Type: text/x-patch Size: 2530 bytes Desc: not available URL: From gitne at gmx.de Tue Jul 1 13:57:40 2014 From: gitne at gmx.de (Jacob Wisor) Date: Tue, 01 Jul 2014 15:57:40 +0200 Subject: [rfc][icedtea-web] Decrease verbosity of resources tests was Re: [rfc][icedtea-web] Add new PL localized messages In-Reply-To: <53B2A102.4030205@redhat.com> References: <53AA9D68.8000208@redhat.com> <53B2A102.4030205@redhat.com> Message-ID: <53B2BE54.1090304@gmx.de> On 07/01/2014 01:52 PM, Jiri Vanek wrote: > ,,,snip... > > > Most of the tests in this group is comparing only against the main. > The one who doeas all x all, was initially for something a bit different then > is now. The attached > patch is fixing it. > > The patch for 1.5 is much more readable. (as do the same except cosmetic changes) > > > Thank you! > > > J. > > > > hmm. Looking to the patch just before the send-click. The NB did the refactoring > of the loop, so the > logical change is not visible. > > It is: > > - bundles.add(main); > ... > - for (int j = 0; j < bundles.size(); j++) { > - LocalesIdentifier resourceBundle2 = bundles.get(j); > - if > (resourceBundle1.getLanguage().equals(resourceBundle2.getLanguage())) { > - //do not compare same language groups > - allLog("Skipping same language " + > resourceBundle1.getLocale() + " x " + > resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + > " x " + Please replace " x " with " vs. ". ;-) > resourceBundle2.getIdentifier() + ")"); > - break; > - } > + LocalesIdentifier resourceBundle2 = main; > > only. The rest re foeach loops, diamonds and the unlucky reformanting which NB > did, but They are > closed now And I can not do undo :( > > One aditional logic change is > > + if (val1.length() > 1000) { > + errLog("Skipping chek of: " + key + " too long. (" + Please fix typos in string literals. > val1.length() + ")"); > + continue; > } > > This get rid of the 12k long help line (which no one will ever translate :) ) > > Attached are also results of those two test runs for 1.5 and head. > > Again, thank you very very much, feel free to use the results as informative only. > > > Any changes to pl/de ( as it is now, or possible celaning) is ok to go to head+1.5 Apart from that the patch looks okay to me. Jacob From gitne at gmx.de Tue Jul 1 14:29:26 2014 From: gitne at gmx.de (Jacob Wisor) Date: Tue, 01 Jul 2014 16:29:26 +0200 Subject: [rfc][icedtea-web] Fix handling of UI controls in Java console In-Reply-To: <53B2810F.3060403@redhat.com> References: <53AF39FB.8060808@gmx.de> <53B2810F.3060403@redhat.com> Message-ID: <53B2C5C6.9020603@gmx.de> On 07/01/2014 11:36 AM, Jiri Vanek wrote: > On 06/28/2014 11:56 PM, Jacob Wisor wrote: >> Hello there! >> >> The subject says it all. ;-) >> >> Jacob > > > No objections - only one really minor nitpick. When logs cross over several > thousands, they can get slow. Yes, but this a problem of the log's JTextField and has nothing to with setting the enabled state of JCheckBoxes. I have thought of it to. The log should probably be limited to something like 1000 lines or a configurable count. > Then the feature of - hide all messages/headers , then set desired parts and > then show messages/headers again, was quite useful. So think about this > disabling/enabling before push - well the disabling/enabling looks at least > cooler then it was without (and As I know you, I would easily guess the reasons > for it :) ) I think it is OK. What bothers me more are those many anonymous classes in ConsoleOutputPane, spawning as many object at runtime. So, this is why I thought you might request that the JCheckBoxes' enabled state to be handled in separate anonymous classes as well. What do you think? Dispatching to distinct listeners is faster at runtime but requires more storage space and memory at runtime. Using a shared listener is a little bit slower on dispatching but requires less storage space and less memory at runtime. Jacob From jvanek at redhat.com Tue Jul 1 14:33:07 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 16:33:07 +0200 Subject: [rfc][icedtea-web] Fix handling of UI controls in Java console In-Reply-To: <53B2C5C6.9020603@gmx.de> References: <53AF39FB.8060808@gmx.de> <53B2810F.3060403@redhat.com> <53B2C5C6.9020603@gmx.de> Message-ID: <53B2C6A3.7090203@redhat.com> On 07/01/2014 04:29 PM, Jacob Wisor wrote: > On 07/01/2014 11:36 AM, Jiri Vanek wrote: >> On 06/28/2014 11:56 PM, Jacob Wisor wrote: >>> Hello there! >>> >>> The subject says it all. ;-) >>> >>> Jacob >> >> >> No objections - only one really minor nitpick. When logs cross over several >> thousands, they can get slow. > > Yes, but this a problem of the log's JTextField and has nothing to with setting the enabled state of > JCheckBoxes. I have thought of it to. The log should probably be limited to something like 1000 > lines or a configurable count. > >> Then the feature of - hide all messages/headers , then set desired parts and >> then show messages/headers again, was quite useful. So think about this >> disabling/enabling before push - well the disabling/enabling looks at least >> cooler then it was without (and As I know you, I would easily guess the reasons >> for it :) ) > > I think it is OK. > What bothers me more are those many anonymous classes in ConsoleOutputPane, spawning as many object > at runtime. So, this is why I thought you might request that the JCheckBoxes' enabled state to be > handled in separate anonymous classes as well. What do you think? Dispatching to distinct listeners > is faster at runtime but requires more storage space and memory at runtime. Using a shared listener > is a little bit slower on dispatching but requires less storage space and less memory at runtime. Yah I'm aware of this. And I feel a bit uncomfortable about this. This shared listener sounds like an good idea to me. As for te limit, I'mnot fan of it. There is "clear mesages" button. And it should serve its purpose. Also by default console is hidden. That means that no lines are rocessed. AFAIK there is absolutely no performance drop with hidden console. But reducing of the huge number of anonymous classes is definitively worthy to try. J. From bugzilla-daemon at icedtea.classpath.org Tue Jul 1 14:50:54 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 01 Jul 2014 14:50:54 +0000 Subject: [Bug 1794] LiveConnect - Problem with String arrays between Java and Javascript In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1794 helpcrypto at gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |helpcrypto at gmail.com --- Comment #3 from helpcrypto at gmail.com --- Isn't this a duplicate of http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1298 ? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Tue Jul 1 14:57:19 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 01 Jul 2014 16:57:19 +0200 Subject: javaws CLI with Icedtea-web In-Reply-To: <53B29C50.7010405@redhat.com> References: <23C2F298-0602-457E-BA71-362A10334854@cern.ch> <53B16DF5.7000206@redhat.com> <972ECB76-39B1-4604-856D-6D19F2315007@cern.ch> <53B180E1.1070106@gmx.de> <5225D11B-6CB0-4AB0-ACA2-7E9032A8EF6B@cern.ch> <53B29C50.7010405@redhat.com> Message-ID: <53B2CC4F.3080501@redhat.com> On 07/01/2014 01:32 PM, Jiri Vanek wrote: > On 06/30/2014 05:41 PM, Chris Lee wrote: >> Hi Jacob, >> On Jun 30, 2014, at 5:23 PM, Jacob Wisor wrote: >> >>> On 06/30/2014 04:39 PM, Chris Lee wrote: >>>> Hi Jiri >>>> >>>> Thanks so much >>>> >>>> To explain as well, what I am trying to do is use a specific proxy server and port for a >>>> specific website. >>>> I had thought that a link to the CLI might be the quickest if I can get it working, If there is >>>> an easier way to configure, then I am open to suggestions. >>> >>> Try using Java's network configuration properties like http.proxyHost, http.proxyPort, >>> https.proxyHost, https.proxyPort, ftp.proxyHost, ftp.proxyPort, gopher.proxyHost, >>> gopher.proxyPort, socksProxyHost, socksProxyPort with the -J-D switch. For more information have >>> a look into >>> /lib/net.properties. >> Assuming that they can/should be applied in the same manner as the properties from before, but I >> appear to be having the same issue where it is not being applied. >> >> ie: >> [chlee at pc-atlas-cr-35 .icedtea]$ javaws -verbose -J-Dhttp.proxy.Host=atlasgw-exp.cern.ch >> -J-Dhttp.proxyPort=3128 http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >> Loading User level properties from: /atlas-home/1/chlee/.icedtea/deployment.properties >> Starting security dialog thread >> Using firefox's profiles file: /atlas-home/1/chlee/.mozilla/firefox/profiles.ini >> Found preferences file: /atlas-home/1/chlee/.mozilla/firefox/4mi0hwbe.default/prefs.js >> Read 77 entries from Firefox's preferences >> JNLP file location: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >> call privileged method: getCodeBase >> result: null >> Status: CONNECT STARTED +(CONNECT STARTED) @ /dipbrowser/launch.jnlp >> Status: CONNECT DOWNLOAD STARTED +(DOWNLOAD) @ /dipbrowser/launch.jnlp >> Status: CONNECTING DOWNLOAD STARTED +(CONNECTING) -(CONNECT) @ /dipbrowser/launch.jnlp >> All possible urls for location=http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >> state=CONNECTING DOWNLOAD STARTED : [http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp, >> http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp] >> Selecting proxy for: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >> Browser proxy option "4" (Automatic) not supported yet. >> Browser selected proxies: [DIRECT] >> Selected proxies: [DIRECT] >> Selecting proxy for: socket://dipbrowser.web.cern.ch:80 >> Browser proxy option "4" (Automatic) not supported yet. >> Browser selected proxies: [DIRECT] >> Selected proxies: [DIRECT] >>> >>>>> 1.4.1 is outdated. If you need for some reason to stay with 1.4, please update to 1.4.2, >>>>> however - please swap to 1.5. It was released few month ago, is stable, and a a lot of fixes >>>>> was fixed here. >>>> >>>> This installation is for the ATLAS experiment at CERN. For security reason, we are usually >>>> compelled to use what is available in the SLC repos, which unfortunately for me right now is 1.4.1 >>> >>> If security is key to you, you shouldn't probably be using IcedTea-Web yet. Instead, resort to >>> Oracle's Java Web Start implementation. This product is feature and specification complete, in >>> contrast to IcedTea-Web. Java Web Start has most probably received far more security fixes and >>> screening than IcedTea-Web. Personally, at the current stage of IcedTea-Web I would advise any >>> enterprise or security aware user not to use IcedTea-Web. >> I believe we had a number of issues with the Oracles Javaws. somethings like the latest updates >> forced us to keep things current all the time, and while we are in production runs, things can be >> locked down for months at a time or we could lose data taking at our experiment. >> Right now this is me testing to see if I can get this to work >> > Chris, Just to completeness, may you try the -Xnofork together with your Experiments? > > Anyway it sounds like bug. I will look into it. > Well this is bug. As it is done in ITW, the proxy* settings are loaded from configurations before the value of -property is merged. But it do not explain why even the -J-Ddeployment.blah is not working. //me must find what specification says Looking inisde as it was: the ITW properties are loaded form file + they are mixed into system properties proxy is selected launcher object is created "-property" argument's values are merged into JNLPresources and later ... I'mnot sure if they are even later merged into properties It is clear that original NETX wanted to keep the -property's params as isolated per jnlpfile After attached patch the ITW properties are loaded form file + they are mixed into system properties "-property" argument's values are merged into ITW properties (so not into system properties) proxy is selected launcher object is created "-property" argument's values are still merged into JNLPresources So now the config singleton have the -property(s) shared. Also set on jnlpconfig value will not change the value in per-jnlpresource I believe that this can be correct as - javaws have always isolated JVM - applets, with shared JVM, have always same -property(s) set via itwsettings (command-line args) Well my fix can probably go into 1.4 and 1.5, but for head the properties should be revisited one more times. Maybe also -D and -J-D should be handled differently. Are actually -J working with forked JVM? By check on code.. not The patch contains small refactoring to not duplicate code. The test is attached likewise. Chis, are you able to build patched RPMs? J. -------------- next part -------------- A non-text attachment was scrubbed... Name: mergePropertyArgumentsIntoCnfigurationSingleton.patch Type: text/x-patch Size: 3787 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: mergePropertyArgumentsIntoCnfigurationSingleton-refactoringTest.patch Type: text/x-patch Size: 4312 bytes Desc: not available URL: From chris.lee at cern.ch Tue Jul 1 15:10:04 2014 From: chris.lee at cern.ch (Chris Lee) Date: Tue, 1 Jul 2014 17:10:04 +0200 Subject: javaws CLI with Icedtea-web In-Reply-To: <53B2CC4F.3080501@redhat.com> References: <23C2F298-0602-457E-BA71-362A10334854@cern.ch> <53B16DF5.7000206@redhat.com> <972ECB76-39B1-4604-856D-6D19F2315007@cern.ch> <53B180E1.1070106@gmx.de> <5225D11B-6CB0-4AB0-ACA2-7E9032A8EF6B@cern.ch> <53B29C50.7010405@redhat.com> <53B2CC4F.3080501@redhat.com> Message-ID: On Jul 1, 2014, at 4:57 PM, Jiri Vanek wrote: > On 07/01/2014 01:32 PM, Jiri Vanek wrote: >> On 06/30/2014 05:41 PM, Chris Lee wrote: >>> Hi Jacob, >>> On Jun 30, 2014, at 5:23 PM, Jacob Wisor wrote: >>> >>>> On 06/30/2014 04:39 PM, Chris Lee wrote: >>>>> Hi Jiri >>>>> >>>>> Thanks so much >>>>> >>>>> To explain as well, what I am trying to do is use a specific proxy server and port for a >>>>> specific website. >>>>> I had thought that a link to the CLI might be the quickest if I can get it working, If there is >>>>> an easier way to configure, then I am open to suggestions. >>>> >>>> Try using Java's network configuration properties like http.proxyHost, http.proxyPort, >>>> https.proxyHost, https.proxyPort, ftp.proxyHost, ftp.proxyPort, gopher.proxyHost, >>>> gopher.proxyPort, socksProxyHost, socksProxyPort with the -J-D switch. For more information have >>>> a look into >>>> /lib/net.properties. >>> Assuming that they can/should be applied in the same manner as the properties from before, but I >>> appear to be having the same issue where it is not being applied. >>> >>> ie: >>> [chlee at pc-atlas-cr-35 .icedtea]$ javaws -verbose -J-Dhttp.proxy.Host=atlasgw-exp.cern.ch >>> -J-Dhttp.proxyPort=3128 http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >>> Loading User level properties from: /atlas-home/1/chlee/.icedtea/deployment.properties >>> Starting security dialog thread >>> Using firefox's profiles file: /atlas-home/1/chlee/.mozilla/firefox/profiles.ini >>> Found preferences file: /atlas-home/1/chlee/.mozilla/firefox/4mi0hwbe.default/prefs.js >>> Read 77 entries from Firefox's preferences >>> JNLP file location: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >>> call privileged method: getCodeBase >>> result: null >>> Status: CONNECT STARTED +(CONNECT STARTED) @ /dipbrowser/launch.jnlp >>> Status: CONNECT DOWNLOAD STARTED +(DOWNLOAD) @ /dipbrowser/launch.jnlp >>> Status: CONNECTING DOWNLOAD STARTED +(CONNECTING) -(CONNECT) @ /dipbrowser/launch.jnlp >>> All possible urls for location=http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >>> state=CONNECTING DOWNLOAD STARTED : [http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp, >>> http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp] >>> Selecting proxy for: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >>> Browser proxy option "4" (Automatic) not supported yet. >>> Browser selected proxies: [DIRECT] >>> Selected proxies: [DIRECT] >>> Selecting proxy for: socket://dipbrowser.web.cern.ch:80 >>> Browser proxy option "4" (Automatic) not supported yet. >>> Browser selected proxies: [DIRECT] >>> Selected proxies: [DIRECT] >>>> >>>>>> 1.4.1 is outdated. If you need for some reason to stay with 1.4, please update to 1.4.2, >>>>>> however - please swap to 1.5. It was released few month ago, is stable, and a a lot of fixes >>>>>> was fixed here. >>>>> >>>>> This installation is for the ATLAS experiment at CERN. For security reason, we are usually >>>>> compelled to use what is available in the SLC repos, which unfortunately for me right now is 1.4.1 >>>> >>>> If security is key to you, you shouldn't probably be using IcedTea-Web yet. Instead, resort to >>>> Oracle's Java Web Start implementation. This product is feature and specification complete, in >>>> contrast to IcedTea-Web. Java Web Start has most probably received far more security fixes and >>>> screening than IcedTea-Web. Personally, at the current stage of IcedTea-Web I would advise any >>>> enterprise or security aware user not to use IcedTea-Web. >>> I believe we had a number of issues with the Oracles Javaws. somethings like the latest updates >>> forced us to keep things current all the time, and while we are in production runs, things can be >>> locked down for months at a time or we could lose data taking at our experiment. >>> Right now this is me testing to see if I can get this to work >>> >> Chris, Just to completeness, may you try the -Xnofork together with your Experiments? >> >> Anyway it sounds like bug. I will look into it. >> > > Well this is bug. As it is done in ITW, the proxy* settings are loaded from configurations before the value of -property is merged. > > But it do not explain why even the -J-Ddeployment.blah is not working. //me must find what specification says > > Looking inisde > > as it was: > the ITW properties are loaded form file > + they are mixed into system properties > proxy is selected > launcher object is created > "-property" argument's values are merged into JNLPresources > and later ... I'mnot sure if they are even later merged into properties > > It is clear that original NETX wanted to keep the -property's params as isolated per jnlpfile > > > After attached patch > the ITW properties are loaded form file > + they are mixed into system properties > "-property" argument's values are merged into ITW properties (so not into system properties) > proxy is selected > launcher object is created > "-property" argument's values are still merged into JNLPresources > > So now the config singleton have the -property(s) shared. Also set on jnlpconfig value will not change the value in per-jnlpresource > > > I believe that this can be correct as > - javaws have always isolated JVM > - applets, with shared JVM, have always same -property(s) set via itwsettings (command-line args) > > Well my fix can probably go into 1.4 and 1.5, but for head the properties should be revisited one more times. Maybe also -D and -J-D should be handled differently. > Are actually -J working with forked JVM? By check on code.. not > > The patch contains small refactoring to not duplicate code. The test is attached likewise. > > > Chis, are you able to build patched RPMs? Should be able to in order to test, but of course for production I would have to wait for the official patched versions to come through, but at least It would know where we stand and be able to plan. > > J. > > > > > From guillaume at alaux.net Tue Jul 1 19:44:06 2014 From: guillaume at alaux.net (Guillaume Alaux) Date: Tue, 1 Jul 2014 21:44:06 +0200 Subject: No font on Java apps with latest u60 IcedTea 2.5.0 Message-ID: Hello, We are experiencing issues with latest IcedTea 2.5.0 on Arch Linux: texts on several Java GUI just vanish. Some users managed to isolate this issue to this last OpenJDK version. Complete discussion is available here: https://bugs.archlinux.org/task/40871 Would anyone have a suggestion about this? Should we open a bug report? Thanks, -- Guillaume From omajid at redhat.com Tue Jul 1 22:02:45 2014 From: omajid at redhat.com (Omair Majid) Date: Tue, 1 Jul 2014 18:02:45 -0400 Subject: No font on Java apps with latest u60 IcedTea 2.5.0 In-Reply-To: References: Message-ID: <20140701220245.GB2043@redhat.com> * Guillaume Alaux [2014-07-01 15:46]: > We are experiencing issues with latest IcedTea 2.5.0 on Arch Linux: > texts on several Java GUI just vanish. Some users managed to isolate > this issue to this last OpenJDK version. I am not sure if it's related but I am aware of: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729 Comment 25 points to another bug: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729#c25 which looks like the real issue here. Maybe you want to revert that patch, rebuild and post your results on the bug? Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From ptisnovs at icedtea.classpath.org Wed Jul 2 09:53:32 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 02 Jul 2014 09:53:32 +0000 Subject: /hg/gfx-test: Another ten new helper methods added into CommonBi... Message-ID: changeset fd8732d7d493 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=fd8732d7d493 author: Pavel Tisnovsky date: Wed Jul 02 11:54:25 2014 +0200 Another ten new helper methods added into CommonBitmapOperations. diffstat: ChangeLog | 5 + src/org/gfxtest/framework/CommonBitmapOperations.java | 250 ++++++++++++++++++ 2 files changed, 255 insertions(+), 0 deletions(-) diffs (335 lines): diff -r 9b45e3d53524 -r fd8732d7d493 ChangeLog --- a/ChangeLog Tue Jul 01 11:08:23 2014 +0200 +++ b/ChangeLog Wed Jul 02 11:54:25 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-02 Pavel Tisnovsky + + * src/org/gfxtest/framework/CommonBitmapOperations.java: + Another ten new helper methods added into CommonBitmapOperations. + 2014-07-01 Pavel Tisnovsky * src/org/gfxtest/framework/CommonBitmapOperations.java: diff -r 9b45e3d53524 -r fd8732d7d493 src/org/gfxtest/framework/CommonBitmapOperations.java --- a/src/org/gfxtest/framework/CommonBitmapOperations.java Tue Jul 01 11:08:23 2014 +0200 +++ b/src/org/gfxtest/framework/CommonBitmapOperations.java Wed Jul 02 11:54:25 2014 +0200 @@ -2372,6 +2372,31 @@ } /** + * Create new buffered image containing vertical blue gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithVerticalBlueGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createVerticalBlueGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing vertical blue gradient and then perform * basic BitBlt test. * @@ -2451,6 +2476,31 @@ } /** + * Create new buffered image containing horizontal green gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithHorizontalGreenGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createHorizontalGreenGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing horizontal green gradient and then perform * basic BitBlt test. * @@ -2530,6 +2580,31 @@ } /** + * Create new buffered image containing vertical green gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithVerticalGreenGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createVerticalGreenGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing vertical green gradient and then perform * basic BitBlt test. * @@ -2609,6 +2684,31 @@ } /** + * Create new buffered image containing horizontal yellow gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithHorizontalYellowGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createHorizontalYellowGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing horizontal yellow gradient and then perform * basic BitBlt test. * @@ -2688,6 +2788,31 @@ } /** + * Create new buffered image containing vertical yellow gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithVerticalYellowGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createVerticalYellowGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing vertical yellow gradient and then perform * basic BitBlt test. * @@ -2767,6 +2892,31 @@ } /** + * Create new buffered image containing horizontal magenta gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithHorizontalMagentaGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createHorizontalMagentaGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing horizontal magenta gradient and then perform * basic BitBlt test. * @@ -2846,6 +2996,31 @@ } /** + * Create new buffered image containing vertical magenta gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithVerticalMagentaGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createVerticalMagentaGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing vertical magenta gradient and then perform * basic BitBlt test. * @@ -2925,6 +3100,31 @@ } /** + * Create new buffered image containing horizontal cyan gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithHorizontalCyanGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createHorizontalCyanGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing horizontal cyan gradient and then perform * basic BitBlt test. * @@ -3004,6 +3204,31 @@ } /** + * Create new buffered image containing vertical cyan gradient and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithVerticalCyanGradientImage(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ImageFactory.createVerticalCyanGradientImage(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing vertical cyan gradient and then perform * basic BitBlt test. * @@ -3085,6 +3310,31 @@ } /** + * Create new buffered image containing RGB pattern #1 and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithRGBTexture1Image(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ProceduralTextureFactory.createRGBTexture1(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing RGB pattern #1 and then perform * basic BitBlt test. * From aazores at redhat.com Wed Jul 2 13:57:06 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 02 Jul 2014 09:57:06 -0400 Subject: [rfc][icedtea-web][policyeditor] Dispose on close fix In-Reply-To: <53B1CF6A.10600@gmx.de> References: <630784896.944129.1404157097815.JavaMail.zimbra@redhat.com> <53B1CF6A.10600@gmx.de> Message-ID: <53B40FB2.9040406@redhat.com> On 06/30/2014 04:58 PM, Jacob Wisor wrote: > On 06/30/2014 09:38 PM, Andrew Azores wrote: >> Hi, >> >> I noticed today that closing PolicyEditor via the window manager (in >> my case, alt-shift-q) does not properly respect the "Cancel" option >> on the confirmation dialog which appears if you are exiting without >> first saving changes. Using File>Exit or the Close button however >> does respect the Cancel option. The problem is that the window is >> being disposed due to the window manager close event, rather than >> letting the editor decide on its own when to dispose itself. Fixing >> this is as simple as removing one extra dispose() and changing the >> default close operation from DISPOSE_ON_CLOSE to DO_NOTHING_ON_CLOSE. >> > > Look good to me... but wouldn't you like to add a "save changes > dialog" before closing, when PolicyEditor has not been launched by the > IcedTea-Web control panel? > > Jacob There should be already, have you found a case where it doesn't appear? Thanks, -- Andrew A From aazores at redhat.com Wed Jul 2 14:01:14 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 02 Jul 2014 10:01:14 -0400 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53B29B1A.10707@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53AC3661.4080107@redhat.com> <53B29B1A.10707@redhat.com> Message-ID: <53B410AA.9010803@redhat.com> On 07/01/2014 07:27 AM, Jiri Vanek wrote: > On 06/26/2014 05:04 PM, Andrew Azores wrote: >> On 06/24/2014 11:39 AM, Andrew Azores wrote: >>> On 06/24/2014 10:40 AM, Jiri Vanek wrote: >>>> On 06/24/2014 03:58 PM, Andrew Azores wrote: >>>>> On 06/19/2014 11:03 AM, Jiri Vanek wrote: >>>>>> On 06/18/2014 07:44 PM, Andrew Azores wrote: >>>>>>> On 06/18/2014 12:01 PM, Jiri Vanek wrote: >>>>>>>> On 05/27/2014 06:23 PM, Andrew Azores wrote: >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> This patch allows signed applets with sandbox permissions >>>>>>>>> specified in >>>>>>>>> their manifests to actually >>>>>>>> >>>>>>>> >>>>>>>> How it is dealing with mixed (signed + unsigned code) apps? >>>>>>> >>>>>>> I don't have any examples of mixed signing apps with a >>>>>>> Permissions manifest attribute, but a >>>>>>> reproducer could be prepared for this case. >>>>>> >>>>>> It seems to be under construction... >>>>>>> >>>>>>>>> be run sandboxed. This is in contrast to the current behaviour >>>>>>>>> where >>>>>>>>> such applets will fail to >>>>>>>>> launch, and the failure message presented asks the user to try >>>>>>>>> launching via the Sandbox button next >>>>>>>>> time. This was because the dialog which presented the Sandbox >>>>>>>>> button >>>>>>>>> appeared very early in the >>>>>>>>> JNLPClassLoader's life cycle - early enough that no security >>>>>>>>> settings >>>>>>>>> had yet been set for the >>>>>>>>> classloader or any of the applet's JAR locations - whereas the >>>>>>>>> manifest checks were done later, >>>>>>>>> after these settings would have already been initialized. >>>>>>>>> Fixing the >>>>>>>>> issue was not as simple as >>>>>>>>> doing the manifest checks before presenting the security dialog >>>>>>>>> because the dialog was presented >>>>>>>>> part way through the initialization process, where JARs are being >>>>>>>>> downloaded and checked for >>>>>>>>> signing, so that the appropriate security dialog could be >>>>>>>>> shown to the >>>>>>>>> user. Putting the manifest >>>>>>>>> checks first would therefore not work properly because the >>>>>>>>> JARs were >>>>>>>>> not yet available. This patch >>>>>>>>> resolves the issue by moving the manifest checks inside the >>>>>>>>> method >>>>>>>>> which initializes the relevant >>>>>>>>> security settings, such that the required resources are >>>>>>>>> available, it >>>>>>>>> is known what type of applet >>>>>>>>> is about to be run, but the security settings for the JAR >>>>>>>>> locations >>>>>>>>> have not yet been initialized >>>>>>>>> and the applet can thus still be set to run sandboxed safely. >>>>>>>>> >>>>>>>>> Additionally, the ManifestAttributesChecker check for the >>>>>>>>> Permissions >>>>>>>>> attribute is no longer skipped >>>>>>>>> when Extended Applet Security is set to the Low level, since this >>>>>>>>> allows for signed applets with >>>>>>>>> Sandbox permissions specified in their manifests to run with full >>>>>>>>> permissions when Low security is set. >>>>>>>>> >>>>>>>> >>>>>>>> Well this concept I do not like. >>>>>>>> >>>>>>>> Imho the correct approach is to check the attributes, but do >>>>>>>> not take >>>>>>>> any actions (except print warnings eg "normally I would fail >>>>>>>> because >>>>>>>> of..,but low security is on". >>>>>>>> >>>>>>>> With exception on sandbox attribute - here probably warning >>>>>>>> (strong one) >>>>>>>> requesting users attention. >>>>>>>> >>>>>>>> What do you think? - Well this dialogue would be good place >>>>>>>> for run in >>>>>>>> sandbox button too :) >>>>>>>> >>>>>>>> Otherwise the only way how to disable manifest check willbe the >>>>>>>> deployment property which I added. >>>>>>> >>>>>>> Sure. I just *really* am not comfortable with leaving it as-is, >>>>>>> which means Low Security allows >>>>>> >>>>>> I agree. >>>>>>> applets to be silently granted elevated permissions. I can >>>>>>> imagine this too easily being >>>>>>> abused by a >>>>>>> malicious applet developer. I'm fine with adding an extra prompt >>>>>>> here when on Low Security >>>>>>> though, >>>>>>> warning the user that due to the Low Security the applet may be >>>>>>> granted elevated permissions >>>>>>> if it >>>>>>> is run. >>>>>> >>>>>> The dialogue canbe added as separate changeset. >>>>>> >>>>>> But for current changeset's behavior I would like the low >>>>>> security is not affecting *only* >>>>>> permissions attribute. Other attributes checks will be skipped. >>>>>>> >>>>>>>> >>>>>> ... >>>>>>>>> - setSecurity(); >>>>>>>> >>>>>>>> I'm wondering, setSecurity moved, but setPermissions remained? >>>>>>> >>>>>>> You mean initializePermissions? Yea, it didn't have to be moved. >>>>>> >>>>>> Still surprising me. >>>>>> >>>>>>> >>>>>>>>> - >>>>>>>>> - ManifestAttributesChecker mac = new >>>>>>>>> ManifestAttributesChecker(security, file, signing, >>>>>>>>> securityDelegate); >>>>>>>>> - mac.checkAll(); >>>>>>>>> - >>>>>>>>> installShutdownHooks(); >>>>>>>>> >>>>>>>>> >>>>>>>>> @@ -592,14 +586,12 @@ public class JNLPClassLoader extends URL >>>>>>>>> //Check if main jar is found within extensions >>>>>>>>> foundMainJar = foundMainJar || >>>>>>>>> hasMainInExtensions(); >>>>>>>>> >>>>>>>>> + setSecurity(); >>>>>>>>> + initializeManifestAttributesChecker(); >>>>>>>>> + mac.checkAll(); >>>>>>>>> return; >>>>>>>>> } >>>>>>>>> - /* >>>>>>>>> - if (jars == null || jars.length == 0) { >>>>>>>>> - throw new LaunchException(null, null, >>>>>>>>> R("LSFatal"), >>>>>>>>> - R("LCInit"), >>>>>>>>> R("LFatalVerification"), "No jars!"); >>>>>>>>> - } >>>>>>>>> - */ >>>>>>>> >>>>>>>> This should probably cam in as separate changset. Hmm.. When it >>>>>>>> was >>>>>>>> commented Out actually? :) >>>>>>> >>>>>> >>>>>> then please remove as separate changeset. Together with the hunk >>>>>> a bit lower. >>>>>> >>>>>>>>> >>>>>>>>> - jarLocationSecurityMap.put(jarDesc.getLocation(), >>>>>>>>> jarSecurity); >>>>>>>>> + if (containsUnsignedJar && containsSignedJar) { >>>>>>>>> + break; >>>>>>>>> + } >>>>>>>>> } >>>>>>>>> >>>>>>>>> if (containsSignedJar && containsUnsignedJar) { >>>>>>>>> checkPartialSigningWithUser(); >>>>>>>>> } >>>>>>>>> >>>>>>>>> + initializeManifestAttributesChecker(); >>>>>>>>> + mac.checkAll(); >>>>>>>>> + >>>>>>>>> + for (JARDesc jarDesc : validJars) { >>>>>>>> >>>>>>>> There I'm missing something. Why is this secoond field even >>>>>>>> needed? >>>>>>>> In any case, please mention it in changelog. >>>>>>> >>>>>>> Which second field? "mac"? >>>>>> >>>>>> Oh sorry. no. - The validJars. Can you expalin on them? >>>>>>> >>>>>>>>> + final URL codebase = getJnlpFileCodebase(); >>>>>>>>> + final SecurityDesc jarSecurity = >>>>>>>>> securityDelegate.getCodebaseSecurityDesc(jarDesc, >>>>>>>>> codebase.getHost()); >>>>>>>>> + jarLocationSecurityMap.put(jarDesc.getLocation(), >>>>>>>>> jarSecurity); >>>>>>>>> + } >>>>>>>>> + >>>>>>>>> activateJars(initialJars); >>>>>>>>> } >>>>>>>>> + >>>>>>>>> + private void initializeManifestAttributesChecker() throws >>>>>>>>> LaunchException { >>>>>>>>> + if (mac == null) { >>>>>>>>> + file.getManifestsAttributes().setLoader(this); >>>>>>>>> + mac = new ManifestAttributesChecker(security, file, >>>>>>>>> signing, securityDelegate); >>>>>>>>> + } >>>>>>>>> + } >>>>>>>>> + >>>>>>>>> + private URL getJnlpFileCodebase() { >>>>>>>>> + final URL codebase; >>>>>>>>> + if (file.getCodeBase() != null) { >>>>>>>>> + codebase = file.getCodeBase(); >>>>>>>>> + } else { >>>>>>>>> + // FIXME: codebase should be the codebase of the >>>>>>>>> Main Jar >>>>>>>>> not >>>>>>>>> + // the location. Although, it still works in the >>>>>>>>> current >>>>>>>>> state. >>>>>>>>> + codebase = >>>>>>>>> file.getResources().getMainJAR().getLocation(); >>>>>>>>> + } >>>>>>>>> + return codebase; >>>>>>>>> + } >>>>>>>>> >>>>>>>>> /*** >>>>>>>>> * Checks for the jar that contains the attribute. >>>>>>>>> @@ -762,13 +780,12 @@ public class JNLPClassLoader extends URL >>>>>>>>> * @param name attribute to be found >>>>>>>>> */ >>>>>>>>> public String checkForAttributeInJars(List jars, >>>>>>>>> Attributes.Name name) { >>>>>>>>> - >>>>>>>>> if (jars.isEmpty()) { >>>>>>>>> return null; >>>>>>>>> } >>>>>>>>> >>>>>>>>> String result = null; >>>>>>>>> - >>>>>>>>> + >>>>>>>>> // Check main jar >>>>>>>>> JARDesc mainJarDesc = ResourcesDesc.getMainJAR(jars); >>>>>>>>> result = >>>>>>>>> getManifestAttribute(mainJarDesc.getLocation(), name); >>>>>>>>> @@ -776,7 +793,7 @@ public class JNLPClassLoader extends URL >>>>>>>>> if (result != null) { >>>>>>>>> return result; >>>>>>>>> } >>>>>>>>> - >>>>>>>>> + >>>>>>>>> // Check first jar >>>>>>>>> JARDesc firstJarDesc = jars.get(0); >>>>>>>>> result = >>>>>>>>> getManifestAttribute(firstJarDesc.getLocation(),name); >>>>>>>>> @@ -2380,12 +2397,15 @@ public class JNLPClassLoader extends URL >>>>>>>>> } >>>>>>>>> >>>>>>>>> public void setRunInSandbox() throws LaunchException { >>>>>>>>> - if (promptedForSandbox || classLoader.security != >>>>>>>>> null >>>>>>>>> - || >>>>>>>>> classLoader.jarLocationSecurityMap.size() != 0) { >>>>>>>>> + if (runInSandbox && classLoader.security != null >>>>>>>>> + && >>>>>>>>> classLoader.jarLocationSecurityMap.size() != 0) { >>>>>>>> >>>>>>>> Why have this condition changed in thisway? I would expect >>>>>>>> promptedForSandbox || runInSandbox || classLoader.security != >>>>>>>> null && ... >>>>>>> >>>>>>> The ClassLoader can end up attempting to automatically set the >>>>>>> applet to run in sandbox multiple >>>>>>> times, so that condition would cause it to fail in this >>>>>>> situation. The condition was very strong >>>>>>> before on purpose because it was easily possible for the >>>>>>> security settings to have already been >>>>>>> applied before the sandboxing option appeared to the user. Now, >>>>>>> the sandboxing dialog appears >>>>>>> well >>>>>>> beforehand, and automatic sandboxing also happens early enough, >>>>>>> so this condition has to be >>>>>>> slightly >>>>>>> weakened so that it does allow the call to be performed multiple >>>>>>> times, but only if the security >>>>>>> settings have not yet been applied to the classloader/applet. I >>>>>>> haven't tested this but this >>>>>>> condition should also work fine: >>>>>> >>>>>> >>>>>> /me consuimg this and hoping /me understand well >>>>>> %-~ >>>>>> >>>>>>> >>>>>>> runInSandbox && (classLoader.security != null || >>>>>>> jarLocationSecurityMap.size() != 0) >>>>>>> >>>>>>> The classLoader.security and jarLocationSecurityMap conditions >>>>>>> should really always be "in sync" >>>>>>> with each other in this regard though. >>>>>> hmmh. >>>>>> >>>>>>> >>>>>>>> >>>>>>>>> throw new LaunchException(classLoader.file, >>>>>>>>> null, >>>>>> >>>>>>>> +Permissions: sandbox >>>>>>>> >>>>>>>> >>>>>>>> Do we have/need also one with Permissions: all-permissions ? >>>>>>>> I recall >>>>>>>> there is something... >>>>>>> >>>>>>> I don't think so, but maybe there is. I couldn't find anything >>>>>>> with a quick grep. >>>>>>> >>>>>> ...in progress s I guess >>>>>>>> >>>>>> .. >>>>>>>> >>>>>>>> >>>>>>>> Why do you need custom reproducers? The manifest is handled by >>>>>>>> engine >>>>>>> >>>>>>> Ah, I forgot about this. Although a custom reproducer would >>>>>>> still be needed for the mixed signing >>>>>>> case, so I can convert this one to mixed and make normal >>>>>>> "simple" and "signed" ones as well I >>>>>>> suppose. >>>>>>> >>>>>> >>>>>> good! >>>>>> ...snip... >>>>>>>> + assertTrue("Applet should have printed its exit string", >>>>>>>> pr.stdout.contains(CLOSE_STRING)); >>>>>>>> + } >>>>>>>> +} >>>>>>>> >>>>>>>> As this test is already known to fail, it can go (after >>>>>>>> manifest is >>>>>>>> resolved) in as independent changeset. >>>>>>>> >>>>>>>> >>>>>> >>>>>> Well except the issue with low security (and few more >>>>>> expalnationa) I'm ashamed to not have muc >>>>>> more comments :( >>>>>> >>>>>> >>>>>> J. >>>>>> >>>>> >>>>> Latest version of the patch is attached. initializePermissions was >>>>> renamed, the comment hunks were >>>>> removed and done in a separate changeset, and all manifest checks >>>>> are skipped when on low security >>>>> with a WARNING_ALL level message logged. Otherwise, no changes >>>>> from the last patch. >>>>> >>>> >>>> No no. THis is not what I wonted. >>>> >>>> As you mentioned - the signed, but with permissions:sandbox app can >>>> not be run with all permissions. >>>> So skip all attrributes, except permissions one >>>> >>>> The sandbox one should be checked: >>>> signed: permissions:all-permissions - all permissions >>>> unsigned: permissions:all-permissions - sandbox >>>> unsigned: permissions:sandbox - sandbox >>>> signed: permissions:sandbox - sandbox >>>> signed: permissions missing - all permissions >>>> unsigned: permissions missing - sandbox >>>> >>>> On low permissions, no asking. >>>> >>>> For other then low permissions user should be asked for each except >>>> signed: permissions:all-permissions >>>> unsigned: permissions:sandbox >>>> cases. >>>> >>>> But the dialogue can be done as separate changeset (with >>>> custom-permissions button:) >>>> >>>> >>>> >>>>> New tests are also on the way and with the new tests will come the >>>>> fixed version of the previously >>>>> sent test, which will make be a signed reproducer rather than custom. >>>>> >>>> >>>> J. >>>> >>> >>> Okay, I wasn't sure what you had meant. It didn't seem right to skip >>> them all but I thought maybe >>> you had something else in mind to implement to fix it. So here's >>> another attempt. >>> >>> Setting deployment.manifest.attributes.check to false causes all >>> checks to be skipped, except for >>> the Permissions attribute, which is always checked regardless. Using >>> Low Extended Applet Security >>> causes the ALACA and Permissions checks to not generate dialogs and >>> assumes that it's OK to run >>> the applet(s). In the case of the Permissions attribute, it will >>> still auto sandbox if necessary. >>> Is this what you wanted? >>> >>> Thanks, >>> >> >> And attached is the promised update to the Signed reproducer. >> >> Lukasz, if you could please also send the Partial Signing test that >> we put together. >> > > As for partially signed - > > Why KnownTofail? Why just not set alaca? Then it willl match,and no > dialogue will apear :) > > (?) > > If we cannot do this, wee ned to fix the reproducers engine. Adding > ton of knowntofail tests have no meaning. > > > J. > Hmm, good idea... Lukasz, would you mind taking care of this enhancement? ;) For both of the tests patches. Thanks, -- Andrew A From bugzilla-daemon at icedtea.classpath.org Wed Jul 2 15:28:28 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 02 Jul 2014 15:28:28 +0000 Subject: [Bug 1839] [IcedTea7] Provide Infinality Support via fontconfig In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1839 guillaume at archlinux.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |guillaume at archlinux.org --- Comment #3 from guillaume at archlinux.org --- Hi, We (Arch Linux) are experiencing a bug that must be related to this commit. The complete bug report is available here [0]. Short version is: since IcedTea 2.5.0, some Java app with GUI do not display texts any more. Building our package with `--enable-infinality=no` circumvents the issue. FYI, the complete build source is available here [1] (infinality disable not actually displayed on this source). Any idea if this **is** a bug or maybe just a configuration or dependency issue? Thanks, [0] https://bugs.archlinux.org/task/40871 [1] https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/java7-openjdk -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guillaume at alaux.net Wed Jul 2 15:31:10 2014 From: guillaume at alaux.net (Guillaume Alaux) Date: Wed, 2 Jul 2014 17:31:10 +0200 Subject: No font on Java apps with latest u60 IcedTea 2.5.0 In-Reply-To: <20140701220245.GB2043@redhat.com> References: <20140701220245.GB2043@redhat.com> Message-ID: On 2 July 2014 00:02, Omair Majid wrote: > > * Guillaume Alaux [2014-07-01 15:46]: > > We are experiencing issues with latest IcedTea 2.5.0 on Arch Linux: > > texts on several Java GUI just vanish. Some users managed to isolate > > this issue to this last OpenJDK version. > > I am not sure if it's related but I am aware of: > http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729 > > Comment 25 points to another bug: > http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729#c25 > > which looks like the real issue here. Maybe you want to revert that > patch, rebuild and post your results on the bug? > > Thanks, > Omair > > -- > PGP Key: 66484681 (http://pgp.mit.edu/) > Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 Hello Omair, Thanks a lot for this! I have built an OpenJDK+IcedTea package with `--enable-infinality=no` (which disables the part of code you were talking about) which seems to "fix" it. I have just answered on the bug you mentioned. From ldracz at redhat.com Wed Jul 2 15:34:34 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Wed, 2 Jul 2014 11:34:34 -0400 (EDT) Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53B410AA.9010803@redhat.com> References: <5384BC13.5010708@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53AC3661.4080107@redhat.com> <53B29B1A.10707@redhat.com> <53B410AA.9010803@redhat.com> Message-ID: <1868720576.1347648.1404315274305.JavaMail.zimbra@redhat.com> Hello, Yeah, I don't mind taking care of it for both. Thank you, Lukasz ----- Original Message ----- > From: "Andrew Azores" > To: "Jiri Vanek" , "IcedTea" , "Lukasz Dracz" > Sent: Wednesday, July 2, 2014 10:01:14 AM > Subject: Re: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest > > On 07/01/2014 07:27 AM, Jiri Vanek wrote: > > On 06/26/2014 05:04 PM, Andrew Azores wrote: > >> On 06/24/2014 11:39 AM, Andrew Azores wrote: > >>> On 06/24/2014 10:40 AM, Jiri Vanek wrote: > >>>> On 06/24/2014 03:58 PM, Andrew Azores wrote: > >>>>> On 06/19/2014 11:03 AM, Jiri Vanek wrote: > >>>>>> On 06/18/2014 07:44 PM, Andrew Azores wrote: > >>>>>>> On 06/18/2014 12:01 PM, Jiri Vanek wrote: > >>>>>>>> On 05/27/2014 06:23 PM, Andrew Azores wrote: > >>>>>>>>> Hi, > >>>>>>>>> > >>>>>>>>> This patch allows signed applets with sandbox permissions > >>>>>>>>> specified in > >>>>>>>>> their manifests to actually > >>>>>>>> > >>>>>>>> > >>>>>>>> How it is dealing with mixed (signed + unsigned code) apps? > >>>>>>> > >>>>>>> I don't have any examples of mixed signing apps with a > >>>>>>> Permissions manifest attribute, but a > >>>>>>> reproducer could be prepared for this case. > >>>>>> > >>>>>> It seems to be under construction... > >>>>>>> > >>>>>>>>> be run sandboxed. This is in contrast to the current behaviour > >>>>>>>>> where > >>>>>>>>> such applets will fail to > >>>>>>>>> launch, and the failure message presented asks the user to try > >>>>>>>>> launching via the Sandbox button next > >>>>>>>>> time. This was because the dialog which presented the Sandbox > >>>>>>>>> button > >>>>>>>>> appeared very early in the > >>>>>>>>> JNLPClassLoader's life cycle - early enough that no security > >>>>>>>>> settings > >>>>>>>>> had yet been set for the > >>>>>>>>> classloader or any of the applet's JAR locations - whereas the > >>>>>>>>> manifest checks were done later, > >>>>>>>>> after these settings would have already been initialized. > >>>>>>>>> Fixing the > >>>>>>>>> issue was not as simple as > >>>>>>>>> doing the manifest checks before presenting the security dialog > >>>>>>>>> because the dialog was presented > >>>>>>>>> part way through the initialization process, where JARs are being > >>>>>>>>> downloaded and checked for > >>>>>>>>> signing, so that the appropriate security dialog could be > >>>>>>>>> shown to the > >>>>>>>>> user. Putting the manifest > >>>>>>>>> checks first would therefore not work properly because the > >>>>>>>>> JARs were > >>>>>>>>> not yet available. This patch > >>>>>>>>> resolves the issue by moving the manifest checks inside the > >>>>>>>>> method > >>>>>>>>> which initializes the relevant > >>>>>>>>> security settings, such that the required resources are > >>>>>>>>> available, it > >>>>>>>>> is known what type of applet > >>>>>>>>> is about to be run, but the security settings for the JAR > >>>>>>>>> locations > >>>>>>>>> have not yet been initialized > >>>>>>>>> and the applet can thus still be set to run sandboxed safely. > >>>>>>>>> > >>>>>>>>> Additionally, the ManifestAttributesChecker check for the > >>>>>>>>> Permissions > >>>>>>>>> attribute is no longer skipped > >>>>>>>>> when Extended Applet Security is set to the Low level, since this > >>>>>>>>> allows for signed applets with > >>>>>>>>> Sandbox permissions specified in their manifests to run with full > >>>>>>>>> permissions when Low security is set. > >>>>>>>>> > >>>>>>>> > >>>>>>>> Well this concept I do not like. > >>>>>>>> > >>>>>>>> Imho the correct approach is to check the attributes, but do > >>>>>>>> not take > >>>>>>>> any actions (except print warnings eg "normally I would fail > >>>>>>>> because > >>>>>>>> of..,but low security is on". > >>>>>>>> > >>>>>>>> With exception on sandbox attribute - here probably warning > >>>>>>>> (strong one) > >>>>>>>> requesting users attention. > >>>>>>>> > >>>>>>>> What do you think? - Well this dialogue would be good place > >>>>>>>> for run in > >>>>>>>> sandbox button too :) > >>>>>>>> > >>>>>>>> Otherwise the only way how to disable manifest check willbe the > >>>>>>>> deployment property which I added. > >>>>>>> > >>>>>>> Sure. I just *really* am not comfortable with leaving it as-is, > >>>>>>> which means Low Security allows > >>>>>> > >>>>>> I agree. > >>>>>>> applets to be silently granted elevated permissions. I can > >>>>>>> imagine this too easily being > >>>>>>> abused by a > >>>>>>> malicious applet developer. I'm fine with adding an extra prompt > >>>>>>> here when on Low Security > >>>>>>> though, > >>>>>>> warning the user that due to the Low Security the applet may be > >>>>>>> granted elevated permissions > >>>>>>> if it > >>>>>>> is run. > >>>>>> > >>>>>> The dialogue canbe added as separate changeset. > >>>>>> > >>>>>> But for current changeset's behavior I would like the low > >>>>>> security is not affecting *only* > >>>>>> permissions attribute. Other attributes checks will be skipped. > >>>>>>> > >>>>>>>> > >>>>>> ... > >>>>>>>>> - setSecurity(); > >>>>>>>> > >>>>>>>> I'm wondering, setSecurity moved, but setPermissions remained? > >>>>>>> > >>>>>>> You mean initializePermissions? Yea, it didn't have to be moved. > >>>>>> > >>>>>> Still surprising me. > >>>>>> > >>>>>>> > >>>>>>>>> - > >>>>>>>>> - ManifestAttributesChecker mac = new > >>>>>>>>> ManifestAttributesChecker(security, file, signing, > >>>>>>>>> securityDelegate); > >>>>>>>>> - mac.checkAll(); > >>>>>>>>> - > >>>>>>>>> installShutdownHooks(); > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> @@ -592,14 +586,12 @@ public class JNLPClassLoader extends URL > >>>>>>>>> //Check if main jar is found within extensions > >>>>>>>>> foundMainJar = foundMainJar || > >>>>>>>>> hasMainInExtensions(); > >>>>>>>>> > >>>>>>>>> + setSecurity(); > >>>>>>>>> + initializeManifestAttributesChecker(); > >>>>>>>>> + mac.checkAll(); > >>>>>>>>> return; > >>>>>>>>> } > >>>>>>>>> - /* > >>>>>>>>> - if (jars == null || jars.length == 0) { > >>>>>>>>> - throw new LaunchException(null, null, > >>>>>>>>> R("LSFatal"), > >>>>>>>>> - R("LCInit"), > >>>>>>>>> R("LFatalVerification"), "No jars!"); > >>>>>>>>> - } > >>>>>>>>> - */ > >>>>>>>> > >>>>>>>> This should probably cam in as separate changset. Hmm.. When it > >>>>>>>> was > >>>>>>>> commented Out actually? :) > >>>>>>> > >>>>>> > >>>>>> then please remove as separate changeset. Together with the hunk > >>>>>> a bit lower. > >>>>>> > >>>>>>>>> > >>>>>>>>> - jarLocationSecurityMap.put(jarDesc.getLocation(), > >>>>>>>>> jarSecurity); > >>>>>>>>> + if (containsUnsignedJar && containsSignedJar) { > >>>>>>>>> + break; > >>>>>>>>> + } > >>>>>>>>> } > >>>>>>>>> > >>>>>>>>> if (containsSignedJar && containsUnsignedJar) { > >>>>>>>>> checkPartialSigningWithUser(); > >>>>>>>>> } > >>>>>>>>> > >>>>>>>>> + initializeManifestAttributesChecker(); > >>>>>>>>> + mac.checkAll(); > >>>>>>>>> + > >>>>>>>>> + for (JARDesc jarDesc : validJars) { > >>>>>>>> > >>>>>>>> There I'm missing something. Why is this secoond field even > >>>>>>>> needed? > >>>>>>>> In any case, please mention it in changelog. > >>>>>>> > >>>>>>> Which second field? "mac"? > >>>>>> > >>>>>> Oh sorry. no. - The validJars. Can you expalin on them? > >>>>>>> > >>>>>>>>> + final URL codebase = getJnlpFileCodebase(); > >>>>>>>>> + final SecurityDesc jarSecurity = > >>>>>>>>> securityDelegate.getCodebaseSecurityDesc(jarDesc, > >>>>>>>>> codebase.getHost()); > >>>>>>>>> + jarLocationSecurityMap.put(jarDesc.getLocation(), > >>>>>>>>> jarSecurity); > >>>>>>>>> + } > >>>>>>>>> + > >>>>>>>>> activateJars(initialJars); > >>>>>>>>> } > >>>>>>>>> + > >>>>>>>>> + private void initializeManifestAttributesChecker() throws > >>>>>>>>> LaunchException { > >>>>>>>>> + if (mac == null) { > >>>>>>>>> + file.getManifestsAttributes().setLoader(this); > >>>>>>>>> + mac = new ManifestAttributesChecker(security, file, > >>>>>>>>> signing, securityDelegate); > >>>>>>>>> + } > >>>>>>>>> + } > >>>>>>>>> + > >>>>>>>>> + private URL getJnlpFileCodebase() { > >>>>>>>>> + final URL codebase; > >>>>>>>>> + if (file.getCodeBase() != null) { > >>>>>>>>> + codebase = file.getCodeBase(); > >>>>>>>>> + } else { > >>>>>>>>> + // FIXME: codebase should be the codebase of the > >>>>>>>>> Main Jar > >>>>>>>>> not > >>>>>>>>> + // the location. Although, it still works in the > >>>>>>>>> current > >>>>>>>>> state. > >>>>>>>>> + codebase = > >>>>>>>>> file.getResources().getMainJAR().getLocation(); > >>>>>>>>> + } > >>>>>>>>> + return codebase; > >>>>>>>>> + } > >>>>>>>>> > >>>>>>>>> /*** > >>>>>>>>> * Checks for the jar that contains the attribute. > >>>>>>>>> @@ -762,13 +780,12 @@ public class JNLPClassLoader extends URL > >>>>>>>>> * @param name attribute to be found > >>>>>>>>> */ > >>>>>>>>> public String checkForAttributeInJars(List jars, > >>>>>>>>> Attributes.Name name) { > >>>>>>>>> - > >>>>>>>>> if (jars.isEmpty()) { > >>>>>>>>> return null; > >>>>>>>>> } > >>>>>>>>> > >>>>>>>>> String result = null; > >>>>>>>>> - > >>>>>>>>> + > >>>>>>>>> // Check main jar > >>>>>>>>> JARDesc mainJarDesc = ResourcesDesc.getMainJAR(jars); > >>>>>>>>> result = > >>>>>>>>> getManifestAttribute(mainJarDesc.getLocation(), name); > >>>>>>>>> @@ -776,7 +793,7 @@ public class JNLPClassLoader extends URL > >>>>>>>>> if (result != null) { > >>>>>>>>> return result; > >>>>>>>>> } > >>>>>>>>> - > >>>>>>>>> + > >>>>>>>>> // Check first jar > >>>>>>>>> JARDesc firstJarDesc = jars.get(0); > >>>>>>>>> result = > >>>>>>>>> getManifestAttribute(firstJarDesc.getLocation(),name); > >>>>>>>>> @@ -2380,12 +2397,15 @@ public class JNLPClassLoader extends URL > >>>>>>>>> } > >>>>>>>>> > >>>>>>>>> public void setRunInSandbox() throws LaunchException { > >>>>>>>>> - if (promptedForSandbox || classLoader.security != > >>>>>>>>> null > >>>>>>>>> - || > >>>>>>>>> classLoader.jarLocationSecurityMap.size() != 0) { > >>>>>>>>> + if (runInSandbox && classLoader.security != null > >>>>>>>>> + && > >>>>>>>>> classLoader.jarLocationSecurityMap.size() != 0) { > >>>>>>>> > >>>>>>>> Why have this condition changed in thisway? I would expect > >>>>>>>> promptedForSandbox || runInSandbox || classLoader.security != > >>>>>>>> null && ... > >>>>>>> > >>>>>>> The ClassLoader can end up attempting to automatically set the > >>>>>>> applet to run in sandbox multiple > >>>>>>> times, so that condition would cause it to fail in this > >>>>>>> situation. The condition was very strong > >>>>>>> before on purpose because it was easily possible for the > >>>>>>> security settings to have already been > >>>>>>> applied before the sandboxing option appeared to the user. Now, > >>>>>>> the sandboxing dialog appears > >>>>>>> well > >>>>>>> beforehand, and automatic sandboxing also happens early enough, > >>>>>>> so this condition has to be > >>>>>>> slightly > >>>>>>> weakened so that it does allow the call to be performed multiple > >>>>>>> times, but only if the security > >>>>>>> settings have not yet been applied to the classloader/applet. I > >>>>>>> haven't tested this but this > >>>>>>> condition should also work fine: > >>>>>> > >>>>>> > >>>>>> /me consuimg this and hoping /me understand well > >>>>>> %-~ > >>>>>> > >>>>>>> > >>>>>>> runInSandbox && (classLoader.security != null || > >>>>>>> jarLocationSecurityMap.size() != 0) > >>>>>>> > >>>>>>> The classLoader.security and jarLocationSecurityMap conditions > >>>>>>> should really always be "in sync" > >>>>>>> with each other in this regard though. > >>>>>> hmmh. > >>>>>> > >>>>>>> > >>>>>>>> > >>>>>>>>> throw new LaunchException(classLoader.file, > >>>>>>>>> null, > >>>>>> > >>>>>>>> +Permissions: sandbox > >>>>>>>> > >>>>>>>> > >>>>>>>> Do we have/need also one with Permissions: all-permissions ? > >>>>>>>> I recall > >>>>>>>> there is something... > >>>>>>> > >>>>>>> I don't think so, but maybe there is. I couldn't find anything > >>>>>>> with a quick grep. > >>>>>>> > >>>>>> ...in progress s I guess > >>>>>>>> > >>>>>> .. > >>>>>>>> > >>>>>>>> > >>>>>>>> Why do you need custom reproducers? The manifest is handled by > >>>>>>>> engine > >>>>>>> > >>>>>>> Ah, I forgot about this. Although a custom reproducer would > >>>>>>> still be needed for the mixed signing > >>>>>>> case, so I can convert this one to mixed and make normal > >>>>>>> "simple" and "signed" ones as well I > >>>>>>> suppose. > >>>>>>> > >>>>>> > >>>>>> good! > >>>>>> ...snip... > >>>>>>>> + assertTrue("Applet should have printed its exit string", > >>>>>>>> pr.stdout.contains(CLOSE_STRING)); > >>>>>>>> + } > >>>>>>>> +} > >>>>>>>> > >>>>>>>> As this test is already known to fail, it can go (after > >>>>>>>> manifest is > >>>>>>>> resolved) in as independent changeset. > >>>>>>>> > >>>>>>>> > >>>>>> > >>>>>> Well except the issue with low security (and few more > >>>>>> expalnationa) I'm ashamed to not have muc > >>>>>> more comments :( > >>>>>> > >>>>>> > >>>>>> J. > >>>>>> > >>>>> > >>>>> Latest version of the patch is attached. initializePermissions was > >>>>> renamed, the comment hunks were > >>>>> removed and done in a separate changeset, and all manifest checks > >>>>> are skipped when on low security > >>>>> with a WARNING_ALL level message logged. Otherwise, no changes > >>>>> from the last patch. > >>>>> > >>>> > >>>> No no. THis is not what I wonted. > >>>> > >>>> As you mentioned - the signed, but with permissions:sandbox app can > >>>> not be run with all permissions. > >>>> So skip all attrributes, except permissions one > >>>> > >>>> The sandbox one should be checked: > >>>> signed: permissions:all-permissions - all permissions > >>>> unsigned: permissions:all-permissions - sandbox > >>>> unsigned: permissions:sandbox - sandbox > >>>> signed: permissions:sandbox - sandbox > >>>> signed: permissions missing - all permissions > >>>> unsigned: permissions missing - sandbox > >>>> > >>>> On low permissions, no asking. > >>>> > >>>> For other then low permissions user should be asked for each except > >>>> signed: permissions:all-permissions > >>>> unsigned: permissions:sandbox > >>>> cases. > >>>> > >>>> But the dialogue can be done as separate changeset (with > >>>> custom-permissions button:) > >>>> > >>>> > >>>> > >>>>> New tests are also on the way and with the new tests will come the > >>>>> fixed version of the previously > >>>>> sent test, which will make be a signed reproducer rather than custom. > >>>>> > >>>> > >>>> J. > >>>> > >>> > >>> Okay, I wasn't sure what you had meant. It didn't seem right to skip > >>> them all but I thought maybe > >>> you had something else in mind to implement to fix it. So here's > >>> another attempt. > >>> > >>> Setting deployment.manifest.attributes.check to false causes all > >>> checks to be skipped, except for > >>> the Permissions attribute, which is always checked regardless. Using > >>> Low Extended Applet Security > >>> causes the ALACA and Permissions checks to not generate dialogs and > >>> assumes that it's OK to run > >>> the applet(s). In the case of the Permissions attribute, it will > >>> still auto sandbox if necessary. > >>> Is this what you wanted? > >>> > >>> Thanks, > >>> > >> > >> And attached is the promised update to the Signed reproducer. > >> > >> Lukasz, if you could please also send the Partial Signing test that > >> we put together. > >> > > > > As for partially signed - > > > > Why KnownTofail? Why just not set alaca? Then it willl match,and no > > dialogue will apear :) > > > > (?) > > > > If we cannot do this, wee ned to fix the reproducers engine. Adding > > ton of knowntofail tests have no meaning. > > > > > > J. > > > > Hmm, good idea... > > Lukasz, would you mind taking care of this enhancement? ;) For both of > the tests patches. > > Thanks, > > -- > Andrew A > > From aazores at redhat.com Wed Jul 2 16:14:54 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 02 Jul 2014 12:14:54 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available Message-ID: <53B42FFE.6030102@redhat.com> Hi, This patch adds URLPermission to the sandbox permissions set in SecurityDesc, if URLPermission is available (so for Java 8+). Certain applets are broken when using IcedTea-Web with Java 8 due to the lack of this permission. An example of such an applet is Oasis[0]. This applet should work fine with plain IcedTea-Web and JDK 7, but should fail with plain IcedTea-Web and JDK 8. It should continue to work with patched IcedTea-Web and JDK 7 but produce a few small WARNING_DEBUG level messages, and should begin to work with patched IcedTea-Web and JDK 8. [0] https://oasisweb.uga.edu/oasis.html Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: urlpermissions-2.patch Type: text/x-patch Size: 4057 bytes Desc: not available URL: From omajid at redhat.com Wed Jul 2 16:31:09 2014 From: omajid at redhat.com (Omair Majid) Date: Wed, 2 Jul 2014 12:31:09 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53B42FFE.6030102@redhat.com> References: <53B42FFE.6030102@redhat.com> Message-ID: <20140702163109.GD2271@redhat.com> * Andrew Azores [2014-07-02 12:16]: > This patch adds URLPermission to the sandbox permissions set in > SecurityDesc, if URLPermission is available (so for Java 8+). Certain > applets are broken when using IcedTea-Web with Java 8 due to the lack of > this permission. An example of such an applet is Oasis[0]. This applet > should work fine with plain IcedTea-Web and JDK 7, but should fail with > plain IcedTea-Web and JDK 8. It should continue to work with patched > IcedTea-Web and JDK 7 but produce a few small WARNING_DEBUG level messages, > and should begin to work with patched IcedTea-Web and JDK 8. > +++ b/netx/net/sourceforge/jnlp/SecurityDesc.java > + } catch (final ClassNotFoundException | NoSuchMethodException | SecurityException e) { Maybe use ReflectiveOperationException to reduce the number of exceptions here? It's only available in Java 7 and later. > + final String urlPermUriString = codebase + (codebase.endsWith("/") ? "-" : "/-"); > + // Allow applets all HTTP methods (ex POST, GET) with any request headers > + // on resources anywhere recursively in or below the applet codebase I wonder if we can be more lax and allow accessing more resources on the same host/port combination. Can you think of a reason to restrict to the given codebase directory only? > + } catch (final URISyntaxException | InstantiationException | IllegalAccessException | IllegalArgumentException | InvocationTargetException e) { I would highly recommend using ReflectiveOperationException here. Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From jvanek at redhat.com Wed Jul 2 16:38:21 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 02 Jul 2014 18:38:21 +0200 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <20140702163109.GD2271@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> Message-ID: <53B4357D.5040402@redhat.com> On 07/02/2014 06:31 PM, Omair Majid wrote: > * Andrew Azores [2014-07-02 12:16]: >> This patch adds URLPermission to the sandbox permissions set in >> SecurityDesc, if URLPermission is available (so for Java 8+). Certain >> applets are broken when using IcedTea-Web with Java 8 due to the lack of >> this permission. An example of such an applet is Oasis[0]. This applet >> should work fine with plain IcedTea-Web and JDK 7, but should fail with >> plain IcedTea-Web and JDK 8. It should continue to work with patched >> IcedTea-Web and JDK 7 but produce a few small WARNING_DEBUG level messages, >> and should begin to work with patched IcedTea-Web and JDK 8. > >> +++ b/netx/net/sourceforge/jnlp/SecurityDesc.java >> + } catch (final ClassNotFoundException | NoSuchMethodException | SecurityException e) { > > Maybe use ReflectiveOperationException to reduce the number of exceptions > here? It's only available in Java 7 and later. > >> + final String urlPermUriString = codebase + (codebase.endsWith("/") ? "-" : "/-"); > >> + // Allow applets all HTTP methods (ex POST, GET) with any request headers >> + // on resources anywhere recursively in or below the applet codebase > > I wonder if we can be more lax and allow accessing more resources on > the same host/port combination. Can you think of a reason to restrict to > the given codebase directory only? This is good point. I would say more lenient, even beter. > >> + } catch (final URISyntaxException | InstantiationException | IllegalAccessException | IllegalArgumentException | InvocationTargetException e) { > > I would highly recommend using ReflectiveOperationException here. > Dont forget that it is not an solution for 1.5.1 which is 1.6 compatible. J. From aazores at redhat.com Wed Jul 2 18:54:38 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 02 Jul 2014 14:54:38 -0400 Subject: [rfc][icedtea-web][policyeditor] Keyboard shortcuts and mnemonics touchup In-Reply-To: <53B2C337.2030705@gmx.de> References: <53AC7183.3030107@redhat.com> <53AD8A60.3050306@redhat.com> <53ADF2C5.9060405@gmx.de> <1545699919.939092.1404155700457.JavaMail.zimbra@redhat.com> <53B2C337.2030705@gmx.de> Message-ID: <53B4556E.60905@redhat.com> On 07/01/2014 10:18 AM, Jacob Wisor wrote: > On 06/30/2014 09:15 PM, Andrew Azores wrote: >> (Sorry for the maybe not-so-good email formatting here - replying from >> a web interface today unfortunately) >> >> ----- Original Message ----- >>> On 06/27/2014 05:14 PM, Andrew Azores wrote: >>>> On 06/26/2014 03:16 PM, Andrew Azores wrote: >>>>> Hi, >>>>> >>>>> This patch enhances PolicyEditor's accessibility quite a lot. Changes >>>>> include: >>>>> >>>>> 1) Pressing "Enter" while a Group Checkbox has focus will expand >>>>> the group >>>>> (pressing space still selects the entire group at once) >>> >>> Oh, now I understand what you are intending to do... So you want to >>> kind of >>> simulate a right-click on the keyboard. Then the key should probably be >>> KeyEvent.VK_CONTEXT_MENU instead of KeyEvent.VK_ENTER. On Windows >>> KeyEvent.VK_CONTEXT_MENU maps to SHIFT+F10 (right-click). On other >>> window >>> managers KeyEvent.VK_CONTEXT_MENU should also map to right-click or some >>> other >>> key combination in place of a right-click, or maybe just the menu >>> key. Try it >>> with your window manager. This one is tricky. >> >> Thanks for the tip! VK_CONTEXT_MENU is a nice enhancement. I only have >> i3 installed so I haven't tested with any other window managers >> (anyone else reading this, please give it a shot too) but it works >> fine here with the actual menu key. I also took your advice of >> changing the Rename accelerator to F2 - sounds reasonable to me, and I >> wasn't aware that there was actually a "standard" for that. Taking a >> look at my file manager though (Thunar) I do see that same accelerator >> listed. > > i3? Hard core, eh? :-D I for myself are using Mate. Speaking of which, > it allows for almost fully configurable accelerators. ;-) MATE is my preferred full DE, but for a while now I've just been using a plain window manager. > >> [...] >>> >>> This stuff may seem like details or nit picking but this is actually >>> part of >>> what makes good software. Going into details, tuning, making it >>> easier and >>> easier, making look and feel consistent with the rest of the system, >>> etc. is >>> what makes software such a pleasure to use. Most users do not >>> perceive this >>> actively but all major software packages that are heavy on UI are >>> only so >>> accessible and relatively easy to use because their developers spend a >>> considerable amount of time on perfecting the UI experience. So keep on >>> perfecting! ;-) >>> >> >> I know :) that's why I keep coming back to improve PolicyEditor this >> way. Nobody's really asked me to do these particular things, I just >> want to make the Editor accessible and easy to use now that I've got >> it (mostly) providing the actual functionality that it was supposed to >> provide. Maybe I'm not getting every detail right on the first >> attempt, but, well, everything needs to be learned for the first time >> before it can be done right ;) > > Sure, that's what development cycles and iterations are for. ;-) This is > also why I usually try to slow down people from rushing releases. There > is really no benefit it releasing early and often. Check for bugs, do > internal reviewing. Of course, you won't catch every bug with internal > reviewing but will definitely get the obvious blunders. There is still > polishing left to do on the PolicyEditor but you're on a good track. > > Jacob Attached is a patch that removes one extra line that was put in for simple smoke testing and found its way into the last patch without being cleaned... :( Thanks, -- Andrew Azores -------------- next part -------------- A non-text attachment was scrubbed... Name: policyeditor-keybindings-4.patch Type: text/x-patch Size: 21756 bytes Desc: not available URL: From ptisnovs at icedtea.classpath.org Thu Jul 3 07:23:40 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 03 Jul 2014 07:23:40 +0000 Subject: /hg/gfx-test: Yet another five new helper methods added into Com... Message-ID: changeset 82e38b9fae09 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=82e38b9fae09 author: Pavel Tisnovsky date: Thu Jul 03 09:24:33 2014 +0200 Yet another five new helper methods added into CommonBitmapOperations. diffstat: ChangeLog | 5 + src/org/gfxtest/framework/CommonBitmapOperations.java | 125 ++++++++++++++++++ 2 files changed, 130 insertions(+), 0 deletions(-) diffs (175 lines): diff -r fd8732d7d493 -r 82e38b9fae09 ChangeLog --- a/ChangeLog Wed Jul 02 11:54:25 2014 +0200 +++ b/ChangeLog Thu Jul 03 09:24:33 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-02 Pavel Tisnovsky + + * src/org/gfxtest/framework/CommonBitmapOperations.java: + Yet another five new helper methods added into CommonBitmapOperations. + 2014-07-02 Pavel Tisnovsky * src/org/gfxtest/framework/CommonBitmapOperations.java: diff -r fd8732d7d493 -r 82e38b9fae09 src/org/gfxtest/framework/CommonBitmapOperations.java --- a/src/org/gfxtest/framework/CommonBitmapOperations.java Wed Jul 02 11:54:25 2014 +0200 +++ b/src/org/gfxtest/framework/CommonBitmapOperations.java Thu Jul 03 09:24:33 2014 +0200 @@ -3417,6 +3417,31 @@ } /** + * Create new buffered image containing RGB pattern #2 and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithRGBTexture2Image(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ProceduralTextureFactory.createRGBTexture2(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing RGB pattern #2 and then perform * basic BitBlt test. * @@ -3499,6 +3524,31 @@ } /** + * Create new buffered image containing RGB pattern #3 and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithRGBTexture3Image(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ProceduralTextureFactory.createRGBTexture3(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing RGB pattern #3 and then perform * basic BitBlt test. * @@ -3581,6 +3631,31 @@ } /** + * Create new buffered image containing RGB pattern #4 and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithRGBTexture4Image(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ProceduralTextureFactory.createRGBTexture4(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing RGB pattern #4 and then perform * basic BitBlt test. * @@ -3663,6 +3738,31 @@ } /** + * Create new buffered image containing RGB pattern #5 and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithRGBTexture5Image(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ProceduralTextureFactory.createRGBTexture5(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing RGB pattern #5 and then perform * basic BitBlt test. * @@ -3745,6 +3845,31 @@ } /** + * Create new buffered image containing RGB pattern #6 and then perform basic BitBlt test. + * + * @param image + * image to which another image is to be drawn + * @param graphics2d + * graphics canvas + * @param imageType + * type of the created image + * @param bgcolor + * background color + */ + public static TestResult doBitBltTestWithRGBTexture6Image(TestImage image, Graphics2D graphics2d, int imageType, Color bgcolor) + { + // create new buffered bitmap with given type + BufferedImage bufferedImage = ProceduralTextureFactory.createRGBTexture6(DEFAULT_TEST_IMAGE_WIDTH, DEFAULT_TEST_IMAGE_HEIGHT, imageType); + // basic check if buffered image was created + if (bufferedImage == null) + { + return TestResult.FAILED; + } + // BitBlt with 1:1 scaling, no flipping and no cropping + return BitBltOperations.performBitBlt(bufferedImage, image, graphics2d, bgcolor) ? TestResult.PASSED : TestResult.FAILED; + } + + /** * Create new buffered image containing RGB pattern #6 and then perform * basic BitBlt test. * From bugzilla-daemon at icedtea.classpath.org Thu Jul 3 08:04:02 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 03 Jul 2014 08:04:02 +0000 Subject: [Bug 1860] New: web page not diplaying completetly (action buttons missing) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1860 Bug ID: 1860 Summary: web page not diplaying completetly (action buttons missing) Product: IcedTea Version: 7-hg Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: karen.husty at yahoo.com CC: unassigned at icedtea.classpath.org I am an almost perfect noob in things Java, a complete virgin for reporting bugs, and a fairly recent new comer to Linux. It may explain why this report may appear patchy at best. PLease, bear with me. Context: - Dual boot machine (Ubuntu 14.04 LTS 3.13.0-27-generic || WinXP SP3 (largely unused) - running Firefox 30.0 con JRE 7 enabled on both systems and with IcedTea-Web Plugin (using IcedTea-Web 1.5 (1.5-1ubuntu1)) - always active - under Linux. - opening webpage: http://www.pole-emploi-international.fr/www.eei.com.fr/eei/recherche_oe.jsp?HttpSession.Section=Candidat&eeidate=20140703090721144&eeisecurite=1434075919 Description: - just below the field decribed by the legend: "Offres d?pos?es depuis le (JJ/MM/AAAA) :" (i.e. last field at bottom of page), a button should appear. it does under Win, not under Lx. It is a "validate" button to launch a simple database search based on previous field content on same page. - Since the button appears under Win and not under Lx, I figured it could be a problem either with the IcedTea-Web plugin, or with a non JRE conformant applet or something like this. (That page does not belong to me, and I am at my wits'end here, sorry.) >From the page source: the problem seems to finds its expression here (line 1183): Valider Since the page displays well in other OS environments, what does IcedTea-Web 1.5 Plugin does not do that others do ? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Thu Jul 3 08:32:59 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 03 Jul 2014 08:32:59 +0000 Subject: [Bug 1860] web page not diplaying completetly (action buttons missing) In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1860 Cbhihe changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |INVALID --- Comment #1 from Cbhihe --- Rebooting the system, launching Fx with Plugin enabled and relaoding the page, seems to have had a satisfactory outcome. The action button appeared and works. Sorry for the white noise. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at icedtea.classpath.org Thu Jul 3 14:40:51 2014 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Thu, 03 Jul 2014 14:40:51 +0000 Subject: /hg/icedtea-web: MessagesPropertiesTest.java removed useless ite... Message-ID: changeset 0b63a4fc3a34 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=0b63a4fc3a34 author: Jiri Vanek date: Thu Jul 03 16:40:32 2014 +0200 MessagesPropertiesTest.java removed useless iterations of all resources against all. diffstat: ChangeLog | 7 + tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java | 142 ++++----- 2 files changed, 73 insertions(+), 76 deletions(-) diffs (239 lines): diff -r b18d50d9e32e -r 0b63a4fc3a34 ChangeLog --- a/ChangeLog Mon Jun 30 11:34:15 2014 -0400 +++ b/ChangeLog Thu Jul 03 16:40:32 2014 +0200 @@ -1,3 +1,10 @@ +2014-07-03 Jiri Vanek + + * tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java + removed useless iterations of all resources against all. Kept only all against + default. Preferred diamonds and for each against full declarations and old-style + fors. + 2014-06-30 Andrew Azores Runnables to be invoked on the EDT are invoked immediately if the current diff -r b18d50d9e32e -r 0b63a4fc3a34 tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java --- a/tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java Mon Jun 30 11:34:15 2014 -0400 +++ b/tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java Thu Jul 03 16:40:32 2014 +0200 @@ -138,8 +138,8 @@ } - public static LocalesIdentifier main; - public static LocalesIdentifier[] secondary; + private static LocalesIdentifier main; + private static LocalesIdentifier[] secondary; @BeforeClass public static void loadResourceBoundels() { @@ -148,61 +148,54 @@ assertNotNull(main); secondary= new LocalesIdentifier[] {LocalesIdentifier.CZ, LocalesIdentifier.DE, LocalesIdentifier.PL}; assertNotNull(secondary); - for (int i = 0; i < secondary.length; i++) { - assertNotNull(secondary[i]); - + for (LocalesIdentifier secondary1 : secondary) { + assertNotNull(secondary1); } } @Test public void allResourcesAreReallyDifferent() { - List bundles = new ArrayList(secondary.length + 1); + List bundles = new ArrayList<>(secondary.length + 1); String detailResults=""; - bundles.add(main); int errors = 0; bundles.addAll(Arrays.asList(secondary)); - for (int i = 0; i < bundles.size(); i++) { - LocalesIdentifier resourceBundle1 = bundles.get(i); + for (LocalesIdentifier resourceBundle1 : bundles) { Enumeration keys1 = resourceBundle1.getBundle().getKeys(); - for (int j = 0; j < bundles.size(); j++) { - LocalesIdentifier resourceBundle2 = bundles.get(j); - if (resourceBundle1.getLanguage().equals(resourceBundle2.getLanguage())) { - //do not compare same language groups - allLog("Skipping same language " + resourceBundle1.getLocale() + " x " + resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + " x " + resourceBundle2.getIdentifier() + ")"); - break; + LocalesIdentifier resourceBundle2 = main; + allLog("Checking for same items between " + resourceBundle1.getLocale() + " x " + resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + " x " + resourceBundle2.getIdentifier() + ")"); + int localErrors=0; + while (keys1.hasMoreElements()) { + String key = keys1.nextElement(); + String val1 = getMissingResourceAsEmpty(resourceBundle1.getBundle(), key); + if (val1.length() > 1000) { + errLog("Skipping check of: " + key + " too long. (" + val1.length() + ")"); + continue; } - allLog("Checking for same items between " + resourceBundle1.getLocale() + " x " + resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + " x " + resourceBundle2.getIdentifier() + ")"); - int localErrors=0; - while (keys1.hasMoreElements()) { - String key = keys1.nextElement(); - String val1 = getMissingResourceAsEmpty(resourceBundle1.getBundle(), key); - String val2 = getMissingResourceAsEmpty(resourceBundle2.getBundle(), key); - outLog("\""+val1+"\" x \""+val2); - if (val1.trim().equalsIgnoreCase(val2.trim())) { - if (val1.trim().length() <= 5 /* short words like"ok", "", ...*/ - || val1.toLowerCase().contains("://") /*urls...*/ - || !val1.trim().contains(" ") /*one word*/ - || val1.replaceAll("\\{\\d\\}", "").trim().length()<5 /*only vars and short words*/ - //white list - || (val1.trim().equals("std. err")) - || (val1.trim().equals("std. out")) - || (val1.trim().equals("Policy Editor")) - || (val1.trim().equals("Java Reflection"))) - { - errLog("Warning! Items equals for: " + key + " = " + val1 + " but are in allowed subset"); - } else { - errors++; - localErrors++; - errLog("Error! Items equals for: " + key + " = " + val1); - } + String val2 = getMissingResourceAsEmpty(resourceBundle2.getBundle(), key); + outLog("\""+val1+"\" x \""+val2); + if (val1.trim().equalsIgnoreCase(val2.trim())) { + if (val1.trim().length() <= 5 /* short words like"ok", "", ...*/ + || val1.toLowerCase().contains("://") /*urls...*/ + || !val1.trim().contains(" ") /*one word*/ + || val1.replaceAll("\\{\\d\\}", "").trim().length()<5 /*only vars and short words*/ + //white list + || (val1.trim().equals("std. err")) + || (val1.trim().equals("std. out")) + || (val1.trim().equals("Policy Editor")) + || (val1.trim().equals("Java Reflection"))) + { + errLog("Warning! Items equals for: " + key + " = " + val1 + " but are in allowed subset"); + } else { + errors++; + localErrors++; + errLog("Error! Items equals for: " + key + " = " + val1); } } - if (localErrors > 0){ - detailResults+=resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()+": "+localErrors+";"; - } - errLog(localErrors+" errors allResourcesAreReallyDifferent fo "+resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()); - } + if (localErrors > 0){ + detailResults+=resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()+": "+localErrors+";"; + } + errLog(localErrors+" errors allResourcesAreReallyDifferent fo "+resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()); } assertTrue("Several - " + errors + " - items are same in bundles. See error logs for details: "+detailResults, errors == 0); } @@ -221,10 +214,10 @@ public void warnForNotLocalisedStrings() { int errors = 0; Enumeration keys = main.getBundle().getKeys(); - for (int i = 0; i < secondary.length; i++) { + for (LocalesIdentifier secondary1 : secondary) { int localErrors = 0; - ResourceBundle sec = secondary[i].getBundle(); - String id = secondary[i].getIdentifier(); + ResourceBundle sec = secondary1.getBundle(); + String id = secondary1.getIdentifier(); allLog("Checking for missing strings in " + sec.getLocale() + " (should be " + id + ") compared with default"); while (keys.hasMoreElements()) { String key = keys.nextElement(); @@ -234,15 +227,14 @@ if (val1.trim().isEmpty()) { } else { if (val2.trim().isEmpty()){ - errors++; - localErrors++; - errLog("Error! There is value for default: " + key + ", but for " + id+" is missing"); + errors++; + localErrors++; + errLog("Error! There is value for default: " + key + ", but for " + id+" is missing"); } } } errLog(localErrors+" warnForNotLocalisedStrings errors for "+id); - } assertTrue("Several - " + errors + " - items have missing localization. See error logs for details", errors == 0); } @@ -251,29 +243,28 @@ @Test public void noEmptyResources() { - List bundles = new ArrayList(secondary.length + 1); + List bundles = new ArrayList<>(secondary.length + 1); bundles.add(main); int errors = 0; bundles.addAll(Arrays.asList(secondary)); - for (int i = 0; i < bundles.size(); i++) { - ResourceBundle resourceBundle = bundles.get(i).getBundle(); - String id = bundles.get(i).getIdentifier(); + for (LocalesIdentifier bundle : bundles) { + ResourceBundle resourceBundle = bundle.getBundle(); + String id = bundle.getIdentifier(); Enumeration keys = resourceBundle.getKeys(); - allLog("Checking for empty items in " + resourceBundle.getLocale() + " (should be " + id + ")"); - int localErrors=0; - while (keys.hasMoreElements()) { - String key = keys.nextElement(); - String val = getMissingResourceAsEmpty(resourceBundle, key); - outLog("\""+key+"\" = \""+val); - if (val.trim().isEmpty()) { - errors++; - localErrors++; - errLog("Error! Key: " + key + " have no vlue"); - } - + allLog("Checking for empty items in " + resourceBundle.getLocale() + " (should be " + id + ")"); + int localErrors=0; + while (keys.hasMoreElements()) { + String key = keys.nextElement(); + String val = getMissingResourceAsEmpty(resourceBundle, key); + outLog("\""+key+"\" = \""+val); + if (val.trim().isEmpty()) { + errors++; + localErrors++; + errLog("Error! Key: " + key + " have no vlue"); } - errLog(localErrors+" noEmptyResources errors for "+id); - + + } + errLog(localErrors+" noEmptyResources errors for "+id); } assertTrue("Several - " + errors + " - items have no values", errors == 0); } @@ -282,11 +273,11 @@ @Test public void findKeysWhichAreInLocalisedButNotInDefault() { int errors = 0; - for (int i = 0; i < secondary.length; i++) { + for (LocalesIdentifier secondary1 : secondary) { int localErrors = 0; - ResourceBundle sec = secondary[i].getBundle(); + ResourceBundle sec = secondary1.getBundle(); Enumeration keys = sec.getKeys(); - String id = secondary[i].getId(); + String id = secondary1.getId(); outLog("Checking for redundant keys in " + sec.getLocale() + " (should be " + id + ") compared with default"); errLog("Checking for redundant keys in " + sec.getLocale() + " (should be " + id + ") compared with default"); while (keys.hasMoreElements()) { @@ -294,15 +285,14 @@ String val2 = getMissingResourceAsEmpty(main.getBundle(), key); String val1 = getMissingResourceAsEmpty(sec, key); outLog("\""+val1+"\" x \""+val2); - if (val2.trim().isEmpty() && !val1.trim().isEmpty()){ + if (val2.trim().isEmpty() && !val1.trim().isEmpty()){ errors++; localErrors++; errLog("Error! There is value for "+id+", key " + key + ", but for default is missing"); - } - + } + } errLog(localErrors+" findKeysWhichAreInLocalisedButNotInDefault errors for "+id); - } assertTrue("Several - " + errors + " - items have value in localized version but not in default one", errors == 0); } From jvanek at icedtea.classpath.org Thu Jul 3 14:41:07 2014 From: jvanek at icedtea.classpath.org (jvanek at icedtea.classpath.org) Date: Thu, 03 Jul 2014 14:41:07 +0000 Subject: /hg/release/icedtea-web-1.5: MessagesPropertiesTest.java removed... Message-ID: changeset 6f92839c15df in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=6f92839c15df author: Jiri Vanek date: Thu Jul 03 16:40:55 2014 +0200 MessagesPropertiesTest.java removed useless iterations of all resources against all. diffstat: ChangeLog | 6 ++++++ tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java | 10 +++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diffs (52 lines): diff -r 3a86eb3b6e0f -r 6f92839c15df ChangeLog --- a/ChangeLog Tue Jul 01 11:26:37 2014 +0200 +++ b/ChangeLog Thu Jul 03 16:40:55 2014 +0200 @@ -1,3 +1,9 @@ +2014-07-03 Jiri Vanek + + * tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java + removed useless iterations of all resources against all. Kept only all against + default. + 2014-07-01 Jiri Vanek * NEWS: mentioned PL localization diff -r 3a86eb3b6e0f -r 6f92839c15df tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java --- a/tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java Tue Jul 01 11:26:37 2014 +0200 +++ b/tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java Thu Jul 03 16:40:55 2014 +0200 @@ -158,14 +158,12 @@ public void allResourcesAreReallyDifferent() { List bundles = new ArrayList(secondary.length + 1); String detailResults=""; - bundles.add(main); int errors = 0; bundles.addAll(Arrays.asList(secondary)); for (int i = 0; i < bundles.size(); i++) { LocalesIdentifier resourceBundle1 = bundles.get(i); Enumeration keys1 = resourceBundle1.getBundle().getKeys(); - for (int j = 0; j < bundles.size(); j++) { - LocalesIdentifier resourceBundle2 = bundles.get(j); + LocalesIdentifier resourceBundle2 = main; if (resourceBundle1.getLanguage().equals(resourceBundle2.getLanguage())) { //do not compare same language groups allLog("Skipping same language " + resourceBundle1.getLocale() + " x " + resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + " x " + resourceBundle2.getIdentifier() + ")"); @@ -176,6 +174,10 @@ while (keys1.hasMoreElements()) { String key = keys1.nextElement(); String val1 = getMissingResourceAsEmpty(resourceBundle1.getBundle(), key); + if (val1.length() > 1000) { + errLog("Skipping check of: " + key + " too long. (" + val1.length() + ")"); + continue; + } String val2 = getMissingResourceAsEmpty(resourceBundle2.getBundle(), key); outLog("\""+val1+"\" x \""+val2); if (val1.trim().equalsIgnoreCase(val2.trim())) { @@ -201,8 +203,6 @@ detailResults+=resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()+": "+localErrors+";"; } errLog(localErrors+" errors allResourcesAreReallyDifferent fo "+resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()); - - } } assertTrue("Several - " + errors + " - items are same in bundles. See error logs for details: "+detailResults, errors == 0); } From ldracz at redhat.com Thu Jul 3 19:38:03 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Thu, 3 Jul 2014 15:38:03 -0400 (EDT) Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <1868720576.1347648.1404315274305.JavaMail.zimbra@redhat.com> References: <5384BC13.5010708@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53AC3661.4080107@redhat.com> <53B29B1A.10707@redhat.com> <53B410AA.9010803@redhat.com> <1868720576.1347648.1404315274305.JavaMail.zimbra@redhat.com> Message-ID: <355576086.2312669.1404416283315.JavaMail.zimbra@redhat.com> Hello, I have taken off all the @KnownToFail annotations, added the Application-Library-Allowable-Codebase Attribute to the Manifests and ran the tests to ensure the dialogs do not appear. On ALLOW_UNSIGNED for security level all the tests pass and no prompts appear, however on ASK_UNSIGNED with the attribute added in the manifest the dialogs change from missing ALAC to matching ALAC dialogs which I believe is fine, and intended. I also removed from my reproducers the signed tests that I was going to implement before I found out Andrew Azores had already written them and accidently submitted them last time. Thank you, Lukasz D -------------- next part -------------- A non-text attachment was scrubbed... Name: PartiallySignedSpecifiesManifestReproducers-3.patch Type: text/x-patch Size: 63456 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: pr1769-reproducer-4.patch Type: text/x-patch Size: 19477 bytes Desc: not available URL: From aazores at redhat.com Thu Jul 3 20:55:20 2014 From: aazores at redhat.com (Andrew Azores) Date: Thu, 03 Jul 2014 16:55:20 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53B4357D.5040402@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> Message-ID: <53B5C338.4090906@redhat.com> On 07/02/2014 12:38 PM, Jiri Vanek wrote: > On 07/02/2014 06:31 PM, Omair Majid wrote: >> * Andrew Azores [2014-07-02 12:16]: >>> This patch adds URLPermission to the sandbox permissions set in >>> SecurityDesc, if URLPermission is available (so for Java 8+). Certain >>> applets are broken when using IcedTea-Web with Java 8 due to the >>> lack of >>> this permission. An example of such an applet is Oasis[0]. This applet >>> should work fine with plain IcedTea-Web and JDK 7, but should fail with >>> plain IcedTea-Web and JDK 8. It should continue to work with patched >>> IcedTea-Web and JDK 7 but produce a few small WARNING_DEBUG level >>> messages, >>> and should begin to work with patched IcedTea-Web and JDK 8. >> >>> +++ b/netx/net/sourceforge/jnlp/SecurityDesc.java >>> + } catch (final ClassNotFoundException | >>> NoSuchMethodException | SecurityException e) { >> >> Maybe use ReflectiveOperationException to reduce the number of >> exceptions >> here? It's only available in Java 7 and later. >> >>> + final String urlPermUriString = codebase + >>> (codebase.endsWith("/") ? "-" : "/-"); >> >>> + // Allow applets all HTTP methods (ex POST, GET) with >>> any request headers >>> + // on resources anywhere recursively in or below the >>> applet codebase >> >> I wonder if we can be more lax and allow accessing more resources on >> the same host/port combination. Can you think of a reason to restrict to >> the given codebase directory only? > > This is good point. I would say more lenient, even beter. >> >>> + } catch (final URISyntaxException | InstantiationException >>> | IllegalAccessException | IllegalArgumentException | >>> InvocationTargetException e) { >> >> I would highly recommend using ReflectiveOperationException here. >> > Dont forget that it is not an solution for 1.5.1 which is 1.6 compatible. > > > J. Here we go again. Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: urlpermissions-4.patch Type: text/x-patch Size: 4969 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: urlpermissions-backport-1.5-2.patch Type: text/x-patch Size: 6249 bytes Desc: not available URL: From omajid at redhat.com Thu Jul 3 21:02:51 2014 From: omajid at redhat.com (Omair Majid) Date: Thu, 3 Jul 2014 17:02:51 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53B5C338.4090906@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> Message-ID: <20140703210250.GA2296@redhat.com> * Andrew Azores [2014-07-03 16:55]: > + codebaseHost = new URI(codebase.getScheme(), codebase.getUserInfo(), codebase.getHost(), -1, null, null, null); Why -1 for port? This seems strange compared to the same-origin-policy. Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From aazores at redhat.com Thu Jul 3 21:14:09 2014 From: aazores at redhat.com (Andrew Azores) Date: Thu, 03 Jul 2014 17:14:09 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <20140703210250.GA2296@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> Message-ID: <53B5C7A1.9080700@redhat.com> On 07/03/2014 05:02 PM, Omair Majid wrote: > * Andrew Azores [2014-07-03 16:55]: >> + codebaseHost = new URI(codebase.getScheme(), codebase.getUserInfo(), codebase.getHost(), -1, null, null, null); > Why -1 for port? This seems strange compared to the same-origin-policy. > > Thanks, > Omair > It doesn't seem to be specified for the SocketPermission granted in SecurityDesc either - downloadHost is just the hostname part of the codebase URL AFAICT. So I haven't specified a port for the URLPermission so as to not be more restrictive than the SocketPermission. There's also this in the URLPermission docs: > /portrange/ is used to specify a port number, or a bounded or > unbounded range of ports that this permission applies to. If portrange > is absent or invalid, then a default port number is assumed if the > scheme is |http| (default 80) or |https| (default 443). No default is > assumed for other schemes. A wildcard may be specified which means all > ports. Thanks, -- Andrew A -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitne at icedtea.classpath.org Thu Jul 3 21:27:55 2014 From: gitne at icedtea.classpath.org (gitne at icedtea.classpath.org) Date: Thu, 03 Jul 2014 21:27:55 +0000 Subject: /hg/icedtea-web: 3 new changesets Message-ID: changeset bbd28d09a3ff in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=bbd28d09a3ff author: Jacob Wisor date: Thu Jun 26 19:35:23 2014 +0200 Fix handling of UI controls in Java console 2014-06-XX Jacob Wisor * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: Fix handling of UI controls (ConsoleOutputPane) Add set enabled state of headers JCheckBoxes with new setHeadersCheckBoxesEnabled() method depending on showHeaders' saved configuration selected state Add set enabled state of messages JCheckBox with new setMessagesCheckBoxesEnabled method depending on showMessage's selected state on initialization Add set enabled state of refresh JButton reciprocally to autorefresh JCheckBox's selected state on initialization (createDefaultAction) Add null check on argument of public method Add call to new setHeadersCheckBoxesEnabled() method with showHeaders' selected state when clicked Add call to new setMessagesCheckBoxesEnabled() method with showMessage's selected state when clicked Add set enabled state of refresh JButton reciprocally to autorefresh JCheckBox's selected state (initComponents) Add default ActionListener to autorefresh JCheckBox (setHeadersCheckBoxesEnabled) Add new method Sets enabled state of showUser, showOrigin, showLevel, showDate, showCode, showThread1, and showThread2 depending on parameter passed in (setMessagesCheckBoxesEnabled) Add new method Sets enabled state of showOut, showErr, showJava, showPlugin, showDebug, showInfo, showItw, and showApp depending on parameter passed in changeset eabc9aba2aac in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=eabc9aba2aac author: Jacob Wisor date: Thu Jul 03 23:06:47 2014 +0200 Add current date for last commit in ChangeLog 2014-07-03 Jacob Wisor * ChangeLog: Add current date for last commit in ChangeLog changeset 3fa789df69e7 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=3fa789df69e7 author: Jacob Wisor date: Thu Jul 03 23:25:18 2014 +0200 Merge diffstat: ChangeLog | 46 +++ netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java | 53 ++- netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java | 47 ++- tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java | 142 ++++----- 4 files changed, 182 insertions(+), 106 deletions(-) diffs (495 lines): diff -r 1c5922c7b7b0 -r 3fa789df69e7 ChangeLog --- a/ChangeLog Thu Jun 26 17:22:11 2014 +0200 +++ b/ChangeLog Thu Jul 03 23:25:18 2014 +0200 @@ -1,3 +1,49 @@ +2014-07-03 Jacob Wisor + + * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: Fix + handling of UI controls + (ConsoleOutputPane) Add set enabled state of headers JCheckBoxes with new + setHeadersCheckBoxesEnabled() method depending on showHeaders' saved + configuration selected state + Add set enabled state of messages JCheckBox with new + setMessagesCheckBoxesEnabled method depending on showMessage's selected + state on initialization + Add set enabled state of refresh JButton reciprocally to autorefresh + JCheckBox's selected state on initialization + (createDefaultAction) Add null check on argument of public method + Add call to new setHeadersCheckBoxesEnabled() method with showHeaders' + selected state when clicked + Add call to new setMessagesCheckBoxesEnabled() method with showMessage's + selected state when clicked + Add set enabled state of refresh JButton reciprocally to autorefresh + JCheckBox's selected state + (initComponents) Add default ActionListener to autorefresh JCheckBox + (setHeadersCheckBoxesEnabled) Add new method + Sets enabled state of showUser, showOrigin, showLevel, showDate, showCode, + showThread1, and showThread2 depending on parameter passed in + (setMessagesCheckBoxesEnabled) Add new method + Sets enabled state of showOut, showErr, showJava, showPlugin, showDebug, + showInfo, showItw, and showApp depending on parameter passed in + +2014-07-03 Jiri Vanek + + * tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java + removed useless iterations of all resources against all. Kept only all against + default. Preferred diamonds and for each against full declarations and old-style + fors. + +2014-06-30 Andrew Azores + + Runnables to be invoked on the EDT are invoked immediately if the current + thread is already the EDT, rather than being queued for invocation later. + invokeRunnableOrEnqueueLater replaces SwingUtilities.invokeLater to + achieve this. + * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java + (updateCheckboxes): uses invokeRunnableOrEnqueueAndWait + (updateCheckboxesInvokeAndWait): removed + (invokeRunnableOrEnqueueAndWait, invokeRunnableOrEnqueueLater): new + methods + 2014-06-26 Jacob Wisor * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: Formatting diff -r 1c5922c7b7b0 -r 3fa789df69e7 netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java --- a/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java Thu Jun 26 17:22:11 2014 +0200 +++ b/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java Thu Jul 03 23:25:18 2014 +0200 @@ -377,7 +377,7 @@ viewCustomButtonAction = new ActionListener() { @Override public void actionPerformed(final ActionEvent e) { - SwingUtilities.invokeLater(new Runnable() { + invokeRunnableOrEnqueueLater(new Runnable() { @Override public void run() { String codebase = getSelectedCodebase(); @@ -732,7 +732,7 @@ model = codebase; } policyEditorController.addCodebase(codebase); - SwingUtilities.invokeLater(new Runnable() { + invokeRunnableOrEnqueueLater(new Runnable() { @Override public void run() { if (!listModel.contains(model)) { @@ -761,7 +761,7 @@ * policy file model. */ public void addNewCodebaseInteractive() { - SwingUtilities.invokeLater(new Runnable() { + invokeRunnableOrEnqueueLater(new Runnable() { @Override public void run() { String codebase = ""; @@ -790,7 +790,7 @@ } policyEditorController.removeCodebase(codebase); final int fIndex = previousIndex; - SwingUtilities.invokeLater(new Runnable() { + invokeRunnableOrEnqueueLater(new Runnable() { @Override public void run() { listModel.removeElement(codebase); @@ -876,17 +876,34 @@ policyEditorController.clearCustomCodebase(codebase); } + private void invokeRunnableOrEnqueueLater(final Runnable runnable) { + if (SwingUtilities.isEventDispatchThread()) { + runnable.run(); + } else { + SwingUtilities.invokeLater(runnable); + } + } + + private void invokeRunnableOrEnqueueAndWait(final Runnable runnable) throws InvocationTargetException, InterruptedException { + if (SwingUtilities.isEventDispatchThread()) { + runnable.run(); + } else { + SwingUtilities.invokeAndWait(runnable); + } + } + /** * Update the checkboxes to show the permissions granted to the specified codebase * @param codebase whose permissions to display */ private void updateCheckboxes(final String codebase) { try { - if (SwingUtilities.isEventDispatchThread()) { - updateCheckboxesImpl(codebase); - } else { - updateCheckboxesInvokeAndWait(codebase); - } + invokeRunnableOrEnqueueAndWait(new Runnable() { + @Override + public void run() { + updateCheckboxesImpl(codebase); + } + }); } catch (InterruptedException ex) { OutputController.getLogger().log(ex); } catch (InvocationTargetException ex) { @@ -894,16 +911,6 @@ } } - private void updateCheckboxesInvokeAndWait(final String codebase) throws InterruptedException, InvocationTargetException { - SwingUtilities.invokeAndWait(new Runnable() { - @Override - public void run() { - updateCheckboxesImpl(codebase); - } - }); - - } - private void updateCheckboxesImpl(final String codebase) { for (final PolicyEditorPermissions perm : PolicyEditorPermissions.values()) { final JCheckBox box = checkboxMap.get(perm); @@ -1233,7 +1240,7 @@ protected Void doInBackground() throws Exception { try { if (parentWindow != null) { - SwingUtilities.invokeLater(new Runnable() { + invokeRunnableOrEnqueueLater(new Runnable() { @Override public void run() { progressIndicator.setLocationRelativeTo(parentWindow); @@ -1298,7 +1305,7 @@ public Void doInBackground() throws Exception { try { if (parentWindow != null) { - SwingUtilities.invokeLater(new Runnable() { + invokeRunnableOrEnqueueLater(new Runnable() { @Override public void run() { progressIndicator.setLocationRelativeTo(parentWindow); @@ -1331,7 +1338,7 @@ // This dialog is often displayed when closing the editor, and so PolicyEditor // may already be disposed when this dialog appears. Give a weak reference so // that this dialog doesn't prevent the JVM from exiting - SwingUtilities.invokeLater(new Runnable() { + invokeRunnableOrEnqueueLater(new Runnable() { @Override public void run() { JOptionPane.showMessageDialog(parentPolicyEditor.get(), R("PEChangesSaved")); @@ -1346,7 +1353,7 @@ // This dialog is often displayed when closing the editor, and so PolicyEditor // may already be disposed when this dialog appears. Give a weak reference so // that this dialog doesn't prevent the JVM from exiting - SwingUtilities.invokeLater(new Runnable() { + invokeRunnableOrEnqueueLater(new Runnable() { @Override public void run() { JOptionPane.showMessageDialog(parentPolicyEditor.get(), R("PECouldNotSave"), R("Error"), JOptionPane.ERROR_MESSAGE); diff -r 1c5922c7b7b0 -r 3fa789df69e7 netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java --- a/netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java Thu Jun 26 17:22:11 2014 +0200 +++ b/netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java Thu Jul 03 23:25:18 2014 +0200 @@ -137,9 +137,10 @@ insertChars = new JPopupMenu(); initComponents(); regExFilter.setText(ConsoleOutputPaneModel.defaultPattern.pattern()); - if (!LogConfig.getLogConfig().isEnableHeaders()) { - showHeaders.setSelected(false); - } + showHeaders.setSelected(LogConfig.getLogConfig().isEnableHeaders()); + setHeadersCheckBoxesEnabled(showHeaders.isSelected()); + setMessagesCheckBoxesEnabled(showMessage.isSelected()); + refresh.setEnabled(!autorefresh.isSelected()); if (JNLPRuntime.isWebstartApplication()) { showPlugin.setSelected(false); showPreInit.setSelected(false); @@ -214,10 +215,10 @@ @Override public final void run() { - try{ - insertChars.setLocation(regExFilter.getLocationOnScreen()); - insertChars.setVisible(!insertChars.isVisible()); - } catch (Exception ex) { + try { + insertChars.setLocation(regExFilter.getLocationOnScreen()); + insertChars.setVisible(!insertChars.isVisible()); + } catch (Exception ex) { OutputController.getLogger().log(ex); } } @@ -238,6 +239,16 @@ @Override public final void actionPerformed(final ActionEvent evt) { + if (evt == null) return; + + final Object source; + if ((source = evt.getSource()) == showHeaders) { + setHeadersCheckBoxesEnabled(showHeaders.isSelected()); + } else if (source == showMessage) { + setMessagesCheckBoxesEnabled(showMessage.isSelected()); + } else if (source == autorefresh) { + refresh.setEnabled(!autorefresh.isSelected()); + } refreshAction(); } }; @@ -395,6 +406,7 @@ autorefresh.setSelected(true); autorefresh.setText(Translator.R("COPautoRefresh")); + autorefresh.addActionListener(getDefaultActionSingleton()); refresh.setText(Translator.R("COPrefresh")); refresh.addActionListener(getDefaultActionSingleton()); @@ -740,6 +752,27 @@ validate(); } + private final void setHeadersCheckBoxesEnabled(final boolean enable) { + showUser.setEnabled(enable); + showOrigin.setEnabled(enable); + showLevel.setEnabled(enable); + showDate.setEnabled(enable); + showCode.setEnabled(enable); + showThread1.setEnabled(enable); + showThread2.setEnabled(enable); + } + + private final void setMessagesCheckBoxesEnabled(final boolean enable) { + showOut.setEnabled(enable); + showErr.setEnabled(enable); + showJava.setEnabled(enable); + showPlugin.setEnabled(enable); + showDebug.setEnabled(enable); + showInfo.setEnabled(enable); + showItw.setEnabled(enable); + showApp.setEnabled(enable); + } + private final void refreshAction() { updateModel(); refreshPane(); diff -r 1c5922c7b7b0 -r 3fa789df69e7 tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java --- a/tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java Thu Jun 26 17:22:11 2014 +0200 +++ b/tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java Thu Jul 03 23:25:18 2014 +0200 @@ -138,8 +138,8 @@ } - public static LocalesIdentifier main; - public static LocalesIdentifier[] secondary; + private static LocalesIdentifier main; + private static LocalesIdentifier[] secondary; @BeforeClass public static void loadResourceBoundels() { @@ -148,61 +148,54 @@ assertNotNull(main); secondary= new LocalesIdentifier[] {LocalesIdentifier.CZ, LocalesIdentifier.DE, LocalesIdentifier.PL}; assertNotNull(secondary); - for (int i = 0; i < secondary.length; i++) { - assertNotNull(secondary[i]); - + for (LocalesIdentifier secondary1 : secondary) { + assertNotNull(secondary1); } } @Test public void allResourcesAreReallyDifferent() { - List bundles = new ArrayList(secondary.length + 1); + List bundles = new ArrayList<>(secondary.length + 1); String detailResults=""; - bundles.add(main); int errors = 0; bundles.addAll(Arrays.asList(secondary)); - for (int i = 0; i < bundles.size(); i++) { - LocalesIdentifier resourceBundle1 = bundles.get(i); + for (LocalesIdentifier resourceBundle1 : bundles) { Enumeration keys1 = resourceBundle1.getBundle().getKeys(); - for (int j = 0; j < bundles.size(); j++) { - LocalesIdentifier resourceBundle2 = bundles.get(j); - if (resourceBundle1.getLanguage().equals(resourceBundle2.getLanguage())) { - //do not compare same language groups - allLog("Skipping same language " + resourceBundle1.getLocale() + " x " + resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + " x " + resourceBundle2.getIdentifier() + ")"); - break; + LocalesIdentifier resourceBundle2 = main; + allLog("Checking for same items between " + resourceBundle1.getLocale() + " x " + resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + " x " + resourceBundle2.getIdentifier() + ")"); + int localErrors=0; + while (keys1.hasMoreElements()) { + String key = keys1.nextElement(); + String val1 = getMissingResourceAsEmpty(resourceBundle1.getBundle(), key); + if (val1.length() > 1000) { + errLog("Skipping check of: " + key + " too long. (" + val1.length() + ")"); + continue; } - allLog("Checking for same items between " + resourceBundle1.getLocale() + " x " + resourceBundle2.getLocale() + " (should be " + resourceBundle1.getIdentifier() + " x " + resourceBundle2.getIdentifier() + ")"); - int localErrors=0; - while (keys1.hasMoreElements()) { - String key = keys1.nextElement(); - String val1 = getMissingResourceAsEmpty(resourceBundle1.getBundle(), key); - String val2 = getMissingResourceAsEmpty(resourceBundle2.getBundle(), key); - outLog("\""+val1+"\" x \""+val2); - if (val1.trim().equalsIgnoreCase(val2.trim())) { - if (val1.trim().length() <= 5 /* short words like"ok", "", ...*/ - || val1.toLowerCase().contains("://") /*urls...*/ - || !val1.trim().contains(" ") /*one word*/ - || val1.replaceAll("\\{\\d\\}", "").trim().length()<5 /*only vars and short words*/ - //white list - || (val1.trim().equals("std. err")) - || (val1.trim().equals("std. out")) - || (val1.trim().equals("Policy Editor")) - || (val1.trim().equals("Java Reflection"))) - { - errLog("Warning! Items equals for: " + key + " = " + val1 + " but are in allowed subset"); - } else { - errors++; - localErrors++; - errLog("Error! Items equals for: " + key + " = " + val1); - } + String val2 = getMissingResourceAsEmpty(resourceBundle2.getBundle(), key); + outLog("\""+val1+"\" x \""+val2); + if (val1.trim().equalsIgnoreCase(val2.trim())) { + if (val1.trim().length() <= 5 /* short words like"ok", "", ...*/ + || val1.toLowerCase().contains("://") /*urls...*/ + || !val1.trim().contains(" ") /*one word*/ + || val1.replaceAll("\\{\\d\\}", "").trim().length()<5 /*only vars and short words*/ + //white list + || (val1.trim().equals("std. err")) + || (val1.trim().equals("std. out")) + || (val1.trim().equals("Policy Editor")) + || (val1.trim().equals("Java Reflection"))) + { + errLog("Warning! Items equals for: " + key + " = " + val1 + " but are in allowed subset"); + } else { + errors++; + localErrors++; + errLog("Error! Items equals for: " + key + " = " + val1); } } - if (localErrors > 0){ - detailResults+=resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()+": "+localErrors+";"; - } - errLog(localErrors+" errors allResourcesAreReallyDifferent fo "+resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()); - } + if (localErrors > 0){ + detailResults+=resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()+": "+localErrors+";"; + } + errLog(localErrors+" errors allResourcesAreReallyDifferent fo "+resourceBundle1.getIdentifier()+" x "+resourceBundle2.getIdentifier()); } assertTrue("Several - " + errors + " - items are same in bundles. See error logs for details: "+detailResults, errors == 0); } @@ -221,10 +214,10 @@ public void warnForNotLocalisedStrings() { int errors = 0; Enumeration keys = main.getBundle().getKeys(); - for (int i = 0; i < secondary.length; i++) { + for (LocalesIdentifier secondary1 : secondary) { int localErrors = 0; - ResourceBundle sec = secondary[i].getBundle(); - String id = secondary[i].getIdentifier(); + ResourceBundle sec = secondary1.getBundle(); + String id = secondary1.getIdentifier(); allLog("Checking for missing strings in " + sec.getLocale() + " (should be " + id + ") compared with default"); while (keys.hasMoreElements()) { String key = keys.nextElement(); @@ -234,15 +227,14 @@ if (val1.trim().isEmpty()) { } else { if (val2.trim().isEmpty()){ - errors++; - localErrors++; - errLog("Error! There is value for default: " + key + ", but for " + id+" is missing"); + errors++; + localErrors++; + errLog("Error! There is value for default: " + key + ", but for " + id+" is missing"); } } } errLog(localErrors+" warnForNotLocalisedStrings errors for "+id); - } assertTrue("Several - " + errors + " - items have missing localization. See error logs for details", errors == 0); } @@ -251,29 +243,28 @@ @Test public void noEmptyResources() { - List bundles = new ArrayList(secondary.length + 1); + List bundles = new ArrayList<>(secondary.length + 1); bundles.add(main); int errors = 0; bundles.addAll(Arrays.asList(secondary)); - for (int i = 0; i < bundles.size(); i++) { - ResourceBundle resourceBundle = bundles.get(i).getBundle(); - String id = bundles.get(i).getIdentifier(); + for (LocalesIdentifier bundle : bundles) { + ResourceBundle resourceBundle = bundle.getBundle(); + String id = bundle.getIdentifier(); Enumeration keys = resourceBundle.getKeys(); - allLog("Checking for empty items in " + resourceBundle.getLocale() + " (should be " + id + ")"); - int localErrors=0; - while (keys.hasMoreElements()) { - String key = keys.nextElement(); - String val = getMissingResourceAsEmpty(resourceBundle, key); - outLog("\""+key+"\" = \""+val); - if (val.trim().isEmpty()) { - errors++; - localErrors++; - errLog("Error! Key: " + key + " have no vlue"); - } - + allLog("Checking for empty items in " + resourceBundle.getLocale() + " (should be " + id + ")"); + int localErrors=0; + while (keys.hasMoreElements()) { + String key = keys.nextElement(); + String val = getMissingResourceAsEmpty(resourceBundle, key); + outLog("\""+key+"\" = \""+val); + if (val.trim().isEmpty()) { + errors++; + localErrors++; + errLog("Error! Key: " + key + " have no vlue"); } - errLog(localErrors+" noEmptyResources errors for "+id); - + + } + errLog(localErrors+" noEmptyResources errors for "+id); } assertTrue("Several - " + errors + " - items have no values", errors == 0); } @@ -282,11 +273,11 @@ @Test public void findKeysWhichAreInLocalisedButNotInDefault() { int errors = 0; - for (int i = 0; i < secondary.length; i++) { + for (LocalesIdentifier secondary1 : secondary) { int localErrors = 0; - ResourceBundle sec = secondary[i].getBundle(); + ResourceBundle sec = secondary1.getBundle(); Enumeration keys = sec.getKeys(); - String id = secondary[i].getId(); + String id = secondary1.getId(); outLog("Checking for redundant keys in " + sec.getLocale() + " (should be " + id + ") compared with default"); errLog("Checking for redundant keys in " + sec.getLocale() + " (should be " + id + ") compared with default"); while (keys.hasMoreElements()) { @@ -294,15 +285,14 @@ String val2 = getMissingResourceAsEmpty(main.getBundle(), key); String val1 = getMissingResourceAsEmpty(sec, key); outLog("\""+val1+"\" x \""+val2); - if (val2.trim().isEmpty() && !val1.trim().isEmpty()){ + if (val2.trim().isEmpty() && !val1.trim().isEmpty()){ errors++; localErrors++; errLog("Error! There is value for "+id+", key " + key + ", but for default is missing"); - } - + } + } errLog(localErrors+" findKeysWhichAreInLocalisedButNotInDefault errors for "+id); - } assertTrue("Several - " + errors + " - items have value in localized version but not in default one", errors == 0); } From ptisnovs at icedtea.classpath.org Fri Jul 4 08:52:54 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 04 Jul 2014 08:52:54 +0000 Subject: /hg/gfx-test: Updated/fixed JavaDoc. Message-ID: changeset 1ec6e79dbae4 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=1ec6e79dbae4 author: Pavel Tisnovsky date: Fri Jul 04 10:53:49 2014 +0200 Updated/fixed JavaDoc. diffstat: ChangeLog | 7 +- src/org/gfxtest/testsuites/BitBltMirrorImage.java | 80 +++++++++++----------- 2 files changed, 46 insertions(+), 41 deletions(-) diffs (321 lines): diff -r 82e38b9fae09 -r 1ec6e79dbae4 ChangeLog --- a/ChangeLog Thu Jul 03 09:24:33 2014 +0200 +++ b/ChangeLog Fri Jul 04 10:53:49 2014 +0200 @@ -1,4 +1,9 @@ -2014-07-02 Pavel Tisnovsky +2014-07-04 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltMirrorImage.java: + Updated/fixed JavaDoc. + +2014-07-03 Pavel Tisnovsky * src/org/gfxtest/framework/CommonBitmapOperations.java: Yet another five new helper methods added into CommonBitmapOperations. diff -r 82e38b9fae09 -r 1ec6e79dbae4 src/org/gfxtest/testsuites/BitBltMirrorImage.java --- a/src/org/gfxtest/testsuites/BitBltMirrorImage.java Thu Jul 03 09:24:33 2014 +0200 +++ b/src/org/gfxtest/testsuites/BitBltMirrorImage.java Fri Jul 04 10:53:49 2014 +0200 @@ -81,7 +81,7 @@ public class BitBltMirrorImage extends GfxTest { /** - * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_BINARY. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_BYTE_BINARY}. * No flip is performed to that image. * * @param image @@ -96,7 +96,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_BINARY. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_BYTE_BINARY}. * Horizontal flip is performed on that image. * * @param image @@ -111,7 +111,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_BINARY. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_BYTE_BINARY}. * Vertical flip is performed on that image. * * @param image @@ -126,8 +126,8 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_BINARY. - * Horizontal and vertical flips are performed on that image.. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_BYTE_BINARY}. + * Horizontal and vertical flips are performed on that image. * * @param image * image used as a destination for BitBlt-type operations @@ -141,7 +141,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * No flip is performed to that image. * * @param image @@ -156,7 +156,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * Horizontal flip is performed on that image. * * @param image @@ -171,7 +171,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * Vertical flip is performed on that image. * * @param image @@ -186,8 +186,8 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_RGB. - * Horizontal and vertical flips are performed on that image.. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_RGB}. + * Horizontal and vertical flips are performed on that image. * * @param image * image used as a destination for BitBlt-type operations @@ -201,7 +201,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * No flip is performed to that image. * * @param image @@ -216,7 +216,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * Horizontal flip is performed on that image. * * @param image @@ -231,7 +231,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * Vertical flip is performed on that image. * * @param image @@ -246,8 +246,8 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_BGR. - * Horizontal and vertical flips are performed on that image.. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_BGR}. + * Horizontal and vertical flips are performed on that image. * * @param image * image used as a destination for BitBlt-type operations @@ -261,7 +261,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * No flip is performed to that image. * * @param image @@ -276,7 +276,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * Horizontal flip is performed on that image. * * @param image @@ -291,7 +291,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * Vertical flip is performed on that image. * * @param image @@ -306,8 +306,8 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB. - * Horizontal and vertical flips are performed on that image.. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. + * Horizontal and vertical flips are performed on that image. * * @param image * image used as a destination for BitBlt-type operations @@ -321,7 +321,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * No flip is performed to that image. * * @param image @@ -336,7 +336,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * Horizontal flip is performed on that image. * * @param image @@ -351,7 +351,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * Vertical flip is performed on that image. * * @param image @@ -366,8 +366,8 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB_PRE. - * Horizontal and vertical flips are performed on that image.. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. + * Horizontal and vertical flips are performed on that image. * * @param image * image used as a destination for BitBlt-type operations @@ -381,7 +381,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * No flip is performed to that image. * * @param image @@ -396,8 +396,8 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. - * Horizontal flip is performed on that image.. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. + * Horizontal flip is performed on that image. * * @param image * image used as a destination for BitBlt-type operations @@ -411,8 +411,8 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. - * Vertical flip is performed on that image.. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. + * Vertical flip is performed on that image. * * @param image * image used as a destination for BitBlt-type operations @@ -426,8 +426,8 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. - * Horizontal and vertical flips are performed on that image.. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. + * Horizontal and vertical flips are performed on that image. * * @param image * image used as a destination for BitBlt-type operations @@ -441,7 +441,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * No flip is performed to that image. * * @param image @@ -456,7 +456,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * Horizontal flip is performed to that image. * * @param image @@ -471,7 +471,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * Vertical flip is performed to that image. * * @param image @@ -486,7 +486,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * Horizontal and vertical flip are performed to that image. * * @param image @@ -501,7 +501,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * No flip is performed to that image. * * @param image @@ -516,7 +516,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * Horizontal flip is performed to that image. * * @param image @@ -531,7 +531,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * Vertical flip is performed to that image. * * @param image @@ -546,7 +546,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * Horizontal and vertical flips are performed to that image. * * @param image From jkang at redhat.com Fri Jul 4 18:18:13 2014 From: jkang at redhat.com (Jie Kang) Date: Fri, 4 Jul 2014 14:18:13 -0400 (EDT) Subject: [rfc][icedtea-web] itweb-settings Control Panel Resizing In-Reply-To: <1801581461.2941576.1404497849484.JavaMail.zimbra@redhat.com> Message-ID: <1238448575.2941687.1404497893423.JavaMail.zimbra@redhat.com> Hello, I have created a patch fixing the issues outlined here: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1856 The UI behaves better for lower resolutions (e.g. 800x600). Thanks, -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: control-panel-size.patch Type: text/x-patch Size: 22153 bytes Desc: not available URL: From bugzilla-daemon at icedtea.classpath.org Sat Jul 5 01:44:36 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 05 Jul 2014 01:44:36 +0000 Subject: [Bug 1862] New: A fatal error has been detected by the Java Runtime Environment Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1862 Bug ID: 1862 Summary: A fatal error has been detected by the Java Runtime Environment Product: IcedTea Version: unspecified Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: nodchip at gmail.com CC: unassigned at icedtea.classpath.org Created attachment 1109 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1109&action=edit log file I got the following error when I run my program on Ubuntu 14.04. Unfortunately, I can not publish the program on the internet to everyone. But I will send the source code to the assignees individually. The error message was: # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00007f5edd01ec21, pid=5593, tid=140045172737792 # # JRE version: OpenJDK Runtime Environment (7.0_55-b14) (build 1.7.0_55-b14) # Java VM: OpenJDK 64-Bit Server VM (24.51-b03 mixed mode linux-amd64 compressed oops) # Problematic frame: # j tv.dyndns.kishibe.pad.State.normalize(Ljava/util/List;)Ljava/util/List;+26 # # Core dump written. Default location: /home/nodchip/robot/core or core.5593 # # An error report file with more information is saved as: # /home/nodchip/robot/hs_err_pid5593.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 # The version was: $ uname -a Linux nighthawk 3.13.0-30-generic #54-Ubuntu SMP Mon Jun 9 22:45:01 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux $ java -version java version "1.7.0_55" OpenJDK Runtime Environment (IcedTea 2.4.7) (7u55-2.4.7-1ubuntu1) OpenJDK 64-Bit Server VM (build 24.51-b03, mixed mode) The dumped core is here: https://docs.google.com/file/d/0B-tvvyU4WOofWS1ERkZTNDFaSDg/edit I also attached the log file. Thanks, -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitne at gmx.de Sat Jul 5 11:42:44 2014 From: gitne at gmx.de (Jacob Wisor) Date: Sat, 05 Jul 2014 13:42:44 +0200 Subject: [rfc][icedtea-web] itweb-settings Control Panel Resizing In-Reply-To: <1238448575.2941687.1404497893423.JavaMail.zimbra@redhat.com> References: <1238448575.2941687.1404497893423.JavaMail.zimbra@redhat.com> Message-ID: <53B7E4B4.7020005@gmx.de> On 07/04/2014 08:18 PM, Jie Kang wrote: > Hello, > > I have created a patch fixing the issues outlined here: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1856 > > The UI behaves better for lower resolutions (e.g. 800x600). > Thank you for fixing this. Would you like to backport this to 1.5 too, since panel resizing has been broken since then (presumably by Jiri ;-) )? Thank you also for formatting the source code. > + ListCellRenderer comboRendererWithToolTips = new > DefaultListCellRenderer() { > + > + @Override > + public Component getListCellRendererComponent(JList list, > + Object value, int index, boolean isSelected, > + boolean cellHasFocus) { Please make getListCellRendererComponent()'s parameters final. The method itself can be made final too. > + setToolTipText(value.toString()); Since getListCellRendererComponent() has a public access modifier, value can be null. For the sake of robustness please add the trinary operator here to check value for null before dereferencing it. > + return super.getListCellRendererComponent(list, value, index, > isSelected, > + cellHasFocus); > + } > + > + }; > + > [...] > @@ -338,15 +361,15 @@ > > globalBehaviourLabel.setText( > Translator.R("APPEXTSECguiPanelGlobalBehaviourCaption")); > > - deleteTypeComboBox.setModel(new > javax.swing.DefaultComboBoxModel<>(new String[] { Please beware of the "diamond" operator when backporting to 1.5. ;-) > + deleteTypeComboBox.setModel(new DefaultComboBoxModel<>(new String[] { > Translator.R("APPEXTSECguiPanelDeleteMenuSelected"), > Translator.R("APPEXTSECguiPanelDeleteMenuAllA"), > Translator.R("APPEXTSECguiPanelDeleteMenuAllN"), > Translator.R("APPEXTSECguiPanelDeleteMenuAlly"), > Translator.R("APPEXTSECguiPanelDeleteMenuAlln"), > Translator.R("APPEXTSECguiPanelDeleteMenuAllAll")})); > - > - viewFilter.setModel(new javax.swing.DefaultComboBoxModel<>(new > String[] { > + deleteTypeComboBox.setRenderer(comboRendererWithToolTips); > + viewFilter.setModel(new DefaultComboBoxModel<>(new String[] { Please beware of the "diamond" operator when backporting to 1.5. ;-) > Translator.R("APPEXTSECguiPanelShowOnlyPermanent"), > Translator.R("APPEXTSECguiPanelShowOnlyTemporal"), > Translator.R("APPEXTSECguiPanelShowAll"), > [...] > @@ -756,12 +779,12 @@ > } > > private void reloadTable() { > - List l = > currentTable.getRowSorter().getSortKeys(); > + List l = > currentTable.getRowSorter().getSortKeys(); Why did you remove the import for SortKey? > currentTable.setModel(new DefaultTableModel()); > currentTable.setModel(currentModel); > { > currentTable.getRowSorter().setSortKeys(l); > - > + > } > > } Apart from that, good work! :-) Jacob From jkang at redhat.com Mon Jul 7 15:30:44 2014 From: jkang at redhat.com (Jie Kang) Date: Mon, 7 Jul 2014 11:30:44 -0400 (EDT) Subject: [rfc][icedtea-web] itweb-settings Control Panel Resizing In-Reply-To: <53B7E4B4.7020005@gmx.de> References: <1238448575.2941687.1404497893423.JavaMail.zimbra@redhat.com> <53B7E4B4.7020005@gmx.de> Message-ID: <1732190708.3477006.1404747044179.JavaMail.zimbra@redhat.com> Hello, > > Hello, > > > > I have created a patch fixing the issues outlined here: > > http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1856 > > > > The UI behaves better for lower resolutions (e.g. 800x600). > > > > Thank you for fixing this. Would you like to backport this to 1.5 too, since > panel resizing has been broken since then (presumably by Jiri ;-) )? > > Thank you also for formatting the source code. > > > + ListCellRenderer comboRendererWithToolTips = new > > DefaultListCellRenderer() { > > + > > + @Override > > + public Component getListCellRendererComponent(JList list, > > + Object value, int index, boolean isSelected, > > + boolean cellHasFocus) { > > Please make getListCellRendererComponent()'s parameters final. The method > itself > can be made final too. > > > + setToolTipText(value.toString()); Done. > > Since getListCellRendererComponent() has a public access modifier, value can > be > null. For the sake of robustness please add the trinary operator here to > check > value for null before dereferencing it. I have added a null-check. > > > + return super.getListCellRendererComponent(list, value, index, > > isSelected, > > + cellHasFocus); > > + } > > + > > + }; > > + > > [...] > > @@ -338,15 +361,15 @@ > > > > globalBehaviourLabel.setText( > > Translator.R("APPEXTSECguiPanelGlobalBehaviourCaption")); > > > > - deleteTypeComboBox.setModel(new > > javax.swing.DefaultComboBoxModel<>(new String[] { > > Please beware of the "diamond" operator when backporting to 1.5. ;-) > Thanks. > > + deleteTypeComboBox.setModel(new DefaultComboBoxModel<>(new > > String[] { > > Translator.R("APPEXTSECguiPanelDeleteMenuSelected"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAllA"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAllN"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAlly"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAlln"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAllAll")})); > > - > > - viewFilter.setModel(new javax.swing.DefaultComboBoxModel<>(new > > String[] { > > + deleteTypeComboBox.setRenderer(comboRendererWithToolTips); > > + viewFilter.setModel(new DefaultComboBoxModel<>(new String[] { > > Please beware of the "diamond" operator when backporting to 1.5. ;-) > > > Translator.R("APPEXTSECguiPanelShowOnlyPermanent"), > > Translator.R("APPEXTSECguiPanelShowOnlyTemporal"), > > Translator.R("APPEXTSECguiPanelShowAll"), > > [...] > > @@ -756,12 +779,12 @@ > > } > > > > private void reloadTable() { > > - List l = > > currentTable.getRowSorter().getSortKeys(); > > + List l = > > currentTable.getRowSorter().getSortKeys(); > > Why did you remove the import for SortKey? I'm not sure. My bad. (can I blame Eclipse?) > > > currentTable.setModel(new DefaultTableModel()); > > currentTable.setModel(currentModel); > > { > > currentTable.getRowSorter().setSortKeys(l); > > - > > + > > } > > > > } > > Apart from that, good work! :-) Thanks for the review. I have also included a backport patch to 1.5. > > Jacob > Regards, -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: control-panel-size-2.patch Type: text/x-patch Size: 20575 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: control-panel-size-1.5-backport.patch Type: text/x-patch Size: 21475 bytes Desc: not available URL: From bugzilla-daemon at icedtea.classpath.org Mon Jul 7 18:05:38 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 07 Jul 2014 18:05:38 +0000 Subject: [Bug 1863] New: SIGSEGV sun.awt.GlobalCursorManager.updateCursorImmediately()V at a x86 stable Gentoo Linux Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1863 Bug ID: 1863 Summary: SIGSEGV sun.awt.GlobalCursorManager.updateCursorImmediately()V at a x86 stable Gentoo Linux Product: IcedTea Version: 6-1.13.3 Hardware: x86 OS: Linux Status: NEW Severity: enhancement Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: toralf.foerster at gmx.de CC: unassigned at icedtea.classpath.org Created attachment 1110 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1110&action=edit /tmp/hs_err_pid8804.log # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0xb2d00438, pid=8804, tid=2477452096 # # JRE version: 6.0_31-b31 # Java VM: OpenJDK Server VM (23.25-b01 mixed mode linux-x86 ) # Problematic frame: # J sun.awt.GlobalCursorManager.updateCursorImmediately()V # # Core dump written. Default location: /opt/tvbrowser-3.4/core or core.8804 # # An error report file with more information is saved as: # /tmp/hs_err_pid8804.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 # /opt/tvbrowser/tvbrowser.sh: line 118: 8804 Aborted ${JAVA_PROGRAM_DIR}java -Xms16m -Xmx320m -Djava.library.path="${PROGRAM_DIR}" -Dpropertiesfile=linux.properties -jar tvbrowser.jar "$@" TV-Browser TERMINATED. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From doko at ubuntu.com Mon Jul 7 19:47:45 2014 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 07 Jul 2014 21:47:45 +0200 Subject: issues building jdk8u/jdk8u20 Message-ID: <53BAF961.2000000@ubuntu.com> Hi, I got the advice to try the jdk8u-dev ML first, so here we go: I'm trying to build packages for Debian/Ubuntu from the http://hg.openjdk.java.net/jdk8u/jdk8u20/ archive. There are a few issues I can't figure out: - linux distros usually have their own standards about what to do about debug information. so what I want to do is to ask openjdk not do to anything, and do the stripping with the distro tools. this doesn't seem to work. Configuring with the environment vars DEBUG_BINARIES=true FULL_DEBUG_SYMBOLS=0 STRIP_POLICY=none ALT_OBJCOPY=/does_not_exist and --disable-zip-debug-info, I still get .debuginfo files. Is there any way how to disable this stripping at all? Is there any documentation what debug information is needed for a working OpenJDK 8 build? - The toplevel configury seem to support --with-extra-*flags, however the subprojects don't pick up these values. This is needed for distros to build with flags to default to hardening issues. - The demos build fails to build with the hardening defaults used in Debian and Ubuntu. Sure, you don't see this, because the extra flags are ignored. There are more issues, however I consider these above preventing integration of OpenJDK-8 into Debian/Ubuntu. If you need any bug tracker issues, please let me know how to submit these. Another issue are the assumptions being made about cross builds, and selecting the appropriate build tools. I'd like to discuss these with somebody having experience with cross builds. thanks, Matthias From omajid at redhat.com Mon Jul 7 20:04:51 2014 From: omajid at redhat.com (Omair Majid) Date: Mon, 7 Jul 2014 16:04:51 -0400 Subject: issues building jdk8u/jdk8u20 In-Reply-To: <53BAF961.2000000@ubuntu.com> References: <53BAF961.2000000@ubuntu.com> Message-ID: <20140707200451.GD19764@redhat.com> * Matthias Klose [2014-07-07 15:50]: > - linux distros usually have their own standards about what > to do about debug information. so what I want to do is to > ask openjdk not do to anything, and do the stripping > with the distro tools. this doesn't seem to work. Based on what I have heard, I think it's working as designed, sadly. > Configuring with the environment vars > > DEBUG_BINARIES=true > FULL_DEBUG_SYMBOLS=0 > STRIP_POLICY=none > ALT_OBJCOPY=/does_not_exist > > and --disable-zip-debug-info, I still get .debuginfo files. > Is there any way how to disable this stripping at all? > Is there any documentation what debug information is needed > for a working OpenJDK 8 build? There's been a couple of threads about this. You might want to look into the archives of the build-dev mailing list (eg: [1]). The solution I picked up was that it was possible to disable stripping of all biarnies and just delete the .debuginfo files manually. The instructions for not stripping seem to have changed between jdk8 and jdk8u. > Another issue are the assumptions being made about cross builds, and selecting > the appropriate build tools. I'd like to discuss these with somebody having > experience with cross builds. Folks at build-dev might be able to answer build-related questions more readily, as well as review build-related patches. Thanks, Omair [1] http://mail.openjdk.java.net/pipermail/build-dev/2014-February/012029.html -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From doko at ubuntu.com Mon Jul 7 20:15:54 2014 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 07 Jul 2014 22:15:54 +0200 Subject: issues building jdk8u/jdk8u20 In-Reply-To: <20140707200451.GD19764@redhat.com> References: <53BAF961.2000000@ubuntu.com> <20140707200451.GD19764@redhat.com> Message-ID: <53BAFFFA.1060509@ubuntu.com> Am 07.07.2014 22:04, schrieb Omair Majid: > * Matthias Klose [2014-07-07 15:50]: >> - linux distros usually have their own standards about what >> to do about debug information. so what I want to do is to >> ask openjdk not do to anything, and do the stripping >> with the distro tools. this doesn't seem to work. > > Based on what I have heard, I think it's working as designed, sadly. do you have any pointers on the "design"? From omajid at redhat.com Mon Jul 7 20:28:03 2014 From: omajid at redhat.com (Omair Majid) Date: Mon, 7 Jul 2014 16:28:03 -0400 Subject: issues building jdk8u/jdk8u20 In-Reply-To: <53BAFFFA.1060509@ubuntu.com> References: <53BAF961.2000000@ubuntu.com> <20140707200451.GD19764@redhat.com> <53BAFFFA.1060509@ubuntu.com> Message-ID: <20140707202803.GA13812@redhat.com> * Matthias Klose [2014-07-07 16:16]: > Am 07.07.2014 22:04, schrieb Omair Majid: > > * Matthias Klose [2014-07-07 15:50]: > >> - linux distros usually have their own standards about what > >> to do about debug information. so what I want to do is to > >> ask openjdk not do to anything, and do the stripping > >> with the distro tools. this doesn't seem to work. > > > > Based on what I have heard, I think it's working as designed, sadly. > > do you have any pointers on the "design"? Sadly, I haven't seen anything that completely describes the design. All I have are bits and pieces: - https://bugs.openjdk.java.net/browse/JDK-7092218 - https://bugs.openjdk.java.net/browse/JDK-7071907 - http://mail.openjdk.java.net/pipermail/build-dev/2012-March/005798.html - http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-March/026450.html Hope that helps. Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From bugzilla-daemon at icedtea.classpath.org Tue Jul 8 11:26:11 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 08 Jul 2014 11:26:11 +0000 Subject: [Bug 1864] New: PCSC + openjdk 1.7 crash on fedora 20 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 Bug ID: 1864 Summary: PCSC + openjdk 1.7 crash on fedora 20 Product: IcedTea-Web Version: unspecified Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement Priority: P5 Component: Plugin Assignee: dbhole at redhat.com Reporter: christian.maierhofer at iaik.tugraz.at CC: unassigned at icedtea.classpath.org Created attachment 1111 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1111&action=edit hs_error.log Hi, Installed java version: java-1.7.0-openjdk-1.7.0.60-2.5.0.1.fc20.x86_64 To reproduce the bug, try the following: 1. Downloading/Start the jnlp file from http://webstart.buergerkarte.at/mocca/webstart/mocca.jnlp with icedtea plugin 2. Connect Smartcard Reader with Austrian Citizen Card inserted 3. Try to read the identityLink from the smart card by entering http://localhost:3495/IdentityLink in a browser --> java app crashes when trying to read data from smart card. This error happens after java update to version:java-1.7.0-openjdk-1.7.0.60-2.5.0.1.fc20.x86_64 Everything works fine on version java-1.7.0-openjdk-1.7.0.60-2.4.3.0.fc20.x86_64 Could be a bug in the native pcsc code? Attached see the hs_error.log. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 8 11:37:07 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 08 Jul 2014 11:37:07 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 christian.maierhofer at iaik.tugraz.at changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|enhancement |normal -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From david.holmes at oracle.com Tue Jul 8 12:07:49 2014 From: david.holmes at oracle.com (David Holmes) Date: Tue, 08 Jul 2014 22:07:49 +1000 Subject: issues building jdk8u/jdk8u20 In-Reply-To: <53BAF961.2000000@ubuntu.com> References: <53BAF961.2000000@ubuntu.com> Message-ID: <53BBDF15.9050703@oracle.com> On 8/07/2014 5:47 AM, Matthias Klose wrote: > Hi, > > I got the advice to try the jdk8u-dev ML first, so here we go: > > I'm trying to build packages for Debian/Ubuntu from the > > http://hg.openjdk.java.net/jdk8u/jdk8u20/ > > archive. There are a few issues I can't figure out: > > - linux distros usually have their own standards about what > to do about debug information. so what I want to do is to > ask openjdk not do to anything, and do the stripping > with the distro tools. this doesn't seem to work. > > Configuring with the environment vars > > DEBUG_BINARIES=true > FULL_DEBUG_SYMBOLS=0 > STRIP_POLICY=none > ALT_OBJCOPY=/does_not_exist > > and --disable-zip-debug-info, I still get .debuginfo files. > Is there any way how to disable this stripping at all? > Is there any documentation what debug information is needed > for a working OpenJDK 8 build? Omair already pointed you to a number of threads discussing this aspect so I won't go into it further. > - The toplevel configury seem to support --with-extra-*flags, > however the subprojects don't pick up these values. This > is needed for distros to build with flags to default to > hardening issues. The --with-extra-*flags are only used by hotspot and JDK. They are primarily intended to pass through compiler flags when doing cross-compilation. They are not intended as a general mechanism for passing additional flags - most of which is internalized in the makefiles (either directly for hotspot, or via what configure sets up). > - The demos build fails to build with the hardening defaults > used in Debian and Ubuntu. Sure, you don't see this, because > the extra flags are ignored. > > There are more issues, however I consider these above preventing integration of > OpenJDK-8 into Debian/Ubuntu. If you need any bug tracker issues, please let me > know how to submit these. > > Another issue are the assumptions being made about cross builds, and selecting > the appropriate build tools. I'd like to discuss these with somebody having > experience with cross builds. That would be me I guess. :) The cross-compilation support was defined based on our own internal needs for doing ARM and PPC builds, and how we previously achieved that. It is far from general purpose. There is already some description of it in the README-builds.html. Cheers, David > thanks, Matthias > From ldracz at redhat.com Tue Jul 8 14:20:11 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Tue, 8 Jul 2014 10:20:11 -0400 (EDT) Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: <1438059247.3669487.1404766249053.JavaMail.zimbra@redhat.com> Message-ID: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> Hello, This patch addresses the bug PR1857. Removed JSlider and improved the JSpinner using the suggestions from bugzilla. The JSpinner was changed to go from 0 to 1024, with a step size of 32. A checkbox was added to implement unlimited cache size or limit to the JSpinner value. When limit is unchecked the JSpinner is disabled. Andrew Azores helped in the making of this patch. Thank you, Lukasz Dracz -------------- next part -------------- A non-text attachment was scrubbed... Name: cacheSizeSpinner.patch Type: text/x-patch Size: 8869 bytes Desc: not available URL: From doko at ubuntu.com Tue Jul 8 14:28:05 2014 From: doko at ubuntu.com (Matthias Klose) Date: Tue, 08 Jul 2014 16:28:05 +0200 Subject: issues building jdk8u/jdk8u20 In-Reply-To: <53BAF961.2000000@ubuntu.com> References: <53BAF961.2000000@ubuntu.com> Message-ID: <53BBFFF5.8030707@ubuntu.com> Am 07.07.2014 21:47, schrieb Matthias Klose: > - The demos build fails to build with the hardening defaults > used in Debian and Ubuntu. Sure, you don't see this, because > the extra flags are ignored. trying to pass -Wl-z,relro ... make[3]: Leaving directory '/scratch/packages/openjdk/8/openjdk-8-8u20-b20/src/jdk/make' CompileDemos.gmk:310: *** missing separator (did you mean TAB instead of 8 spaces?). Stop. BuildJdk.gmk:93: recipe for target 'demos' failed make[2]: *** [demos] Error 2 this is a not very robust make macro, and apparently somebody already did see that with Solaris builds, but did choose to only fix or work-around it for Solaris: see the comment in jdk/make/CompileDemos.gmk (SetupJVMTIDemo): # Workaround for CFLAGS_JDKLIB containing ',' on solaris. If this is added as 'CFLAGS' to the # eval call below, the comma gets expanded too early. From doko at ubuntu.com Tue Jul 8 14:39:52 2014 From: doko at ubuntu.com (Matthias Klose) Date: Tue, 08 Jul 2014 16:39:52 +0200 Subject: issues building jdk8u/jdk8u20 In-Reply-To: <53BBDF15.9050703@oracle.com> References: <53BAF961.2000000@ubuntu.com> <53BBDF15.9050703@oracle.com> Message-ID: <53BC02B8.9090102@ubuntu.com> Am 08.07.2014 14:07, schrieb David Holmes: > On 8/07/2014 5:47 AM, Matthias Klose wrote: >> Another issue are the assumptions being made about cross builds, and selecting >> the appropriate build tools. I'd like to discuss these with somebody having >> experience with cross builds. > > That would be me I guess. :) The cross-compilation support was defined based on > our own internal needs for doing ARM and PPC builds, and how we previously > achieved that. It is far from general purpose. There is already some description > of it in the README-builds.html. ok, it looks like the only way to use the cross build tools is to have ALT_COMPILER_PATH set, with the assumption that this has to be separate path than the one for the host tools. On Debian/Ubuntu these tools are located in a common path, /usr/bin, and I don't see a way to explicitly set the *name* for the target tools. Would it be possible to add macros at any location where one of the host tools gets defined? like HOST_CC = $(host_prefix)gcc CXX = $(target_prefix)gcc Or should another approach be used? Matthias From bugzilla-daemon at icedtea.classpath.org Tue Jul 8 15:24:27 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 08 Jul 2014 15:24:27 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 Deepak Bhole changed: What |Removed |Added ---------------------------------------------------------------------------- Component|Plugin |IcedTea Version|unspecified |2.5.0 Assignee|dbhole at redhat.com |sgehwolf at redhat.com Product|IcedTea-Web |IcedTea --- Comment #1 from Deepak Bhole --- This is most likely unrelated to IcedTea-Web and an issued in the JRE itself. Updating component and assigning to Severin who has looked into a similar issue for Feora/RHEL. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From aazores at icedtea.classpath.org Tue Jul 8 16:03:13 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Tue, 08 Jul 2014 16:03:13 +0000 Subject: /hg/icedtea-web: Escaped the minus signs in the policyeditor man... Message-ID: changeset 8d268909bdb6 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=8d268909bdb6 author: Emmanuel Bourg date: Tue Jul 08 17:24:32 2014 +0200 Escaped the minus signs in the policyeditor manpage diffstat: ChangeLog | 4 ++++ netx/policyeditor.1 | 12 ++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diffs (51 lines): diff -r 3fa789df69e7 -r 8d268909bdb6 ChangeLog --- a/ChangeLog Thu Jul 03 23:25:18 2014 +0200 +++ b/ChangeLog Tue Jul 08 17:24:32 2014 +0200 @@ -1,3 +1,7 @@ +2014-07-08 Emmanuel Bourg + + * netx/policyeditor.1: Escaped the minus signs in the policyeditor manpage + 2014-07-03 Jacob Wisor * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: Fix diff -r 3fa789df69e7 -r 8d268909bdb6 netx/policyeditor.1 --- a/netx/policyeditor.1 Thu Jul 03 23:25:18 2014 +0200 +++ b/netx/policyeditor.1 Tue Jul 08 17:24:32 2014 +0200 @@ -33,22 +33,22 @@ .SH OPTIONS .TP --help +\-help Prints a short help text and exits. .TP --file policy_file +\-file policy_file Specifies a policy file path to open. If exactly one argument is given, and it is not this flag, it is interpreted as a file path to open, as if this flag was given first. This flag exists mostly for compatibility with Policy Tool, -but is also needed when opening a policy file and also using the -codebase flag. +but is also needed when opening a policy file and also using the \-codebase flag. .TP --codebase url +\-codebase url Specifies an applet codebase URL. If the specified codebase already exists in the policy file (if any), then it will be selected when the editor opens. If it is a new codebase then it will be added and selected. Multiple URLs may also -be given with a single -codebase flag by separating them with spaces. In this +be given with a single \-codebase flag by separating them with spaces. In this case, the last codebase given will be selected, and all will be added. If this flag is given more than once, only the first is used. @@ -59,7 +59,7 @@ Show the GUI editor .TP -policyeditor -file $HOME/.config/icedtea-web/security/java.policy +policyeditor \-file $HOME/.config/icedtea-web/security/java.policy Opens the default user-level policy file location From gitne at gmx.de Tue Jul 8 16:49:09 2014 From: gitne at gmx.de (Jacob Wisor) Date: Tue, 08 Jul 2014 18:49:09 +0200 Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> Message-ID: <53BC2105.2060407@gmx.de> On 07/08/2014 04:20 PM, Lukasz Dracz wrote: > Hello, > > This patch addresses the bug PR1857. Removed JSlider and improved the JSpinner using the suggestions from bugzilla. The JSpinner was changed to go from 0 to 1024, with a step size of 32. A checkbox was added to implement unlimited cache size or limit to the JSpinner value. When limit is unchecked the JSpinner is disabled. Andrew Azores helped in the making of this patch. > > Thank you, > Lukasz Dracz Thank you for addressing this issue. To be honest, I am not fully satisfied with this patch although it bears good intentions. My main concern is that automation is always key and preferred. 1. IcedTea-Web should not impose any (arbitrary) hard limit on the cache size. If the user is supposed to be able to set a limit then there should not be a limit on the limit, or rather only a physical limit. ;-) Of course, there will always be some physical limit but we should not care about that. So, please eliminate TemporaryInternetFilesPanel.CACHE_MAX_SIZE. Furthermore, for that matter, the value representing the user defined cache size limit should be a long (in MB), since this is the largest primitive integer data type that should be sufficient for this purpose and is the "least problematic" large numeric data type. Please note that Java itself can only handle single files and file systems no larger than Long.MAX_VALUE in bytes. So using long for this purpose should be OK. 2. Any hard limit should not be hard coded. 3. Automation; When checking the TemporaryInternetFilesPanel.limitCacheSizeCheckBox the preset value in the TemporaryInternetFilesPanel.cacheSizeSpinner should either be the available disk space in MB at the user's discretion or his quota in the cache directory (which in fact is the limit), or 0. But, in any case the limit should be determined at run time and be no larger than the amount of available disk space (not free space). 4. An arbitrary step size of 32 is rather annoying to the user and may lead the user onto the wrong assumption that only cache sizes in steps of 32 MB are valid or accepted. So, TemporaryInternetFilesPanel.cacheSizeSpinner should rather accelerate - increment the step size - by a magnitude when hitting the next magnitude. E.g. while the initial step size is 1 and hitting 10, the next step size would become 10, and when hitting 100 the next step size should be 100, and so on. Yes, I am aware this is a detail but this is what makes great software. ;-) 5. TemporaryInternetFilesPanel.cacheSizeSpinner's SpinnerNumberModel is a *very* *good* candidate for a nested class due to its complexity. If the JSpinner is to check for the available disk space then it is even more of a candidate for a nested class. Due to its complexity, it is even advisable to create an extended JSpinner with its SpinnerNumberModel nested. This extended JSpinner should also hold the new private final static constants. All the other changes look good. Jacob From david.holmes at oracle.com Wed Jul 9 01:56:20 2014 From: david.holmes at oracle.com (David Holmes) Date: Wed, 09 Jul 2014 11:56:20 +1000 Subject: issues building jdk8u/jdk8u20 In-Reply-To: <53BC02B8.9090102@ubuntu.com> References: <53BAF961.2000000@ubuntu.com> <53BBDF15.9050703@oracle.com> <53BC02B8.9090102@ubuntu.com> Message-ID: <53BCA144.7080007@oracle.com> On 9/07/2014 12:39 AM, Matthias Klose wrote: > Am 08.07.2014 14:07, schrieb David Holmes: >> On 8/07/2014 5:47 AM, Matthias Klose wrote: >>> Another issue are the assumptions being made about cross builds, and selecting >>> the appropriate build tools. I'd like to discuss these with somebody having >>> experience with cross builds. >> >> That would be me I guess. :) The cross-compilation support was defined based on >> our own internal needs for doing ARM and PPC builds, and how we previously >> achieved that. It is far from general purpose. There is already some description >> of it in the README-builds.html. > > ok, it looks like the only way to use the cross build tools is to have > ALT_COMPILER_PATH set, with the assumption that this has to be separate path > than the one for the host tools. On Debian/Ubuntu these tools are located in a > common path, /usr/bin, and I don't see a way to explicitly set the *name* for > the target tools. Would it be possible to add macros at any location where one > of the host tools gets defined? like > > HOST_CC = $(host_prefix)gcc > CXX = $(target_prefix)gcc > > Or should another approach be used? This is the hotspot part of the build. The hotspot build is configure-aware but has not yet been rewritten to use all the values that configure would supply - such as prefixed tools. Work on this was started but is currently on hold. David ----- > Matthias > From helpcrypto at gmail.com Wed Jul 9 06:21:48 2014 From: helpcrypto at gmail.com (helpcrypto helpcrypto) Date: Wed, 9 Jul 2014 08:21:48 +0200 Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: <53BC2105.2060407@gmx.de> References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> <53BC2105.2060407@gmx.de> Message-ID: My two cents:KISS Place a textbox and let the user define "maximum cache size" using text. 0 for no cache. IMHO: Initial value to 100MB will be fair enough. Remove the spinner, any other references, values and checks. On Tue, Jul 8, 2014 at 6:49 PM, Jacob Wisor wrote: > On 07/08/2014 04:20 PM, Lukasz Dracz wrote: > >> Hello, >> >> This patch addresses the bug PR1857. Removed JSlider and improved the >> JSpinner using the suggestions from bugzilla. The JSpinner was changed to >> go from 0 to 1024, with a step size of 32. A checkbox was added to >> implement unlimited cache size or limit to the JSpinner value. When limit >> is unchecked the JSpinner is disabled. Andrew Azores helped in the making >> of this patch. >> >> Thank you, >> Lukasz Dracz >> > > Thank you for addressing this issue. > > To be honest, I am not fully satisfied with this patch although it bears > good intentions. My main concern is that automation is always key and > preferred. > > 1. IcedTea-Web should not impose any (arbitrary) hard limit on the cache > size. If the user is supposed to be able to set a limit then there should > not be a limit on the limit, or rather only a physical limit. ;-) Of > course, there will always be some physical limit but we should not care > about that. So, please eliminate TemporaryInternetFilesPanel.CACHE_MAX_SIZE. > Furthermore, for that matter, the value representing the user defined cache > size limit should be a long (in MB), since this is the largest primitive > integer data type that should be sufficient for this purpose and is the > "least problematic" large numeric data type. Please note that Java itself > can only handle single files and file systems no larger than Long.MAX_VALUE > in bytes. So using long for this purpose should be OK. > > 2. Any hard limit should not be hard coded. > > 3. Automation; When checking the TemporaryInternetFilesPanel.limitCacheSizeCheckBox > the preset value in the TemporaryInternetFilesPanel.cacheSizeSpinner > should either be the available disk space in MB at the user's discretion or > his quota in the cache directory (which in fact is the limit), or 0. But, > in any case the limit should be determined at run time and be no larger > than the amount of available disk space (not free space). > > 4. An arbitrary step size of 32 is rather annoying to the user and may > lead the user onto the wrong assumption that only cache sizes in steps of > 32 MB are valid or accepted. > So, TemporaryInternetFilesPanel.cacheSizeSpinner should rather accelerate > - increment the step size - by a magnitude when hitting the next magnitude. > E.g. while the initial step size is 1 and hitting 10, the next step size > would become 10, and when hitting 100 the next step size should be 100, and > so on. > Yes, I am aware this is a detail but this is what makes great software. ;-) > > 5. TemporaryInternetFilesPanel.cacheSizeSpinner's SpinnerNumberModel is a > *very* *good* candidate for a nested class due to its complexity. If the > JSpinner is to check for the available disk space then it is even more of a > candidate for a nested class. Due to its complexity, it is even advisable > to create an extended JSpinner with its SpinnerNumberModel nested. This > extended JSpinner should also hold the new private final static constants. > > All the other changes look good. > > Jacob > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gitne at gmx.de Wed Jul 9 12:40:41 2014 From: gitne at gmx.de (Jacob Wisor) Date: Wed, 09 Jul 2014 14:40:41 +0200 Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> <53BC2105.2060407@gmx.de> Message-ID: <53BD3849.4070204@gmx.de> On 07/09/2014 08:21 AM, helpcrypto helpcrypto wrote: > My two cents:KISS Yes, this is what we are trying to accomplish here; KISS for users while giving them the most possible freedom. > Place a textbox and let the user define "maximum cache size" using text. 0 for > no cache. No, this is not user friendly. Although text boxes work almost anywhere they are simply not well suited for every purpose. The most common problem with text boxes is that it is not always clear to the user what to enter or what the format of the data entered should be. So, a text box's value would have to be checked for being a number in this case anyway. The JSpinner does this already. A JSpinner is exactly the right UI component for this purpose. > IMHO: Initial value to 100MB will be fair enough. 100 MB is as arbitrary as any other value. Available disk space, user quota, or 0 are not (from the user's point of view). > Remove the spinner, any other references, values and checks. Why? We want to give users the freedom to chose any value that suites them best. You cannot do this with a JSlider because it imposes predefined arbitrary limits. If a user has a use case for a cache size of say 8 TB then why should anybody or any software limit him to do so? Jacob From aazores at redhat.com Wed Jul 9 14:18:57 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 09 Jul 2014 10:18:57 -0400 Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: <53BD3849.4070204@gmx.de> References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> <53BC2105.2060407@gmx.de> <53BD3849.4070204@gmx.de> Message-ID: <53BD4F51.3040203@redhat.com> On 07/09/2014 08:40 AM, Jacob Wisor wrote: > On 07/09/2014 08:21 AM, helpcrypto helpcrypto wrote: >> My two cents:KISS > > Yes, this is what we are trying to accomplish here; KISS for users > while giving them the most possible freedom. > >> Place a textbox and let the user define "maximum cache size" using >> text. 0 for >> no cache. > > No, this is not user friendly. Although text boxes work almost > anywhere they are simply not well suited for every purpose. The most > common problem with text boxes is that it is not always clear to the > user what to enter or what the format of the data entered should be. > So, a text box's value would have to be checked for being a number in > this case anyway. The JSpinner does this already. A JSpinner is > exactly the right UI component for this purpose. > >> IMHO: Initial value to 100MB will be fair enough. > > 100 MB is as arbitrary as any other value. Available disk space, user > quota, or 0 are not (from the user's point of view). > >> Remove the spinner, any other references, values and checks. > > Why? We want to give users the freedom to chose any value that suites > them best. You cannot do this with a JSlider because it imposes > predefined arbitrary limits. If a user has a use case for a cache size > of say 8 TB then why should anybody or any software limit him to do so? > > Jacob I do agree with Jacob here (sorry helpcrypto ;) ), although I think that defaulting the value to either disk space or quota might be very odd looking for a user - to open the control panel to change the cache size and find some gigantic and probably random-appearing number in the cache size. Imposing no limit means that the cache will be limited by the available space anyway, so to me it seems that having the box initially checked and the spinner prefilled with available space is just a more confusing version of having the box unchecked by default. Then if the user chooses to check the box and limit the cache size, if it defaults to 0 (none), I think this is a sane default to start with, too. Although I am still working with Lukasz on a better UI for this than having arbitrary steps of 32, and it probably would be better to use Long.MAX_VALUE as the upper bound than just 1024 or any other arbitrary limit. Anyway, even if the user sets the value on the spinner to a number greater than what is actually available, that's fine IMO. If they have only 1GB free on their disk and try to set 10GB of cache space, well, why isn't that okay? Maybe they're using LVM or have unallocated space and are about to expand this partition. Thanks, -- Andrew A From jkang at redhat.com Wed Jul 9 17:33:01 2014 From: jkang at redhat.com (Jie Kang) Date: Wed, 9 Jul 2014 13:33:01 -0400 (EDT) Subject: [rfc][icedtea-web] itweb-settings Control Panel Resizing In-Reply-To: <53BB58A8.5000401@gmx.de> References: <1238448575.2941687.1404497893423.JavaMail.zimbra@redhat.com> <53B7E4B4.7020005@gmx.de> <1732190708.3477006.1404747044179.JavaMail.zimbra@redhat.com> <53BB58A8.5000401@gmx.de> Message-ID: <152445877.4962650.1404927181037.JavaMail.zimbra@redhat.com> Hello, > > Hello, > > > > [...] > >> > >> Apart from that, good work! :-) > > > > > > Thanks for the review. I have also included a backport patch to 1.5. > > > >> > >> Jacob > >> > > control-panel-size-1.5-backport.patch: > > diff --git a/.hgignore b/.hgignore > > --- a/.hgignore > > +++ b/.hgignore > > @@ -11,3 +11,4 @@ > > netx/net/sourceforge/jnlp/resources/COPYING.html > > netx/net/sourceforge/jnlp/resources/ChangeLog.html > > netx/net/sourceforge/jnlp/resources/NEWS.html > > +bin/ > > Because I use my own build script, I do not know whether this directory is > created by the build script or not. If it is should be OK to include it into > .hgignore otherwise please keep this change to your local repo only. I have removed this. > > > [...] > > @@ -85,26 +97,26 @@ > > > > public class UnsignedAppletsTrustingListPanel extends javax.swing.JPanel > > { > > > > - private javax.swing.JButton helpButton; > > - private javax.swing.JButton deleteButton; > > - private javax.swing.JButton addRowButton; > > - private javax.swing.JButton validateTableButton; > > - private javax.swing.JButton testUrlButton; > > - private javax.swing.JButton invertSelectionButton; > > - private javax.swing.JButton moveRowUpButton; > > - private javax.swing.JButton moveRowDownButton; > > - private javax.swing.JCheckBox askBeforeActionCheckBox; > > - 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; > > - private javax.swing.JTabbedPane mainTabPanel; > > - private javax.swing.JTable userTable; > > - private javax.swing.JScrollPane globalTableScrollPane; > > - private javax.swing.JTable globalTable; > > + private JButton helpButton; > > + private JButton deleteButton; > > + private JButton addRowButton; > > + private JButton validateTableButton; > > + private JButton testUrlButton; > > + private JButton invertSelectionButton; > > + private JButton moveRowUpButton; > > + private JButton moveRowDownButton; > > + private JCheckBox askBeforeActionCheckBox; > > + private JCheckBox filterRegexesCheckBox; > > + private JComboBox mainPolicyComboBox; > > Please beware that javax.swing.JComboBox is declared as "public class > JComboBox > extends JComponent implements ItemSelectable, ListDataListener, > ActionListener, > Accessible" in Java 6! No type parameters for JComboBox there. > To avoid this kind of mistakes in the future, you can set the -target switch > to > 6 (or 1.6) in javac or Project Explorer//Properties/Java > Compiler/JDK Complience/Compiler compliance level to 1.6 for IcedTea-Web 1.5. Thanks for the explanation and sorry for the mistakes.;; > > > + private JComboBox deleteTypeComboBox; > > See for declaration of javax.swing.JComboBox in Java 6 above. > > > + private JComboBox viewFilter; > > See for declaration of javax.swing.JComboBox in Java 6 above. > > > + private JLabel globalBehaviourLabel; > > + private JLabel securityLevelLabel; > > + private JScrollPane userTableScrollPane; > > + private JTabbedPane mainTabPanel; > > + private JTable userTable; > > + private JScrollPane globalTableScrollPane; > > + private JTable globalTable; > > private final UnsignedAppletActionStorageExtendedImpl customBackEnd; > > private final UnsignedAppletActionStorageExtendedImpl globalBackEnd; > > private final UnsignedAppletActionTableModel customModel; > > [...] > > @@ -242,34 +254,51 @@ > > model.clear(); > > } > > > > + ListCellRenderer comboRendererWithToolTips = new > > DefaultListCellRenderer() { > > + > > + @Override > > + public final Component getListCellRendererComponent(final > > JList > > list, > > + final Object value, final int index, final boolean > > isSelected, > > + final boolean cellHasFocus) { > > + if (value != null) { > > + setToolTipText(value.toString()); > > + } > > + return super.getListCellRendererComponent(list, value, index, > > isSelected, > > + cellHasFocus); > > + } > > + > > + }; > > + > > private void initComponents() { > > > > - userTableScrollPane = new javax.swing.JScrollPane(); > > - globalTableScrollPane = new javax.swing.JScrollPane(); > > - userTable = createTbale(customModel); > > - globalTable = createTbale(globalModel); > > - helpButton = new javax.swing.JButton(); > > - mainPolicyComboBox = new JComboBox(new AppletSecurityLevel[]{ > > + userTableScrollPane = new JScrollPane(); > > + globalTableScrollPane = new JScrollPane(); > > + userTable = createTable(customModel); > > + globalTable = createTable(globalModel); > > + helpButton = new JButton(); > > + mainPolicyComboBox = new JComboBox(new > > AppletSecurityLevel[]{ > > Same goes here for Java 6. > > > [...] > > @@ -335,15 +364,16 @@ > > > > > globalBehaviourLabel.setText(Translator.R( > > "APPEXTSECguiPanelGlobalBehaviourCaption")); > > > > - deleteTypeComboBox.setModel(new > > javax.swing.DefaultComboBoxModel(new > > String[]{ > > + deleteTypeComboBox.setModel(new DefaultComboBoxModel(new > > No type parameters for DefaultComboBoxModel in Java 6 either. > > > String[]{ > > Please add a space between "]" and "{" here. ;-) > > > Translator.R("APPEXTSECguiPanelDeleteMenuSelected"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAllA"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAllN"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAlly"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAlln"), > > Translator.R("APPEXTSECguiPanelDeleteMenuAllAll")})); > > - > > - viewFilter.setModel(new javax.swing.DefaultComboBoxModel(new > > String[]{ > > + deleteTypeComboBox.setRenderer(comboRendererWithToolTips); > > + > > + viewFilter.setModel(new DefaultComboBoxModel(new > > String[]{ > > No type parameters for DefaultComboBoxModel in Java 6 either. And, please add > a > space between "]" and "{" here too. ;-) > > > Translator.R("APPEXTSECguiPanelShowOnlyPermanent"), > > Translator.R("APPEXTSECguiPanelShowOnlyTemporal"), > > Translator.R("APPEXTSECguiPanelShowAll"), > > [...] > > @@ -695,13 +726,13 @@ > > moveRowDownButton.setEnabled(b); > > } > > > > - private JTable createTbale(final TableModel model) { > > + private JTable createTable(final TableModel model) { > > JTable jt = new JTable() { > > @Override > > public TableCellEditor getCellEditor(int row, int column) { > > int columnx = convertColumnIndexToModel(column); > > if (columnx == 0) { > > - return new DefaultCellEditor(new JComboBox(new > > ExecuteAppletAction[]{ExecuteAppletAction.ALWAYS, > > ExecuteAppletAction.NEVER, > > ExecuteAppletAction.YES, ExecuteAppletAction.NO})); > > + return new DefaultCellEditor(new > > JComboBox(new ExecuteAppletAction[] > > {ExecuteAppletAction.ALWAYS, ExecuteAppletAction.NEVER, > > ExecuteAppletAction.YES, ExecuteAppletAction.NO})); > > I think you got the jest about Java 6 API now. ;-) This is what I meant about > being aware when backporting to IcedTea-Web 1.5 and Java 6. Well, apparently > my > efforts have been in vain. > Btw, you could reformat the ExecuteAppletAction direct array to > meet Java's (IcedTea-Web's) coding style too. > > > } > > if (columnx == 2) { > > column = convertColumnIndexToModel(column); > > Apart from the nits, I think it is ready to be pushed. Please make sure about > .hgignore. > > Jacob > Following is the ChangeLog entry: (jvanek requests it not be included in the patch diff) 2014-07-08 Jie Kang Small changes to control panel GUI for proper display on lower resolutions (e.g. 800 x 600) All elements are now on-screen and visible. * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: control-panel-size-2.patch Type: text/x-patch Size: 20575 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: control-panel-size-1.5-backport-2.patch Type: text/x-patch Size: 22073 bytes Desc: not available URL: From gitne at gmx.de Wed Jul 9 19:14:24 2014 From: gitne at gmx.de (Jacob Wisor) Date: Wed, 09 Jul 2014 21:14:24 +0200 Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: <53BD4F51.3040203@redhat.com> References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> <53BC2105.2060407@gmx.de> <53BD3849.4070204@gmx.de> <53BD4F51.3040203@redhat.com> Message-ID: <53BD9490.20007@gmx.de> On 07/09/2014 04:18 PM, Andrew Azores wrote: > On 07/09/2014 08:40 AM, Jacob Wisor wrote: >> On 07/09/2014 08:21 AM, helpcrypto helpcrypto wrote: >>> My two cents:KISS >> >> Yes, this is what we are trying to accomplish here; KISS for users while >> giving them the most possible freedom. >> >>> Place a textbox and let the user define "maximum cache size" using text. 0 for >>> no cache. >> >> No, this is not user friendly. Although text boxes work almost anywhere they >> are simply not well suited for every purpose. The most common problem with >> text boxes is that it is not always clear to the user what to enter or what >> the format of the data entered should be. So, a text box's value would have to >> be checked for being a number in this case anyway. The JSpinner does this >> already. A JSpinner is exactly the right UI component for this purpose. >> >>> IMHO: Initial value to 100MB will be fair enough. >> >> 100 MB is as arbitrary as any other value. Available disk space, user quota, >> or 0 are not (from the user's point of view). >> >>> Remove the spinner, any other references, values and checks. >> >> Why? We want to give users the freedom to chose any value that suites them >> best. You cannot do this with a JSlider because it imposes predefined >> arbitrary limits. If a user has a use case for a cache size of say 8 TB then >> why should anybody or any software limit him to do so? >> >> Jacob > > I do agree with Jacob here (sorry helpcrypto ;) ), although I think that > defaulting the value to either disk space or quota might be very odd looking for > a user - to open the control panel to change the cache size and find some > gigantic and probably random-appearing number in the cache size. Right. > Imposing no limit means that the cache will be limited by the available space anyway, so to > me it seems that having the box initially checked and the spinner prefilled with > available space is just a more confusing version of having the box unchecked by > default. Then if the user chooses to check the box and limit the cache size, if > it defaults to 0 (none), I think this is a sane default to start with, too. Yep, I may have not made myself clear enough previously but this is what I have actually meant too. The check box should not be set by default, hence no limit by default. ;-) > Although I am still working with Lukasz on a better UI for this than having > arbitrary steps of 32, and it probably would be better to use Long.MAX_VALUE as > the upper bound than just 1024 or any other arbitrary limit. Anyway, even if the > user sets the value on the spinner to a number greater than what is actually > available, that's fine IMO. If they have only 1GB free on their disk and try to > set 10GB of cache space, well, why isn't that okay? Maybe they're using LVM or > have unallocated space and are about to expand this partition. Yes, it is perfectly acceptable to allow setting cache sizes greater than the available disk space in the cache directory. Perhaps a warning should be issued in the log in this situation? Jacob From helpcrypto at gmail.com Thu Jul 10 05:51:27 2014 From: helpcrypto at gmail.com (helpcrypto helpcrypto) Date: Thu, 10 Jul 2014 07:51:27 +0200 Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: <53BD9490.20007@gmx.de> References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> <53BC2105.2060407@gmx.de> <53BD3849.4070204@gmx.de> <53BD4F51.3040203@redhat.com> <53BD9490.20007@gmx.de> Message-ID: On Wed, Jul 9, 2014 at 9:14 PM, Jacob Wisor wrote: > On 07/09/2014 04:18 PM, Andrew Azores wrote: > >> On 07/09/2014 08:40 AM, Jacob Wisor wrote: >> >>> >>> No, this is not user friendly. Although text boxes work almost anywhere >>> they >>> are simply not well suited for every purpose. The most common problem >>> with >>> text boxes is that it is not always clear to the user what to enter or >>> what >>> the format of the data entered should be. So, a text box's value would >>> have to >>> be checked for being a number in this case anyway. The JSpinner does this >>> already. A JSpinner is exactly the right UI component for this purpose. >>> >> Whatever will be, i'll check once done to see if i love it or not :P I do agree with Jacob here (sorry helpcrypto ;) ), > > This betrayal wont be forgotten :P Thanks your work and effort! -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Thu Jul 10 07:06:30 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 10 Jul 2014 07:06:30 +0000 Subject: [Bug 1851]=?UTF-8?Q?=20=E2=80=98unhandled=20signal=2011=E2=80=99=20on=20newly=20built=20IcedTeaJVM=20for=20OpenJDK=206=20and=207?= In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1851 stoffl4ever at hotmail.de changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |stoffl4ever at hotmail.de --- Comment #3 from stoffl4ever at hotmail.de --- Hi, i can confirm the issue on a Rasperry Pi running archlinux. The last java version working was: # java -version java version "1.7.0_51" OpenJDK Runtime Environment (IcedTea 2.4.4) (ArchLinux build 7.u51_2.4.4-1-armv6h) OpenJDK Zero VM (build 24.45-b08, interpreted mode) It crashes during the start of the openfire XMPP Chat server: ===///Log from journalctl -b \\\=== # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (os_linux_zero.cpp:285), pid=130, tid=3061740640 # fatal error: caught unhandled signal 11 # # JRE version: OpenJDK Runtime Environment (7.0_60-b30) (build 1.7.0_60-b30) # Java VM: OpenJDK Zero VM (24.60-b09 mixed mode linux-arm ) # Failed to write core dump. Core dumps have been disabled. To enable core du # # An error report file with more information is saved as: # /tmp/hs_err_pid130.log systemd: openfire.service: main process exited, code=killed, status=6/ABRT systemd: Unit openfire.service entered failed state. # # 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 # -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Thu Jul 10 16:55:09 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 10 Jul 2014 16:55:09 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 --- Comment #2 from Severin Gehwolf --- Quick update: It seems bug 1660 is related. From 2.4.x to 2.5.x this has changed. I'll need to investigate further and keep you posted. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Thu Jul 10 18:39:22 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 10 Jul 2014 18:39:22 +0000 Subject: [Bug 1839] [IcedTea7] Provide Infinality Support via fontconfig In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1839 classpath.apriori at spamgourmet.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |classpath.apriori at spamgourm | |et.com --- Comment #4 from classpath.apriori at spamgourmet.com --- With infinality-patched libs installed, the previous Archlinux build with infinality-support included was working fine for me. Did the bug just hit folks who did not have infinality font rendering installed? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jkang at redhat.com Thu Jul 10 19:31:07 2014 From: jkang at redhat.com (Jie Kang) Date: Thu, 10 Jul 2014 15:31:07 -0400 (EDT) Subject: [rfc][icedtea-web]Localized Man Page Script In-Reply-To: <53B27F14.3040107@redhat.com> References: <489988795.5413717.1400610539851.JavaMail.zimbra@redhat.com> <1530337932.5418716.1400611261222.JavaMail.zimbra@redhat.com> <537BA568.6090607@redhat.com> <887325711.5450945.1400615544040.JavaMail.zimbra@redhat.com> <537BB2D0.9090007@redhat.com> <537C5C1F.5080407@redhat.com> <670733420.19187220.1403804376212.JavaMail.zimbra@redhat.com> <53B27F14.3040107@redhat.com> Message-ID: <1357770929.5794476.1405020667554.JavaMail.zimbra@redhat.com> Hello I have modified the code a bit and added test cases in response to your suggestions. I have also created a OptionParser utility class to take care of parsing the arguments given to main(String[] args). A future patch will make use of this in other classes (such as Boot) in order to remove duplication. Feedback is appreciated! ----- Original Message ----- > On 06/26/2014 07:39 PM, Jie Kang wrote: > > Hello, > > > > I've started working on a tiny bit of the implementation for the Java-based > > Local Man Page Generator. > > Thank you for taking care of it and thank you for sharing thought so early. > > > > At the moment it lets you create man pages through main() by specifying > > locale and name of man page. > > The class looks quite ok, but I'm not sure of it usefulness. > > Few nits to class itself > * I would put all this work to package > net.sourceforge.jnlp.resources....generator?util?manpages?infogenerator? Okay. > * I would not use private classes (non of the enums here have the right to > be ) - and each public I disagree a little bit. Traditonally, constants have been provided using 'static final Object'. However, enums were introduced in order to enhance and improve the way constants are defined in Java. The enums in this situation define constants for the class. I can agree that my implementation is not the very best but I would prefer enums over private static final objects. As well, with the enums we can easily provide help messages for all of our modules (this work is in progress). Alternatively we can define these enum constants in some public class so that all of ITW can use them. This prevents duplication which occurs in the code already. E.g. If you look at MessageProperties.java in test-extensions/ : it basically has the same enum and some methods that my code could use, but is in test-extensions. As well there are other files such as JNLPRuntime that use constants for "Message.properties" and "net.sourceforge.jnlp.resources" so we can remove this duplication with public enum class. This fix should be a separate patch. However, if you wish I can remove the enums and replace them with 'private static final' objects. > member should have tests on each method ;) I have added unit tests for the exposed methods. > > Well the usecase - I think that you do need this class at all. > > I believe, that before the generation, you can simply set LANG > > ( > LANGBACKUP=$LANG > for E in "" ".UTF-8" ; do #some more encoding? Do we need to bother with > encodings at all? > for L in "" en_US$E pl_PL$E de_DE$E cs_CZ$E ; do #is "" wonted/needed? > export LANG=$L > java -CP=... net.sourceforge.jnlp.resources.some_main_in_subpackage > -output={javaws|policieditor|itwsettings|icedtea-web} -outputDir=someDir > done > done > LANG=$LANGBACKUP > export LANG > ) The current approach can be used very similar to the script you gave above. (I don't think we need to bother with encodings, subject to change but it is very easy to modify) It can work as follows: for L in "" en_US$E pl_PL$E de_DE$E cs_CZ$E ; do java -CP=... net.sourceforge.jnlp.resources.some_main_in_subpackage -lang $L -name javaws policyeditor itw-settings icedtea-web #we can add outputDir argument if necessary, but we should be able to generate it based off $L and $M > > and use JNLPRuntime + Translator to get correct messages. > Using the JNLPRuntime + Translator seems like a huge amount of extra overhead for what we need here. Using JNLPRuntime means JNLPRuntime being initialized multiple times. The JNLPRuntime initialization includes a lot of things we don't need for this generator so I don't think this is a good idea. Also setting LANG over and over is unnecessary when we can supply arguments to main(). > But this approach must be verified. > > Otherwise this will bring up duplicated code. This is a very valid point for using JNLPRuntime. However, I think we can consider extracting a few methods from JNLPRuntime into something like a ResourceBundleManager (similar to how we OptionParser addition is an extraction from Boot) in order to reduce the duplication. > > Also I guess the correct location inside outputDir can be guessed from > locale (or if it more simple > to generate it from $L and $E then I probablky do not care) > > > well my $0.02 :) > > > > This is for during build process. > > Yes, thats correct. Build time is the place when this is supposed to happen. > > > > > > > It is attached. Jiri, could you look over it? I am still unsure if this is > > the direction you want to go in. > > Thank you for keeping me in loop! > > > > ----- Original Message ----- > >> On 05/20/2014 09:53 PM, Andrew Azores wrote: > >>> On 05/20/2014 03:52 PM, Jie Kang wrote: > >>>> Hello, > >>>> > >>>> I've made all the suggested fixes and am working on the makefile at the > >>>> moment. > >>>> > >>>> Thanks, > >>>> > >>>> > >>> > >>> Looks good to me. Please post the new patch when you have your script > >>> integrated and tested working > >>> in the Makefile. > >>> > >>> Thanks, > >>> > >> > >> > >> hi! > >> > >> The creepy voice from behind the sea have nasty words to say :( > >> > >> I'm afraid we ca not use this approach. And as it is it must not be > >> pushed. > >> > >> The original idea of this feature was to *reuse* already existing, > >> localized > >> properties files. > >> Also it was intended to share output between manpages *and* applications > >> (javaws, policieditor, > >> itw-settngs) --help option. Also maybe add icedtea-web manpage, and > >> (probably) also have an > >> possibility to generate more then man pages - eg html "man pages" or > >> whatever. > >> > >> You can see that -help swihhc already provides eg full list of programs > >> switches, or some about > >> sntences.... > >> > >> Well your approach do not implement any of this. Well, as opposite it > >> file > >> new file to localize > >> and even more fiels to maintain. > >> > >> My original idea on this to have java based generator, included in netx > >> itself. > >> Its "main" class will be able to : > >> - be called during the build (just put $CLASSES to CLASSPATH and invoke > >> main) > >> - generate man pages in reqested language > >> - genreate html man pages (well I think there is some man2html, so > >> maybe > >> this is waste of > >> everything) > >> - the html files may save as base for help in gui modes > >> - be called from javaws/itwsettings/policieditor and so > >> - generate -help output > >> - implementation detail - do not add "language swithc" generate files > >> baed > >> of currently set LOCALE > >> - much more :) > >> > >> As benefit you will get > >> - all the messages will come form properties > >> - only properties to maintain! > >> - parsing of properties in free - unicode support, and insertion of > >> parametres from JDK itself > >> - improved -help output (from man pages) > >> - improved manpages form -help outputs > >> - list of all switches > >> - all default file locations! > >> - get rid of about/help code from main classes of itw > >> - much more;) > >> > >> If some messages are in man pages, but not in properties, you can add them > >> into proeprties, but > >> please verify that there is no similar in properties. And of course vice > >> versa. > >> > >> Well most of http://icedtea.classpath.org/wiki/IcedTea-Web#Release_Plans > >> since 1.3 are mostly > >> somehow inserted by me. Sometime from need, sometimes from wish (feel free > >> to > >> add yours, or suggest > >> modifications!) But pelase, always consult a bit before first patch. > >> Mostly > >> IRCis enough :) > >> > >> Sorry for this email:( But this is really stop show for this approach). > >> > >> Please try to post the patch ins small hunks, but it can be harder then > >> write patch itself, andnot > >> always possible, or meaningful. > >> I hope I havenot forget something :( But we can tune it during the > >> process. > >> But I'm afraid nowyou > >> are dammed to wait with final push on this topic to me returned from PTO > >> :o) > >> > >> All the best! > >> J > >> > >> > >> Few notes to code itself just "education purposes": > >> - changelog - the first line of changes should be caption. Eg "Added > >> generator of man pages" for > >> this particualr setthsi > >> > >> date-name-email > >> [emtyline] > >> [tab]caption > >> [tab]* file:changes > >> > >> > >> In changelog - always clearly say that it is new file. like > >> [tab[ * file: new file, its purpose > >> > >> > >> I'm not sure how good templates for man pages will be suitable in java > >> based > >> solution.. Well then > >> may be. We will see. I hoped to have some class like "Content provider" > >> which > >> will use some class > >> "markup" and together they will provide > >> - context of desired verbosity > >> - marked in markup you wont > >> > >> You can think about it as execise from some "system architecture" because > >> it > >> is isolated system in > >> netx :) (whch you are designing from ground) > >> > >> In case of template - I would suggest %{key} rather then simple @KEY > >> (although for your sh based > >> solution @KEY is most correct) > >> > >> Otherwise splendid work on code, and sorry for wasting it:( > >> > >> > > > > Thanks, -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: localmanscript-2.patch Type: text/x-patch Size: 21647 bytes Desc: not available URL: From jvanek at redhat.com Fri Jul 11 07:31:03 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 11 Jul 2014 09:31:03 +0200 Subject: [rfc][icedtea-web]Localized Man Page Script In-Reply-To: <1357770929.5794476.1405020667554.JavaMail.zimbra@redhat.com> References: <489988795.5413717.1400610539851.JavaMail.zimbra@redhat.com> <1530337932.5418716.1400611261222.JavaMail.zimbra@redhat.com> <537BA568.6090607@redhat.com> <887325711.5450945.1400615544040.JavaMail.zimbra@redhat.com> <537BB2D0.9090007@redhat.com> <537C5C1F.5080407@redhat.com> <670733420.19187220.1403804376212.JavaMail.zimbra@redhat.com> <53B27F14.3040107@redhat.com> <1357770929.5794476.1405020667554.JavaMail.zimbra@redhat.com> Message-ID: <53BF92B7.8080503@redhat.com> On 07/10/2014 09:31 PM, Jie Kang wrote: > Hello > > I have modified the code a bit and added test cases in response to your suggestions. I have also created a OptionParser utility class to take care of parsing the arguments given to main(String[] args). A future patch will make use of this in other classes (such as Boot) in order to remove duplication. Feedback is appreciated! > > ----- Original Message ----- >> >On 06/26/2014 07:39 PM, Jie Kang wrote: >>> > >Hello, >>> > > >>> > >I've started working on a tiny bit of the implementation for the Java-based >>> > >Local Man Page Generator. >> > >> >Thank you for taking care of it and thank you for sharing thought so early. >>> > > >>> > >At the moment it lets you create man pages through main() by specifying >>> > >locale and name of man page. >> > >> >The class looks quite ok, but I'm not sure of it usefulness. >> > >> >Few nits to class itself >> > * I would put all this work to package >> >net.sourceforge.jnlp.resources....generator?util?manpages?infogenerator? > Okay. Looking to you new class. I would really like to put it one level inside resources: netx/net/sourceforge/jnlp/resources/infogenerator/..allClassesEndEnumsWithOtherPossiblePackages.java > >> > * I would not use private classes (non of the enums here have the right to >> > be ) - and each public > > I disagree a little bit. Traditonally, constants have been provided using 'static final Object'. However, enums were introduced in order to enhance and improve the way constants are defined in Java. The enums in this situation define constants for the class. I can agree that my implementation is not the very best but I would prefer enums over private static final objects. > > As well, with the enums we can easily provide help messages for all of our modules (this work is in progress). Oh you misunderstand me. The enum is best for this case! My compalins were against hiding as inner class. > > Alternatively we can define these enum constants in some public class so that all of ITW can use them. This prevents duplication which occurs in the code already. Why not class per enum? It will be hidden in package, so it will be msot clean of all., > > E.g. If you look at MessageProperties.java in test-extensions/ : it basically has the same enum and some methods that my code could use, but is in test-extensions. As well there are other files such as JNLPRuntime that use constants for "Message.properties" and "net.sourceforge.jnlp.resources" so we can remove this duplication with public enum class. This fix should be a separate patch. > > However, if you wish I can remove the enums and replace them with 'private static final' objects. Of course not :)) Sorry for saying it so wrongly. But go with regular public enums. > >> >member should have tests on each method ;) > > I have added unit tests for the exposed methods. > >> > >> >Well the usecase - I think that you do need this class at all. >> > >> >I believe, that before the generation, you can simply set LANG >> > >> >( >> >LANGBACKUP=$LANG >> >for E in "" ".UTF-8" ; do #some more encoding? Do we need to bother with >> >encodings at all? >> >for L in "" en_US$E pl_PL$E de_DE$E cs_CZ$E ; do #is "" wonted/needed? >> >export LANG=$L >> >java -CP=... net.sourceforge.jnlp.resources.some_main_in_subpackage >> >-output={javaws|policieditor|itwsettings|icedtea-web} -outputDir=someDir >> >done >> >done >> >LANG=$LANGBACKUP >> >export LANG >> >) > The current approach can be used very similar to the script you gave above. (I don't think we need to bother with encodings, subject to change but it is very easy to modify) It can work as follows: > > for L in "" en_US$E pl_PL$E de_DE$E cs_CZ$E ; do > java -CP=... net.sourceforge.jnlp.resources.some_main_in_subpackage > -lang $L -name javaws policyeditor itw-settings icedtea-web #we can add outputDir argument if necessary, but we should be able to generate it based off $L and $M > >> > >> >and use JNLPRuntime + Translator to get correct messages. >> > You will not like me, but looking to your class, it is moving e to usage of LANG and runtime even more. Usage of JnlpRuntime is no overhad. in this case, absolute zero. The overhead is to have class which is pretending to do the same. > Using JNLPRuntime means JNLPRuntime being initialized multiple times. > The JNLPRuntime initialization includes a lot of things we don't need for this generator so I don't think this is a good idea. They does not matter. > Also setting LANG over and over is unnecessary when we can supply arguments to main(). No. there is crucial difference. When you put it in as arg, then you are constructing the properties filename again. Thats unnecessary and evil. > Using the JNLPRuntime + Translator seems like a huge amount of extra overhead for what we need here. Using JNLPRuntime means JNLPRuntime being initialized multiple times. The JNLPRuntime initialization includes a lot of things we don't need for this generator so I don't think this is a good idea. Also setting LANG over and over is unnecessary when we can supply arguments to main(). > > > > >> >But this approach must be verified. >> > >> >Otherwise this will bring up duplicated code. > This is a very valid point for using JNLPRuntime. However, I think we can consider extracting a few methods from JNLPRuntime into something like a ResourceBundleManager (similar to how we OptionParser addition is an extraction from Boot) in order to reduce the duplication. I like this idea. If you separte this part (taking care of Trasnaltor) of jnlpruntime to sublass, which you can then reuse without the whole (rest of) runtime it will be probably the best > >> > >> >Also I guess the correct location inside outputDir can be guessed from >> >locale (or if it more simple >> >to generate it from $L and $E then I probablky do not care) >> > >> > >> >well my $0.02 :) >> > >> > >>> > >This is for during build process. >> > >> >Yes, thats correct. Build time is the place when this is supposed to happen. >> > >>> > > >>> > > >>> > >It is attached. Jiri, could you look over it? I am still unsure if this is >>> > >the direction you want to go in. >> > >> >Thank you for keeping me in loop! >>> > > >>> > >----- Original Message ----- >>>> > >>On 05/20/2014 09:53 PM, Andrew Azores wrote: >>>>> > >>>On 05/20/2014 03:52 PM, Jie Kang wrote: >>>>>> > >>>>Hello, >>>>>> > >>>> >>>>>> > >>>>I've made all the suggested fixes and am working on the makefile at the >>>>>> > >>>>moment. >>>>>> > >>>> >>>>>> > >>>>Thanks, >>>>>> > >>>> >>>>>> > >>>> >>>>> > >>> >>>>> > >>>Looks good to me. Please post the new patch when you have your script >>>>> > >>>integrated and tested working >>>>> > >>>in the Makefile. >>>>> > >>> >>>>> > >>>Thanks, >>>>> > >>> >>>> > >> >>>> > >> >>>> > >>hi! >>>> > >> >>>> > >>The creepy voice from behind the sea have nasty words to say :( >>>> > >> >>>> > >>I'm afraid we ca not use this approach. And as it is it must not be >>>> > >>pushed. >>>> > >> >>>> > >>The original idea of this feature was to*reuse* already existing, >>>> > >>localized >>>> > >>properties files. >>>> > >>Also it was intended to share output between manpages*and* applications >>>> > >>(javaws, policieditor, >>>> > >>itw-settngs) --help option. Also maybe add icedtea-web manpage, and >>>> > >>(probably) also have an >>>> > >>possibility to generate more then man pages - eg html "man pages" or >>>> > >>whatever. >>>> > >> >>>> > >>You can see that -help swihhc already provides eg full list of programs >>>> > >>switches, or some about >>>> > >>sntences.... >>>> > >> >>>> > >>Well your approach do not implement any of this. Well, as opposite it >>>> > >>file >>>> > >>new file to localize >>>> > >>and even more fiels to maintain. >>>> > >> >>>> > >>My original idea on this to have java based generator, included in netx >>>> > >>itself. >>>> > >>Its "main" class will be able to : >>>> > >> - be called during the build (just put $CLASSES to CLASSPATH and invoke >>>> > >> main) >>>> > >> - generate man pages in reqested language >>>> > >> - genreate html man pages (well I think there is some man2html, so >>>> > >> maybe >>>> > >> this is waste of >>>> > >>everything) >>>> > >> - the html files may save as base for help in gui modes >>>> > >> - be called from javaws/itwsettings/policieditor and so >>>> > >> - generate -help output >>>> > >> - implementation detail - do not add "language swithc" generate files >>>> > >> baed >>>> > >> of currently set LOCALE >>>> > >> - much more :) >>>> > >> >>>> > >>As benefit you will get >>>> > >> - all the messages will come form properties >>>> > >> - only properties to maintain! >>>> > >> - parsing of properties in free - unicode support, and insertion of >>>> > >> parametres from JDK itself >>>> > >> - improved -help output (from man pages) >>>> > >> - improved manpages form -help outputs >>>> > >> - list of all switches >>>> > >> - all default file locations! >>>> > >> - get rid of about/help code from main classes of itw >>>> > >> - much more;) >>>> > >> >>>> > >>If some messages are in man pages, but not in properties, you can add them >>>> > >>into proeprties, but >>>> > >>please verify that there is no similar in properties. And of course vice >>>> > >>versa. >>>> > >> >>>> > >>Well most ofhttp://icedtea.classpath.org/wiki/IcedTea-Web#Release_Plans >>>> > >>since 1.3 are mostly >>>> > >>somehow inserted by me. Sometime from need, sometimes from wish (feel free >>>> > >>to >>>> > >>add yours, or suggest >>>> > >>modifications!) But pelase, always consult a bit before first patch. >>>> > >>Mostly >>>> > >>IRCis enough :) >>>> > >> >>>> > >>Sorry for this email:( But this is really stop show for this approach). >>>> > >> >>>> > >>Please try to post the patch ins small hunks, but it can be harder then >>>> > >>write patch itself, andnot >>>> > >>always possible, or meaningful. >>>> > >>I hope I havenot forget something :( But we can tune it during the >>>> > >>process. >>>> > >>But I'm afraid nowyou >>>> > >>are dammed to wait with final push on this topic to me returned from PTO >>>> > >>:o) >>>> > >> >>>> > >>All the best! >>>> > >> J >>>> > >> >>>> > >> >>>> > >>Few notes to code itself just "education purposes": >>>> > >> - changelog - the first line of changes should be caption. Eg "Added >>>> > >> generator of man pages" for >>>> > >>this particualr setthsi >>>> > >> >>>> > >>date-name-email >>>> > >>[emtyline] >>>> > >>[tab]caption >>>> > >>[tab]*file:changes >>>> > >> >>>> > >> >>>> > >>In changelog - always clearly say that it is new file. like >>>> > >>[tab[ * file: new file, its purpose >>>> > >> >>>> > >> >>>> > >>I'm not sure how good templates for man pages will be suitable in java >>>> > >>based >>>> > >>solution.. Well then >>>> > >>may be. We will see. I hoped to have some class like "Content provider" >>>> > >>which >>>> > >>will use some class >>>> > >>"markup" and together they will provide >>>> > >> - context of desired verbosity >>>> > >> - marked in markup you wont >>>> > >> >>>> > >>You can think about it as execise from some "system architecture" because >>>> > >>it >>>> > >>is isolated system in >>>> > >>netx :) (whch you are designing from ground) >>>> > >> >>>> > >>In case of template - I would suggest %{key} rather then simple @KEY >>>> > >>(although for your sh based >>>> > >>solution @KEY is most correct) >>>> > >> >>>> > >>Otherwise splendid work on code, and sorry for wasting it:( >>>> > >> >>>> > >> >>> > > >> > >> > > > Thanks, > > -- Jie Kang > Pleasure on my side, and really sorry with disagreing with your design so fiercely. Please see also inline: > > localmanscript-2.patch > > > diff --git a/netx/net/sourceforge/jnlp/resources/InfoGenerator.java b/netx/net/sourceforge/jnlp/resources/InfoGenerator.java > new file mode 100644 > --- /dev/null > +++ b/netx/net/sourceforge/jnlp/resources/InfoGenerator.java As already told, please move to resources' subpackage > @@ -0,0 +1,192 @@ > +/*Copyright (C) 2014 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.resources; > + > +import java.io.IOException; > +import java.nio.file.Files; > +import java.nio.file.Path; > +import java.nio.file.Paths; > +import java.util.Arrays; > +import java.util.List; > +import java.util.Locale; > +import java.util.ResourceBundle; > + > +import net.sourceforge.jnlp.util.OptionParser; > + > +public class InfoGenerator { > + private enum FileNames { > + PACKAGE("net.sourceforge.jnlp.resources"), > + MESSAGES("Messages"), > + TEMPLATE("_template"), > + NAME("MAN"); > + > + private String value; > + > + private FileNames(String value) { > + this.value = value; > + } > + @Override > + public String toString() { > + return this.value; > + } > + } > + > + private enum ManPages { > + POLICYEDITOR("policyeditor", "PE"), > + ITWEB_SETTINGS("itweb-settings", "WS"), > + ITWEB("itweb", "IT"), > + JAVAWS("javaws", "JV"); > + > + private String value; > + private String abbreviation; > + > + private ManPages(String value, String abbreviation) { > + this.value = value; > + this.abbreviation = abbreviation; > + } > + > + @Override > + public String toString() { > + return this.value; > + } > + > + public String getHelpManual() { > + //TODO > + /* > + * Return localized help/about information > + * Called from javaws/itweb-settings/policyeditor > + * > + */ > + return this.value; I think that here you can see an pitfall. Once you are not using the jnlpruntime + lang, then you cannot correctly reuse the code shared between man pages geenrator and help generator. Less switches, less work. You have a lot of switches :( > + } > + public static String getAbbreviation(String name) { > + for (ManPages page : ManPages.values()) { > + if (name.equals(page.abbreviation)) { > + return page.abbreviation; > + } > + } > + return ""; > + } > + public static boolean contains(String name) { > + for (ManPages page : ManPages.values()) { > + if (name.equals(page.value)) { > + return true; > + } > + } > + return false; > + } > + } Those enums will not be needed once thew lang + (jenlpruntime +) transaltor are used. If they will remain. please made them as public (separate file) enums. > + > + private static final List supportedLocales = Arrays.asList(new String[] > + {"en", "cs", "de", "pl"}); thsi will prbably also not needed. > + > + private static void createManPage(Path templatePath, Path outputPath, String name, String bundleName) throws IOException { > + createManPage(templatePath, outputPath, Locale.getDefault(), name, bundleName); > + } I dont think we wont to create manpages for defautl locale. > + > + public static void createManPage(Path templatePath, Path outputPath, Locale locale, String name, String bundleName) throws IOException { > + String templateContent = new String(Files.readAllBytes(templatePath)); > + String manPageContent = replaceTemplateWithBundleContent(templateContent, locale, name, bundleName); > + > + Files.write(outputPath, manPageContent.getBytes()); > + } As you know - we eont messages only for CURRENT locale O:) > + > + private static String replaceTemplateWithBundleContent(String templateContent, Locale locale, String name, String bundleName) throws IOException { > + ResourceBundle bundle = ResourceBundle.getBundle(bundleName, locale); > + > + String abbreviation = ManPages.getAbbreviation(name); > + if (name == "") { > + throw new IOException("Name abbreviation not found."); > + } > + > + for (String key : bundle.keySet()) { > + if (key.startsWith(FileNames.NAME.toString() + abbreviation)) { > + templateContent = templateContent.replaceAll(key, bundle.getString(key)); > + } > + } > + return templateContent; Is this tempalte already somewhere? I would stronly discourage you from tempaltes. I would go with some "Markuper class" - with impl for html and man. > + } > + > + /* > + * Expected arguments:against not > + * 0 : language : ex. en > + * 1 : manual name : ex. policyeditor > + * > + * > + */ > + public static void main(String[] args) { > + > + String[] acceptedArgs = {"-lang", "-name"}; > + if (args.length < 4) { > + System.err.println("Error: Expects at least four arguments. No work has been done."); > + return; Quit a lot for such simple case isn't it? > + } > + > + OptionParser parser = new OptionParser(args, acceptedArgs); > + String[] languages = parser.getOptionValues("-lang"); > + if (languages.length != 1) { > + System.err.println("Error: Language argument has incorrect format. Example: \"-lang en\""); > + } > + String language = languages[0]; > + if (!supportedLocales.contains(language)) { > + System.err.println("Error: Locale: " + language + " not supported. No work has been done."); > + return; > + } > + > + String[] names = parser.getOptionValues("-name"); > + if (names.length < 1) { > + System.err.println("Error: Name argument has incorrect format. Example: \"-name policyeditor javaws\""); > + } > + for (String name : names) { > + if (!ManPages.contains(name)) { > + System.err.println("Warning: " + name + " not supported. No work has been done for this manual."); > + } else { > + try { > + Locale locale = new Locale(language); > + Path template = Paths.get(name + FileNames.TEMPLATE); > + Path output = Paths.get(name + "_" + locale.getLanguage()); > + String bundleName = FileNames.PACKAGE.toString() + "." + FileNames.MESSAGES.toString(); > + > + createManPage(template, output, locale, name, bundleName); > + } catch (IOException e) { > + e.printStackTrace(); > + } > + } > + } > + } > + > +} > diff --git a/netx/net/sourceforge/jnlp/util/OptionParser.java b/netx/net/sourceforge/jnlp/util/OptionParser.java > new file mode 100644 > --- /dev/null > +++ b/netx/net/sourceforge/jnlp/util/OptionParser.java > @@ -0,0 +1,80 @@ > +/*Copyright (C) 2014 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.util; > + > +import java.util.ArrayList; > +import java.util.Arrays; > +import java.util.List; > + > +//Parses options (generally from main(String[] args) > +public class OptionParser { > + private String[] args; > + private List acceptedArgs; > + > + public OptionParser(String[] args, String[] acceptedArgs) { > + this.args = args; > + this.acceptedArgs = new ArrayList(Arrays.asList(acceptedArgs)); > + } > + > + /** > + * Return all the values of the specified option, or an empty > + * array if the option is not present. If the option is a > + * is present with no parameters then the option name is > + * returned once. > + */ > + public String[] getOptionValues(String option) { > + List result = new ArrayList(); > + int i = 0; > + while(i < args.length) { > + if (acceptedArgs.contains(args[i]) && option.equals(args[i])) { > + i++; > + while(i < args.length && !acceptedArgs.contains(args[i])) { > + result.add(args[i]); > + i++; > + } > + if (result.size() == 0) { > + result.add(option); > + } > + } else { > + i++; > + } > + } > + > + return result.toArray(new String[result.size()]); > + } > + hm :) We already ahve this for Boot class :) If possible. Please reuse. > +} > diff --git a/tests/netx/unit/net/sourceforge/jnlp/resources/InfoGeneratorTest.java b/tests/netx/unit/net/sourceforge/jnlp/resources/InfoGeneratorTest.java > new file mode 100644 > --- /dev/null > +++ b/tests/netx/unit/net/sourceforge/jnlp/resources/InfoGeneratorTest.java > @@ -0,0 +1,148 @@ > +/*Copyright (C) 2014 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.resources; > + > +import static org.junit.Assert.assertEquals; > +import static org.junit.Assert.assertTrue; > + > +import java.io.File; > +import java.io.FileOutputStream; > +import java.io.IOException; > +import java.io.PrintStream; > +import java.nio.file.Files; > +import java.nio.file.Path; > +import java.nio.file.Paths; > +import java.util.Locale; > + > +import org.junit.Before; > +import org.junit.Test; > + > +public class InfoGeneratorTest { > + private FileOutputStream faos; > + private String bundleName = "net.sourceforge.jnlp.resources.testbundle"; > + > + @Before > + public void setup() throws IOException { > + faos = new FileOutputStream("test"); > + PrintStream tempErr = new PrintStream(faos); > + System.setErr(tempErr); > + > + } > + private String runMainAndReadFromErr(String[] args) throws IOException { > + InfoGenerator.main(args); > + File fios = new File("test"); > + > + String err = new String(Files.readAllBytes(fios.toPath())); > + > + return err; > + > + } > + > + @Test > + public void testIncorrectArgs() throws IOException { > + String[] args = {}; > + > + String expected = "Error: Expects at least four arguments. No work has been done."; > + String actual = runMainAndReadFromErr(args);; > + > + assertTrue(actual.contains(expected)); > + } > + > + @Test > + public void testUnsupportedLanguage() throws IOException { > + String language = "blob"; > + String name = "policyeditor"; > + String[] args = {"-lang", language, "-name", name}; > + > + String expected = "Error: Locale: " + language + " not supported. No work has been done."; > + String actual = runMainAndReadFromErr(args);; > + > + assertTrue(actual.contains(expected)); > + } > + > + @Test > + public void testUnsupportedManual() throws IOException{ > + String language = "en"; > + String name = "blob"; > + String[] args = {"-lang", language, "-name", name}; > + > + String expected = "Warning: " + name + " not supported. No work has been done for this manual."; > + String actual = runMainAndReadFromErr(args); > + > + assertTrue(actual.contains(expected)); > + } > + > + @Test > + public void testGenerateEnManPage() throws IOException { > + String language = "en"; > + String name = "policyeditor"; > + > + > + String template = "MANPEA\nMANPEB"; > + String expected = "halp\nmeow"; > + > + String out = generateManPage(name, template, language, bundleName); > + > + assertEquals(expected, out); > + } > + > + @Test > + public void testGeneratePlManPage() throws IOException { > + String language = "pl"; > + String name = "policyeditor"; > + > + > + String template = "MANPEA\nMANPEB"; > + String expected = "blob\now"; > + > + String out = generateManPage(name, template, language, bundleName); > + assertEquals(expected, out); > + } > + > + private String generateManPage(String name, String template, String language, String bundleName) throws IOException { > + Path templatePath = Paths.get(name + "_" + "template"); > + Files.write(templatePath, template.getBytes()); > + > + Path outputPath = Paths.get(name + "_" + language); > + > + Locale locale = new Locale(language); > + InfoGenerator.createManPage(templatePath, outputPath, locale, name, bundleName); > + > + String out = new String(Files.readAllBytes(outputPath)); > + return out; > + } > +} > diff --git a/tests/netx/unit/net/sourceforge/jnlp/resources/testbundle.properties b/tests/netx/unit/net/sourceforge/jnlp/resources/testbundle.properties > new file mode 100644 > --- /dev/null > +++ b/tests/netx/unit/net/sourceforge/jnlp/resources/testbundle.properties > @@ -0,0 +1,2 @@ > +MANPEA=halp > +MANPEB=meow > \ No newline at end of file > diff --git a/tests/netx/unit/net/sourceforge/jnlp/resources/testbundle_pl.properties b/tests/netx/unit/net/sourceforge/jnlp/resources/testbundle_pl.properties > new file mode 100644 > --- /dev/null > +++ b/tests/netx/unit/net/sourceforge/jnlp/resources/testbundle_pl.properties > @@ -0,0 +1,2 @@ > +MANPEA=blob > +MANPEB=ow > \ No newline at end of file > diff --git a/tests/netx/unit/net/sourceforge/jnlp/util/OptionParserTest.java b/tests/netx/unit/net/sourceforge/jnlp/util/OptionParserTest.java > new file mode 100644 > --- /dev/null > +++ b/tests/netx/unit/net/sourceforge/jnlp/util/OptionParserTest.java > @@ -0,0 +1,127 @@ > +/*Copyright (C) 2014 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.util; > + > +import static org.junit.Assert.assertEquals; > + > +import org.junit.Test; > + > +public class OptionParserTest { > + > + @Test > + public void testGetSingleOptionValue() { > + String[] args = {"-basedir", "blob"}; > + String[] acceptedArgs = {"-basedir"}; > + OptionParser parser = new OptionParser(args, acceptedArgs); > + > + String[] values = parser.getOptionValues("-basedir"); > + assertEquals("blob", values[0]); > + assertEquals(1, values.length); > + } > + > + @Test > + public void testGetSingleOptionMultipleValues() { > + String[] args = {"-basedir", "blob", "meow"}; > + String[] acceptedArgs = {"-basedir"}; > + OptionParser parser = new OptionParser(args, acceptedArgs); > + > + String[] values = parser.getOptionValues("-basedir"); > + assertEquals("blob", values[0]); > + assertEquals("meow", values[1]); > + assertEquals(2, values.length); > + } > + > + @Test > + public void testGetDifferentOptionValues() { > + String[] args = {"-basedir", "blob", "-arg", "help"}; > + String[] acceptedArgs = {"-basedir", "-arg"}; > + OptionParser parser = new OptionParser(args, acceptedArgs); > + > + String[] values = parser.getOptionValues("-basedir"); > + assertEquals("blob", values[0]); > + assertEquals(1, values.length); > + > + values = parser.getOptionValues("-arg"); > + assertEquals("help", values[0]); > + assertEquals(1, values.length); > + > + } > + > + @Test > + public void testUnsupportedOptionValue() { > + String[] args = {"-basedir", "blob"}; > + String[] acceptedArgs = {"-basedir"}; > + OptionParser parser = new OptionParser(args, acceptedArgs); > + > + String[] values = parser.getOptionValues("-unsupported"); > + assertEquals(0, values.length); > + } > + > + @Test > + public void testSupportedOptionValueWithNoUse() { > + String[] args = {}; > + String[] acceptedArgs = {"-basedir"}; > + OptionParser parser = new OptionParser(args, acceptedArgs); > + > + String[] values = parser.getOptionValues("-basedir"); > + assertEquals(0, values.length); > + } > + > + @Test > + public void testOptionValueWithNoArgument() { > + String[] args = {"-basedir"}; > + String[] acceptedArgs = {"-basedir"}; > + OptionParser parser = new OptionParser(args, acceptedArgs); > + > + String[] values = parser.getOptionValues("-basedir"); > + assertEquals("-basedir", values[0]); > + assertEquals(1, values.length); > + } > + > + @Test > + public void testMultipleOptionsMultipleValues() { > + String[] args = {"-basedir", "poke", "blob", "-basedir", "meep"}; > + String[] acceptedArgs = {"-basedir"}; > + OptionParser parser = new OptionParser(args, acceptedArgs); > + > + String[] values = parser.getOptionValues("-basedir"); > + assertEquals(3, values.length); > + assertEquals("poke", values[0]); > + assertEquals("blob", values[1]); > + assertEquals("meep", values[2]); > + } > +} > Thank you for the tests. Please don't give up on them when you will rework most of this. Tests are good for gathering ideas around actual coding. J. From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 09:24:16 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 09:24:16 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 --- Comment #3 from Severin Gehwolf --- Created attachment 1115 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1115&action=edit Simple reproducer Running this reproducer with an IcedTea7-2.4 forest build prints "PC/SC". Doing the same with an IcedTea7-2.5 forest build crashes the JVM. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 14:25:28 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 14:25:28 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 --- Comment #4 from Severin Gehwolf --- Created attachment 1116 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1116&action=edit Proposed fix for in-tree PCSC With this patch applied to the JDK repository the in-tree PCSC build works for me and passes the reproducer. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 14:53:18 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 14:53:18 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 Severin Gehwolf changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|sgehwolf at redhat.com |gnu.andrew at redhat.com --- Comment #5 from Severin Gehwolf --- I'll let Andrew go from here. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 15:13:10 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 15:13:10 +0000 Subject: [Bug 1839] [IcedTea7] Provide Infinality Support via fontconfig In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1839 --- Comment #5 from Andrew John Hughes --- It sounds likely. I don't think there's a bug here, as there's already the option to disable infinality. I may make it default to being off though. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 16:46:48 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 16:46:48 +0000 Subject: [Bug 729] [IcedTea8] GTKLookAndFeel should be the system look&feel on all GNU/Linux desktops In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729 --- Comment #28 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset;node=76677a8fcaa1 author: andrew date: Wed Jun 11 16:51:38 2014 +0100 PR729: GTKLookAndFeel should be the system look&feel on all GNU/Linux desktops Summary: Return GTKLookAndFeel as the system look&feel on local GNU/Linux systems -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 16:47:03 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 16:47:03 +0000 Subject: [Bug 1736] Awt loads gtk3 in all the look and feel configurations In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1736 --- Comment #5 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset;node=d66ca272e7ba author: andrew date: Tue Jun 10 22:37:03 2014 +0100 PR1736: AWT loads gtk3 in all the look and feel configurations Summary: Split the JNI Gtk+ code into its own library -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 16:47:10 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 16:47:10 +0000 Subject: [Bug 1808] [IcedTea7] type-punning warnings in demos on ppc In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1808 --- Comment #3 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset;node=9c9a9b2fbbdc author: andrew date: Wed Jun 11 18:33:57 2014 +0100 PR1808: Type-punning Warnings in Demos on PPC Summary: Drop the undocumented exclusion of -fno-strict-aliasing from PPC, as in OpenJDK 9. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 16:47:17 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 16:47:17 +0000 Subject: [Bug 1839] [IcedTea7] Provide Infinality Support via fontconfig In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1839 --- Comment #6 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset;node=9ff90d1818b1 author: andrew date: Thu Jun 12 21:14:44 2014 +0100 PR1839, G478960: Provide Infinality Support via fontconfig Summary: Adapt fontfix patch, which uses fontconfig for font rendering, to apply only when INFINALITY_SUPPORT=true Contributed-by: Trustin Lee, Aleksandar Antok (fontfix patch from https://gist.github.com/aleksandara/2963640) -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 11 17:41:15 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 11 Jul 2014 17:41:15 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |2.5.1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From doko at ubuntu.com Fri Jul 11 17:50:54 2014 From: doko at ubuntu.com (Matthias Klose) Date: Fri, 11 Jul 2014 19:50:54 +0200 Subject: [patch] fix zero builds on i386 in openjdk-7 and openjdk-8 Message-ID: <53C023FE.5020701@ubuntu.com> zero builds are currently broken on i386 in openjdk-7 and openjdk-8 (icedtea-2.5.0 is affected too). Afaics this workaround is not needed for zero, so disabling it. zero test results for hotspot and langtools look ok. Matthias -------------- next part -------------- --- openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp +++ openjdk/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp @@ -890,7 +890,7 @@ * updates (JDK-8023956). */ void os::workaround_expand_exec_shield_cs_limit() { -#if defined(IA32) +#if defined(IA32) && !defined(ZERO) size_t page_size = os::vm_page_size(); /* * Take the highest VA the OS will give us and exec --- openjdk/hotspot/src/os/linux/vm/os_linux.cpp +++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp @@ -4852,7 +4852,7 @@ Linux::capture_initial_stack(JavaThread::stack_size_at_create()); -#if defined(IA32) +#if defined(IA32) && !defined(ZERO) workaround_expand_exec_shield_cs_limit(); #endif From aazores at redhat.com Fri Jul 11 19:27:26 2014 From: aazores at redhat.com (Andrew Azores) Date: Fri, 11 Jul 2014 15:27:26 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] Dispose on close fix In-Reply-To: <53B40FB2.9040406@redhat.com> References: <630784896.944129.1404157097815.JavaMail.zimbra@redhat.com> <53B1CF6A.10600@gmx.de> <53B40FB2.9040406@redhat.com> Message-ID: <1757974512.8731516.1405106846362.JavaMail.zimbra@redhat.com> Ping. ----- Original Message ----- > On 06/30/2014 04:58 PM, Jacob Wisor wrote: > > On 06/30/2014 09:38 PM, Andrew Azores wrote: > >> Hi, > >> > >> I noticed today that closing PolicyEditor via the window manager (in > >> my case, alt-shift-q) does not properly respect the "Cancel" option > >> on the confirmation dialog which appears if you are exiting without > >> first saving changes. Using File>Exit or the Close button however > >> does respect the Cancel option. The problem is that the window is > >> being disposed due to the window manager close event, rather than > >> letting the editor decide on its own when to dispose itself. Fixing > >> this is as simple as removing one extra dispose() and changing the > >> default close operation from DISPOSE_ON_CLOSE to DO_NOTHING_ON_CLOSE. > >> > > > > Look good to me... but wouldn't you like to add a "save changes > > dialog" before closing, when PolicyEditor has not been launched by the > > IcedTea-Web control panel? > > > > Jacob > > There should be already, have you found a case where it doesn't appear? > > Thanks, > > -- > Andrew A > > From aazores at redhat.com Fri Jul 11 19:27:42 2014 From: aazores at redhat.com (Andrew Azores) Date: Fri, 11 Jul 2014 15:27:42 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] Keyboard shortcuts and mnemonics touchup In-Reply-To: <53B4556E.60905@redhat.com> References: <53AC7183.3030107@redhat.com> <53AD8A60.3050306@redhat.com> <53ADF2C5.9060405@gmx.de> <1545699919.939092.1404155700457.JavaMail.zimbra@redhat.com> <53B2C337.2030705@gmx.de> <53B4556E.60905@redhat.com> Message-ID: <463393809.8731565.1405106862143.JavaMail.zimbra@redhat.com> Ping. ----- Original Message ----- > On 07/01/2014 10:18 AM, Jacob Wisor wrote: > > On 06/30/2014 09:15 PM, Andrew Azores wrote: > >> (Sorry for the maybe not-so-good email formatting here - replying from > >> a web interface today unfortunately) > >> > >> ----- Original Message ----- > >>> On 06/27/2014 05:14 PM, Andrew Azores wrote: > >>>> On 06/26/2014 03:16 PM, Andrew Azores wrote: > >>>>> Hi, > >>>>> > >>>>> This patch enhances PolicyEditor's accessibility quite a lot. Changes > >>>>> include: > >>>>> > >>>>> 1) Pressing "Enter" while a Group Checkbox has focus will expand > >>>>> the group > >>>>> (pressing space still selects the entire group at once) > >>> > >>> Oh, now I understand what you are intending to do... So you want to > >>> kind of > >>> simulate a right-click on the keyboard. Then the key should probably be > >>> KeyEvent.VK_CONTEXT_MENU instead of KeyEvent.VK_ENTER. On Windows > >>> KeyEvent.VK_CONTEXT_MENU maps to SHIFT+F10 (right-click). On other > >>> window > >>> managers KeyEvent.VK_CONTEXT_MENU should also map to right-click or some > >>> other > >>> key combination in place of a right-click, or maybe just the menu > >>> key. Try it > >>> with your window manager. This one is tricky. > >> > >> Thanks for the tip! VK_CONTEXT_MENU is a nice enhancement. I only have > >> i3 installed so I haven't tested with any other window managers > >> (anyone else reading this, please give it a shot too) but it works > >> fine here with the actual menu key. I also took your advice of > >> changing the Rename accelerator to F2 - sounds reasonable to me, and I > >> wasn't aware that there was actually a "standard" for that. Taking a > >> look at my file manager though (Thunar) I do see that same accelerator > >> listed. > > > > i3? Hard core, eh? :-D I for myself are using Mate. Speaking of which, > > it allows for almost fully configurable accelerators. ;-) > > MATE is my preferred full DE, but for a while now I've just been using a > plain window manager. > > > > >> [...] > >>> > >>> This stuff may seem like details or nit picking but this is actually > >>> part of > >>> what makes good software. Going into details, tuning, making it > >>> easier and > >>> easier, making look and feel consistent with the rest of the system, > >>> etc. is > >>> what makes software such a pleasure to use. Most users do not > >>> perceive this > >>> actively but all major software packages that are heavy on UI are > >>> only so > >>> accessible and relatively easy to use because their developers spend a > >>> considerable amount of time on perfecting the UI experience. So keep on > >>> perfecting! ;-) > >>> > >> > >> I know :) that's why I keep coming back to improve PolicyEditor this > >> way. Nobody's really asked me to do these particular things, I just > >> want to make the Editor accessible and easy to use now that I've got > >> it (mostly) providing the actual functionality that it was supposed to > >> provide. Maybe I'm not getting every detail right on the first > >> attempt, but, well, everything needs to be learned for the first time > >> before it can be done right ;) > > > > Sure, that's what development cycles and iterations are for. ;-) This is > > also why I usually try to slow down people from rushing releases. There > > is really no benefit it releasing early and often. Check for bugs, do > > internal reviewing. Of course, you won't catch every bug with internal > > reviewing but will definitely get the obvious blunders. There is still > > polishing left to do on the PolicyEditor but you're on a good track. > > > > Jacob > > Attached is a patch that removes one extra line that was put in for > simple smoke testing and found its way into the last patch without being > cleaned... :( > > Thanks, > -- > Andrew Azores > From jkang at redhat.com Fri Jul 11 19:56:12 2014 From: jkang at redhat.com (Jie Kang) Date: Fri, 11 Jul 2014 15:56:12 -0400 (EDT) Subject: [rfc][icedtea-web] Java Console Pane Size Fix In-Reply-To: <1823734242.6768178.1405108266344.JavaMail.zimbra@redhat.com> Message-ID: <1466272232.6770745.1405108572692.JavaMail.zimbra@redhat.com> Hello, This patch addresses the bug: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1859 Previously on smaller resolutions (e.g. 1024x768), the panel for "Show Details" was not fully visible. The patch places the panel in a JScrollPane so the user can scroll to see all the available options. The naming and structure follows the previously written code. Regards, -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: console-size.patch Type: text/x-patch Size: 3103 bytes Desc: not available URL: From aazores at icedtea.classpath.org Fri Jul 11 20:36:27 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Fri, 11 Jul 2014 20:36:27 +0000 Subject: /hg/icedtea-web: Fixed PolicyEditor bug with ignoring Cancel opt... Message-ID: changeset 88fd3fdab3f4 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=88fd3fdab3f4 author: Andrew Azores date: Fri Jul 11 16:30:57 2014 -0400 Fixed PolicyEditor bug with ignoring Cancel option on "save before exit" 2014-07-11 Andrew Azores Fixed bug where the "Cancel" option on the "save changes before exiting" dialog would be ignored and the window close without saving * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java (preparePolicyEditorWindow): default close operation NONE rather than dispose (setupPolicyEditorWindow): do not automatically dispose on window close diffstat: ChangeLog | 11 +++++++++- netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java | 3 +- 2 files changed, 11 insertions(+), 3 deletions(-) diffs (40 lines): diff -r 8d268909bdb6 -r 88fd3fdab3f4 ChangeLog --- a/ChangeLog Tue Jul 08 17:24:32 2014 +0200 +++ b/ChangeLog Fri Jul 11 16:30:57 2014 -0400 @@ -1,6 +1,15 @@ +2014-07-11 Andrew Azores + + Fixed bug where the "Cancel" option on the "save changes before exiting" + dialog would be ignored and the window close without saving + * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java + (preparePolicyEditorWindow): default close operation NONE rather than + dispose + (setupPolicyEditorWindow): do not automatically dispose on window close + 2014-07-08 Emmanuel Bourg - * netx/policyeditor.1: Escaped the minus signs in the policyeditor manpage + * netx/policyeditor.1: Escaped the minus signs in the policyeditor manpage 2014-07-03 Jacob Wisor diff -r 8d268909bdb6 -r 88fd3fdab3f4 netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java --- a/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java Tue Jul 08 17:24:32 2014 +0200 +++ b/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java Fri Jul 11 16:30:57 2014 -0400 @@ -416,7 +416,7 @@ w.setModalityType(ModalityType.MODELESS); //at least some default w.setPolicyEditor(e); w.setTitle(R("PETitle")); - w.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); + w.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE); w.setJMenuBar(createMenuBar(w.asWindow(), w.getPolicyEditor())); setupPolicyEditorWindow(w.asWindow(), w.getPolicyEditor()); } @@ -430,7 +430,6 @@ @Override public void windowClosing(final WindowEvent e) { ((PolicyEditorWindow) window).quit(); - window.dispose(); } }); From bugzilla-daemon at icedtea.classpath.org Mon Jul 14 08:11:17 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 14 Jul 2014 08:11:17 +0000 Subject: [Bug 729] [IcedTea8] GTKLookAndFeel should be the system look&feel on all GNU/Linux desktops In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729 --- Comment #29 from Andrew Haley --- (In reply to hg commits from comment #28) > details: > http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset; > node=76677a8fcaa1 > author: andrew > date: Wed Jun 11 16:51:38 2014 +0100 > > PR729: GTKLookAndFeel should be the system look&feel on all GNU/Linux > desktops > Summary: Return GTKLookAndFeel as the system look&feel on local GNU/Linux > systems WHat is the upstream status of this patch? Is this to be icedtea-local, and if so, why? There's no reference here to any upstream discussion. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From aph at redhat.com Mon Jul 14 08:16:52 2014 From: aph at redhat.com (Andrew Haley) Date: Mon, 14 Jul 2014 09:16:52 +0100 Subject: [patch] fix zero builds on i386 in openjdk-7 and openjdk-8 In-Reply-To: <53C023FE.5020701@ubuntu.com> References: <53C023FE.5020701@ubuntu.com> Message-ID: <53C391F4.3080201@redhat.com> On 11/07/14 18:50, Matthias Klose wrote: > zero builds are currently broken on i386 in openjdk-7 and openjdk-8 > (icedtea-2.5.0 is affected too). Afaics this workaround is not needed for zero, > so disabling it. zero test results for hotspot and langtools look ok. Isn't this bug for hotspot-dev? I thought all hotspot patches went there. Andrew. From ptisnovs at icedtea.classpath.org Mon Jul 14 12:15:20 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 14 Jul 2014 12:15:20 +0000 Subject: /hg/gfx-test: Added proper links to JavaDoc. Message-ID: changeset 2dbe4a1b99cd in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=2dbe4a1b99cd author: Pavel Tisnovsky date: Mon Jul 14 14:16:20 2014 +0200 Added proper links to JavaDoc. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltBasicTests.java | 192 +++++++++++----------- 2 files changed, 101 insertions(+), 96 deletions(-) diffs (truncated from 879 to 500 lines): diff -r 1ec6e79dbae4 -r 2dbe4a1b99cd ChangeLog --- a/ChangeLog Fri Jul 04 10:53:49 2014 +0200 +++ b/ChangeLog Mon Jul 14 14:16:20 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-14 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltBasicTests.java: + Added proper links to JavaDoc. + 2014-07-04 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltMirrorImage.java: diff -r 1ec6e79dbae4 -r 2dbe4a1b99cd src/org/gfxtest/testsuites/BitBltBasicTests.java --- a/src/org/gfxtest/testsuites/BitBltBasicTests.java Fri Jul 04 10:53:49 2014 +0200 +++ b/src/org/gfxtest/testsuites/BitBltBasicTests.java Mon Jul 14 14:16:20 2014 +0200 @@ -79,7 +79,7 @@ { /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -94,7 +94,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -109,7 +109,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -124,7 +124,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_BINARY. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -139,7 +139,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_INDEXED. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -154,7 +154,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -169,7 +169,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -184,7 +184,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -199,7 +199,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -214,7 +214,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -229,7 +229,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -244,7 +244,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -259,7 +259,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -274,7 +274,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -289,7 +289,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -304,7 +304,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -319,7 +319,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -334,7 +334,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_BINARY. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -349,7 +349,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_INDEXED. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -364,7 +364,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -379,7 +379,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -394,7 +394,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -409,7 +409,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -424,7 +424,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -439,7 +439,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -454,7 +454,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -469,7 +469,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -484,7 +484,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -499,7 +499,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -514,7 +514,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -529,7 +529,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -544,7 +544,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_BYTE_BINARY. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -559,7 +559,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_BYTE_INDEXED. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -574,7 +574,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -589,7 +589,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -604,7 +604,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -619,7 +619,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -634,7 +634,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -649,7 +649,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -664,7 +664,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -679,7 +679,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -694,7 +694,7 @@ } /** - * Test basic BitBlt operation for diagonal checker buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for diagonal checker buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -709,7 +709,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -724,7 +724,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -739,7 +739,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -754,7 +754,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_BYTE_BINARY. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -769,7 +769,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_BYTE_INDEXED. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -784,7 +784,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -799,7 +799,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -814,7 +814,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -829,7 +829,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -844,7 +844,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -859,7 +859,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -874,7 +874,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image From aazores at icedtea.classpath.org Mon Jul 14 14:06:40 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Mon, 14 Jul 2014 14:06:40 +0000 Subject: /hg/icedtea-web: PolicyEditor mnemonics and accelerators overhaul Message-ID: changeset a2d1b4b606bf in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=a2d1b4b606bf author: Andrew Azores date: Mon Jul 14 10:06:27 2014 -0400 PolicyEditor mnemonics and accelerators overhaul 2014-07-14 Andrew Azores PolicyEditor mnemonics and accelerators overhaul * netx/net/sourceforge/jnlp/resources/Messages.properties (PECodebaseMenu, PERenameCodebaseItem, PECopyCodebaseItem, PEPasteCodebaseItem, PECopyCodebaseToClipboardItem, PEFileMenuMnemonic, PECodebaseMenuMnemonic PEViewMenuMnemonic, PEAddCodebaseItem, PERemoveCodebaseItem): removed "codebase" from item labels, "Edit" menu renamed "codebase" (PEAddCodebaseMnemonic, PEAddCodebaseItemMnemonic, PERemoveCodebaseMnemonic, PERemoveCodebaseItemMnemonic, PEOpenMenuItemMnemonic, PESaveMenuItemMnemonic, PEExitMenuItemMnemonic, PECustomPermissionsItemMnemonic, PECopyCodebaseItemMnemonic, PEPasteCodebaseItemMnemonic, PECopyCodebaseToClipboardItemMnemonic, PESaveAsMenuItemMnemonic, PERenameCodebaseItemMnemonic): updated mnemonics (PEAddCodebaseItemAccelerator, PERemoveCodebaseItemAccelerator, PEOpenMenuItemAccelerator, PESaveMenuItemAccelerator, PESaveAsMenuItemAccelerator, PEExitMenuItemAccelerator, PECustomPermissionsItemAccelerator, PECopyCodebaseItemAccelerator, PEPasteCodebaseItemAccelerator, PERenameCodebaseItemAccelerator, PECopyCodebaseToClipboardItemAccelerator): added accelerators * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java (closeButtonAction): set in PolicyEditor constructor rather than setupPolicyEditorWindow (setupPolicyEditorWindow): do not set save/quit/esc actions (setAccelerators, setAccelerator, setAddCodebaseAccelerator, setRemoveCodebaseAccelerator): removed (setButtonMnemonic): simplified, takes a String expected to be a single character representing the mnemonic key directly, rather than a String parseable to an integer which represented the value of the mnemonic key (setMenuItemAccelerator): new method (createMenuBar): use new mnemonics and accelerators, add new Add/Remove items to Codebase menu, override JList default Control-C/Control-V copy/paste actions (setupLayout): groupCh MouseListener#mouseClicked logic extracted to toggleExpandedCheckboxGroupPanel, KeyListener added to allow expanding checkbox groups via keyboard with Enter or "Context Menu" (toggleExpandedCheckboxGroupPanel): new method diffstat: ChangeLog | 38 + netx/net/sourceforge/jnlp/resources/Messages.properties | 66 +- netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java | 273 ++++----- 3 files changed, 195 insertions(+), 182 deletions(-) diffs (truncated from 554 to 500 lines): diff -r 88fd3fdab3f4 -r a2d1b4b606bf ChangeLog --- a/ChangeLog Fri Jul 11 16:30:57 2014 -0400 +++ b/ChangeLog Mon Jul 14 10:06:27 2014 -0400 @@ -1,3 +1,41 @@ +2014-07-14 Andrew Azores + + PolicyEditor mnemonics and accelerators overhaul + * netx/net/sourceforge/jnlp/resources/Messages.properties (PECodebaseMenu, + PERenameCodebaseItem, PECopyCodebaseItem, PEPasteCodebaseItem, + PECopyCodebaseToClipboardItem, PEFileMenuMnemonic, PECodebaseMenuMnemonic + PEViewMenuMnemonic, PEAddCodebaseItem, PERemoveCodebaseItem): removed "codebase" + from item labels, "Edit" menu renamed "codebase" + (PEAddCodebaseMnemonic, PEAddCodebaseItemMnemonic, PERemoveCodebaseMnemonic, + PERemoveCodebaseItemMnemonic, PEOpenMenuItemMnemonic, PESaveMenuItemMnemonic, + PEExitMenuItemMnemonic, PECustomPermissionsItemMnemonic, + PECopyCodebaseItemMnemonic, PEPasteCodebaseItemMnemonic, + PECopyCodebaseToClipboardItemMnemonic, PESaveAsMenuItemMnemonic, + PERenameCodebaseItemMnemonic): updated mnemonics + (PEAddCodebaseItemAccelerator, PERemoveCodebaseItemAccelerator, + PEOpenMenuItemAccelerator, PESaveMenuItemAccelerator, + PESaveAsMenuItemAccelerator, PEExitMenuItemAccelerator, + PECustomPermissionsItemAccelerator, PECopyCodebaseItemAccelerator, + PEPasteCodebaseItemAccelerator, PERenameCodebaseItemAccelerator, + PECopyCodebaseToClipboardItemAccelerator): added accelerators + * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java + (closeButtonAction): set in PolicyEditor constructor rather than + setupPolicyEditorWindow + (setupPolicyEditorWindow): do not set save/quit/esc actions + (setAccelerators, setAccelerator, setAddCodebaseAccelerator, + setRemoveCodebaseAccelerator): removed + (setButtonMnemonic): simplified, takes a String expected to be a single + character representing the mnemonic key directly, rather than a String + parseable to an integer which represented the value of the mnemonic key + (setMenuItemAccelerator): new method + (createMenuBar): use new mnemonics and accelerators, add new Add/Remove + items to Codebase menu, override JList default Control-C/Control-V + copy/paste actions + (setupLayout): groupCh MouseListener#mouseClicked logic extracted to + toggleExpandedCheckboxGroupPanel, KeyListener added to allow expanding + checkbox groups via keyboard with Enter or "Context Menu" + (toggleExpandedCheckboxGroupPanel): new method + 2014-07-11 Andrew Azores Fixed bug where the "Cancel" option on the "save changes before exiting" diff -r 88fd3fdab3f4 -r a2d1b4b606bf netx/net/sourceforge/jnlp/resources/Messages.properties --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Fri Jul 11 16:30:57 2014 -0400 +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Mon Jul 14 10:06:27 2014 -0400 @@ -562,11 +562,13 @@ PESaveMenuItem=Save PESaveAsMenuItem=Save As... PEExitMenuItem=Exit -PEEditMenu=Edit -PERenameCodebaseItem=Rename codebase -PECopyCodebaseItem=Copy codebase -PEPasteCodebaseItem=Paste codebase -PECopyCodebaseToClipboardItem=Copy codebase URL to clipboard +PECodebaseMenu=Codebase +PEAddCodebaseItem=Add new +PERemoveCodebaseItem=Remove +PERenameCodebaseItem=Rename +PECopyCodebaseItem=Copy +PEPasteCodebaseItem=Paste +PECopyCodebaseToClipboardItem=Copy URL to clipboard PERenameCodebase=Rename codebase to: PEPasteCodebase=Paste copied codebase as: PEViewMenu=View @@ -593,30 +595,36 @@ PECPPrompt=Enter a custom permission. Do not include \"permission\" or punctuation marks. # PolicyEditor key mnemonics. See KeyEvent.VK_* -# N -PEAddCodebaseMnemonic=78 -# R -PERemoveCodebaseMnemonic=82 -# A -PEOkButtonMnemonic=65 -# C -PECancelButtonMnemonic=67 -# F -PEFileMenuMnemonic=70 -# E -PEEditMenuMnemonic=69 -# I -PEViewMenuMnemonic=73 -# O -PEOpenMenuItemMnemonic=79 -# S -PESaveMenuItemMnemonic=83 -# A -PESaveAsMenuItemMnemonic=65 -# X -PEExitMenuItemMnemonic=88 -# U -PECustomPermissionsItemMnemonic=85 +PEFileMenuMnemonic=F +PECodebaseMenuMnemonic=C +PEViewMenuMnemonic=V + +PEAddCodebaseMnemonic=N +PEAddCodebaseItemMnemonic=N +PERemoveCodebaseMnemonic=R +PERemoveCodebaseItemMnemonic=R +PEOpenMenuItemMnemonic=O +PESaveMenuItemMnemonic=S +PEExitMenuItemMnemonic=X +PECustomPermissionsItemMnemonic=U +PECopyCodebaseItemMnemonic=C +PEPasteCodebaseItemMnemonic=P +PECopyCodebaseToClipboardItemMnemonic=U +PESaveAsMenuItemMnemonic=A +PERenameCodebaseItemMnemonic=E + +# See javax.swing.KeyStroke.getKeyStroke(String) +PEAddCodebaseItemAccelerator=control N +PERemoveCodebaseItemAccelerator=DELETE +PEOpenMenuItemAccelerator=control O +PESaveMenuItemAccelerator=control S +PESaveAsMenuItemAccelerator=control shift S +PEExitMenuItemAccelerator=control Q +PECustomPermissionsItemAccelerator=control U +PECopyCodebaseItemAccelerator=control C +PEPasteCodebaseItemAccelerator=control V +PERenameCodebaseItemAccelerator=F2 +PECopyCodebaseToClipboardItemAccelerator=control shift C #conole itself labels CONSOLErungc = Run GC diff -r 88fd3fdab3f4 -r a2d1b4b606bf netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java --- a/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java Fri Jul 11 16:30:57 2014 -0400 +++ b/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java Mon Jul 14 10:06:27 2014 -0400 @@ -50,6 +50,8 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.WindowAdapter; @@ -76,10 +78,11 @@ import javax.swing.AbstractAction; import javax.swing.AbstractButton; import javax.swing.Action; +import javax.swing.ActionMap; import javax.swing.DefaultListModel; +import javax.swing.InputMap; import javax.swing.JButton; import javax.swing.JCheckBox; -import javax.swing.JComponent; import javax.swing.JDialog; import javax.swing.JFileChooser; import javax.swing.JFrame; @@ -363,7 +366,7 @@ copyCodebaseToClipboardButtonAction = new ActionListener() { @Override - public void actionPerformed(ActionEvent e) { + public void actionPerformed(final ActionEvent e) { final String selectedCodebase = getSelectedCodebase(); if (selectedCodebase.isEmpty()) { return; @@ -396,7 +399,17 @@ } }; - setAccelerators(); + closeButtonAction = new ActionListener() { + @Override + public void actionPerformed(final ActionEvent event) { + final Window parentWindow = SwingUtilities.getWindowAncestor(PolicyEditor.this); + if (parentWindow instanceof PolicyEditorWindow) { + ((PolicyEditorWindow) parentWindow).quit(); + } + } + }; + closeButton.setText(R("ButClose")); + closeButton.addActionListener(closeButtonAction); setupLayout(); } @@ -417,7 +430,7 @@ w.setPolicyEditor(e); w.setTitle(R("PETitle")); w.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE); - w.setJMenuBar(createMenuBar(w.asWindow(), w.getPolicyEditor())); + w.setJMenuBar(createMenuBar(w.getPolicyEditor())); setupPolicyEditorWindow(w.asWindow(), w.getPolicyEditor()); } @@ -432,39 +445,6 @@ ((PolicyEditorWindow) window).quit(); } }); - - editor.closeButtonAction = new ActionListener() { - @Override - public void actionPerformed(final ActionEvent event) { - ((PolicyEditorWindow) window).quit(); - } - }; - editor.closeButton.setText(R("ButClose")); - editor.closeButton.addActionListener(editor.closeButtonAction); - - final Action saveAct = new AbstractAction() { - @Override - public void actionPerformed(final ActionEvent e) { - editor.savePolicyFile(); - } - }; - editor.setAccelerator(R("PEOkButtonMnemonic"), ActionEvent.ALT_MASK, saveAct, "OkButtonAccelerator"); - - final Action quitAct = new AbstractAction() { - @Override - public void actionPerformed(final ActionEvent e) { - ((PolicyEditorWindow) window).quit(); - } - }; - editor.setAccelerator(R("PECancelButtonMnemonic"), ActionEvent.ALT_MASK, quitAct, "CancelButtonAccelerator"); - - final Action escAct = new AbstractAction() { - @Override - public void actionPerformed(final ActionEvent e) { - ((PolicyEditorWindow) window).quit(); - } - }; - editor.setAccelerator(KeyEvent.VK_ESCAPE, ActionEvent.ALT_MASK, escAct, "ExitOnEscape"); } public static interface PolicyEditorWindow { @@ -648,73 +628,6 @@ } /** - * Set keyboard accelerators for each major function in the editor - */ - private void setAccelerators() { - setAddCodebaseAccelerator(); - setRemoveCodebaseAccelerator(); - } - - /** - * Set a key accelerator - * @param trigger the accelerator key - * @param modifiers Alt, Ctrl, or other modifiers to be held with the trigger - * @param action to be performed - * @param identifier an identifier for the action - */ - private void setAccelerator(final String trigger, final int modifiers, final Action action, final String identifier) { - final int trig; - try { - trig = Integer.parseInt(trigger); - } catch (final NumberFormatException nfe) { - OutputController.getLogger().log("Unable to set accelerator action \"" - + identifier + "\" for trigger \"" + trigger + "\""); - OutputController.getLogger().log(nfe); - return; - } - setAccelerator(trig, modifiers, action, identifier); - } - - /** - * Set a key accelerator - * @param trigger the accelerator key - * @param modifiers Alt, Ctrl, or other modifiers to be held with the trigger - * @param action to be performed - * @param identifier an identifier for the action - */ - private void setAccelerator(final int trigger, final int modifiers, final Action action, final String identifier) { - final KeyStroke key = KeyStroke.getKeyStroke(trigger, modifiers); - this.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(key, identifier); - this.getActionMap().put(identifier, action); - } - - /** - * Add an accelerator for adding new codebases - */ - private void setAddCodebaseAccelerator() { - final Action act = new AbstractAction() { - @Override - public void actionPerformed(final ActionEvent e) { - addNewCodebaseInteractive(); - } - }; - setAccelerator(R("PEAddCodebaseMnemonic"), ActionEvent.ALT_MASK, act, "AddCodebaseAccelerator"); - } - - /** - * Add an accelerator for removing the selected codebase - */ - private void setRemoveCodebaseAccelerator() { - final Action act = new AbstractAction() { - @Override - public void actionPerformed(final ActionEvent e) { - removeCodebase(getSelectedCodebase()); - } - }; - setAccelerator(R("PERemoveCodebaseMnemonic"), ActionEvent.ALT_MASK, act, "RemoveCodebaseAccelerator"); - } - - /** * Add a new codebase to the editor's model. If the codebase is not a valid URL, * the codebase is not added. * @param codebase to be added @@ -937,88 +850,132 @@ /** * Set a mnemonic key for a menu item or button - * @param component the component for which to set a mnemonic + * @param button the component for which to set a mnemonic * @param mnemonic the mnemonic to set */ - private static void setComponentMnemonic(final AbstractButton component, final String mnemonic) { - final int trig; - try { - trig = Integer.parseInt(mnemonic); - } catch (final NumberFormatException nfe) { - OutputController.getLogger().log(nfe); + private static void setButtonMnemonic(final AbstractButton button, final String mnemonic) { + if (mnemonic.length() != 1) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Could not set mnemonic \"" + mnemonic + "\" for " + button); return; } - component.setMnemonic(trig); + final char ch = mnemonic.charAt(0); + button.setMnemonic(ch); } - private static JMenuBar createMenuBar(final Window window, final PolicyEditor editor) { + private static void setMenuItemAccelerator(final JMenuItem menuItem, final String accelerator) { + final KeyStroke ks = KeyStroke.getKeyStroke(accelerator); + menuItem.setAccelerator(ks); + } + + private static JMenuBar createMenuBar(final PolicyEditor editor) { final JMenuBar menuBar = new JMenuBar(); final JMenu fileMenu = new JMenu(R("PEFileMenu")); - setComponentMnemonic(fileMenu, R("PEFileMenuMnemonic")); + setButtonMnemonic(fileMenu, R("PEFileMenuMnemonic")); final JMenuItem openItem = new JMenuItem(R("PEOpenMenuItem")); - setComponentMnemonic(openItem, R("PEOpenMenuItemMnemonic")); - openItem.setAccelerator(KeyStroke.getKeyStroke(openItem.getMnemonic(), ActionEvent.CTRL_MASK)); + setButtonMnemonic(openItem, R("PEOpenMenuItemMnemonic")); + setMenuItemAccelerator(openItem, R("PEOpenMenuItemAccelerator")); openItem.addActionListener(editor.openButtonAction); fileMenu.add(openItem); final JMenuItem saveItem = new JMenuItem(R("PESaveMenuItem")); - setComponentMnemonic(saveItem, R("PESaveMenuItemMnemonic")); - saveItem.setAccelerator(KeyStroke.getKeyStroke(saveItem.getMnemonic(), ActionEvent.CTRL_MASK)); + setButtonMnemonic(saveItem, R("PESaveMenuItemMnemonic")); + setMenuItemAccelerator(saveItem, R("PESaveMenuItemAccelerator")); saveItem.addActionListener(editor.okButtonAction); fileMenu.add(saveItem); final JMenuItem saveAsItem = new JMenuItem(R("PESaveAsMenuItem")); - setComponentMnemonic(saveAsItem, R("PESaveAsMenuItemMnemonic")); - saveAsItem.setAccelerator(KeyStroke.getKeyStroke(saveAsItem.getMnemonic(), ActionEvent.CTRL_MASK)); + setButtonMnemonic(saveAsItem, R("PESaveAsMenuItemMnemonic")); + setMenuItemAccelerator(saveAsItem, R("PESaveAsMenuItemAccelerator")); saveAsItem.addActionListener(editor.saveAsButtonAction); fileMenu.add(saveAsItem); final JMenuItem exitItem = new JMenuItem(R("PEExitMenuItem")); - setComponentMnemonic(exitItem, R("PEExitMenuItemMnemonic")); - exitItem.setAccelerator(KeyStroke.getKeyStroke(exitItem.getMnemonic(), ActionEvent.CTRL_MASK)); + setButtonMnemonic(exitItem, R("PEExitMenuItemMnemonic")); + setMenuItemAccelerator(exitItem, R("PEExitMenuItemAccelerator")); exitItem.addActionListener(editor.closeButtonAction); - exitItem.addActionListener(new ActionListener() { - @Override - public void actionPerformed(final ActionEvent e) { - window.dispose(); - } - }); fileMenu.add(exitItem); menuBar.add(fileMenu); - final JMenu editMenu = new JMenu(R("PEEditMenu")); - setComponentMnemonic(editMenu, R("PEEditMenuMnemonic")); + final JMenu codebaseMenu = new JMenu(R("PECodebaseMenu")); + setButtonMnemonic(codebaseMenu, R("PECodebaseMenuMnemonic")); + + final JMenuItem addNewCodebaseItem = new JMenuItem(R("PEAddCodebaseItem")); + setButtonMnemonic(addNewCodebaseItem, R("PEAddCodebaseItemMnemonic")); + setMenuItemAccelerator(addNewCodebaseItem, R("PEAddCodebaseItemAccelerator")); + addNewCodebaseItem.addActionListener(editor.addCodebaseButtonAction); + codebaseMenu.add(addNewCodebaseItem); + + final JMenuItem removeCodebaseItem = new JMenuItem(R("PERemoveCodebaseItem")); + setButtonMnemonic(removeCodebaseItem, R("PERemoveCodebaseItemMnemonic")); + setMenuItemAccelerator(removeCodebaseItem, R("PERemoveCodebaseItemAccelerator")); + removeCodebaseItem.addActionListener(editor.removeCodebaseButtonAction); + codebaseMenu.add(removeCodebaseItem); + + codebaseMenu.addSeparator(); final JMenuItem renameCodebaseItem = new JMenuItem(R("PERenameCodebaseItem")); + setButtonMnemonic(renameCodebaseItem, R("PERenameCodebaseItemMnemonic")); + setMenuItemAccelerator(renameCodebaseItem, R("PERenameCodebaseItemAccelerator")); renameCodebaseItem.addActionListener(editor.renameCodebaseButtonAction); - editMenu.add(renameCodebaseItem); + codebaseMenu.add(renameCodebaseItem); final JMenuItem copyCodebaseItem = new JMenuItem(R("PECopyCodebaseItem")); + setButtonMnemonic(copyCodebaseItem, R("PECopyCodebaseItemMnemonic")); + setMenuItemAccelerator(copyCodebaseItem, R("PECopyCodebaseItemAccelerator")); copyCodebaseItem.addActionListener(editor.copyCodebaseButtonAction); - editMenu.add(copyCodebaseItem); + codebaseMenu.add(copyCodebaseItem); + + final JMenuItem copyCodebaseToClipboardItem = new JMenuItem(R("PECopyCodebaseToClipboardItem")); + setButtonMnemonic(copyCodebaseToClipboardItem, R("PECopyCodebaseToClipboardItemMnemonic")); + setMenuItemAccelerator(copyCodebaseToClipboardItem, R("PECopyCodebaseToClipboardItemAccelerator")); + copyCodebaseToClipboardItem.addActionListener(editor.copyCodebaseToClipboardButtonAction); + codebaseMenu.add(copyCodebaseToClipboardItem); + menuBar.add(codebaseMenu); final JMenuItem pasteCodebaseItem = new JMenuItem(R("PEPasteCodebaseItem")); + setButtonMnemonic(pasteCodebaseItem, R("PEPasteCodebaseItemMnemonic")); + setMenuItemAccelerator(pasteCodebaseItem, R("PEPasteCodebaseItemAccelerator")); pasteCodebaseItem.addActionListener(editor.pasteCodebaseButtonAction); - editMenu.add(pasteCodebaseItem); - - final JMenuItem copyCodebaseToClipboardItem = new JMenuItem(R("PECopyCodebaseToClipboardItem")); - copyCodebaseToClipboardItem.addActionListener(editor.copyCodebaseToClipboardButtonAction); - editMenu.add(copyCodebaseToClipboardItem); - menuBar.add(editMenu); + codebaseMenu.add(pasteCodebaseItem); final JMenu viewMenu = new JMenu(R("PEViewMenu")); - setComponentMnemonic(viewMenu, R("PEViewMenuMnemonic")); + setButtonMnemonic(viewMenu, R("PEViewMenuMnemonic")); final JMenuItem customPermissionsItem = new JMenuItem(R("PECustomPermissionsItem")); - setComponentMnemonic(customPermissionsItem, R("PECustomPermissionsItemMnemonic")); - customPermissionsItem.setAccelerator(KeyStroke.getKeyStroke(customPermissionsItem.getMnemonic(), ActionEvent.ALT_MASK)); + setButtonMnemonic(customPermissionsItem, R("PECustomPermissionsItemMnemonic")); + setMenuItemAccelerator(customPermissionsItem, R("PECustomPermissionsItemAccelerator")); customPermissionsItem.addActionListener(editor.viewCustomButtonAction); viewMenu.add(customPermissionsItem); menuBar.add(viewMenu); + /* + * JList has default Ctrl-C and Ctrl-V bindings, which we want to override with custom actions + */ + final InputMap listInputMap = editor.list.getInputMap(); + final ActionMap listActionMap = editor.list.getActionMap(); + + final Action listCopyOverrideAction = new AbstractAction() { + @Override + public void actionPerformed(final ActionEvent e) { + editor.copyCodebaseButtonAction.actionPerformed(e); + } + }; + + final Action listPasteOverrideAction = new AbstractAction() { + @Override + public void actionPerformed(final ActionEvent e) { + editor.pasteCodebaseButtonAction.actionPerformed(e); + } + }; + + listInputMap.put(copyCodebaseItem.getAccelerator(), "CopyCodebaseOverride"); + listActionMap.put("CopyCodebaseOverride", listCopyOverrideAction); + listInputMap.put(pasteCodebaseItem.getAccelerator(), "PasteCodebaseOverride"); + listActionMap.put("PasteCodebaseOverride", listPasteOverrideAction); + return menuBar; } @@ -1069,20 +1026,23 @@ groupCh.setToolTipText(R("PEGrightClick")); groupCh.addMouseListener(new MouseAdapter() { @Override - public void mouseClicked(MouseEvent e) { + public void mouseClicked(final MouseEvent e) { if (e.getButton() == MouseEvent.BUTTON3) { - groupPanel.setVisible(!groupPanel.isVisible()); - PolicyEditor.this.validate(); - final Window w = SwingUtilities.getWindowAncestor(PolicyEditor.this); - if (w != null) { - w.pack(); - } + toggleExpandedCheckboxGroupPanel(groupPanel); + } + } + }); + groupCh.addKeyListener(new KeyAdapter() { + @Override + public void keyPressed(final KeyEvent e) { + if (e.getKeyCode() == KeyEvent.VK_ENTER || e.getKeyCode() == KeyEvent.VK_CONTEXT_MENU) { + toggleExpandedCheckboxGroupPanel(groupPanel); } } }); groupCh.addActionListener(new ActionListener() { From aazores at redhat.com Mon Jul 14 14:07:41 2014 From: aazores at redhat.com (Andrew Azores) Date: Mon, 14 Jul 2014 10:07:41 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53B5C7A1.9080700@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> Message-ID: <53C3E42D.6000408@redhat.com> On 07/03/2014 05:14 PM, Andrew Azores wrote: > On 07/03/2014 05:02 PM, Omair Majid wrote: >> * Andrew Azores [2014-07-03 16:55]: >>> + codebaseHost = new URI(codebase.getScheme(), codebase.getUserInfo(), codebase.getHost(), -1, null, null, null); >> Why -1 for port? This seems strange compared to the same-origin-policy. >> >> Thanks, >> Omair >> > > It doesn't seem to be specified for the SocketPermission granted in > SecurityDesc either - downloadHost is just the hostname part of the > codebase URL AFAICT. So I haven't specified a port for the > URLPermission so as to not be more restrictive than the SocketPermission. > > There's also this in the URLPermission docs: > >> /portrange/ is used to specify a port number, or a bounded or >> unbounded range of ports that this permission applies to. If >> portrange is absent or invalid, then a default port number is assumed >> if the scheme is |http| (default 80) or |https| (default 443). No >> default is assumed for other schemes. A wildcard may be specified >> which means all ports. > > > Thanks, > -- > Andrew A Ping. Thanks, -- Andrew A -------------- next part -------------- An HTML attachment was scrubbed... URL: From omajid at redhat.com Mon Jul 14 15:09:59 2014 From: omajid at redhat.com (Omair Majid) Date: Mon, 14 Jul 2014 11:09:59 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53C3E42D.6000408@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> Message-ID: <20140714150959.GA11827@redhat.com> * Andrew Azores [2014-07-14 10:07]: > On 07/03/2014 05:14 PM, Andrew Azores wrote: > > On 07/03/2014 05:02 PM, Omair Majid wrote: > > * Andrew Azores [2014-07-03 16:55]: > > + codebaseHost = new URI(codebase.getScheme(), codebase.getUserInfo(), codebase.getHost(), -1, null, null, null); > > Why -1 for port? This seems strange compared to the same-origin-policy. > > Thanks, > Omair > > > > It doesn't seem to be specified for the SocketPermission granted in > SecurityDesc either - downloadHost is just the hostname part of the > codebase URL AFAICT. So I haven't specified a port for the URLPermission so > as to not be more restrictive than the SocketPermission. That sounds like a bug. This should be fixed. > There's also this in the URLPermission docs: > > portrange is used to specify a port number, or a bounded or unbounded > range of ports that this permission applies to. If portrange is absent > or invalid, then a default port number is assumed if the scheme is http > (default 80) or https (default 443). No default is assumed for other > schemes. A wildcard may be specified which means all ports. Won't this break applets and webstart applications that run the webserver on non-default ports? For example, [1] uses port 9090. Thanks, Omair [1] http://www.symantec.com/connect/forums/sepm-console-unable-launch-application-after-java-upgrade-7u51 -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From ptisnovs at icedtea.classpath.org Tue Jul 15 11:04:47 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 15 Jul 2014 11:04:47 +0000 Subject: /hg/gfx-test: Added proper links to JavaDoc (continuing). Message-ID: changeset 61329390414a in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=61329390414a author: Pavel Tisnovsky date: Tue Jul 15 13:05:37 2014 +0200 Added proper links to JavaDoc (continuing). diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltBasicTests.java | 164 +++++++++++----------- 2 files changed, 87 insertions(+), 82 deletions(-) diffs (truncated from 753 to 500 lines): diff -r 2dbe4a1b99cd -r 61329390414a ChangeLog --- a/ChangeLog Mon Jul 14 14:16:20 2014 +0200 +++ b/ChangeLog Tue Jul 15 13:05:37 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-15 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltBasicTests.java: + Added proper links to JavaDoc (continuing). + 2014-07-14 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltBasicTests.java: diff -r 2dbe4a1b99cd -r 61329390414a src/org/gfxtest/testsuites/BitBltBasicTests.java --- a/src/org/gfxtest/testsuites/BitBltBasicTests.java Mon Jul 14 14:16:20 2014 +0200 +++ b/src/org/gfxtest/testsuites/BitBltBasicTests.java Tue Jul 15 13:05:37 2014 +0200 @@ -1477,7 +1477,7 @@ } /** - * Test basic BitBlt operation for vertical stripes buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for vertical stripes buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -1492,7 +1492,7 @@ } /** - * Test basic BitBlt operation for vertical stripes buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for vertical stripes buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1507,7 +1507,7 @@ } /** - * Test basic BitBlt operation for vertical stripes buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for vertical stripes buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1522,7 +1522,7 @@ } /** - * Test basic BitBlt operation for vertical stripes buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for vertical stripes buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -1537,7 +1537,7 @@ } /** - * Test basic BitBlt operation for vertical stripes buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for vertical stripes buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -1552,7 +1552,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -1567,7 +1567,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -1582,7 +1582,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -1613,7 +1613,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_BYTE_INDEXED. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -1628,7 +1628,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -1643,7 +1643,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -1658,7 +1658,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1673,7 +1673,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1688,7 +1688,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -1703,7 +1703,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1718,7 +1718,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1733,7 +1733,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -1748,7 +1748,7 @@ } /** - * Test basic BitBlt operation for diagonal stripes buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for diagonal stripes buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -1763,7 +1763,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -1778,7 +1778,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -1793,7 +1793,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -1809,7 +1809,7 @@ /** * Test basic BitBlt operation for horizontal color stripes buffered image - * with type TYPE_BYTE_BINARY. + * with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -1825,7 +1825,7 @@ /** * Test basic BitBlt operation for horizontal color stripes buffered image - * with type TYPE_BYTE_INDEXED. + * with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -1840,7 +1840,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -1855,7 +1855,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -1870,7 +1870,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1885,7 +1885,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1900,7 +1900,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -1915,7 +1915,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1930,7 +1930,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -1945,7 +1945,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -1960,7 +1960,7 @@ } /** - * Test basic BitBlt operation for horizontal color stripes buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for horizontal color stripes buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -1975,7 +1975,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -1990,7 +1990,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2005,7 +2005,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -2021,7 +2021,7 @@ /** * Test basic BitBlt operation for vertical color stripes buffered image - * with type TYPE_BYTE_BINARY. + * with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2036,7 +2036,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_BYTE_INDEXED. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -2051,7 +2051,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2066,7 +2066,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2081,7 +2081,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2096,7 +2096,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2111,7 +2111,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -2126,7 +2126,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2141,7 +2141,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2156,7 +2156,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2171,7 +2171,7 @@ } /** - * Test basic BitBlt operation for vertical color stripes buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for vertical color stripes buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -2186,7 +2186,7 @@ } /** - * Test basic BitBlt operation for diagonal color stripes buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for diagonal color stripes buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2201,7 +2201,7 @@ } /** - * Test basic BitBlt operation for diagonal color stripes buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for diagonal color stripes buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2216,7 +2216,7 @@ } /** - * Test basic BitBlt operation for diagonal color stripes buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for diagonal color stripes buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -2232,7 +2232,7 @@ /** * Test basic BitBlt operation for diagonal color stripes buffered image - * with type TYPE_BYTE_BINARY. + * with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2248,7 +2248,7 @@ /** * Test basic BitBlt operation for diagonal color stripes buffered image - * with type TYPE_BYTE_INDEXED. + * with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -2263,7 +2263,7 @@ } /** - * Test basic BitBlt operation for diagonal color stripes buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for diagonal color stripes buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2278,7 +2278,7 @@ } /** - * Test basic BitBlt operation for diagonal color stripes buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for diagonal color stripes buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2293,7 +2293,7 @@ } /** - * Test basic BitBlt operation for diagonal color stripes buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for diagonal color stripes buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image From jvanek at redhat.com Tue Jul 15 12:39:49 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 15 Jul 2014 14:39:49 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: References: Message-ID: <53C52115.4090807@redhat.com> On 06/10/2014 03:57 AM, Adam Domurad wrote: > helpcrypto helpcrypto writes: > >> >> >> >> >> >> Hi all. >> Last days I have seen a couple of sources claiming (Google) Chrome and > (Mozilla) Firefox are going to abandon NPAPI and start using Peeper plugins. > > No. Google Chrome is abandoning NPAPI in favour of Google Native Client -- > something *very* different in philosophy. Flash is currently the sole > *special exception* that is allowed to use PPAPI (Pepper)! > > I repeat: Supporting PPAPI will *not* help icedtea-web run on > Chrome/Chromium unless icedtea-web also has this special exceptional > treatment! This is possible by patching Chromium I presume -- but, > unfortunately, not a trivial matter. Hi Adam! Where you got this impression. I made some digging and it seems that PPAPI is,and wil remain in chrome/chromium I also checked the api - https://developer.chrome.com/native-client/pepper_stable/ - which is proclaimed as stbale. And it looks quite ok. If FireBreath api is running both under NPAPI and PAPER api, it would be the good way then. J > >> Is Icetea "ready" for that possible change? > > Since we're being clear -- icedtea is a polite way of saying 'Java'; there > is nothing wrong with Icedtea. *icedtea-web* is not ready for this change -- > but that is simply because no NPAPI plugin is. > >> Will all my applets fail to work next year? (as they are doing with latest > Oracle releases) > > Sadly -- yes, they will fail. As far as I can see, Google Chrome simply does > not want to plugins to interact with the operating system, even under the > new 'Google Native Client' plugin architecture. Oracle may be more lucky > (re: special treatment like Flash). > > Check out https://developer.chrome.com/native-client/faq -> > > "If I want direct access to the OS, should I use Native Client? > > No?Native Client does not provide direct access to the OS or devices, or > otherwise bypass the JavaScript security model. For more information, see > later sections of this FAQ. > " > > I might have taken this up if it was a 'simple' matter of a NPAPI <-> PPAPI > bridge (such things do exist, at least in part, from some google-work). But > it's a bit hopeless with Google Native Client. At least -- it needs serious > thought and work. > >> Thanks for the info! >> > > Happy hacking, > -Adam > From helpcrypto at gmail.com Tue Jul 15 13:22:05 2014 From: helpcrypto at gmail.com (helpcrypto helpcrypto) Date: Tue, 15 Jul 2014 15:22:05 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: References: Message-ID: Hi Adam. Havent replied you in a while! On Tue, Jun 10, 2014 at 3:57 AM, Adam Domurad wrote: > helpcrypto helpcrypto writes: > > This was a mail from november 2013, many things have changed since then... > > Hi all. > > Last days I have seen a couple of sources claiming (Google) Chrome and > (Mozilla) Firefox are going to abandon NPAPI and start using Peeper > plugins. > > No. Google Chrome is abandoning NPAPI in favour of Google Native Client -- > something *very* different in philosophy. Flash is currently the sole > *special exception* that is allowed to use PPAPI (Pepper)! > > I repeat: Supporting PPAPI will *not* help icedtea-web run on > Chrome/Chromium unless icedtea-web also has this special exceptional > treatment! This is possible by patching Chromium I presume -- but, > unfortunately, not a trivial matter. > Mozilla said they are going to continue supporting NPAPI. As NaCi doesnt have "privileged access" neither, PPAPI wont be a solution for MY needs Perhaps Webcrypto... I might have taken this up if it was a 'simple' matter of a NPAPI <-> PPAPI > bridge (such things do exist, at least in part, from some google-work). But > it's a bit hopeless with Google Native Client. At least -- it needs serious > thought and work. > IMHO, it appears Java for Web (except JNLP, which actually isnt "for Web") is dead as we know it for Google. Long live the applets! -------------- next part -------------- An HTML attachment was scrubbed... URL: From jkang at redhat.com Tue Jul 15 14:10:42 2014 From: jkang at redhat.com (Jie Kang) Date: Tue, 15 Jul 2014 10:10:42 -0400 (EDT) Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <1065623602.8260157.1405432815627.JavaMail.zimbra@redhat.com> Message-ID: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> Hello, This patch resolves the bug here http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 Characters such as '?' were not appearing in the Java Console due to the implementation of TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion ignoring the fact that the encodings involve multi-byte characters. Also, as far as I can tell the StringBuffer is not used by multiple threads and has been replaced by StringBuilder (see http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) Regards, -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: console-1858.patch Type: text/x-patch Size: 1636 bytes Desc: not available URL: From jvanek at redhat.com Tue Jul 15 14:22:23 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 15 Jul 2014 16:22:23 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> Message-ID: <53C5391F.3040509@redhat.com> On 07/15/2014 04:10 PM, Jie Kang wrote: > Hello, > > This patch resolves the bug here http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 > > Characters such as '?' were not appearing in the Java Console due to the implementation of TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion ignoring the fact that the encodings involve multi-byte characters. > > Also, as far as I can tell the StringBuffer is not used by multiple threads and has been replaced by StringBuilder (see http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) > > > Regards, > Hi! I like this patch! Few nits: This willneed backport to 1.5. Although I strongly agree with StringBuffer->StringBuilder change, I would be more happy if 1.5 donot get this change, but stays with Buffer (???). + private void appendString(String s) { + string.append(s); + flushLog(); + } Why are you flushing there? I thing the flushing is done right. Have you encountered some case when some logs were missing? @@ -90,9 +90,11 @@ } else if (len == 0) { return; } - for (int i = 0; i < len; i++) { - appendChar(b[off + i]); + byte[] offsetString = new byte[len]; + for (int i=0; i References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> Message-ID: <53C53C13.3020502@redhat.com> On 07/15/2014 04:10 PM, Jie Kang wrote: > Hello, > > This patch resolves the bug here http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 > > Characters such as '?' were not appearing in the Java Console due to the implementation of TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion ignoring the fact that the encodings involve multi-byte characters. > > Also, as far as I can tell the StringBuffer is not used by multiple threads and has been replaced by StringBuilder (see http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) > > > Regards, > Also please, push the cosmetic changes private void appendChar(int b) { - if ( b <= 0 || b == '\n'){ + if ( b <= 0 || b == '\n'){ flushLog(); } else { - string.append((char)b); + string.append((char) b); } } as separate changeset. You may also remove all unusde/same package imports from this class meanwhile. It will be ok for head and 1.5. J. From jvanek at redhat.com Tue Jul 15 14:45:08 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 15 Jul 2014 16:45:08 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C5391F.3040509@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C5391F.3040509@redhat.com> Message-ID: <53C53E74.70401@redhat.com> On 07/15/2014 04:22 PM, Jiri Vanek wrote: > On 07/15/2014 04:10 PM, Jie Kang wrote: >> Hello, >> >> This patch resolves the bug here http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 >> >> Characters such as '?' were not appearing in the Java Console due to the implementation of >> TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion ignoring the fact that >> the encodings involve multi-byte characters. >> >> Also, as far as I can tell the StringBuffer is not used by multiple threads and has been replaced >> by StringBuilder (see http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) >> >> >> Regards, >> > > > Hi! > > I like this patch! > > Few nits: > > > This willneed backport to 1.5. Although I strongly agree with StringBuffer->StringBuilder change, I > would be more happy if 1.5 donot get this change, but stays with Buffer (???). > > > + private void appendString(String s) { > + string.append(s); > + flushLog(); > + } > > Why are you flushing there? I thing the flushing is done right. Have you encountered some case when > some logs were missing? > > @@ -90,9 +90,11 @@ > } else if (len == 0) { > return; > } > - for (int i = 0; i < len; i++) { > - appendChar(b[off + i]); > + byte[] offsetString = new byte[len]; > + for (int i=0; i + offsetString[i] = b[off+i]; > } > + appendString(new String(offsetString)); > super.write(b, off, len); > } > > > Looking onto this, I'mnot sure how correct it is. I'm a bit afraid it may not handle various > encoding correctly (/me must try and check) ). Also I need to check the performancy here. > > > And most uncomfortable nit last: > You can see that teeOutputStream is lacking unittests. This is great opportunity to add some. And > also cover the 1858. > > > ty! > > J. > Ok. I looked a bit more inside, and I might be wrong, but this do not seam to me complete fix. First issue - you fixed only write(byte[] b, int off, int len) { but the void write(int b) { maybe affected in same way. Also the write(byte[] b, int off, int len) bay end in middle of character. I think the only correct solution here is to have bytebuffer, to append individidual bytes, and once the last byte is \n (yes it have its just number) then pretend it is line-end, and convert whole bytebuffer to String. (and yes, probably stay with platform default encoding) I think it needs physical redesign of this class. I'm not sure if my suggestion is overkilling, or if I'm not judging your approach wrongly. I would be happy for more voices and sorry if I do. J. ps: this doubles the need of unittests. From andrew at icedtea.classpath.org Tue Jul 15 14:53:52 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 14:53:52 +0000 Subject: /hg/release/icedtea6-1.13: S7027300, RH1098399: Unsynchronized H... Message-ID: changeset a80478e9e6ee in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=a80478e9e6ee author: Andrew John Hughes date: Wed May 28 12:25:46 2014 +0100 S7027300, RH1098399: Unsynchronized HashMap access causes endless loop 2014-05-22 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * NEWS: Updated. * patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch: Backport fix to replace HashMap usage with ConcurrentHashMap, avoiding deadlock. diffstat: ChangeLog | 9 ++ Makefile.am | 3 +- NEWS | 3 + patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch | 33 ++++++++++ 4 files changed, 47 insertions(+), 1 deletions(-) diffs (79 lines): diff -r c48649311b8f -r a80478e9e6ee ChangeLog --- a/ChangeLog Fri May 09 13:19:29 2014 +0200 +++ b/ChangeLog Wed May 28 12:25:46 2014 +0100 @@ -1,3 +1,12 @@ +2014-05-22 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * NEWS: Updated. + * patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch: + Backport fix to replace HashMap usage with ConcurrentHashMap, + avoiding deadlock. + 2014-05-09 Jiri Vanek * Makefile.am: (add-nss-debug.stamp): fixed ECJ_BUILD_OUTPUT_DIR diff -r c48649311b8f -r a80478e9e6ee Makefile.am --- a/Makefile.am Fri May 09 13:19:29 2014 +0200 +++ b/Makefile.am Wed May 28 12:25:46 2014 +0100 @@ -611,7 +611,8 @@ patches/windows-jdk-sizecalc.patch \ patches/shark_fixes_from_8003868.patch \ patches/8003992_support_6.patch \ - patches/shark-drop_compile_method_arg_following_7083786.patch + patches/shark-drop_compile_method_arg_following_7083786.patch \ + patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r c48649311b8f -r a80478e9e6ee NEWS --- a/NEWS Fri May 09 13:19:29 2014 +0200 +++ b/NEWS Wed May 28 12:25:46 2014 +0100 @@ -14,6 +14,9 @@ New in release 1.13.4 (2014-07-XX): +* Backports + - S7027300, RH1098399: Unsynchronized HashMap access causes endless loop + New in release 1.13.3 (2014-04-15): * Security fixes diff -r c48649311b8f -r a80478e9e6ee patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch Wed May 28 12:25:46 2014 +0100 @@ -0,0 +1,33 @@ +# HG changeset patch +# User vkarnauk +# Date 1340286118 -14400 +# Thu Jun 21 17:41:58 2012 +0400 +# Node ID f71b6117fd7bbb13ed4c1f68ace873695edd49cb +# Parent 762ae4a20c8b115e5cb486c5204d8bdee747ee59 +7027300: Unsynchronized HashMap access causes endless loop +Reviewed-by: bae, prr + +diff -r 762ae4a20c8b -r f71b6117fd7b src/share/classes/sun/font/SunLayoutEngine.java +--- openjdk/jdk/src/share/classes/sun/font/SunLayoutEngine.java Thu Jun 21 14:19:12 2012 +0400 ++++ openjdk/jdk/src/share/classes/sun/font/SunLayoutEngine.java Thu Jun 21 17:41:58 2012 +0400 +@@ -33,7 +33,7 @@ + import sun.font.GlyphLayout.*; + import java.awt.geom.Point2D; + import java.lang.ref.SoftReference; +-import java.util.HashMap; ++import java.util.concurrent.ConcurrentHashMap; + import java.util.Locale; + + /* +@@ -129,9 +129,9 @@ + + // !!! don't need this unless we have more than one sun layout engine... + public LayoutEngine getEngine(LayoutEngineKey key) { +- HashMap cache = (HashMap)cacheref.get(); ++ ConcurrentHashMap cache = (ConcurrentHashMap)cacheref.get(); + if (cache == null) { +- cache = new HashMap(); ++ cache = new ConcurrentHashMap(); + cacheref = new SoftReference(cache); + } + From gitne at gmx.de Tue Jul 15 15:07:36 2014 From: gitne at gmx.de (Jacob Wisor) Date: Tue, 15 Jul 2014 17:07:36 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> Message-ID: <53C543B8.6040707@gmx.de> On 07/15/2014 04:10, Jie Kang wrote:> Hello, > > This patch resolves the bug here http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 > > Characters such as '?' were not appearing in the Java Console due to the implementation of TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion ignoring the fact that the encodings involve multi-byte characters. > > Also, as far as I can tell the StringBuffer is not used by multiple threads and has been replaced by StringBuilder (see http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) No, I would rather advise to stay with StringBuffer. There is no need for StringBuilder as long as TeeOutputStream is thread-safe. Generally speaking, what this code should be doing is this: import java.util.Arrays; [...] this.string.append(new String(Arrays.copyOfRange(b, off, off + len))); Flushing on every '\n' can also be incorporated. ;-) Furthermore, you may drop all of the initial parameter checking: - if (b == null) { - throw new NullPointerException(); - } else if ((off < 0) || (off > b.length) || (len < 0) - || ((off + len) > b.length) || ((off + len) < 0)) { - throw new IndexOutOfBoundsException(); - } else if (len == 0) { - return; - } + if (len == 0) return; Working with these parameters will inevitably generate the correct exceptions. This is the beauty of RuntimeExceptions; You just do stuff and the JRE throws them for you. No double checking required. ;-) Additional parameter checks in public methods are only required when they may have an illegal effect on the internal state of the (this) object or when you want to give additional information on an error to the programmer. Jacob From aazores at redhat.com Tue Jul 15 15:12:07 2014 From: aazores at redhat.com (Andrew Azores) Date: Tue, 15 Jul 2014 11:12:07 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <20140714150959.GA11827@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> Message-ID: <53C544C7.30303@redhat.com> On 07/14/2014 11:09 AM, Omair Majid wrote: > * Andrew Azores [2014-07-14 10:07]: >> On 07/03/2014 05:14 PM, Andrew Azores wrote: >> >> On 07/03/2014 05:02 PM, Omair Majid wrote: >> >> * Andrew Azores [2014-07-03 16:55]: >> >> + codebaseHost = new URI(codebase.getScheme(), codebase.getUserInfo(), codebase.getHost(), -1, null, null, null); >> >> Why -1 for port? This seems strange compared to the same-origin-policy. >> >> Thanks, >> Omair >> >> >> >> It doesn't seem to be specified for the SocketPermission granted in >> SecurityDesc either - downloadHost is just the hostname part of the >> codebase URL AFAICT. So I haven't specified a port for the URLPermission so >> as to not be more restrictive than the SocketPermission. > That sounds like a bug. This should be fixed. Which part? Just the URLPermission's port, or the downloadHost itself? > >> There's also this in the URLPermission docs: >> >> portrange is used to specify a port number, or a bounded or unbounded >> range of ports that this permission applies to. If portrange is absent >> or invalid, then a default port number is assumed if the scheme is http >> (default 80) or https (default 443). No default is assumed for other >> schemes. A wildcard may be specified which means all ports. > Won't this break applets and webstart applications that run the > webserver on non-default ports? For example, [1] uses port 9090. > > Thanks, > Omair > > [1] http://www.symantec.com/connect/forums/sepm-console-unable-launch-application-after-java-upgrade-7u51 > Okay, the attached patch explicitly uses the "wildcard port" for URLPermission. I also added some new tests and cleaned up the existing SecurityDesc tests. Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: urlpermissions-5.patch Type: text/x-patch Size: 11605 bytes Desc: not available URL: From aazores at redhat.com Tue Jul 15 15:14:15 2014 From: aazores at redhat.com (Andrew Azores) Date: Tue, 15 Jul 2014 11:14:15 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53C544C7.30303@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> Message-ID: <53C54547.5090002@redhat.com> On 07/15/2014 11:12 AM, Andrew Azores wrote: > On 07/14/2014 11:09 AM, Omair Majid wrote: >> * Andrew Azores [2014-07-14 10:07]: >>> On 07/03/2014 05:14 PM, Andrew Azores wrote: >>> >>> On 07/03/2014 05:02 PM, Omair Majid wrote: >>> >>> * Andrew Azores [2014-07-03 16:55]: >>> >>> + codebaseHost = new >>> URI(codebase.getScheme(), codebase.getUserInfo(), >>> codebase.getHost(), -1, null, null, null); >>> >>> Why -1 for port? This seems strange compared to the >>> same-origin-policy. >>> >>> Thanks, >>> Omair >>> >>> >>> >>> It doesn't seem to be specified for the SocketPermission >>> granted in >>> SecurityDesc either - downloadHost is just the hostname part of >>> the >>> codebase URL AFAICT. So I haven't specified a port for the >>> URLPermission so >>> as to not be more restrictive than the SocketPermission. >> That sounds like a bug. This should be fixed. > > Which part? Just the URLPermission's port, or the downloadHost itself? > >> >>> There's also this in the URLPermission docs: >>> >>> portrange is used to specify a port number, or a bounded or >>> unbounded >>> range of ports that this permission applies to. If >>> portrange is absent >>> or invalid, then a default port number is assumed if the >>> scheme is http >>> (default 80) or https (default 443). No default is assumed >>> for other >>> schemes. A wildcard may be specified which means all ports. >> Won't this break applets and webstart applications that run the >> webserver on non-default ports? For example, [1] uses port 9090. >> >> Thanks, >> Omair >> >> [1] >> http://www.symantec.com/connect/forums/sepm-console-unable-launch-application-after-java-upgrade-7u51 >> > > Okay, the attached patch explicitly uses the "wildcard port" for > URLPermission. I also added some new tests and cleaned up the existing > SecurityDesc tests. > > Thanks, > Whoops sorry left some printlns in there, ignore them please. Thanks, -- Andrew A From jvanek at redhat.com Tue Jul 15 15:16:56 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 15 Jul 2014 17:16:56 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C53E74.70401@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C5391F.3040509@redhat.com> <53C53E74.70401@redhat.com> Message-ID: <53C545E8.5050704@redhat.com> On 07/15/2014 04:45 PM, Jiri Vanek wrote: > On 07/15/2014 04:22 PM, Jiri Vanek wrote: >> On 07/15/2014 04:10 PM, Jie Kang wrote: >>> Hello, >>> >>> This patch resolves the bug here http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 >>> >>> Characters such as '?' were not appearing in the Java Console due to the implementation of >>> TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion ignoring the fact that >>> the encodings involve multi-byte characters. >>> >>> Also, as far as I can tell the StringBuffer is not used by multiple threads and has been replaced >>> by StringBuilder (see http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) >>> >>> >>> Regards, >>> >> >> >> Hi! >> >> I like this patch! >> >> Few nits: >> >> >> This willneed backport to 1.5. Although I strongly agree with StringBuffer->StringBuilder change, I >> would be more happy if 1.5 donot get this change, but stays with Buffer (???). >> >> >> + private void appendString(String s) { >> + string.append(s); >> + flushLog(); >> + } >> >> Why are you flushing there? I thing the flushing is done right. Have you encountered some case when >> some logs were missing? >> >> @@ -90,9 +90,11 @@ >> } else if (len == 0) { >> return; >> } >> - for (int i = 0; i < len; i++) { >> - appendChar(b[off + i]); >> + byte[] offsetString = new byte[len]; >> + for (int i=0; i> + offsetString[i] = b[off+i]; >> } >> + appendString(new String(offsetString)); >> super.write(b, off, len); >> } >> >> >> Looking onto this, I'mnot sure how correct it is. I'm a bit afraid it may not handle various >> encoding correctly (/me must try and check) ). Also I need to check the performancy here. >> >> >> And most uncomfortable nit last: >> You can see that teeOutputStream is lacking unittests. This is great opportunity to add some. And >> also cover the 1858. >> >> >> ty! >> >> J. >> > > Ok. I looked a bit more inside, and I might be wrong, but this do not seam to me complete fix. > > First issue - you fixed only > > write(byte[] b, int off, int len) { > > but the > > void write(int b) { > > maybe affected in same way. > > Also the write(byte[] b, int off, int len) bay end in middle of character. > > I think the only correct solution here is to have bytebuffer, to append individidual bytes, and once > the last byte is \n (yes it have its just number) then pretend it is line-end, and convert whole > bytebuffer to String. (and yes, probably stay with platform default encoding) > > I think it needs physical redesign of this class. > > > I'm not sure if my suggestion is overkilling, or if I'm not judging your approach wrongly. I would > be happy for more voices and sorry if I do. > > J. > > ps: this doubles the need of unittests. Fwd - the lists are broken somehow:( From omajid at redhat.com Tue Jul 15 15:19:22 2014 From: omajid at redhat.com (Omair Majid) Date: Tue, 15 Jul 2014 11:19:22 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53C544C7.30303@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> Message-ID: <20140715151922.GA613@redhat.com> * Andrew Azores [2014-07-15 11:12]: > Which part? Just the URLPermission's port, or the downloadHost itself? The port: it should match the port where the jars were downloaded from. > Okay, the attached patch explicitly uses the "wildcard port" for > URLPermission. I also added some new tests and cleaned up the existing > SecurityDesc tests. I think it would be more correct to match the source port (the port where the jars were downloaded from). The patch seems more lax than what the Same-Origin-Policy specifies. It's okay for now, but it should be locked down further. Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From jvanek at redhat.com Tue Jul 15 15:25:48 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 15 Jul 2014 17:25:48 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C543B8.6040707@gmx.de> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> Message-ID: <53C547FC.2070104@redhat.com> On 07/15/2014 05:07 PM, Jacob Wisor wrote: > On 07/15/2014 04:10, Jie Kang wrote:> Hello, > > > > This patch resolves the bug here http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 > > > > Characters such as '?' were not appearing in the Java Console due to the implementation of > TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion ignoring the fact that > the encodings involve multi-byte characters. > > > > Also, as far as I can tell the StringBuffer is not used by multiple threads and has been replaced > by StringBuilder (see http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) > > No, I would rather advise to stay with StringBuffer. There is no need for StringBuilder as long as > TeeOutputStream is thread-safe. TeaOutputStreamitself is not thread safe, but all acess to the "string" are(should! be) already synchronised so it should be ok to move to StringBuilder, whih have much less overhead. > > Generally speaking, what this code should be doing is this: > > import java.util.Arrays; > [...] > this.string.append(new String(Arrays.copyOfRange(b, off, off + len))); > > Flushing on every '\n' can also be incorporated. ;-) See my much longer reply :) - http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-July/028521.html Maybe you have arguments why write(int b) should not be fixed to. And maybe you also know if write(int, int, int[], ...) may end in middle of character. I think it may. > > Furthermore, you may drop all of the initial parameter checking: > > - if (b == null) { > - throw new NullPointerException(); > - } else if ((off < 0) || (off > b.length) || (len < 0) > - || ((off + len) > b.length) || ((off + len) < 0)) { > - throw new IndexOutOfBoundsException(); > - } else if (len == 0) { > - return; > - } > + if (len == 0) return; > > Working with these parameters will inevitably generate the correct exceptions. This is the beauty of > RuntimeExceptions; You just do stuff and the JRE throws them for you. No double checking required. ;-) > Additional parameter checks in public methods are only required when they may have an illegal effect > on the internal state of the (this) object or when you want to give additional information on an > error to the programmer. Yes. I was looking onto this myself. Thank you for describing this. From aazores at redhat.com Tue Jul 15 15:44:19 2014 From: aazores at redhat.com (Andrew Azores) Date: Tue, 15 Jul 2014 11:44:19 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <20140715151922.GA613@redhat.com> References: <53B42FFE.6030102@redhat.com> <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> <20140715151922.GA613@redhat.com> Message-ID: <53C54C53.50105@redhat.com> On 07/15/2014 11:19 AM, Omair Majid wrote: > * Andrew Azores [2014-07-15 11:12]: >> Which part? Just the URLPermission's port, or the downloadHost itself? > The port: it should match the port where the jars were downloaded from. Hmm. Does JNLPFile#getCodebase()#toURI()#normalize()#getPort() sound right? That's what it boils down to in this patch now. I don't know of anywhere where we keep a more explicit reference to the port that was actually used to download the resources, but I suppose that would generally be either that same port, or if not specified, then just the default port for the protocol, so the same thing as this. Right? > >> Okay, the attached patch explicitly uses the "wildcard port" for >> URLPermission. I also added some new tests and cleaned up the existing >> SecurityDesc tests. > I think it would be more correct to match the source port (the port > where the jars were downloaded from). The patch seems more lax than what > the Same-Origin-Policy specifies. It's okay for now, but it should be > locked down further. > > Thanks, > Omair > Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: urlpermissions-6.patch Type: text/x-patch Size: 12299 bytes Desc: not available URL: From gitne at gmx.de Tue Jul 15 15:53:15 2014 From: gitne at gmx.de (Jacob Wisor) Date: Tue, 15 Jul 2014 17:53:15 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C547FC.2070104@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> <53C547FC.2070104@redhat.com> Message-ID: <53C54E6B.8050109@gmx.de> On 07/15/2014 05:25 PM, Jiri Vanek wrote: > On 07/15/2014 05:07 PM, Jacob Wisor wrote: >> On 07/15/2014 04:10 PM, Jie Kang wrote: > Hello, >> > >> > This patch resolves the bug here >> http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 >> > >> > Characters such as '?' were not appearing in the Java Console due to the >> implementation of >> TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion >> ignoring the fact that >> the encodings involve multi-byte characters. >> > >> > Also, as far as I can tell the StringBuffer is not used by multiple threads >> and has been replaced >> by StringBuilder (see >> http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) >> >> No, I would rather advise to stay with StringBuffer. There is no need for >> StringBuilder as long as >> TeeOutputStream is thread-safe. > > TeaOutputStreamitself is not thread safe, but all acess to the "string" > are(should! be) already synchronised so it should be ok to move to > StringBuilder, whih have much less overhead. > >> >> Generally speaking, what this code should be doing is this: >> >> import java.util.Arrays; >> [...] >> this.string.append(new String(Arrays.copyOfRange(b, off, off + len))); >> >> Flushing on every '\n' can also be incorporated. ;-) > > See my much longer reply :) - > http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-July/028521.html > > Maybe you have arguments why write(int b) should not be fixed to. I have not said a word about write(int b). ;-) Please read carefully. As matter of fact, I cannot see much that needs fixing in write(int). It flush()es after every '\n' as write(byte[],int,int) does. Well, you could do String.valueOf(b) before appending though. ;-) > And maybe you also know if write(int, int, int[], ...) may end in middle of character. I > think it may. Yes, this can happen. Or, the offset may point to just some part of a character multi-byte encoding sequence. But, this is not for us to worry about. The caller should worry about it and make sure to pass the correct offset and length. This is something developers need to take into account when working with multi-byte encoded character sequences (or strings). Jacob From jvanek at redhat.com Tue Jul 15 15:58:13 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 15 Jul 2014 17:58:13 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C54E6B.8050109@gmx.de> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> <53C547FC.2070104@redhat.com> <53C54E6B.8050109@gmx.de> Message-ID: <53C54F95.3010703@redhat.com> On 07/15/2014 05:53 PM, Jacob Wisor wrote: > On 07/15/2014 05:25 PM, Jiri Vanek wrote: >> On 07/15/2014 05:07 PM, Jacob Wisor wrote: >>> On 07/15/2014 04:10 PM, Jie Kang wrote: >> Hello, >>> > >>> > This patch resolves the bug here >>> http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 >>> > >>> > Characters such as '?' were not appearing in the Java Console due to the >>> implementation of >>> TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion >>> ignoring the fact that >>> the encodings involve multi-byte characters. >>> > >>> > Also, as far as I can tell the StringBuffer is not used by multiple threads >>> and has been replaced >>> by StringBuilder (see >>> http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) >>> >>> No, I would rather advise to stay with StringBuffer. There is no need for >>> StringBuilder as long as >>> TeeOutputStream is thread-safe. >> >> TeaOutputStreamitself is not thread safe, but all acess to the "string" >> are(should! be) already synchronised so it should be ok to move to >> StringBuilder, whih have much less overhead. >> >>> >>> Generally speaking, what this code should be doing is this: >>> >>> import java.util.Arrays; >>> [...] >>> this.string.append(new String(Arrays.copyOfRange(b, off, off + len))); >>> >>> Flushing on every '\n' can also be incorporated. ;-) >> >> See my much longer reply :) - >> http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-July/028521.html >> >> Maybe you have arguments why write(int b) should not be fixed to. > > I have not said a word about write(int b). ;-) Please read carefully. I know. But I did (and was not sure bout it) > > As matter of fact, I cannot see much that needs fixing in write(int). It flush()es after every '\n' > as write(byte[],int,int) does. Well, you could do String.valueOf(b) before appending though. ;-) ValueOf will not help when just one byte of multibyte char arrives (???). > >> And maybe you also know if write(int, int, int[], ...) may end in middle of character. I >> think it may. > > Yes, this can happen. Or, the offset may point to just some part of a character multi-byte encoding > sequence. But, this is not for us to worry about. The caller should worry about it and make sure to > pass the correct offset and length. This is something developers need to take into account when > working with multi-byte encoded character sequences (or strings). > I doubt they do :) Anyway - now I'm moreover sure that go with ByteBuffer instead of StringBuilder/Buffer and convert it to string once \n or -1 arrives is correct thing to do. J. From domuradical at gmail.com Tue Jul 15 16:05:11 2014 From: domuradical at gmail.com (Adam Domurad) Date: Tue, 15 Jul 2014 18:05:11 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: <53C52115.4090807@redhat.com> References: <53C52115.4090807@redhat.com> Message-ID: On Tue, Jul 15, 2014 at 2:39 PM, Jiri Vanek wrote: > > On 06/10/2014 03:57 AM, Adam Domurad wrote: >> >> helpcrypto helpcrypto writes: >> >>> >>> >>> >>> >>> >>> Hi all. >>> Last days I have seen a couple of sources claiming (Google) Chrome and >> >> (Mozilla) Firefox are going to abandon NPAPI and start using Peeper plugins. >> >> No. Google Chrome is abandoning NPAPI in favour of Google Native Client -- >> something *very* different in philosophy. Flash is currently the sole >> *special exception* that is allowed to use PPAPI (Pepper)! >> >> I repeat: Supporting PPAPI will *not* help icedtea-web run on >> Chrome/Chromium unless icedtea-web also has this special exceptional >> treatment! This is possible by patching Chromium I presume -- but, >> unfortunately, not a trivial matter. > > > Hi Adam! > > Where you got this impression. > > I made some digging and it seems that PPAPI is,and wil remain in chrome/chromium > I also checked the api - https://developer.chrome.com/native-client/pepper_stable/ - which is proclaimed as stbale. And it looks quite ok. > > If FireBreath api is running both under NPAPI and PAPER api, it would be the good way then. Native client has the same sandbox as a Javascript client. Google allows PPAPI plugins that aren't in this sandbox, but must be selectively installed, and is generally not feasible for icedtea-web. Furthermore, I do not think FireBreath API supports Pepper/PPAPI, for example, check out http://www.firebreath.org/display/documentation/Browser+Plugins+in+a+post-NPAPI+world They claim: "We have confirmed that PPAPI will not work because while Chrome supports it they don't provide any way for third parties to install PPAPI plugins. The only method of doing so involves a command-line argument, which is unsuitable for most purposes." If everything that icedtea-web needs is available in Google Native Client then maybe it is OK, but I have not got this impression. Unfortunately, as icedtea-web maintainer, I must return the burden of proof on you. Relaxing in Poland, -Adam > J > >> >>> Is Icetea "ready" for that possible change? >> >> >> Since we're being clear -- icedtea is a polite way of saying 'Java'; there >> is nothing wrong with Icedtea. *icedtea-web* is not ready for this change -- >> but that is simply because no NPAPI plugin is. >> >>> Will all my applets fail to work next year? (as they are doing with latest >> >> Oracle releases) >> >> Sadly -- yes, they will fail. As far as I can see, Google Chrome simply does >> not want to plugins to interact with the operating system, even under the >> new 'Google Native Client' plugin architecture. Oracle may be more lucky >> (re: special treatment like Flash). >> >> Check out https://developer.chrome.com/native-client/faq -> >> >> "If I want direct access to the OS, should I use Native Client? >> >> No?Native Client does not provide direct access to the OS or devices, or >> otherwise bypass the JavaScript security model. For more information, see >> later sections of this FAQ. >> " >> >> I might have taken this up if it was a 'simple' matter of a NPAPI <-> PPAPI >> bridge (such things do exist, at least in part, from some google-work). But >> it's a bit hopeless with Google Native Client. At least -- it needs serious >> thought and work. >> >>> Thanks for the info! >>> >> >> Happy hacking, >> -Adam >> > From gitne at gmx.de Tue Jul 15 16:21:50 2014 From: gitne at gmx.de (Jacob Wisor) Date: Tue, 15 Jul 2014 18:21:50 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C54F95.3010703@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> <53C547FC.2070104@redhat.com> <53C54E6B.8050109@gmx.de> <53C54F95.3010703@redhat.com> Message-ID: <53C5551E.20300@gmx.de> W dniu 15.07.2014 17:58, Jiri Vanek pisze: > On 07/15/2014 05:53 PM, Jacob Wisor wrote: >> On 07/15/2014 05:25 PM, Jiri Vanek wrote: >>> On 07/15/2014 05:07 PM, Jacob Wisor wrote: >>>> On 07/15/2014 04:10 PM, Jie Kang wrote: >>> Hello, >>>> > >>>> > This patch resolves the bug here >>>> http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1858 >>>> > >>>> > Characters such as '?' were not appearing in the Java Console due to the >>>> implementation of >>>> TeeOutputStream appending bytes to a StringBuffer in a byte-by-byte fashion >>>> ignoring the fact that >>>> the encodings involve multi-byte characters. >>>> > >>>> > Also, as far as I can tell the StringBuffer is not used by multiple threads >>>> and has been replaced >>>> by StringBuilder (see >>>> http://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html) >>>> >>>> No, I would rather advise to stay with StringBuffer. There is no need for >>>> StringBuilder as long as >>>> TeeOutputStream is thread-safe. >>> >>> TeaOutputStreamitself is not thread safe, but all acess to the "string" >>> are(should! be) already synchronised so it should be ok to move to >>> StringBuilder, whih have much less overhead. >>> >>>> >>>> Generally speaking, what this code should be doing is this: >>>> >>>> import java.util.Arrays; >>>> [...] >>>> this.string.append(new String(Arrays.copyOfRange(b, off, off + len))); >>>> >>>> Flushing on every '\n' can also be incorporated. ;-) >>> >>> See my much longer reply :) - >>> http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-July/028521.html >>> >>> Maybe you have arguments why write(int b) should not be fixed to. >> >> I have not said a word about write(int b). ;-) Please read carefully. > > I know. But I did (and was not sure bout it) >> >> As matter of fact, I cannot see much that needs fixing in write(int). It >> flush()es after every '\n' >> as write(byte[],int,int) does. Well, you could do String.valueOf(b) before >> appending though. ;-) > > ValueOf will not help when just one byte of multibyte char arrives (???). Oh now I understand what you mean. Good point! Yeah, then using ByteBuffer first and converting it to a String on a flush() is most probably the best thing to do. Same applies for write(byte[],int,int). Jacob From omajid at redhat.com Tue Jul 15 16:54:36 2014 From: omajid at redhat.com (Omair Majid) Date: Tue, 15 Jul 2014 12:54:36 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53C54C53.50105@redhat.com> References: <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> <20140715151922.GA613@redhat.com> <53C54C53.50105@redhat.com> Message-ID: <20140715165436.GB613@redhat.com> * Andrew Azores [2014-07-15 11:44]: > On 07/15/2014 11:19 AM, Omair Majid wrote: > >* Andrew Azores [2014-07-15 11:12]: > >>Which part? Just the URLPermission's port, or the downloadHost itself? > >The port: it should match the port where the jars were downloaded from. > > Hmm. Does JNLPFile#getCodebase()#toURI()#normalize()#getPort() sound right? > That's what it boils down to in this patch now. I don't know of anywhere > where we keep a more explicit reference to the port that was actually used > to download the resources, but I suppose that would generally be either that > same port, or if not specified, then just the default port for the protocol, > so the same thing as this. Right? I believe you are correct, but my knowledge of the internals is a bit old. Maybe check how that download url for the resource is computed Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From fcassia at gmail.com Tue Jul 15 18:12:31 2014 From: fcassia at gmail.com (Fernando Cassia) Date: Tue, 15 Jul 2014 15:12:31 -0300 Subject: Icedtea supports something called "Pepper"? In-Reply-To: References: Message-ID: On Mon, Oct 28, 2013 at 9:15 AM, helpcrypto helpcrypto wrote: > Will all my applets fail to work next year? (as they are doing with latest > Oracle releases) > > Thanks for the info! Your applets fail because surely those are not signed. Please sign your applets. http://www.oracle.com/technetwork/java/javase/tech/java-code-signing-1915323.html "Starting with Java SE 7 Update 21 in April 2013 all Java Applets and Web Start Applications are encouraged to be signed with a trusted certificate. And starting with 7u25, all files must be added to JARs prior to signing." You could also tell your users to check for (and whitelist) your site in the browser?s security settings. FC From jvanek at redhat.com Tue Jul 15 18:15:40 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 15 Jul 2014 20:15:40 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: References: Message-ID: <53C56FCC.6040803@redhat.com> On 07/15/2014 08:12 PM, Fernando Cassia wrote: > On Mon, Oct 28, 2013 at 9:15 AM, helpcrypto helpcrypto > wrote: >> Will all my applets fail to work next year? (as they are doing with latest >> Oracle releases) >> >> Thanks for the info! > > Your applets fail because surely those are not signed. Please sign your applets. Nope. ITW is continuing to run unsigned applets. It jsut warning you more. > > http://www.oracle.com/technetwork/java/javase/tech/java-code-signing-1915323.html > > "Starting with Java SE 7 Update 21 in April 2013 all Java Applets and > Web Start Applications are encouraged to be signed with a trusted > certificate. And starting with 7u25, all files must be added to JARs > prior to signing." > > You could also tell your users to check for (and whitelist) your site > in the browser?s security settings. > J. From fcassia at gmail.com Tue Jul 15 18:18:37 2014 From: fcassia at gmail.com (Fernando Cassia) Date: Tue, 15 Jul 2014 15:18:37 -0300 Subject: Icedtea supports something called "Pepper"? In-Reply-To: <53C56FCC.6040803@redhat.com> References: <53C56FCC.6040803@redhat.com> Message-ID: On Tue, Jul 15, 2014 at 3:15 PM, Jiri Vanek wrote: > Nope. ITW is continuing to run unsigned applets. It jsut warning you more. No, it does not automatically load applets. You?ve got to click to run. Hence "Will all my applets fail to work next year? (as they are doing with latest Oracle releases)" Most people, when faced with non-loading applets, think they "don?t work". You are assuming that people actually follow, read and understand security dialogs. FC -- During times of Universal Deceit, telling the truth becomes a revolutionary act Durante ?pocas de Enga?o Universal, decir la verdad se convierte en un Acto Revolucionario - George Orwell From jkang at redhat.com Tue Jul 15 18:39:04 2014 From: jkang at redhat.com (Jie Kang) Date: Tue, 15 Jul 2014 14:39:04 -0400 (EDT) Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C5551E.20300@gmx.de> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> <53C547FC.2070104@redhat.com> <53C54E6B.8050109@gmx.de> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> Message-ID: <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> Hello, Thanks for the review! Just an update and also addressing some issues you guys pointed out. First of all, I am working on improving the TeeOutputStream and also providing unit tests. Attached is what it looks like so far. Really just need to add unit tests and it will be submitted for review again; I have added responses in-line. >+ private void appendString(String s) { >+ string.append(s); >+ flushLog(); >+ } > >Why are you flushing there? I thing the flushing is done right. Have you encountered some case when >some logs were missing? The reason I chose to flush in write(byte, int, int) was to follow PrintStream's spec for automatic-line flushing. Flushing on new line for write(int) only occurs if automatic-line flushing is enabled and for write(byte, int, int), if automatic-line flushing is enabled, it is always flushed . So if we assume TeeOutputStream has 'automatic-line flushing' then it follows PrintStream's spec. However, in our situation it's probably best to flush on new lines for both write(byte, int, int) and write(int) which is what I have chosen to do. > >>> See my much longer reply :) - > >>> http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-July/028521.html > >>> > >>> Maybe you have arguments why write(int b) should not be fixed to. > >> > >> I have not said a word about write(int b). ;-) Please read carefully. > > > > I know. But I did (and was not sure bout it) > >> > >> As matter of fact, I cannot see much that needs fixing in write(int). It > >> flush()es after every '\n' > >> as write(byte[],int,int) does. Well, you could do String.valueOf(b) before > >> appending though. ;-) > > > > ValueOf will not help when just one byte of multibyte char arrives (???). Correct, good catch though I think this is a really really weird use case if someone ever decides to write multibyte characters byte by byte to the Stream when they can write the multibyte character all at once. Then again, if you read PrintStream's spec it says it will write the byte as is, so we should follow that and not convert it so early. > > Oh now I understand what you mean. Good point! Yeah, then using ByteBuffer > first > and converting it to a String on a flush() is most probably the best thing to > do. Same applies for write(byte[],int,int). ByteBuffer requires a capacity on construction :\ I have chosen to use the ByteArrayOutputStream instead. > > Jacob > -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: console-1858-2.patch Type: text/x-patch Size: 2999 bytes Desc: not available URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 19:42:48 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 19:42:48 +0000 Subject: [Bug 1747] A fatal error caused during using eclipse In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1747 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|critical |normal -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 19:43:47 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 19:43:47 +0000 Subject: [Bug 1747] A fatal error caused during using eclipse In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1747 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |INVALID --- Comment #1 from Andrew John Hughes --- This is a crash in native libsoup code. You should file a bug with Eclipse. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 19:45:46 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 19:45:46 +0000 Subject: [Bug 1867] New: [IcedTea7] Turn the infinality patch off by default Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1867 Bug ID: 1867 Summary: [IcedTea7] Turn the infinality patch off by default Product: IcedTea Version: 2.5.0 Hardware: all OS: All Status: NEW Severity: normal Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org See discussion on PR1839: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1839 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 19:46:15 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 19:46:15 +0000 Subject: [Bug 1867] [IcedTea7] Turn the infinality patch off by default In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1867 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Depends on| |1839 Target Milestone|--- |2.5.1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 19:46:15 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 19:46:15 +0000 Subject: [Bug 1839] [IcedTea7] Provide Infinality Support via fontconfig In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1839 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Blocks| |1867 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 20:04:04 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 20:04:04 +0000 Subject: [Bug 1868] New: [IcedTea7] Avoid x86 workaround when running Zero rather than a JIT Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1868 Bug ID: 1868 Summary: [IcedTea7] Avoid x86 workaround when running Zero rather than a JIT Product: IcedTea Version: 2.5.0 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org See: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-July/028503.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 20:04:35 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 20:04:35 +0000 Subject: [Bug 1868] [IcedTea7] Avoid x86 workaround when running Zero rather than a JIT In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1868 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Target Milestone|--- |2.5.1 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 20:05:52 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 20:05:52 +0000 Subject: [Bug 1869] New: [IcedTea8] Avoid x86 workaround when running Zero rather than a JIT Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1869 Bug ID: 1869 Summary: [IcedTea8] Avoid x86 workaround when running Zero rather than a JIT Product: IcedTea Version: 8-hg Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Dupe of PR1868 for 3.x. See: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-July/028503.html -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 20:06:23 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 20:06:23 +0000 Subject: [Bug 1869] [IcedTea8] Avoid x86 workaround when running Zero rather than a JIT In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1869 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1282 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: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 20:06:23 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 20:06:23 +0000 Subject: [Bug 1282] [TRACKER] IcedTea 3.0.0 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| |1869 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gnu.andrew at redhat.com Tue Jul 15 20:07:49 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Tue, 15 Jul 2014 16:07:49 -0400 (EDT) Subject: [patch] fix zero builds on i386 in openjdk-7 and openjdk-8 In-Reply-To: <53C023FE.5020701@ubuntu.com> References: <53C023FE.5020701@ubuntu.com> Message-ID: <1491900027.10522884.1405454869729.JavaMail.zimbra@redhat.com> ----- Original Message ----- > zero builds are currently broken on i386 in openjdk-7 and openjdk-8 > (icedtea-2.5.0 is affected too). Afaics this workaround is not needed for > zero, > so disabling it. zero test results for hotspot and langtools look ok. > > Matthias > > I've filed bugs for this: 7: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1868 8: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1869 Please do so in future so we can track issues. Mailing list posts can easily get lost. 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 Tue Jul 15 20:25:02 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Tue, 15 Jul 2014 21:25:02 +0100 Subject: [SECURITY] IcedTea 1.13.4 for OpenJDK 6 Released! Message-ID: <20140715202458.GA3966@carrie.the212.com> 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, the ability to build against system libraries and support for alternative virtual machines and architectures beyond those supported by OpenJDK. This release updates our OpenJDK 6 support in the 1.13.x series with the July 2014 security fixes. If you find an issue with the release, 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 release can be found below. What's New? =========== New in release 1.13.4 (2014-07-15): * Security fixes - S8029755, CVE-2014-4209: Enhance subject class - S8030763: Validate global memory allocation - S8031346, CVE-2014-4244: Enhance RSA key handling - S8031540: Introduce document horizon - S8032536: JVM resolves wrong method in some unusual cases - S8033055: Issues in 2d - S8033301, CVE-2014-4266: Build more informative InfoBuilder - S8034267: Probabilistic native crash - S8034272: Do not cram data into CRAM arrays - S8035004, CVE-2014-4252: Provider provides less service - S8035009, CVE-2014-4218: Make Proxy representations consistent - S8035119, CVE-2014-4219: Fix exceptions to bytecode verification - S8035699, CVE-2014-4268: File choosers should be choosier - S8036571: (process) Process process arguments carefully - S8036800: Attribute OOM to correct part of code - S8037046: Validate libraries to be loaded - S8037157: Verify call - S8037076, CVE-2014-2490: Check constant pool constants - S8037162, CVE-2014-4263: More robust DH exchanges - S8037167, CVE-2014-4216: Better method signature resolution - S8039520, CVE-2014-4262: More atomicity of atomic updates * Import of OpenJDK6 b32 - OP32: OpenJDK6-b31 isn't compatible with Windows platform - OJ33: Update copyright headers introduced by the fix for OPENJDK6-32 - OJ34: OpenJDK6-b31 backport of JDK-6638712 to openjdk6 - OJ35: backport of JDK-6650759 to openjdk6 - OJ36: Fix a mistake in backport of 8035119 - S8013611: Modal dialog fails to obtain keyboard focus - S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale - S8028111: XML readers share the same entity expansion counter - S8028285: RMI Thread can no longer call out to AWT - S8029038: Revise fix for XML readers share the same entity expansion counter - S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 - S8042590: Running form URL throws NPE - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader * Backports - S7027300, RH1098399: Unsynchronized HashMap access causes endless loop - S7183251: Netbeans editor renders text wrong on JDK 7u6 build The tarballs can be downloaded from: http://icedtea.classpath.org/download/source/icedtea6-1.13.4.tar.gz http://icedtea.classpath.org/download/source/icedtea6-1.13.4.tar.xz We provide both gzip and xz tarballs, so that those who are able to make use of the smaller tarball produced by xz may do so. The tarballs are accompanied by digital signatures available at: http://icedtea.classpath.org/download/source/icedtea6-1.13.4.tar.gz.sig http://icedtea.classpath.org/download/source/icedtea6-1.13.4.tar.xz.sig These are 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 SHA256 checksums: 302b17575ad98bbf6a1d4d8768d2ea1f1b070f153c660ebe493b6509d56ed0e7 icedtea6-1.13.4.tar.gz 9a6f5ef3eecfffd31a1738a5582c16dacefb081130bc11b1e6ce027e3840dc85 icedtea6-1.13.4.tar.gz.sig 7ca52ac37fe8bd9734ffe3630ef74ba2a22dadcd47cb8eba2b34d906bddb186f icedtea6-1.13.4.tar.xz 341684678d8564085d0e4509f39c14582bd1d463bca6f9f3546e6db8c4535ec8 icedtea6-1.13.4.tar.xz.sig The checksums can be downloaded from: http://icedtea.classpath.org/download/source/icedtea6-1.13.4.sha256 The following people helped with these releases: Andrew Hughes (all other backports, release management) Omair Majid (update to new b32 release tarball) We would also like to thank the bug reporters and testers! To get started: $ tar xzf icedtea6-1.13.4.tar.gz or: $ tar x -I xz -f icedtea6-1.13.4.tar.xz then: $ mkdir icedtea-build $ cd icedtea-build $ ../icedtea6-1.13.4/configure $ make Full build requirements and instructions are available in the INSTALL file. 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: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: From andrew at icedtea.classpath.org Tue Jul 15 20:28:55 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 20:28:55 +0000 Subject: /hg/release/icedtea6-1.13: 13 new changesets Message-ID: changeset d3c2f64bd8fc in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=d3c2f64bd8fc author: Omair Majid date: Tue Jul 08 18:19:52 2014 -0400 2014-07-15 CPU Update to OpenJDK6 b32 that contains security fixes. 2014-07-08 Omair Majid 2014-07-15 CPU * NEW: Update with fixes. * Makefile.am (OPENJDK_DATE, OPENJDK_SHA256SUM, OPENJDK_VERSION): Update for b32. (ICEDTEA_PATCHES): Drop upstreamed patches. * patches/openjdk/6636370-appcontext_simplification.patch, * patches/openjdk/6729772-opt_cleanup.patch, * patches/openjdk/6799141-split_out_versions.patch, * patches/openjdk/6816311-compiler_name.patch, * patches/windows-awt.patch: Update to apply on top of b32. * patches/jtreg-T6638712-fix.patch, * patches/openjdk/6638712-wildcard_types.patch, * patches/openjdk/6650759-missing_inference.patch: Remove upstreamed patch. changeset e7dbc33f6f5b in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=e7dbc33f6f5b author: Omair Majid date: Mon Jul 14 01:29:01 2014 -0400 Update to newer 2014-07-15 tarball 2014-07-14 Omair Majid * NEWS: Update with fixes. * Makefile.am (OPENJDK_SHA256SUM): Update checksum for new tarball. changeset 3d9c006eaf4f in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=3d9c006eaf4f author: Andrew John Hughes date: Tue Jul 15 16:04:35 2014 +0100 Merge changeset 41b9b1df898c in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=41b9b1df898c author: Omair Majid date: Tue Jul 15 12:14:49 2014 -0400 Release 1.13.4 2014-07-15 Omair Majid * NEWS: Set unembargo date. * configure.ac: Bump to 1.13.4. changeset 3e9e26ebca6c in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=3e9e26ebca6c author: Omair Majid date: Tue Jul 15 12:24:44 2014 -0400 Added tag icedtea6-1.13.4 for changeset 41b9b1df898c changeset 0d6fd5bae539 in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=0d6fd5bae539 author: Omair Majid date: Tue Jul 15 12:34:37 2014 -0400 Start 1.13.5 release cycle. 2014-07-15 Omair Majid * NEWS: Add a section for 1.13.5 * configure.ac: Bump to 1.13.5pre. changeset 21a1b0e6077e in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=21a1b0e6077e author: Andrew John Hughes date: Tue Jul 15 17:40:35 2014 +0100 S7183251: Netbeans editor renders text wrong on JDK 7u6 build 2014-05-28 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patches. * NEWS: Updated. * patches/openjdk/7183251-netbeans_renders_text_wrong.patch: Backport text layout fixes. changeset a359fcb9891d in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=a359fcb9891d author: Andrew John Hughes date: Tue Jul 15 17:54:05 2014 +0100 Merge changeset 98dcce0066c5 in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=98dcce0066c5 author: Andrew John Hughes date: Tue Jul 15 18:17:57 2014 +0100 Add CVE information to NEWS. 2014-07-15 Andrew John Hughes * NEWS: Move D-I-D fixes into security list. Add CVE numbers. changeset 5749b9d7b329 in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=5749b9d7b329 author: Andrew John Hughes date: Tue Jul 15 18:19:34 2014 +0100 Prepare for 1.13.4 release. 2014-07-15 Andrew John Hughes * configure.ac: Bump to 1.13.4. * NEWS: Remove 1.13.5 section. changeset cbd687c7240d in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=cbd687c7240d author: Andrew John Hughes date: Tue Jul 15 18:19:49 2014 +0100 Removed tag icedtea6-1.13.4 changeset 46f42f7e474f in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=46f42f7e474f author: Andrew John Hughes date: Tue Jul 15 21:25:57 2014 +0100 Added tag icedtea6-1.13.4 for changeset cbd687c7240d changeset 73fd837debeb in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=73fd837debeb author: Andrew John Hughes date: Tue Jul 15 21:28:07 2014 +0100 Start 1.13.5 release cycle. 2014-07-15 Andrew John Hughes * configure.ac: Bump to 1.13.5pre. * NEWS: Add 1.13.5 section. diffstat: .hgtags | 5 + ChangeLog | 65 + Makefile.am | 14 +- NEWS | 44 +- configure.ac | 2 +- patches/jtreg-T6638712-fix.patch | 30 - patches/openjdk/6636370-appcontext_simplification.patch | 52 +- patches/openjdk/6638712-wildcard_types.patch | 563 ------ patches/openjdk/6650759-missing_inference.patch | 884 ---------- patches/openjdk/6729772-opt_cleanup.patch | 140 - patches/openjdk/6799141-split_out_versions.patch | 28 +- patches/openjdk/6816311-compiler_name.patch | 221 -- patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch | 33 + patches/openjdk/7183251-netbeans_renders_text_wrong.patch | 24 + patches/windows-awt.patch | 45 - 15 files changed, 217 insertions(+), 1933 deletions(-) diffs (truncated from 2352 to 500 lines): diff -r c48649311b8f -r 73fd837debeb .hgtags --- a/.hgtags Fri May 09 13:19:29 2014 +0200 +++ b/.hgtags Tue Jul 15 21:28:07 2014 +0100 @@ -26,3 +26,8 @@ eb77bc7992a9c321470c8426c901abd75ed8f567 icedtea6-1.13.1 84eda38cea6394a1973c62aed9e26086690db5c7 icedtea6-1.13.2 d616ea6189f4d38427d0035eea31eb592ff90ebd icedtea6-1.13.3 +41b9b1df898c29f45b09aff3fdd8dad164a9bf7a icedtea6-1.13.4 +41b9b1df898c29f45b09aff3fdd8dad164a9bf7a icedtea6-1.13.4 +0000000000000000000000000000000000000000 icedtea6-1.13.4 +0000000000000000000000000000000000000000 icedtea6-1.13.4 +cbd687c7240d173b0b34840ba07a39a6e7b39a20 icedtea6-1.13.4 diff -r c48649311b8f -r 73fd837debeb ChangeLog --- a/ChangeLog Fri May 09 13:19:29 2014 +0200 +++ b/ChangeLog Tue Jul 15 21:28:07 2014 +0100 @@ -1,3 +1,68 @@ +2014-07-15 Andrew John Hughes + + * configure.ac: Bump to 1.13.5pre. + * NEWS: Add 1.13.5 section. + +2014-07-15 Andrew John Hughes + + * configure.ac: Bump to 1.13.4. + * NEWS: Remove 1.13.5 section. + +2014-07-15 Andrew John Hughes + + * NEWS: + Move D-I-D fixes into security list. + Add CVE numbers. + +2014-07-15 Omair Majid + + * NEWS: Add a section for 1.13.5 + * configure.ac: Bump to 1.13.5pre. + +2014-07-15 Omair Majid + + * NEWS: Set unembargo date. + * configure.ac: Bump to 1.13.4. + +2014-07-14 Omair Majid + + * NEWS: Update with fixes. + * Makefile.am (OPENJDK_SHA256SUM): Update checksum for new tarball. + +2014-07-08 Omair Majid + + 2014-07-15 CPU + * NEWS: Update with fixes. + * Makefile.am + (OPENJDK_DATE, OPENJDK_SHA256SUM, OPENJDK_VERSION): Update for b32. + (ICEDTEA_PATCHES): Drop upstreamed patches. + * patches/openjdk/6636370-appcontext_simplification.patch, + * patches/openjdk/6729772-opt_cleanup.patch, + * patches/openjdk/6799141-split_out_versions.patch, + * patches/openjdk/6816311-compiler_name.patch, + * patches/windows-awt.patch: Update to apply on top of b32. + * patches/jtreg-T6638712-fix.patch, + * patches/openjdk/6638712-wildcard_types.patch, + * patches/openjdk/6650759-missing_inference.patch: Remove upstreamed + patch. + +2014-05-28 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patches. + * NEWS: Updated. + * patches/openjdk/7183251-netbeans_renders_text_wrong.patch: + Backport text layout fixes. + +2014-05-22 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * NEWS: Updated. + * patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch: + Backport fix to replace HashMap usage with ConcurrentHashMap, + avoiding deadlock. + 2014-05-09 Jiri Vanek * Makefile.am: (add-nss-debug.stamp): fixed ECJ_BUILD_OUTPUT_DIR diff -r c48649311b8f -r 73fd837debeb Makefile.am --- a/Makefile.am Fri May 09 13:19:29 2014 +0200 +++ b/Makefile.am Tue Jul 15 21:28:07 2014 +0100 @@ -1,8 +1,8 @@ # Dependencies -OPENJDK_DATE = 15_apr_2014 -OPENJDK_SHA256SUM = 362d9bf20e91393b52dd0513896d39831cf320c49bd4bf1e28124f21569b72eb -OPENJDK_VERSION = b31 +OPENJDK_DATE = 15_jul_2014 +OPENJDK_SHA256SUM = 9a5ad1b599953baac1b6b34189b9487ac5dcdb367aac5cc0aa5aa49700e73871 +OPENJDK_VERSION = b32 OPENJDK_URL = https://java.net/downloads/openjdk6/ CACAO_VERSION = 68fe50ac34ec @@ -374,12 +374,8 @@ patches/ipv4-mapped-ipv6-addresses.patch \ patches/jtreg-OpenGLContextInit.patch \ patches/openjdk/6510892-httpserver_test.patch \ - patches/openjdk/6638712-wildcard_types.patch \ - patches/openjdk/6650759-missing_inference.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/rendering-engine-tests.patch \ patches/openjdk/6800846-printing-quality.patch \ @@ -611,7 +607,9 @@ patches/windows-jdk-sizecalc.patch \ patches/shark_fixes_from_8003868.patch \ patches/8003992_support_6.patch \ - patches/shark-drop_compile_method_arg_following_7083786.patch + patches/shark-drop_compile_method_arg_following_7083786.patch \ + patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch \ + patches/openjdk/7183251-netbeans_renders_text_wrong.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r c48649311b8f -r 73fd837debeb NEWS --- a/NEWS Fri May 09 13:19:29 2014 +0200 +++ b/NEWS Tue Jul 15 21:28:07 2014 +0100 @@ -12,7 +12,49 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 1.13.4 (2014-07-XX): +New in release 1.13.5 (2014-10-YY): + +New in release 1.13.4 (2014-07-15): + +* Security fixes + - S8029755, CVE-2014-4209: Enhance subject class + - S8030763: Validate global memory allocation + - S8031346, CVE-2014-4244: Enhance RSA key handling + - S8031540: Introduce document horizon + - S8032536: JVM resolves wrong method in some unusual cases + - S8033055: Issues in 2d + - S8033301, CVE-2014-4266: Build more informative InfoBuilder + - S8034267: Probabilistic native crash + - S8034272: Do not cram data into CRAM arrays + - S8035004, CVE-2014-4252: Provider provides less service + - S8035009, CVE-2014-4218: Make Proxy representations consistent + - S8035119, CVE-2014-4219: Fix exceptions to bytecode verification + - S8035699, CVE-2014-4268: File choosers should be choosier + - S8036571: (process) Process process arguments carefully + - S8036800: Attribute OOM to correct part of code + - S8037046: Validate libraries to be loaded + - S8037157: Verify call + - S8037076, CVE-2014-2490: Check constant pool constants + - S8037162, CVE-2014-4263: More robust DH exchanges + - S8037167, CVE-2014-4216: Better method signature resolution + - S8039520, CVE-2014-4262: More atomicity of atomic updates +* Import of OpenJDK6 b32 + - OP32: OpenJDK6-b31 isn't compatible with Windows platform + - OJ33: Update copyright headers introduced by the fix for OPENJDK6-32 + - OJ34: OpenJDK6-b31 backport of JDK-6638712 to openjdk6 + - OJ35: backport of JDK-6650759 to openjdk6 + - OJ36: Fix a mistake in backport of 8035119 + - S8013611: Modal dialog fails to obtain keyboard focus + - S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale + - S8028111: XML readers share the same entity expansion counter + - S8028285: RMI Thread can no longer call out to AWT + - S8029038: Revise fix for XML readers share the same entity expansion counter + - S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 + - S8042590: Running form URL throws NPE + - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader +* Backports + - S7027300, RH1098399: Unsynchronized HashMap access causes endless loop + - S7183251: Netbeans editor renders text wrong on JDK 7u6 build New in release 1.13.3 (2014-04-15): diff -r c48649311b8f -r 73fd837debeb configure.ac --- a/configure.ac Fri May 09 13:19:29 2014 +0200 +++ b/configure.ac Tue Jul 15 21:28:07 2014 +0100 @@ -1,4 +1,4 @@ -AC_INIT([icedtea6],[1.13.4pre],[distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6],[1.13.5pre],[distro-pkg-dev at openjdk.java.net]) AC_CANONICAL_HOST AC_CANONICAL_TARGET AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) diff -r c48649311b8f -r 73fd837debeb patches/jtreg-T6638712-fix.patch --- a/patches/jtreg-T6638712-fix.patch Fri May 09 13:19:29 2014 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out 2010-11-30 15:27:57.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712a.java:39:41: compiler.err.invalid.inferred.types: T, (- compiler.misc.inferred.do.not.conform.to.params: java.lang.Iterable>, java.util.List>) -+T6638712a.java:16:41: compiler.err.invalid.inferred.types: T, (- compiler.misc.inferred.do.not.conform.to.params: java.lang.Iterable>, java.util.List>) - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-11-30 15:27:58.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712b.java:37:21: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: T, T, java.lang.String)), T, java.lang.String -+T6638712b.java:14:21: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: T, T, java.lang.String)), T, java.lang.String - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out 2010-11-30 15:27:59.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712c.java:39:9: compiler.err.cant.apply.symbol: sort(T[],java.util.Comparator), T6638712c, , java.lang.Enum[],java.util.Comparator>, null -+T6638712c.java:16:9: compiler.err.cant.apply.symbol: sort(T[],java.util.Comparator), T6638712c, , java.lang.Enum[],java.util.Comparator>, null - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out 2010-11-30 15:28:01.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712d.java:39:9: compiler.err.cant.apply.symbol: m(U,java.util.List>), T6638712d, , int,java.util.List>, null -+T6638712d.java:16:9: compiler.err.cant.apply.symbol: m(U,java.util.List>), T6638712d, , int,java.util.List>, null - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-11-30 15:28:02.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712e.java:40:27: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: X, T6638712e.Foo, T6638712e.Foo)), T6638712e.Foo, T6638712e.Foo -+T6638712e.java:17:27: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: X, T6638712e.Foo, T6638712e.Foo)), T6638712e.Foo, T6638712e.Foo - 1 error diff -r c48649311b8f -r 73fd837debeb patches/openjdk/6636370-appcontext_simplification.patch --- a/patches/openjdk/6636370-appcontext_simplification.patch Fri May 09 13:19:29 2014 +0200 +++ b/patches/openjdk/6636370-appcontext_simplification.patch Tue Jul 15 21:28:07 2014 +0100 @@ -1,6 +1,6 @@ -diff -Nru openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java openjdk/jdk/src/share/classes/sun/awt/AppContext.java ---- openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java 2013-08-05 16:49:37.120128300 +0100 -+++ openjdk/jdk/src/share/classes/sun/awt/AppContext.java 2013-08-05 17:02:51.304664462 +0100 +diff -ruN openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java openjdk/jdk/src/share/classes/sun/awt/AppContext.java +--- openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java 2014-07-08 13:29:01.986811368 -0400 ++++ openjdk/jdk/src/share/classes/sun/awt/AppContext.java 2014-07-08 13:34:11.529064569 -0400 @@ -151,7 +151,7 @@ contained in another AppContext. It is implicitly created for standalone apps only (i.e. not applets) @@ -71,7 +71,7 @@ // Special case: we implicitly create the main app context // if no contexts have been created yet. This covers standalone apps -@@ -308,28 +297,29 @@ +@@ -308,42 +297,41 @@ } } @@ -79,27 +79,51 @@ - while (context == null) { - threadGroup = threadGroup.getParent(); - if (threadGroup == null) { -- return null; +- // We've got up to the root thread group and did not find an AppContext +- // Try to get it from the security manager +- SecurityManager securityManager = System.getSecurityManager(); +- if (securityManager != null) { +- ThreadGroup smThreadGroup = securityManager.getThreadGroup(); +- if (smThreadGroup != null) { +- /* +- * If we get this far then it's likely that +- * the ThreadGroup does not actually belong +- * to the applet, so do not cache it. +- */ +- return threadGroup2appContext.get(smThreadGroup); + AppContext context = threadGroup2appContext.get(threadGroup); + while (context == null) { + threadGroup = threadGroup.getParent(); + if (threadGroup == null) { ++ // We've got up to the root thread group and did not find an AppContext ++ // Try to get it from the security manager ++ SecurityManager securityManager = System.getSecurityManager(); ++ if (securityManager != null) { ++ ThreadGroup smThreadGroup = securityManager.getThreadGroup(); ++ if (smThreadGroup != null) { ++ /* ++ * If we get this far then it's likely that ++ * the ThreadGroup does not actually belong ++ * to the applet, so do not cache it. ++ */ ++ return threadGroup2appContext.get(smThreadGroup); ++ } ++ } + return null; -+ } + } + context = threadGroup2appContext.get(threadGroup); + } -+ + // In case we did anything in the above while loop, we add + // all the intermediate ThreadGroups to threadGroup2appContext + // so we won't spin again. + for (ThreadGroup tg = currentThreadGroup; tg != threadGroup; tg = tg.getParent()) { + threadGroup2appContext.put(tg, context); -+ } + } +- return null; + + // Now we're done, so we cache the latest key/value pair. + threadAppContext.set(context); + -+ + return context; } - context = threadGroup2appContext.get(threadGroup); @@ -122,7 +146,7 @@ } return appContext; -@@ -473,7 +463,7 @@ +@@ -487,7 +475,7 @@ // Threads in the ThreadGroup to exit. long startTime = System.currentTimeMillis(); @@ -131,7 +155,7 @@ while ((this.threadGroup.activeCount() > 0) && (System.currentTimeMillis() < endTime)) { try { -@@ -488,7 +478,7 @@ +@@ -502,7 +490,7 @@ // Threads in the ThreadGroup to die. startTime = System.currentTimeMillis(); @@ -140,7 +164,7 @@ while ((this.threadGroup.activeCount() > 0) && (System.currentTimeMillis() < endTime)) { try { -@@ -507,10 +497,7 @@ +@@ -521,10 +509,7 @@ } threadGroup2appContext.remove(this.threadGroup); @@ -152,7 +176,7 @@ // Finally, we destroy the ThreadGroup entirely. try { -@@ -693,6 +680,7 @@ +@@ -707,6 +692,7 @@ * Returns a string representation of this AppContext. * @since 1.2 */ @@ -160,7 +184,7 @@ public String toString() { return getClass().getName() + "[threadGroup=" + threadGroup.getName() + "]"; } -@@ -842,15 +830,6 @@ +@@ -856,15 +842,6 @@ } } diff -r c48649311b8f -r 73fd837debeb patches/openjdk/6638712-wildcard_types.patch --- a/patches/openjdk/6638712-wildcard_types.patch Fri May 09 13:19:29 2014 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,563 +0,0 @@ -# HG changeset patch -# User mcimadamore -# Date 1284137253 -3600 -# Node ID c5fe15e03287286fa8e668798409c4d7493ee834 -# Parent 27f03394a69d018c1c2badadee65ea39c7274606 -6638712: Inference with wildcard types causes selection of inapplicable method -Summary: Added global sanity check in order to make sure that return type inference does not violate bounds constraints -Reviewed-by: jjg - -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/code/Type.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java Fri Sep 10 17:47:33 2010 +0100 -@@ -1061,6 +1061,21 @@ - return qtype.isErroneous(); - } - -+ /** -+ * Replaces this ForAll's typevars with a set of concrete Java types -+ * and returns the instantiated generic type. Subclasses might override -+ * in order to check that the list of types is a valid instantiation -+ * of the ForAll's typevars. -+ * -+ * @param actuals list of actual types -+ * @param types types instance -+ * @return qtype where all occurrences of tvars are replaced -+ * by types in actuals -+ */ -+ public Type inst(List actuals, Types types) { -+ return types.subst(qtype, tvars, actuals); -+ } -+ - public Type map(Mapping f) { - return f.apply(qtype); - } -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/code/Types.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java Fri Sep 10 17:47:33 2010 +0100 -@@ -331,6 +331,14 @@ - if (s.tag >= firstPartialTag) - return isSuperType(s, t); - -+ if (s.isCompound()) { -+ for (Type s2 : interfaces(s).prepend(supertype(s))) { -+ if (!isSubtype(t, s2, capture)) -+ return false; -+ } -+ return true; -+ } -+ - Type lower = lowerBound(s); - if (s != lower) - return isSubtype(capture ? capture(t) : t, lower, false); -@@ -2766,6 +2774,14 @@ - /** - * Capture conversion as specified by JLS 3rd Ed. - */ -+ -+ public List capture(List ts) { -+ List buf = List.nil(); -+ for (Type t : ts) { -+ buf = buf.prepend(capture(t)); -+ } -+ return buf.reverse(); -+ } - public Type capture(Type t) { - if (t.tag != CLASS) - return t; -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Check.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java Fri Sep 10 17:47:33 2010 +0100 -@@ -383,6 +383,10 @@ - JCDiagnostic.fragment("incompatible.types" + (d!=null ? ".1" : ""), d), - t, pt); - } -+ } catch (Infer.InvalidInstanceException ex) { -+ JCDiagnostic d = ex.getDiagnostic(); -+ log.error(pos, "invalid.inferred.types", t.tvars, d); -+ return syms.errType; - } - } - } -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Infer.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java Fri Sep 10 17:47:33 2010 +0100 -@@ -29,6 +29,7 @@ - import com.sun.tools.javac.util.List; - import com.sun.tools.javac.code.*; - import com.sun.tools.javac.code.Type.*; -+import com.sun.tools.javac.code.Symbol.*; - - import static com.sun.tools.javac.code.Flags.*; - import static com.sun.tools.javac.code.Kinds.*; -@@ -50,6 +51,7 @@ - - Symtab syms; - Types types; -+ Resolve rs; - - public static Infer instance(Context context) { - Infer instance = context.get(inferKey); -@@ -62,43 +64,51 @@ - context.put(inferKey, this); - syms = Symtab.instance(context); - types = Types.instance(context); -+ rs = Resolve.instance(context); - } - -- public static class NoInstanceException extends RuntimeException { -+ public static class InferenceException extends RuntimeException { - private static final long serialVersionUID = 0; - -- boolean isAmbiguous; // exist several incomparable best instances? -- - JCDiagnostic diagnostic; - -- NoInstanceException(boolean isAmbiguous) { -+ InferenceException() { - this.diagnostic = null; -- this.isAmbiguous = isAmbiguous; - } -- NoInstanceException setMessage(String key) { -- this.diagnostic = JCDiagnostic.fragment(key); -+ InferenceException setMessage(String key, Object... args) { -+ this.diagnostic = JCDiagnostic.fragment(key, args); - return this; - } -- NoInstanceException setMessage(String key, Object arg1) { -- this.diagnostic = JCDiagnostic.fragment(key, arg1); -- return this; -- } -- NoInstanceException setMessage(String key, Object arg1, Object arg2) { -- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2); -- return this; -- } -- NoInstanceException setMessage(String key, Object arg1, Object arg2, Object arg3) { -- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2, arg3); -- return this; -- } -+ - public JCDiagnostic getDiagnostic() { - return diagnostic; - } - } -+ -+ public static class NoInstanceException extends InferenceException { -+ private static final long serialVersionUID = 1; -+ -+ boolean isAmbiguous; // exist several incomparable best instances? -+ -+ NoInstanceException(boolean isAmbiguous) { -+ super(); -+ this.isAmbiguous = isAmbiguous; From andrew at icedtea.classpath.org Tue Jul 15 21:11:34 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:11:34 +0000 Subject: /hg/release/icedtea7-forest-2.5/corba: 8042789: org.omg.CORBA.OR... Message-ID: changeset 9733c3d6fd78 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=9733c3d6fd78 author: coffeys date: Sat Jun 07 14:28:56 2014 +0100 8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader Reviewed-by: alanb, lancea diffstat: src/share/classes/org/omg/CORBA/ORB.java | 18 +----------------- 1 files changed, 1 insertions(+), 17 deletions(-) diffs (33 lines): diff -r 8c910b5d3b77 -r 9733c3d6fd78 src/share/classes/org/omg/CORBA/ORB.java --- a/src/share/classes/org/omg/CORBA/ORB.java Sat Jun 14 08:07:58 2014 +0100 +++ b/src/share/classes/org/omg/CORBA/ORB.java Sat Jun 07 14:28:56 2014 +0100 @@ -291,28 +291,12 @@ (className.equals("com.sun.corba.se.impl.orb.ORBSingleton"))) { singleton = new com.sun.corba.se.impl.orb.ORBSingleton(); } else { - singleton = create_impl_with_systemclassloader(className); + singleton = create_impl(className); } } return singleton; } - private static ORB create_impl_with_systemclassloader(String className) { - - try { - ReflectUtil.checkPackageAccess(className); - ClassLoader cl = ClassLoader.getSystemClassLoader(); - Class orbBaseClass = org.omg.CORBA.ORB.class; - Class singletonOrbClass = Class.forName(className, true, cl).asSubclass(orbBaseClass); - return (ORB)singletonOrbClass.newInstance(); - } catch (Throwable ex) { - SystemException systemException = new INITIALIZE( - "can't instantiate default ORB implementation " + className); - systemException.initCause(ex); - throw systemException; - } - } - private static ORB create_impl(String className) { ClassLoader cl = Thread.currentThread().getContextClassLoader(); if (cl == null) From andrew at icedtea.classpath.org Tue Jul 15 21:11:41 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:11:41 +0000 Subject: /hg/release/icedtea7-forest-2.5/jaxp: 2 new changesets Message-ID: changeset e36922952d87 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=e36922952d87 author: aefimov date: Wed Jan 22 23:41:05 2014 +0400 8031540: Introduce document horizon Reviewed-by: joehw changeset 8d18c893986b in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=8d18c893986b author: mfang date: Wed May 07 08:37:39 2014 -0700 8042264: 7u65 l10n resource file translation update 1 Reviewed-by: joehw, yhuang diffstat: src/com/sun/org/apache/xalan/internal/XalanConstants.java | 12 +++ src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java | 4 +- src/com/sun/org/apache/xerces/internal/impl/Constants.java | 12 +++ src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java | 16 ++++ src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java | 1 + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties | 1 + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties | 28 +------- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties | 26 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties | 26 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties | 26 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties | 27 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties | 26 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties | 36 +-------- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties | 28 +------- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties | 25 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties | 26 +------ src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java | 4 + src/com/sun/org/apache/xerces/internal/utils/XMLSecurityManager.java | 10 +- 18 files changed, 73 insertions(+), 261 deletions(-) diffs (truncated from 616 to 500 lines): diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xalan/internal/XalanConstants.java --- a/src/com/sun/org/apache/xalan/internal/XalanConstants.java Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xalan/internal/XalanConstants.java Wed May 07 08:37:39 2014 -0700 @@ -91,6 +91,13 @@ */ public static final String JDK_XML_NAME_LIMIT = ORACLE_JAXP_PROPERTY_PREFIX + "maxXMLNameLimit"; + + /** + * JDK maxElementDepth limit + */ + public static final String JDK_MAX_ELEMENT_DEPTH = + ORACLE_JAXP_PROPERTY_PREFIX + "maxElementDepth"; + /** * JDK property indicating whether the parser shall print out entity * count information @@ -139,6 +146,11 @@ */ public static final String SP_XML_NAME_LIMIT = "jdk.xml.maxXMLNameLimit"; + /** + * JDK maxElementDepth limit + */ + public static final String SP_MAX_ELEMENT_DEPTH = "jdk.xml.maxElementDepth"; + //legacy System Properties public final static String ENTITY_EXPANSION_LIMIT = "entityExpansionLimit"; public static final String ELEMENT_ATTRIBUTE_LIMIT = "elementAttributeLimit" ; diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java --- a/src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java Wed May 07 08:37:39 2014 -0700 @@ -76,7 +76,9 @@ GENEAL_ENTITY_SIZE_LIMIT(XalanConstants.JDK_GENEAL_ENTITY_SIZE_LIMIT, XalanConstants.SP_GENEAL_ENTITY_SIZE_LIMIT, 0, 0), PARAMETER_ENTITY_SIZE_LIMIT(XalanConstants.JDK_PARAMETER_ENTITY_SIZE_LIMIT, - XalanConstants.SP_PARAMETER_ENTITY_SIZE_LIMIT, 0, 1000000); + XalanConstants.SP_PARAMETER_ENTITY_SIZE_LIMIT, 0, 1000000), + MAX_ELEMENT_DEPTH_LIMIT(XalanConstants.JDK_MAX_ELEMENT_DEPTH, + XalanConstants.SP_MAX_ELEMENT_DEPTH, 0, 0); final String apiProperty; final String systemProperty; diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/Constants.java --- a/src/com/sun/org/apache/xerces/internal/impl/Constants.java Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/Constants.java Wed May 07 08:37:39 2014 -0700 @@ -252,6 +252,13 @@ */ public static final String JDK_XML_NAME_LIMIT = ORACLE_JAXP_PROPERTY_PREFIX + "maxXMLNameLimit"; + + /** + * JDK maxElementDepth limit + */ + public static final String JDK_MAX_ELEMENT_DEPTH = + ORACLE_JAXP_PROPERTY_PREFIX + "maxElementDepth"; + /** * JDK property to allow printing out information from the limit analyzer */ @@ -297,6 +304,11 @@ */ public static final String SP_XML_NAME_LIMIT = "jdk.xml.maxXMLNameLimit"; + /** + * JDK maxElementDepth limit + */ + public static final String SP_MAX_ELEMENT_DEPTH = "jdk.xml.maxElementDepth"; + //legacy System Properties public final static String ENTITY_EXPANSION_LIMIT = "entityExpansionLimit"; public static final String ELEMENT_ATTRIBUTE_LIMIT = "elementAttributeLimit" ; diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java --- a/src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java Wed May 07 08:37:39 2014 -0700 @@ -1309,6 +1309,7 @@ fAttributes.removeAllAttributes(); + checkDepth(rawname); if(!seekCloseOfStartTag()){ fReadingAttributes = true; fAttributeCacheUsedCount =0; @@ -1913,6 +1914,21 @@ // utility methods /** + * Check if the depth exceeds the maxElementDepth limit + * @param elementName name of the current element + */ + void checkDepth(String elementName) { + fLimitAnalyzer.addValue(Limit.MAX_ELEMENT_DEPTH_LIMIT, elementName, fElementStack.fDepth); + if (fSecurityManager.isOverLimit(Limit.MAX_ELEMENT_DEPTH_LIMIT,fLimitAnalyzer)) { + fSecurityManager.debugPrint(fLimitAnalyzer); + reportFatalError("MaxElementDepthLimit", new Object[]{elementName, + fLimitAnalyzer.getTotalValue(Limit.MAX_ELEMENT_DEPTH_LIMIT), + fSecurityManager.getLimit(Limit.MAX_ELEMENT_DEPTH_LIMIT), + "maxElementDepth"}); + } + } + + /** * Calls document handler with a single character resulting from * built-in entity resolution. * diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java --- a/src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java Wed May 07 08:37:39 2014 -0700 @@ -220,6 +220,7 @@ fCurrentElement = fElementQName; String rawname = fElementQName.rawname; + checkDepth(rawname); if (fBindNamespaces) { fNamespaceContext.pushContext(); if (fScannerState == SCANNER_STATE_ROOT_ELEMENT) { diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties Wed May 07 08:37:39 2014 -0700 @@ -299,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: The length of entity \"{0}\" is \"{1}\" that exceeds the \"{2}\" limit set by \"{3}\". TotalEntitySizeLimit=JAXP00010004: The accumulated size \"{0}\" of entities exceeded the \"{1}\" limit set by \"{2}\". MaxXMLNameLimit=JAXP00010005: The name \"{0}\" exceeded the \"{1}\" limit set by \"{2}\". + MaxElementDepthLimit=JAXP00010006: The element \"{0}\" has a depth of \"{1}\" that exceeds the limit \"{2}\" set by \"{3}\". diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -276,7 +251,7 @@ NMTOKENInvalid = Attributwert "{0}" mit dem Typ NMTOKEN muss ein Namenstoken sein. NMTOKENSInvalid = Attributwert "{0}" mit dem Typ NMTOKENS muss mindestens ein Namenstoken sein. NoNotationOnEmptyElement = Elementtyp "{0}", der als EMPTY deklariert wurde, kann nicht das Attribut "{1}" mit dem Typ NOTATION deklarieren. - RootElementTypeMustMatchDoctypedecl = Dokument-Root-Element "{1}"muss mit DOCTYPE-Root "{0}" \u00FCbereinstimmen. + RootElementTypeMustMatchDoctypedecl = Document Root-Element "{1}"muss mit DOCTYPE-Root "{0}" \u00FCbereinstimmen. UndeclaredElementInContentSpec = Contentmodell des Elements "{0}" verweist auf das nicht deklarierte Element "{1}". UniqueNotationName = Deklaration f\u00FCr die Notation "{0}" ist nicht eindeutig. Ein jeweiliger Name darf nicht in mehreren Notationsdeklarationen deklariert werden. ENTITYFailedInitializeGrammar = ENTITYDatatype-Validator: Nicht erfolgreich. Initialisierungsmethode muss mit einer g\u00FCltigen Grammatikreferenz aufgerufen werden. \t @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: Die L\u00E4nge von Entit\u00E4t "{0}" ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde. TotalEntitySizeLimit=JAXP00010004: Die akkumulierte Gr\u00F6\u00DFe "{0}" der Entit\u00E4ten \u00FCberschreitet den Grenzwert "{1}", der von "{2}" festgelegt wurde. MaxXMLNameLimit=JAXP00010005: Der Name "{0}" \u00FCberschreitet den Grenzwert "{1}", der von "{2}" festgelegt wurde. + MaxElementDepthLimit=JAXP00010006: Die Tiefe von Element "{0}" ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde. diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: la longitud de la entidad "{0}" es "{1}", que excede el l\u00EDmite de "{2}" que ha definido "{3}". TotalEntitySizeLimit=JAXP00010004: el tama\u00F1o acumulado "{0}" de las entidades ha excedido el l\u00EDmite de "{1}" que ha definido "{2}". MaxXMLNameLimit=JAXP00010005: el nombre "{0}" ha excedido el l\u00EDmite de "{1}" que ha definido "{2}". + MaxElementDepthLimit=JAXP00010006: El elemento "{0}" tiene una profundidad de "{1}" que excede el l\u00EDmite "{2}" definido por "{3}". diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003 : La longueur de l''entit\u00E9 "{0}" est de "{1}". Cette valeur d\u00E9passe la limite de "{2}" d\u00E9finie par "{3}". TotalEntitySizeLimit=JAXP00010004 : La taille cumul\u00E9e des entit\u00E9s ("{0}") d\u00E9passe la limite de "{1}" d\u00E9finie par "{2}". MaxXMLNameLimit=JAXP00010005 : le nom "{0}" d\u00E9passe la limite de "{1}" d\u00E9finie par "{2}". + MaxElementDepthLimit=JAXP00010006 : l''\u00E9l\u00E9ment "{0}" a une profondeur de "{1}" qui d\u00E9passe la limite de "{2}" d\u00E9finie par "{3}". diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: la lunghezza dell''entit\u00E0 "{0}" \u00E8 "{1}". Tale valore supera il limite "{2}" definito da "{3}". TotalEntitySizeLimit=JAXP00010004: le dimensioni accumulate "{0}" delle entit\u00E0 supera il limite "{1}" definito da "{2}". MaxXMLNameLimit=JAXP00010005: il nome "{0}" supera il limite "{1}" definito da "{2}". + MaxElementDepthLimit=JAXP00010006: la profondit\u00E0 dell''elemento "{0}" \u00E8 "{1}". Tale valore supera il limite "{2}" definito da "{3}". diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties Wed May 07 08:37:39 2014 -0700 @@ -1,27 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -146,7 +122,7 @@ ExpectedByte = {1}\u30D0\u30A4\u30C8\u306EUTF-8\u30B7\u30FC\u30B1\u30F3\u30B9\u306E\u30D0\u30A4\u30C8{0}\u304C\u5FC5\u8981\u3067\u3059\u3002 InvalidHighSurrogate = UTF-8\u30B7\u30FC\u30B1\u30F3\u30B9\u306E\u4E0A\u4F4D\u30B5\u30ED\u30B2\u30FC\u30C8\u30FB\u30D3\u30C3\u30C8\u306E\u4E0A\u9650\u306F0x10\u3067\u3059\u304C\u30010x{0}\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002 OperationNotSupported = \u64CD\u4F5C"{0}"\u306F{1}\u30EA\u30FC\u30C0\u30FC\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 - InvalidASCII = \u30D0\u30A4\u30C8"{0}"\u306F\u3001(7\u30D3\u30C3\u30C8) ASCII\u30AD\u30E3\u30E9\u30AF\u30BF\u30FB\u30BB\u30C3\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002 + InvalidASCII = \u30D0\u30A4\u30C8"{0}"\u306F\u3001(7\u30D3\u30C3\u30C8) ASCII\u6587\u5B57\u30BB\u30C3\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002 CharConversionFailure = \u7279\u5B9A\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3067\u3042\u308B\u3068\u78BA\u5B9A\u3055\u308C\u305F\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u306B\u306F\u3001\u305D\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3067\u4E0D\u6B63\u306A\u30B7\u30FC\u30B1\u30F3\u30B9\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002 # DTD Messages @@ -323,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3"{0}"\u306E\u9577\u3055\u306F"{1}"\u3067\u3001"{3}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{2}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002 TotalEntitySizeLimit=JAXP00010004: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u306E\u7D2F\u7A4D\u30B5\u30A4\u30BA"{0}"\u306F\u3001"{2}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{1}"\u3092\u8D85\u3048\u307E\u3057\u305F\u3002 MaxXMLNameLimit=JAXP00010005: \u540D\u524D"{0}"\u306F\u3001"{2}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{1}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002 + MaxElementDepthLimit=JAXP00010006: \u8981\u7D20"{0}"\u306E\u6DF1\u3055\u306F"{1}"\u3067\u3001"{3}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{2}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002 diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: "{0}" \uC5D4\uD2F0\uD2F0\uC758 \uAE38\uC774\uAC00 "{3}"\uC5D0\uC11C \uC124\uC815\uB41C "{2}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD558\uB294 "{1}"\uC785\uB2C8\uB2E4. TotalEntitySizeLimit=JAXP00010004: \uC5D4\uD2F0\uD2F0\uC758 \uB204\uC801 \uD06C\uAE30 "{0}"\uC774(\uAC00) "{2}"\uC5D0\uC11C \uC124\uC815\uB41C "{1}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD588\uC2B5\uB2C8\uB2E4. MaxXMLNameLimit=JAXP00010005: "{0}" \uC774\uB984\uC774 "{2}"\uC5D0\uC11C \uC124\uC815\uB41C "{1}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD588\uC2B5\uB2C8\uB2E4. + MaxElementDepthLimit=JAXP00010006: "{0}" \uC694\uC18C\uC758 \uAE4A\uC774\uAC00 "{3}"\uC5D0\uC11C \uC124\uC815\uB41C "{2}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD558\uB294 "{1}"\uC785\uB2C8\uB2E4. diff -r 2a00b40e67c9 -r 8d18c893986b src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties Sat Jun 14 08:07:59 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -154,7 +129,7 @@ # 2.2 Characters InvalidCharInEntityValue = Um caractere XML inv\u00E1lido (Unicode: 0x {0}) foi encontrado no valor da entidade da literal. InvalidCharInExternalSubset = Um caractere XML inv\u00E1lido (Unicode: 0x {0}) foi encontrado no subconjunto externo do DTD. - InvalidCharInIgnoreSect = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado na se\u00E7\u00E3o condicional deletada. + InvalidCharInIgnoreSect = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado na se\u00E7\u00E3o condicional exclu\u00EDda. InvalidCharInPublicID = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado no identificador p\u00FAblico. InvalidCharInSystemID = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado no identificador do sistema. # 2.3 Common Syntactic Constructs @@ -173,7 +148,7 @@ PEReferenceWithinMarkup = A refer\u00EAncia da entidade do par\u00E2metro "%{0};" n\u00E3o pode ocorrer na marca\u00E7\u00E3o no subconjunto interno do DTD. MSG_MARKUP_NOT_RECOGNIZED_IN_DTD = As declara\u00E7\u00F5es de marca\u00E7\u00E3o contidas ou apontadas pela declara\u00E7\u00E3o do tipo de documento devem estar corretas. # 2.10 White Space Handling - MSG_XML_SPACE_DECLARATION_ILLEGAL = Deve ser fornecida a declara\u00E7\u00E3o do atributo para "xml:space" como um tipo enumerado, cujo os \u00FAnicos valores poss\u00EDveis s\u00E3o "default" e "preserve". + MSG_XML_SPACE_DECLARATION_ILLEGAL = Deve ser fornecida a declara\u00E7\u00E3o do atributo para "xml:space" como um tipo enumerado, cujo os \u00FAnicos valores poss\u00EDveis s\u00E3o "padr\u00E3o" e "preserve". # 3.2 Element Type Declarations MSG_SPACE_REQUIRED_BEFORE_ELEMENT_TYPE_IN_ELEMENTDECL = O espa\u00E7o em branco \u00E9 necess\u00E1rio ap\u00F3s " changeset 19e5d8e33c52 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=19e5d8e33c52 author: mkos date: Wed Apr 09 10:15:04 2014 -0400 8035613: With active Securitymanager JAXBContext.newInstance fails Reviewed-by: mullan, mgrebac diffstat: src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java | 26 +++++++-- 7 files changed, 133 insertions(+), 49 deletions(-) diffs (406 lines): diff -r 73f3c7ca3b99 -r 19e5d8e33c52 src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java --- a/src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java Sat Jun 14 08:08:00 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 73f3c7ca3b99 -r 19e5d8e33c52 src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java Sat Jun 14 08:08:00 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 73f3c7ca3b99 -r 19e5d8e33c52 src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java Sat Jun 14 08:08:00 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 73f3c7ca3b99 -r 19e5d8e33c52 src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java Sat Jun 14 08:08:00 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 73f3c7ca3b99 -r 19e5d8e33c52 src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java Sat Jun 14 08:08:00 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 73f3c7ca3b99 -r 19e5d8e33c52 src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java Sat Jun 14 08:08:00 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 73f3c7ca3b99 -r 19e5d8e33c52 src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java Sat Jun 14 08:08:00 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { From andrew at icedtea.classpath.org Tue Jul 15 21:12:02 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:12:02 +0000 Subject: /hg/release/icedtea7-forest-2.5/hotspot: 12 new changesets Message-ID: changeset 9b89bdbab928 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=9b89bdbab928 author: hseigel date: Fri Feb 14 12:07:27 2014 -0500 8030763: Validate global memory allocation Summary: Add length checks where necessary Reviewed-by: coleenp, mschoene changeset 113dc27de58a in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=113dc27de58a author: hseigel date: Tue Mar 04 15:58:08 2014 -0500 8032536: JVM resolves wrong method in some unusual cases Summary: Handle package private case Reviewed-by: coleenp, acorn, jdn changeset 11c99db18274 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=11c99db18274 author: hseigel date: Thu Mar 20 08:46:41 2014 -0400 8034985: Better form for Lambda Forms Summary: Only allow classes loaded by boot or extensions class loaders, or anonymous classes, to access privileged annotations. Reviewed-by: coleenp, ahgross, twisti changeset 42286aa3bb05 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=42286aa3bb05 author: hseigel date: Wed Mar 19 18:04:09 2014 -0400 8035119: Fix exceptions to bytecode verification Summary: Prevent ctor calls to super() and this() from avoidable code (try blocks, if stmts, etc.) Reviewed-by: coleenp, acorn, mschoene changeset e3b03bc35173 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=e3b03bc35173 author: hseigel date: Wed Mar 19 14:18:19 2014 -0400 8036800: Attribute OOM to correct part of code Summary: checks that the attribute_length does not exceed the length of remaining data in the class file Reviewed-by: coleenp, ahgross changeset 6f16aec93586 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=6f16aec93586 author: coleenp date: Fri Apr 04 13:37:56 2014 -0500 8037076: Check constant pool constants Summary: Fix events log string. Reviewed-by: kvn, mschoene Contributed-by: paul.nauman at oracle.com changeset a9dca22ff679 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=a9dca22ff679 author: hseigel date: Mon Apr 07 09:22:54 2014 -0400 8037157: Verify call Summary: Check for null method Reviewed-by: coleenp, acorn, mschoene changeset 7cfe646c2283 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=7cfe646c2283 author: acorn date: Tue Apr 15 15:10:07 2014 -0500 8037167: Better method signature resolution Reviewed-by: mschoene, hseigel, lfoltan Contributed-by: paul.nauman at oracle.com changeset 56caba232c41 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=56caba232c41 author: asaha date: Wed Feb 26 21:38:35 2014 -0800 8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 Reviewed-by: jcoomes changeset 7b074d92b2cf in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=7b074d92b2cf author: asaha date: Fri Apr 04 16:17:30 2014 -0700 8039324: Increment hsx 24.65 build to b02 for 7u65-b07 Reviewed-by: jcoomes changeset cc4f3c9916a3 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=cc4f3c9916a3 author: asaha date: Mon Apr 14 08:43:38 2014 -0700 8040156: Increment hsx 24.65 build to b03 for 7u65-b08 Reviewed-by: jcoomes changeset 928ada621452 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=928ada621452 author: asaha date: Fri Apr 18 22:04:33 2014 -0700 8041264: Increment hsx 24.65 build to b04 for 7u65-b09 Reviewed-by: jcoomes diffstat: make/hotspot_version | 4 +- src/os/bsd/vm/os_bsd.cpp | 8 +-- src/os/linux/vm/os_linux.cpp | 8 +-- src/os/solaris/vm/os_solaris.cpp | 8 +-- src/os/windows/vm/os_windows.cpp | 46 +++++++----------- src/share/vm/classfile/classFileParser.cpp | 72 ++++++++++++++++++++--------- src/share/vm/classfile/classFileParser.hpp | 24 ++++++--- src/share/vm/classfile/stackMapTable.cpp | 3 +- src/share/vm/classfile/verifier.cpp | 33 +++++++++++++- src/share/vm/classfile/verifier.hpp | 19 +++++++- src/share/vm/compiler/compileBroker.cpp | 3 +- src/share/vm/oops/klassVtable.cpp | 27 ++++++++++- src/share/vm/runtime/os.hpp | 5 +- src/share/vm/utilities/events.cpp | 6 +- src/share/vm/utilities/vmError.cpp | 3 +- 15 files changed, 177 insertions(+), 92 deletions(-) diffs (truncated from 725 to 500 lines): diff -r 040adda8e27e -r 928ada621452 make/hotspot_version --- a/make/hotspot_version Sat Jun 14 08:08:08 2014 +0100 +++ b/make/hotspot_version Fri Apr 18 22:04:33 2014 -0700 @@ -34,8 +34,8 @@ HOTSPOT_VM_COPYRIGHT=Copyright 2014 HS_MAJOR_VER=24 -HS_MINOR_VER=60 -HS_BUILD_NUMBER=09 +HS_MINOR_VER=65 +HS_BUILD_NUMBER=04 JDK_MAJOR_VER=1 JDK_MINOR_VER=7 diff -r 040adda8e27e -r 928ada621452 src/os/bsd/vm/os_bsd.cpp --- a/src/os/bsd/vm/os_bsd.cpp Sat Jun 14 08:08:08 2014 +0100 +++ b/src/os/bsd/vm/os_bsd.cpp Fri Apr 18 22:04:33 2014 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -1819,9 +1819,6 @@ ::abort(); } -// unused on bsd for now. -void os::set_error_file(const char *logfile) {} - // This method is a copy of JDK's sysGetLastErrorString // from src/solaris/hpi/src/system_md.c @@ -2585,6 +2582,7 @@ // determine if this is a legacy image or modules image // modules image doesn't have "jre" subdirectory len = strlen(buf); + assert(len < buflen, "Ran out of buffer space"); jrelib_p = buf + len; // Add the appropriate library subdir @@ -2620,7 +2618,7 @@ } } - strcpy(saved_jvm_path, buf); + strncpy(saved_jvm_path, buf, MAXPATHLEN); } void os::print_jni_name_prefix_on(outputStream* st, int args_size) { diff -r 040adda8e27e -r 928ada621452 src/os/linux/vm/os_linux.cpp --- a/src/os/linux/vm/os_linux.cpp Sat Jun 14 08:08:08 2014 +0100 +++ b/src/os/linux/vm/os_linux.cpp Fri Apr 18 22:04:33 2014 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -1624,9 +1624,6 @@ ::abort(); } -// unused on linux for now. -void os::set_error_file(const char *logfile) {} - // This method is a copy of JDK's sysGetLastErrorString // from src/solaris/hpi/src/system_md.c @@ -2466,6 +2463,7 @@ // determine if this is a legacy image or modules image // modules image doesn't have "jre" subdirectory len = strlen(buf); + assert(len < buflen, "Ran out of buffer room"); jrelib_p = buf + len; snprintf(jrelib_p, buflen-len, "/jre/lib/%s", cpu_arch); if (0 != access(buf, F_OK)) { @@ -2488,7 +2486,7 @@ } } - strcpy(saved_jvm_path, buf); + strncpy(saved_jvm_path, buf, MAXPATHLEN); } void os::print_jni_name_prefix_on(outputStream* st, int args_size) { diff -r 040adda8e27e -r 928ada621452 src/os/solaris/vm/os_solaris.cpp --- a/src/os/solaris/vm/os_solaris.cpp Sat Jun 14 08:08:08 2014 +0100 +++ b/src/os/solaris/vm/os_solaris.cpp Fri Apr 18 22:04:33 2014 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -1877,9 +1877,6 @@ ::abort(); // dump core (for debugging) } -// unused -void os::set_error_file(const char *logfile) {} - // DLL functions const char* os::dll_file_extension() { return ".so"; } @@ -2561,6 +2558,7 @@ // determine if this is a legacy image or modules image // modules image doesn't have "jre" subdirectory len = strlen(buf); + assert(len < buflen, "Ran out of buffer space"); jrelib_p = buf + len; snprintf(jrelib_p, buflen-len, "/jre/lib/%s", cpu_arch); if (0 != access(buf, F_OK)) { @@ -2581,7 +2579,7 @@ } } - strcpy(saved_jvm_path, buf); + strncpy(saved_jvm_path, buf, MAXPATHLEN); } diff -r 040adda8e27e -r 928ada621452 src/os/windows/vm/os_windows.cpp --- a/src/os/windows/vm/os_windows.cpp Sat Jun 14 08:08:08 2014 +0100 +++ b/src/os/windows/vm/os_windows.cpp Fri Apr 18 22:04:33 2014 -0700 @@ -1773,27 +1773,28 @@ // libjvm.so is installed there (append a fake suffix // hotspot/libjvm.so). char* java_home_var = ::getenv("JAVA_HOME"); - if (java_home_var != NULL && java_home_var[0] != 0) { - - strncpy(buf, java_home_var, buflen); - - // determine if this is a legacy image or modules image - // modules image doesn't have "jre" subdirectory - size_t len = strlen(buf); - char* jrebin_p = buf + len; - jio_snprintf(jrebin_p, buflen-len, "\\jre\\bin\\"); - if (0 != _access(buf, 0)) { - jio_snprintf(jrebin_p, buflen-len, "\\bin\\"); - } - len = strlen(buf); - jio_snprintf(buf + len, buflen-len, "hotspot\\jvm.dll"); + if (java_home_var != NULL && java_home_var[0] != 0 && + strlen(java_home_var) < (size_t)buflen) { + + strncpy(buf, java_home_var, buflen); + + // determine if this is a legacy image or modules image + // modules image doesn't have "jre" subdirectory + size_t len = strlen(buf); + char* jrebin_p = buf + len; + jio_snprintf(jrebin_p, buflen-len, "\\jre\\bin\\"); + if (0 != _access(buf, 0)) { + jio_snprintf(jrebin_p, buflen-len, "\\bin\\"); + } + len = strlen(buf); + jio_snprintf(buf + len, buflen-len, "hotspot\\jvm.dll"); } } if(buf[0] == '\0') { - GetModuleFileName(vm_lib_handle, buf, buflen); - } - strcpy(saved_jvm_path, buf); + GetModuleFileName(vm_lib_handle, buf, buflen); + } + strncpy(saved_jvm_path, buf, MAX_PATH); } @@ -2218,17 +2219,6 @@ #endif //_WIN64 -// Fatal error reporting is single threaded so we can make this a -// static and preallocated. If it's more than MAX_PATH silently ignore -// it. -static char saved_error_file[MAX_PATH] = {0}; - -void os::set_error_file(const char *logfile) { - if (strlen(logfile) <= MAX_PATH) { - strncpy(saved_error_file, logfile, MAX_PATH); - } -} - static inline void report_error(Thread* t, DWORD exception_code, address addr, void* siginfo, void* context) { VMError err(t, exception_code, addr, siginfo, context); diff -r 040adda8e27e -r 928ada621452 src/share/vm/classfile/classFileParser.cpp --- a/src/share/vm/classfile/classFileParser.cpp Sat Jun 14 08:08:08 2014 +0100 +++ b/src/share/vm/classfile/classFileParser.cpp Fri Apr 18 22:04:33 2014 -0700 @@ -961,7 +961,7 @@ "Wrong size %u for field's Signature attribute in class file %s", attribute_length, CHECK); } - generic_signature_index = cfs->get_u2(CHECK); + generic_signature_index = parse_generic_signature_attribute(cp, CHECK); } else if (attribute_name == vmSymbols::tag_runtime_visible_annotations()) { runtime_visible_annotations_length = attribute_length; runtime_visible_annotations = cfs->get_u1_buffer(); @@ -1698,7 +1698,8 @@ } // Sift through annotations, looking for those significant to the VM: -void ClassFileParser::parse_annotations(u1* buffer, int limit, +void ClassFileParser::parse_annotations(Handle class_loader, + u1* buffer, int limit, constantPoolHandle cp, ClassFileParser::AnnotationCollector* coll, TRAPS) { @@ -1736,7 +1737,7 @@ } // Here is where parsing particular annotations will take place. - AnnotationCollector::ID id = coll->annotation_index(aname); + AnnotationCollector::ID id = coll->annotation_index(class_loader, is_anonymous(), aname); if (id == AnnotationCollector::_unknown) continue; coll->set_annotation(id); // If there are no values, just set the bit and move on: @@ -1765,20 +1766,30 @@ } } -ClassFileParser::AnnotationCollector::ID ClassFileParser::AnnotationCollector::annotation_index(Symbol* name) { +ClassFileParser::AnnotationCollector::ID ClassFileParser::AnnotationCollector::annotation_index(Handle class_loader, + bool is_anonymous, + Symbol* name) { vmSymbols::SID sid = vmSymbols::find_sid(name); + // Privileged code can use all annotations. Other code silently drops some. + const bool privileged = class_loader.is_null() || is_anonymous || + class_loader()->klass()->klass_part()->name() == + vmSymbols::sun_misc_Launcher_ExtClassLoader(); switch (sid) { case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_ForceInline_signature): if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code return _method_ForceInline; case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_DontInline_signature): if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code return _method_DontInline; case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_LambdaForm_Compiled_signature): if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code return _method_LambdaForm_Compiled; case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_LambdaForm_Hidden_signature): if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code return _method_LambdaForm_Hidden; default: break; } @@ -1818,8 +1829,8 @@ // from the method back up to the containing klass. These flag values // are added to klass's access_flags. -methodHandle ClassFileParser::parse_method(constantPoolHandle cp, bool is_interface, - AccessFlags *promoted_flags, +methodHandle ClassFileParser::parse_method(Handle class_loader, constantPoolHandle cp, + bool is_interface, AccessFlags *promoted_flags, typeArrayHandle* method_annotations, typeArrayHandle* method_parameter_annotations, typeArrayHandle* method_default_annotations, @@ -2122,13 +2133,12 @@ "Invalid Signature attribute length %u in class file %s", method_attribute_length, CHECK_(nullHandle)); } - cfs->guarantee_more(2, CHECK_(nullHandle)); // generic_signature_index - generic_signature_index = cfs->get_u2_fast(); + generic_signature_index = parse_generic_signature_attribute(cp, CHECK_(nullHandle)); } else if (method_attribute_name == vmSymbols::tag_runtime_visible_annotations()) { runtime_visible_annotations_length = method_attribute_length; runtime_visible_annotations = cfs->get_u1_buffer(); assert(runtime_visible_annotations != NULL, "null visible annotations"); - parse_annotations(runtime_visible_annotations, runtime_visible_annotations_length, cp, &parsed_annotations, CHECK_(nullHandle)); + parse_annotations(class_loader, runtime_visible_annotations, runtime_visible_annotations_length, cp, &parsed_annotations, CHECK_(nullHandle)); cfs->skip_u1(runtime_visible_annotations_length, CHECK_(nullHandle)); } else if (PreserveAllAnnotations && method_attribute_name == vmSymbols::tag_runtime_invisible_annotations()) { runtime_invisible_annotations_length = method_attribute_length; @@ -2357,8 +2367,8 @@ // from the methods back up to the containing klass. These flag values // are added to klass's access_flags. -objArrayHandle ClassFileParser::parse_methods(constantPoolHandle cp, bool is_interface, - AccessFlags* promoted_flags, +objArrayHandle ClassFileParser::parse_methods(Handle class_loader, constantPoolHandle cp, + bool is_interface, AccessFlags* promoted_flags, bool* has_final_method, objArrayOop* methods_annotations_oop, objArrayOop* methods_parameter_annotations_oop, @@ -2381,7 +2391,8 @@ objArrayHandle methods_parameter_annotations; objArrayHandle methods_default_annotations; for (int index = 0; index < length; index++) { - methodHandle method = parse_method(cp, is_interface, + methodHandle method = parse_method(class_loader, cp, + is_interface, promoted_flags, &method_annotations, &method_parameter_annotations, @@ -2490,6 +2501,17 @@ } } +// Parse generic_signature attribute for methods and fields +u2 ClassFileParser::parse_generic_signature_attribute(constantPoolHandle cp, TRAPS) { + ClassFileStream* cfs = stream(); + cfs->guarantee_more(2, CHECK_0); // generic_signature_index + u2 generic_signature_index = cfs->get_u2_fast(); + check_property( + valid_symbol_at(cp, generic_signature_index), + "Invalid Signature attribute at constant pool index %u in class file %s", + generic_signature_index, CHECK_0); + return generic_signature_index; +} void ClassFileParser::parse_classfile_sourcefile_attribute(constantPoolHandle cp, TRAPS) { ClassFileStream* cfs = stream(); @@ -2654,18 +2676,19 @@ ClassFileStream* cfs = stream(); u1* current_start = cfs->current(); - cfs->guarantee_more(2, CHECK); // length - int attribute_array_length = cfs->get_u2_fast(); - - guarantee_property(_max_bootstrap_specifier_index < attribute_array_length, - "Short length on BootstrapMethods in class file %s", - CHECK); - guarantee_property(attribute_byte_length > sizeof(u2), "Invalid BootstrapMethods attribute length %u in class file %s", attribute_byte_length, CHECK); + cfs->guarantee_more(attribute_byte_length, CHECK); + + int attribute_array_length = cfs->get_u2_fast(); + + guarantee_property(_max_bootstrap_specifier_index < attribute_array_length, + "Short length on BootstrapMethods in class file %s", + CHECK); + // The attribute contains a counted array of counted tuples of shorts, // represending bootstrap specifiers: // length*{bootstrap_method_index, argument_count*{argument_index}} @@ -2726,7 +2749,8 @@ } -void ClassFileParser::parse_classfile_attributes(constantPoolHandle cp, +void ClassFileParser::parse_classfile_attributes(Handle class_loader, + constantPoolHandle cp, ClassFileParser::ClassAnnotationCollector* parsed_annotations, TRAPS) { ClassFileStream* cfs = stream(); @@ -2809,7 +2833,8 @@ runtime_visible_annotations_length = attribute_length; runtime_visible_annotations = cfs->get_u1_buffer(); assert(runtime_visible_annotations != NULL, "null visible annotations"); - parse_annotations(runtime_visible_annotations, + parse_annotations(class_loader, + runtime_visible_annotations, runtime_visible_annotations_length, cp, parsed_annotations, @@ -3172,7 +3197,8 @@ objArrayOop methods_annotations_oop = NULL; objArrayOop methods_parameter_annotations_oop = NULL; objArrayOop methods_default_annotations_oop = NULL; - objArrayHandle methods = parse_methods(cp, access_flags.is_interface(), + objArrayHandle methods = parse_methods(class_loader, cp, + access_flags.is_interface(), &promoted_flags, &has_final_method, &methods_annotations_oop, @@ -3186,7 +3212,7 @@ // Additional attributes ClassAnnotationCollector parsed_annotations; - parse_classfile_attributes(cp, &parsed_annotations, CHECK_(nullHandle)); + parse_classfile_attributes(class_loader, cp, &parsed_annotations, CHECK_(nullHandle)); // Make sure this is the end of class file stream guarantee_property(cfs->at_eos(), "Extra bytes at the end of class file %s", CHECK_(nullHandle)); diff -r 040adda8e27e -r 928ada621452 src/share/vm/classfile/classFileParser.hpp --- a/src/share/vm/classfile/classFileParser.hpp Sat Jun 14 08:08:08 2014 +0100 +++ b/src/share/vm/classfile/classFileParser.hpp Fri Apr 18 22:04:33 2014 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -102,7 +102,7 @@ assert((int)_annotation_LIMIT <= (int)sizeof(_annotations_present) * BitsPerByte, ""); } // If this annotation name has an ID, report it (or _none). - ID annotation_index(Symbol* name); + ID annotation_index(Handle class_loader, bool is_anonymous, Symbol* name); // Set the annotation name: void set_annotation(ID id) { assert((int)id >= 0 && (int)id < (int)_annotation_LIMIT, "oob"); @@ -169,14 +169,14 @@ u2* java_fields_count_ptr, TRAPS); // Method parsing - methodHandle parse_method(constantPoolHandle cp, bool is_interface, - AccessFlags* promoted_flags, + methodHandle parse_method(Handle class_loader, constantPoolHandle cp, + bool is_interface, AccessFlags* promoted_flags, typeArrayHandle* method_annotations, typeArrayHandle* method_parameter_annotations, typeArrayHandle* method_default_annotations, TRAPS); - objArrayHandle parse_methods (constantPoolHandle cp, bool is_interface, - AccessFlags* promoted_flags, + objArrayHandle parse_methods (Handle class_loader, constantPoolHandle cp, + bool is_interface, AccessFlags* promoted_flags, bool* has_final_method, objArrayOop* methods_annotations_oop, objArrayOop* methods_parameter_annotations_oop, @@ -202,6 +202,7 @@ typeArrayOop parse_stackmap_table(u4 code_attribute_length, TRAPS); // Classfile attribute parsing + u2 parse_generic_signature_attribute(constantPoolHandle cp, TRAPS); void parse_classfile_sourcefile_attribute(constantPoolHandle cp, TRAPS); void parse_classfile_source_debug_extension_attribute(constantPoolHandle cp, int length, TRAPS); u2 parse_classfile_inner_classes_attribute(u1* inner_classes_attribute_start, @@ -210,7 +211,8 @@ u2 enclosing_method_method_index, constantPoolHandle cp, TRAPS); - void parse_classfile_attributes(constantPoolHandle cp, + void parse_classfile_attributes(Handle class_loader, + constantPoolHandle cp, ClassAnnotationCollector* parsed_annotations, TRAPS); void parse_classfile_synthetic_attribute(constantPoolHandle cp, TRAPS); @@ -224,7 +226,7 @@ int runtime_invisible_annotations_length, TRAPS); int skip_annotation(u1* buffer, int limit, int index); int skip_annotation_value(u1* buffer, int limit, int index); - void parse_annotations(u1* buffer, int limit, constantPoolHandle cp, + void parse_annotations(Handle class_loader, u1* buffer, int limit, constantPoolHandle cp, /* Results (currently, only one result is supported): */ AnnotationCollector* result, TRAPS); @@ -335,6 +337,12 @@ : cp->tag_at(index).is_klass_reference()); } + // Checks that the cpool index is in range and is a utf8 + bool valid_symbol_at(constantPoolHandle cp, int cpool_index) { + return (cp->is_within_bounds(cpool_index) && + cp->tag_at(cpool_index).is_utf8()); + } + public: // Constructor ClassFileParser(ClassFileStream* st) { set_stream(st); } diff -r 040adda8e27e -r 928ada621452 src/share/vm/classfile/stackMapTable.cpp --- a/src/share/vm/classfile/stackMapTable.cpp Sat Jun 14 08:08:08 2014 +0100 +++ b/src/share/vm/classfile/stackMapTable.cpp Fri Apr 18 22:04:33 2014 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -134,6 +134,7 @@ } // check if uninitialized objects exist on backward branches check_new_object(frame, target, CHECK_VERIFY(frame->verifier())); + frame->verifier()->update_furthest_jump(target); } void StackMapTable::check_new_object( diff -r 040adda8e27e -r 928ada621452 src/share/vm/classfile/verifier.cpp --- a/src/share/vm/classfile/verifier.cpp Sat Jun 14 08:08:08 2014 +0100 +++ b/src/share/vm/classfile/verifier.cpp Fri Apr 18 22:04:33 2014 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -629,6 +629,9 @@ bool no_control_flow = false; // Set to true when there is no direct control // flow from current instruction to the next // instruction in sequence + + set_furthest_jump(0); + From andrew at icedtea.classpath.org Tue Jul 15 21:12:13 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:12:13 +0000 Subject: /hg/release/icedtea7-forest-2.5/jdk: 34 new changesets Message-ID: changeset 9e2c83b933da in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=9e2c83b933da author: jbachorik date: Fri Mar 07 10:15:36 2014 +0100 8029755: Enhance subject class Reviewed-by: sla, dfuchs, hawtin changeset d0c90bc3203b in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=d0c90bc3203b author: robm date: Tue Apr 01 00:33:47 2014 +0100 8031346: Enhance RSA key handling Reviewed-by: xuelei, coffeys changeset 78416d802d8a in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=78416d802d8a author: dbuck date: Tue Mar 11 14:27:57 2014 -0700 8033055: Issues in 2d Reviewed-by: bae, prr changeset 71877574200d in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=71877574200d author: jbachorik date: Thu Feb 06 09:35:26 2014 +0100 8033301: Build more informative InfoBuilder Reviewed-by: sla, ahgross changeset 6c56c39d158e in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=6c56c39d158e author: prr date: Mon Mar 03 09:21:16 2014 -0800 8034267: Probabilistic native crash Reviewed-by: bae, serb, mschoene changeset 846120fc3c56 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=846120fc3c56 author: mbankal date: Wed Mar 05 20:56:53 2014 -0800 8034272: Do not cram data into CRAM arrays Reviewed-by: vinnie, coffeys, ahgross changeset dc9f60e42c09 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=dc9f60e42c09 author: robm date: Fri Apr 04 15:24:14 2014 +0100 8035004: Provider provides less service Reviewed-by: mullan, coffeys changeset f32deedfb537 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=f32deedfb537 author: igerasim date: Tue Mar 04 23:56:51 2014 +0400 8035009: Make Proxy representations consistent Reviewed-by: ahgross, jfranck changeset c0001bb7ce01 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=c0001bb7ce01 author: malenkov date: Thu Mar 13 14:58:55 2014 +0400 8035699: File choosers should be choosier Reviewed-by: alexsch, art, skoivu changeset dcb5dd7324ea in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=dcb5dd7324ea author: twisti date: Wed Mar 19 10:48:43 2014 -0700 8035788: Provide more consistency for lookups Reviewed-by: jrose, vlivanov, ahgross changeset c3f0ae45267b in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=c3f0ae45267b author: vlivanov date: Thu Mar 06 15:27:05 2014 +0400 8035793: Maximum arity maxed out Reviewed-by: jrose, twisti, ahgross changeset d09ddbd2412c in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=d09ddbd2412c author: robm date: Thu Mar 27 17:28:32 2014 +0000 8036571: (process) Process process arguments carefully Reviewed-by: rriggs, coffeys changeset 9df8c6458818 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=9df8c6458818 author: kizune date: Tue Mar 25 11:28:26 2014 -0700 8037046: Validate libraries to be loaded Reviewed-by: ksrini, ahgross changeset 8a34e29d3d66 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=8a34e29d3d66 author: xuelei date: Wed Mar 26 03:45:30 2014 +0000 8037162: More robust DH exchanges Reviewed-by: weijun, asmotrak, ahgross, robm changeset a1b45c649b2d in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=a1b45c649b2d author: igerasim date: Fri Apr 25 13:33:04 2014 +0400 8039520: More atomicity of atomic updates Reviewed-by: dl, skoivu, chegar changeset 06c2f27f9fb1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=06c2f27f9fb1 author: kizune date: Wed Apr 09 13:16:33 2014 +0400 8001108: an attempt to use "" as a method name should elicit NoSuchMethodException Reviewed-by: twisti changeset 4af97bce2a64 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=4af97bce2a64 author: kizune date: Wed Apr 09 13:06:37 2014 +0400 8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException Reviewed-by: twisti changeset 46ef40e753c9 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=46ef40e753c9 author: dmarkov date: Thu Apr 03 11:37:02 2014 +0400 8013611: Modal dialog fails to obtain keyboard focus Reviewed-by: leonidr changeset eb7088257217 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=eb7088257217 author: yhuang date: Tue May 06 22:15:25 2014 -0700 8013836: getFirstDayOfWeek reports wrong day for pt-BR locale Reviewed-by: naoto changeset 36e00b819724 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=36e00b819724 author: bae date: Thu Apr 03 17:09:54 2014 +0400 8019990: IM candidate window appears on the South-East corner of the display. Reviewed-by: bagiras, serb changeset dd67c72efeb3 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=dd67c72efeb3 author: anashaty date: Fri Feb 07 16:00:49 2014 +0400 8023990: Regression: postscript size increase from 6u18 Reviewed-by: prr, bae changeset 911255f51834 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=911255f51834 author: kizune date: Wed Apr 09 13:00:26 2014 +0400 8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError Reviewed-by: twisti changeset ce49a0e66877 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=ce49a0e66877 author: kizune date: Thu Apr 10 13:55:57 2014 +0400 8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping Reviewed-by: twisti changeset 80bf5423c9f5 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=80bf5423c9f5 author: igerasim date: Thu Feb 20 16:01:35 2014 +0400 8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently Reviewed-by: chegar, ewang changeset 925adfa9ec52 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=925adfa9ec52 author: pchelko date: Tue Feb 25 19:33:43 2014 +0400 8028285: RMI Thread can no longer call out to AWT Reviewed-by: art, serb, ddehaven changeset 07b27dc58b64 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=07b27dc58b64 author: kizune date: Mon Feb 03 21:46:36 2014 +0400 8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending Summary: Additional review by Chris Ries Reviewed-by: jfranck, ksrini changeset 36c573b56d77 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=36c573b56d77 author: mcherkas date: Fri Apr 11 13:07:30 2014 +0400 8031075: [Regression] focus disappears with shift+tab on dialog having one focus component Reviewed-by: art, serb changeset 01302228866b in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=01302228866b author: kizune date: Mon Apr 14 13:48:47 2014 +0400 8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package Reviewed-by: twisti changeset 0d992147d2c1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=0d992147d2c1 author: kizune date: Mon Apr 21 13:37:43 2014 +0400 8033278: Missed access checks for Lookup.unreflect* after 8032585 Reviewed-by: twisti changeset 3eb9292da245 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=3eb9292da245 author: vkempik date: Tue Mar 25 14:11:22 2014 +0100 8036786: Update jdk7 testlibrary to match jdk8 Summary: Update testlibrary in jdk7, cumulative backport Reviewed-by: alanb, sla changeset 23e7becde5b1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=23e7becde5b1 author: anashaty date: Tue May 13 15:41:23 2014 +0400 8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 Reviewed-by: pchelko, ant changeset f77f5440f6df in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=f77f5440f6df author: pchelko date: Mon May 19 18:31:48 2014 +0400 8042590: Running form URL throws NPE Reviewed-by: anthony, serb changeset d04ab74d7e60 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=d04ab74d7e60 author: aefimov date: Mon May 19 01:51:35 2014 +0400 8043012: (tz) Support tzdata2014c Reviewed-by: okutsu, peytoia changeset a7b38ec2f074 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=a7b38ec2f074 author: mbankal date: Fri Jul 04 14:03:26 2014 +0100 8031340: Better TLS/EC management Reviewed-by: valeriep, coffeys, ahgross diffstat: make/java/util/FILES_properties.gmk | 1 + make/sun/javazic/tzdata/VERSION | 2 +- make/sun/javazic/tzdata/africa | 43 + make/sun/javazic/tzdata/asia | 16 - make/sun/javazic/tzdata/europe | 4 + make/sun/security/ec/mapfile-vers | 3 +- src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java | 93 +- src/share/classes/com/sun/jmx/remote/util/CacheMap.java | 121 --- src/share/classes/com/sun/security/sasl/CramMD5Base.java | 20 +- src/share/classes/java/awt/Component.java | 2 +- src/share/classes/java/awt/KeyboardFocusManager.java | 72 +- src/share/classes/java/lang/ProcessBuilder.java | 6 + src/share/classes/java/lang/invoke/DirectMethodHandle.java | 110 +- src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java | 6 + src/share/classes/java/lang/invoke/Invokers.java | 1 + src/share/classes/java/lang/invoke/MethodHandle.java | 10 + src/share/classes/java/lang/invoke/MethodHandleImpl.java | 34 +- src/share/classes/java/lang/invoke/MethodHandles.java | 128 +++- src/share/classes/java/lang/reflect/Proxy.java | 12 +- src/share/classes/java/security/Provider.java | 36 +- src/share/classes/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java | 2 + src/share/classes/javax/swing/filechooser/FileSystemView.java | 3 +- src/share/classes/sun/awt/AppContext.java | 14 + src/share/classes/sun/awt/FontConfiguration.java | 4 +- src/share/classes/sun/invoke/util/VerifyAccess.java | 33 +- src/share/classes/sun/security/ec/ECKeyPairGenerator.java | 23 +- src/share/classes/sun/security/rsa/RSACore.java | 323 ++++++-- src/share/classes/sun/security/util/KeyUtil.java | 13 +- src/share/classes/sun/util/resources/CalendarData_pt_BR.properties | 40 + src/share/native/com/sun/java/util/jar/pack/defines.h | 3 +- src/share/native/com/sun/java/util/jar/pack/jni.cpp | 99 +- src/share/native/sun/awt/medialib/awt_ImagingLib.c | 26 +- src/share/native/sun/font/freetypeScaler.c | 33 +- src/share/native/sun/management/GcInfoBuilder.c | 2 +- src/share/native/sun/security/ec/ECC_JNI.cpp | 119 +- src/solaris/classes/sun/font/FcFontConfiguration.java | 19 +- src/windows/bin/java_md.c | 8 + src/windows/classes/sun/awt/shell/Win32ShellFolder2.java | 9 +- src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java | 10 + src/windows/classes/sun/awt/windows/ThemeReader.java | 32 +- src/windows/classes/sun/awt/windows/WToolkit.java | 18 +- src/windows/classes/sun/awt/windows/WWindowPeer.java | 1 + src/windows/native/sun/windows/awt_Component.cpp | 4 +- src/windows/native/sun/windows/awt_Frame.cpp | 2 + test/java/awt/Focus/8013611/JDK8013611.java | 111 ++ test/java/awt/Focus/DialogTraversFocusBackTest/DialogTraversFocusBackTest.java | 94 ++ test/java/awt/Frame/7024749/bug7024749.java | 2 +- test/java/lang/invoke/JavaDocExamplesTest.java | 99 ++- test/java/lang/invoke/MethodHandlesTest.java | 90 +- test/java/lang/invoke/ProtectedMemberDifferentPackage/Test.java | 33 + test/java/lang/invoke/ProtectedMemberDifferentPackage/p1/T2.java | 127 +++ test/java/lang/invoke/ProtectedMemberDifferentPackage/p2/T3.java | 32 + test/java/nio/channels/Selector/ByteServer.java | 68 +- test/java/nio/channels/Selector/ReadAfterConnect.java | 34 +- test/java/nio/channels/Selector/SelectAfterRead.java | 92 +- test/java/nio/channels/Selector/SelectWrite.java | 43 +- test/javax/management/remote/mandatory/util/CacheMapTest.java | 110 -- test/lib/testlibrary/AssertsTest.java | 237 ++++++ test/lib/testlibrary/ClassFileInstaller.java | 5 +- test/lib/testlibrary/OutputAnalyzerReportingTest.java | 122 +++ test/lib/testlibrary/jdk/testlibrary/Asserts.java | 395 ++++++++++ test/lib/testlibrary/jdk/testlibrary/InputArguments.java | 88 ++ test/lib/testlibrary/jdk/testlibrary/JDKToolFinder.java | 106 ++ test/lib/testlibrary/jdk/testlibrary/JDKToolLauncher.java | 134 +++ test/lib/testlibrary/jdk/testlibrary/JcmdBase.java | 47 +- test/lib/testlibrary/jdk/testlibrary/JdkFinder.java | 78 - test/lib/testlibrary/jdk/testlibrary/OutputAnalyzer.java | 157 ++- test/lib/testlibrary/jdk/testlibrary/Platform.java | 103 ++ test/lib/testlibrary/jdk/testlibrary/ProcessThread.java | 143 +++ test/lib/testlibrary/jdk/testlibrary/ProcessTools.java | 195 ++++- test/lib/testlibrary/jdk/testlibrary/StreamPumper.java | 151 +++- test/lib/testlibrary/jdk/testlibrary/TestThread.java | 249 ++++++ test/lib/testlibrary/jdk/testlibrary/Utils.java | 232 +++++ test/lib/testlibrary/jdk/testlibrary/XRun.java | 56 + test/sun/text/resources/LocaleData | 4 +- test/sun/text/resources/LocaleDataTest.java | 4 +- 76 files changed, 3972 insertions(+), 1029 deletions(-) diffs (truncated from 6869 to 500 lines): diff -r 59d534f8c9fb -r a7b38ec2f074 make/java/util/FILES_properties.gmk --- a/make/java/util/FILES_properties.gmk Sat Jun 14 08:08:05 2014 +0100 +++ b/make/java/util/FILES_properties.gmk Fri Jul 04 14:03:26 2014 +0100 @@ -107,6 +107,7 @@ sun/util/resources/CalendarData_pl.properties \ sun/util/resources/CalendarData_pt.properties \ sun/util/resources/CalendarData_pt_PT.properties \ + sun/util/resources/CalendarData_pt_BR.properties \ sun/util/resources/CalendarData_ro.properties \ sun/util/resources/CalendarData_ru.properties \ sun/util/resources/CalendarData_sk.properties \ diff -r 59d534f8c9fb -r a7b38ec2f074 make/sun/javazic/tzdata/VERSION --- a/make/sun/javazic/tzdata/VERSION Sat Jun 14 08:08:05 2014 +0100 +++ b/make/sun/javazic/tzdata/VERSION Fri Jul 04 14:03:26 2014 +0100 @@ -21,4 +21,4 @@ # or visit www.oracle.com if you need additional information or have any # questions. # -tzdata2014b +tzdata2014c diff -r 59d534f8c9fb -r a7b38ec2f074 make/sun/javazic/tzdata/africa --- a/make/sun/javazic/tzdata/africa Sat Jun 14 08:08:05 2014 +0100 +++ b/make/sun/javazic/tzdata/africa Fri Jul 04 14:03:26 2014 +0100 @@ -358,11 +358,54 @@ # http://www.worldtimezone.com/dst_news/dst_news_egypt02.html # +# From Ahmad El-Dardiry (2014-05-07): +# Egypt is to change back to Daylight system on May 15 +# http://english.ahram.org.eg/NewsContent/1/64/100735/Egypt/Politics-/Egypts-government-to-reapply-daylight-saving-time-.aspx + +# From Gunther Vermier (2015-05-13): +# our Egypt office confirms that the change will be at 15 May "midnight" (24:00) + +# From Paul Eggert (2014-05-13): +# Sarah El Deeb and Lee Keath of AP report that the Egyptian government says +# the change is because of blackouts in Cairo, even though Ahram Online (cited +# above) says DST had no affect on electricity consumption. The AP story says +# DST will not be observed during Ramadan. There is no information about when +# DST will end. See: +# http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833 +# +# For now, guess that later transitions will use 2010's rules, and that +# Egypt will agree with Morocco (see below) about the date Ramadan starts and +# ends, though (unlike Morocco) it will switch at 00:00 standard time. In +# Egypt the spring-forward transitions are removed for 2020-2022, when the +# guessed spring-forward date falls during the estimated Ramadan, and all +# transitions removed for 2023-2038, where the estimated Ramadan falls entirely +# outside the guessed daylight-saving time. Ramadan intrudes on the guessed +# DST starting in 2039, but that's beyond our somewhat-arbitrary cutoff. + Rule Egypt 2008 only - Aug lastThu 23:00s 0 - Rule Egypt 2009 only - Aug 20 23:00s 0 - Rule Egypt 2010 only - Aug 11 0:00 0 - Rule Egypt 2010 only - Sep 10 0:00 1:00 S Rule Egypt 2010 only - Sep lastThu 23:00s 0 - +Rule Egypt 2014 only - May 15 24:00 1:00 S +Rule Egypt 2014 only - Jun 29 0:00s 0 - +Rule Egypt 2014 only - Jul 29 0:00s 1:00 S +Rule Egypt 2014 max - Sep lastThu 23:00s 0 - +Rule Egypt 2015 2019 - Apr lastFri 0:00s 1:00 S +Rule Egypt 2015 only - Jun 18 0:00s 0 - +Rule Egypt 2015 only - Jul 18 0:00s 1:00 S +Rule Egypt 2016 only - Jun 7 0:00s 0 - +Rule Egypt 2016 only - Jul 7 0:00s 1:00 S +Rule Egypt 2017 only - May 27 0:00s 0 - +Rule Egypt 2017 only - Jun 26 0:00s 1:00 S +Rule Egypt 2018 only - May 16 0:00s 0 - +Rule Egypt 2018 only - Jun 15 0:00s 1:00 S +Rule Egypt 2019 only - May 6 0:00s 0 - +Rule Egypt 2019 only - Jun 5 0:00s 1:00 S +Rule Egypt 2020 only - May 24 0:00s 1:00 S +Rule Egypt 2021 only - May 13 0:00s 1:00 S +Rule Egypt 2022 only - May 3 0:00s 1:00 S +Rule Egypt 2023 max - Apr lastFri 0:00s 1:00 S # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Cairo 2:05:09 - LMT 1900 Oct diff -r 59d534f8c9fb -r a7b38ec2f074 make/sun/javazic/tzdata/asia --- a/make/sun/javazic/tzdata/asia Sat Jun 14 08:08:05 2014 +0100 +++ b/make/sun/javazic/tzdata/asia Fri Jul 04 14:03:26 2014 +0100 @@ -1370,22 +1370,6 @@ # "Jordan will switch to winter time on Friday, October 27". # -# From Phil Pizzey (2009-04-02): -# ...I think I may have spotted an error in the timezone data for -# Jordan. -# The current (2009d) asia file shows Jordan going to daylight -# saving -# time on the last Thursday in March. -# -# Rule Jordan 2000 max - Mar lastThu 0:00s 1:00 S -# -# However timeanddate.com, which I usually find reliable, shows Jordan -# going to daylight saving time on the last Friday in March since 2002. -# Please see -# -# http://www.timeanddate.com/worldclock/timezone.html?n=11 -# - # From Steffen Thorsen (2009-04-02): # This single one might be good enough, (2009-03-24, Arabic): # diff -r 59d534f8c9fb -r a7b38ec2f074 make/sun/javazic/tzdata/europe --- a/make/sun/javazic/tzdata/europe Sat Jun 14 08:08:05 2014 +0100 +++ b/make/sun/javazic/tzdata/europe Fri Jul 04 14:03:26 2014 +0100 @@ -2989,6 +2989,10 @@ # From Alexander Krivenyshev (2014-03-17): # time change at 2:00 (2am) on March 30, 2014 # http://vz.ru/news/2014/3/17/677464.html +# From Paul Eggert (2014-03-30): +# Simferopol and Sevastopol reportedly changed their central town clocks +# late the previous day, but this appears to have been ceremonial +# and the discrepancies are small enough to not worry about. 2:00 EU EE%sT 2014 Mar 30 2:00 4:00 - MSK diff -r 59d534f8c9fb -r a7b38ec2f074 make/sun/security/ec/mapfile-vers --- a/make/sun/security/ec/mapfile-vers Sat Jun 14 08:08:05 2014 +0100 +++ b/make/sun/security/ec/mapfile-vers Fri Jul 04 14:03:26 2014 +0100 @@ -1,5 +1,5 @@ # -# Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2009, 2014, Oracle and/or its affiliates. All rights reserved. # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. # # This code is free software; you can redistribute it and/or modify it @@ -28,7 +28,6 @@ SUNWprivate_1.1 { global: Java_sun_security_ec_ECKeyPairGenerator_generateECKeyPair; - Java_sun_security_ec_ECKeyPairGenerator_getEncodedBytes; Java_sun_security_ec_ECDSASignature_signDigest; Java_sun_security_ec_ECDSASignature_verifySignedDigest; Java_sun_security_ec_ECDHKeyAgreement_deriveKey; diff -r 59d534f8c9fb -r a7b38ec2f074 src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java --- a/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java Sat Jun 14 08:08:05 2014 +0100 +++ b/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java Fri Jul 04 14:03:26 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, 2006, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -34,22 +34,14 @@ import javax.management.remote.SubjectDelegationPermission; -import com.sun.jmx.remote.util.CacheMap; -import java.util.ArrayList; -import java.util.Collection; +import java.util.*; public class SubjectDelegator { - private static final int PRINCIPALS_CACHE_SIZE = 10; - private static final int ACC_CACHE_SIZE = 10; - - private CacheMap principalsCache; - private CacheMap accCache; - /* Return the AccessControlContext appropriate to execute an operation on behalf of the delegatedSubject. If the authenticatedAccessControlContext does not have permission to delegate to that subject, throw SecurityException. */ - public synchronized AccessControlContext + public AccessControlContext delegatedContext(AccessControlContext authenticatedACC, Subject delegatedSubject, boolean removeCallerContext) @@ -58,56 +50,14 @@ if (System.getSecurityManager() != null && authenticatedACC == null) { throw new SecurityException("Illegal AccessControlContext: null"); } - if (principalsCache == null || accCache == null) { - principalsCache = - new CacheMap<>(PRINCIPALS_CACHE_SIZE); - accCache = - new CacheMap<>(ACC_CACHE_SIZE); - } - - // Retrieve the principals for the given - // delegated subject from the cache - // - Principal[] delegatedPrincipals = principalsCache.get(delegatedSubject); - - // Convert the set of principals stored in the - // delegated subject into an array of principals - // and store it in the cache - // - if (delegatedPrincipals == null) { - delegatedPrincipals = - delegatedSubject.getPrincipals().toArray(new Principal[0]); - principalsCache.put(delegatedSubject, delegatedPrincipals); - } - - // Retrieve the access control context for the - // given delegated subject from the cache - // - AccessControlContext delegatedACC = accCache.get(delegatedSubject); - - // Build the access control context to be used - // when executing code as the delegated subject - // and store it in the cache - // - if (delegatedACC == null) { - if (removeCallerContext) { - delegatedACC = - JMXSubjectDomainCombiner.getDomainCombinerContext( - delegatedSubject); - } else { - delegatedACC = - JMXSubjectDomainCombiner.getContext(delegatedSubject); - } - accCache.put(delegatedSubject, delegatedACC); - } // Check if the subject delegation permission allows the // authenticated subject to assume the identity of each // principal in the delegated subject // - final Principal[] dp = delegatedPrincipals; - final Collection permissions = new ArrayList<>(dp.length); - for(Principal p : dp) { + Collection ps = getSubjectPrincipals(delegatedSubject); + final Collection permissions = new ArrayList<>(ps.size()); + for(Principal p : ps) { final String pname = p.getClass().getName() + "." + p.getName(); permissions.add(new SubjectDelegationPermission(pname)); } @@ -122,7 +72,15 @@ }; AccessController.doPrivileged(action, authenticatedACC); - return delegatedACC; + return getDelegatedAcc(delegatedSubject, removeCallerContext); + } + + private AccessControlContext getDelegatedAcc(Subject delegatedSubject, boolean removeCallerContext) { + if (removeCallerContext) { + return JMXSubjectDomainCombiner.getDomainCombinerContext(delegatedSubject); + } else { + return JMXSubjectDomainCombiner.getContext(delegatedSubject); + } } /** @@ -137,11 +95,9 @@ public static synchronized boolean checkRemoveCallerContext(Subject subject) { try { - final Principal[] dp = - subject.getPrincipals().toArray(new Principal[0]); - for (int i = 0 ; i < dp.length ; i++) { + for (Principal p : getSubjectPrincipals(subject)) { final String pname = - dp[i].getClass().getName() + "." + dp[i].getName(); + p.getClass().getName() + "." + p.getName(); final Permission sdp = new SubjectDelegationPermission(pname); AccessController.checkPermission(sdp); @@ -151,4 +107,19 @@ } return true; } + + /** + * Retrieves the {@linkplain Subject} principals + * @param subject The subject + * @return If the {@code Subject} is immutable it will return the principals directly. + * If the {@code Subject} is mutable it will create an unmodifiable copy. + */ + private static Collection getSubjectPrincipals(Subject subject) { + if (subject.isReadOnly()) { + return subject.getPrincipals(); + } + + List principals = Arrays.asList(subject.getPrincipals().toArray(new Principal[0])); + return Collections.unmodifiableList(principals); + } } diff -r 59d534f8c9fb -r a7b38ec2f074 src/share/classes/com/sun/jmx/remote/util/CacheMap.java --- a/src/share/classes/com/sun/jmx/remote/util/CacheMap.java Sat Jun 14 08:08:05 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,121 +0,0 @@ -/* - * Copyright (c) 2003, 2006, 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. Oracle designates this - * particular file as subject to the "Classpath" exception as provided - * by Oracle in the LICENSE file that accompanied this code. - * - * 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 com.sun.jmx.remote.util; - -import java.lang.ref.SoftReference; -import java.util.Iterator; -import java.util.LinkedList; -import java.util.List; -import java.util.WeakHashMap; - -import com.sun.jmx.mbeanserver.Util; - -/** - *

Like WeakHashMap, except that the keys of the n most - * recently-accessed entries are kept as {@link SoftReference soft - * references}. Accessing an element means creating it, or retrieving - * it with {@link #get(Object) get}. Because these entries are kept - * with soft references, they will tend to remain even if their keys - * are not referenced elsewhere. But if memory is short, they will - * be removed.

- */ -public class CacheMap extends WeakHashMap { - /** - *

Create a CacheMap that can keep up to - * nSoftReferences as soft references.

- * - * @param nSoftReferences Maximum number of keys to keep as soft - * references. Access times for {@link #get(Object) get} and - * {@link #put(Object, Object) put} have a component that scales - * linearly with nSoftReferences, so this value - * should not be too great. - * - * @throws IllegalArgumentException if - * nSoftReferences is negative. - */ - public CacheMap(int nSoftReferences) { - if (nSoftReferences < 0) { - throw new IllegalArgumentException("nSoftReferences = " + - nSoftReferences); - } - this.nSoftReferences = nSoftReferences; - } - - public V put(K key, V value) { - cache(key); - return super.put(key, value); - } - - public V get(Object key) { - cache(Util.cast(key)); - return super.get(key); - } - - /* We don't override remove(Object) or try to do something with - the map's iterators to detect removal. So we may keep useless - entries in the soft reference list for keys that have since - been removed. The assumption is that entries are added to the - cache but never removed. But the behavior is not wrong if - they are in fact removed -- the caching is just less - performant. */ - - private void cache(K key) { - Iterator> it = cache.iterator(); - while (it.hasNext()) { - SoftReference sref = it.next(); - K key1 = sref.get(); - if (key1 == null) - it.remove(); - else if (key.equals(key1)) { - // Move this element to the head of the LRU list - it.remove(); - cache.add(0, sref); - return; - } - } - - int size = cache.size(); - if (size == nSoftReferences) { - if (size == 0) - return; // degenerate case, equivalent to WeakHashMap - it.remove(); - } - - cache.add(0, new SoftReference(key)); - } - - /* List of soft references for the most-recently referenced keys. - The list is in most-recently-used order, i.e. the first element - is the most-recently referenced key. There are never more than - nSoftReferences elements of this list. - - If we didn't care about J2SE 1.3 compatibility, we could use - LinkedHashSet in conjunction with a subclass of SoftReference - whose equals and hashCode reflect the referent. */ - private final LinkedList> cache = - new LinkedList>(); - private final int nSoftReferences; -} diff -r 59d534f8c9fb -r a7b38ec2f074 src/share/classes/com/sun/security/sasl/CramMD5Base.java --- a/src/share/classes/com/sun/security/sasl/CramMD5Base.java Sat Jun 14 08:08:05 2014 +0100 +++ b/src/share/classes/com/sun/security/sasl/CramMD5Base.java Fri Jul 04 14:03:26 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -32,6 +32,7 @@ import java.security.NoSuchAlgorithmException; import java.security.MessageDigest; +import java.util.Arrays; import java.util.logging.Logger; /** @@ -159,7 +160,7 @@ MessageDigest md5 = MessageDigest.getInstance("MD5"); /* digest the key if longer than 64 bytes */ - if (key.length > 64) { + if (key.length > MD5_BLOCKSIZE) { key = md5.digest(key); } @@ -169,13 +170,9 @@ int i; /* store key in pads */ - for (i = 0; i < MD5_BLOCKSIZE; i++) { - for ( ; i < key.length; i++) { - ipad[i] = key[i]; - opad[i] = key[i]; - } - ipad[i] = 0x00; - opad[i] = 0x00; + for (i = 0; i < key.length; i++) { + ipad[i] = key[i]; + opad[i] = key[i]; } /* XOR key with pads */ @@ -207,6 +204,11 @@ } } + Arrays.fill(ipad, (byte)0); + Arrays.fill(opad, (byte)0); + ipad = null; + opad = null; + return (digestString.toString()); } diff -r 59d534f8c9fb -r a7b38ec2f074 src/share/classes/java/awt/Component.java --- a/src/share/classes/java/awt/Component.java Sat Jun 14 08:08:05 2014 +0100 +++ b/src/share/classes/java/awt/Component.java Fri Jul 04 14:03:26 2014 +0100 @@ -7922,7 +7922,7 @@ res = toFocus.requestFocusInWindow(CausedFocusEvent.Cause.TRAVERSAL_BACKWARD); } } - if (!res) { + if (clearOnFailure && !res) { if (focusLog.isLoggable(PlatformLogger.FINER)) { focusLog.finer("clear global focus owner"); } diff -r 59d534f8c9fb -r a7b38ec2f074 src/share/classes/java/awt/KeyboardFocusManager.java --- a/src/share/classes/java/awt/KeyboardFocusManager.java Sat Jun 14 08:08:05 2014 +0100 +++ b/src/share/classes/java/awt/KeyboardFocusManager.java Fri Jul 04 14:03:26 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -248,15 +248,7 @@ public static void setCurrentKeyboardFocusManager( KeyboardFocusManager newManager) throws SecurityException { - SecurityManager security = System.getSecurityManager(); - if (security != null) { - if (replaceKeyboardFocusManagerPermission == null) { - replaceKeyboardFocusManagerPermission = - new AWTPermission("replaceKeyboardFocusManager"); - } - security. - checkPermission(replaceKeyboardFocusManagerPermission); - } + checkReplaceKFMPermission(); From andrew at icedtea.classpath.org Tue Jul 15 21:21:16 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:21:16 +0000 Subject: /hg/release/icedtea7-forest-2.4/corba: 8042789: org.omg.CORBA.OR... Message-ID: changeset 58b31c5bf14e in /hg/release/icedtea7-forest-2.4/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/corba?cmd=changeset;node=58b31c5bf14e author: coffeys date: Sat Jun 07 14:28:56 2014 +0100 8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader Reviewed-by: alanb, lancea diffstat: src/share/classes/org/omg/CORBA/ORB.java | 18 +----------------- 1 files changed, 1 insertions(+), 17 deletions(-) diffs (33 lines): diff -r 39f5a0f1b47c -r 58b31c5bf14e src/share/classes/org/omg/CORBA/ORB.java --- a/src/share/classes/org/omg/CORBA/ORB.java Thu Apr 17 17:20:03 2014 +0100 +++ b/src/share/classes/org/omg/CORBA/ORB.java Sat Jun 07 14:28:56 2014 +0100 @@ -291,28 +291,12 @@ (className.equals("com.sun.corba.se.impl.orb.ORBSingleton"))) { singleton = new com.sun.corba.se.impl.orb.ORBSingleton(); } else { - singleton = create_impl_with_systemclassloader(className); + singleton = create_impl(className); } } return singleton; } - private static ORB create_impl_with_systemclassloader(String className) { - - try { - ReflectUtil.checkPackageAccess(className); - ClassLoader cl = ClassLoader.getSystemClassLoader(); - Class orbBaseClass = org.omg.CORBA.ORB.class; - Class singletonOrbClass = Class.forName(className, true, cl).asSubclass(orbBaseClass); - return (ORB)singletonOrbClass.newInstance(); - } catch (Throwable ex) { - SystemException systemException = new INITIALIZE( - "can't instantiate default ORB implementation " + className); - systemException.initCause(ex); - throw systemException; - } - } - private static ORB create_impl(String className) { ClassLoader cl = Thread.currentThread().getContextClassLoader(); if (cl == null) From andrew at icedtea.classpath.org Tue Jul 15 21:21:23 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:21:23 +0000 Subject: /hg/release/icedtea7-forest-2.4/jaxp: 2 new changesets Message-ID: changeset 6542860fc93f in /hg/release/icedtea7-forest-2.4/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jaxp?cmd=changeset;node=6542860fc93f author: aefimov date: Wed Jan 22 23:41:05 2014 +0400 8031540: Introduce document horizon Reviewed-by: joehw changeset 95d394340fda in /hg/release/icedtea7-forest-2.4/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jaxp?cmd=changeset;node=95d394340fda author: mfang date: Wed May 07 08:37:39 2014 -0700 8042264: 7u65 l10n resource file translation update 1 Reviewed-by: joehw, yhuang diffstat: src/com/sun/org/apache/xalan/internal/XalanConstants.java | 12 +++ src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java | 4 +- src/com/sun/org/apache/xerces/internal/impl/Constants.java | 12 +++ src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java | 16 ++++ src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java | 1 + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties | 1 + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties | 28 +------- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties | 26 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties | 26 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties | 26 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties | 27 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties | 26 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties | 36 +-------- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties | 28 +------- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties | 25 +------ src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties | 26 +------ src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java | 4 + src/com/sun/org/apache/xerces/internal/utils/XMLSecurityManager.java | 10 +- 18 files changed, 73 insertions(+), 261 deletions(-) diffs (truncated from 616 to 500 lines): diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xalan/internal/XalanConstants.java --- a/src/com/sun/org/apache/xalan/internal/XalanConstants.java Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xalan/internal/XalanConstants.java Wed May 07 08:37:39 2014 -0700 @@ -91,6 +91,13 @@ */ public static final String JDK_XML_NAME_LIMIT = ORACLE_JAXP_PROPERTY_PREFIX + "maxXMLNameLimit"; + + /** + * JDK maxElementDepth limit + */ + public static final String JDK_MAX_ELEMENT_DEPTH = + ORACLE_JAXP_PROPERTY_PREFIX + "maxElementDepth"; + /** * JDK property indicating whether the parser shall print out entity * count information @@ -139,6 +146,11 @@ */ public static final String SP_XML_NAME_LIMIT = "jdk.xml.maxXMLNameLimit"; + /** + * JDK maxElementDepth limit + */ + public static final String SP_MAX_ELEMENT_DEPTH = "jdk.xml.maxElementDepth"; + //legacy System Properties public final static String ENTITY_EXPANSION_LIMIT = "entityExpansionLimit"; public static final String ELEMENT_ATTRIBUTE_LIMIT = "elementAttributeLimit" ; diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java --- a/src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java Wed May 07 08:37:39 2014 -0700 @@ -90,7 +90,9 @@ GENEAL_ENTITY_SIZE_LIMIT(XalanConstants.JDK_GENEAL_ENTITY_SIZE_LIMIT, XalanConstants.SP_GENEAL_ENTITY_SIZE_LIMIT, 0, 0), PARAMETER_ENTITY_SIZE_LIMIT(XalanConstants.JDK_PARAMETER_ENTITY_SIZE_LIMIT, - XalanConstants.SP_PARAMETER_ENTITY_SIZE_LIMIT, 0, 1000000); + XalanConstants.SP_PARAMETER_ENTITY_SIZE_LIMIT, 0, 1000000), + MAX_ELEMENT_DEPTH_LIMIT(XalanConstants.JDK_MAX_ELEMENT_DEPTH, + XalanConstants.SP_MAX_ELEMENT_DEPTH, 0, 0); final String apiProperty; final String systemProperty; diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/Constants.java --- a/src/com/sun/org/apache/xerces/internal/impl/Constants.java Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/Constants.java Wed May 07 08:37:39 2014 -0700 @@ -252,6 +252,13 @@ */ public static final String JDK_XML_NAME_LIMIT = ORACLE_JAXP_PROPERTY_PREFIX + "maxXMLNameLimit"; + + /** + * JDK maxElementDepth limit + */ + public static final String JDK_MAX_ELEMENT_DEPTH = + ORACLE_JAXP_PROPERTY_PREFIX + "maxElementDepth"; + /** * JDK property to allow printing out information from the limit analyzer */ @@ -297,6 +304,11 @@ */ public static final String SP_XML_NAME_LIMIT = "jdk.xml.maxXMLNameLimit"; + /** + * JDK maxElementDepth limit + */ + public static final String SP_MAX_ELEMENT_DEPTH = "jdk.xml.maxElementDepth"; + //legacy System Properties public final static String ENTITY_EXPANSION_LIMIT = "entityExpansionLimit"; public static final String ELEMENT_ATTRIBUTE_LIMIT = "elementAttributeLimit" ; diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java --- a/src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java Wed May 07 08:37:39 2014 -0700 @@ -1309,6 +1309,7 @@ fAttributes.removeAllAttributes(); + checkDepth(rawname); if(!seekCloseOfStartTag()){ fReadingAttributes = true; fAttributeCacheUsedCount =0; @@ -1913,6 +1914,21 @@ // utility methods /** + * Check if the depth exceeds the maxElementDepth limit + * @param elementName name of the current element + */ + void checkDepth(String elementName) { + fLimitAnalyzer.addValue(Limit.MAX_ELEMENT_DEPTH_LIMIT, elementName, fElementStack.fDepth); + if (fSecurityManager.isOverLimit(Limit.MAX_ELEMENT_DEPTH_LIMIT,fLimitAnalyzer)) { + fSecurityManager.debugPrint(fLimitAnalyzer); + reportFatalError("MaxElementDepthLimit", new Object[]{elementName, + fLimitAnalyzer.getTotalValue(Limit.MAX_ELEMENT_DEPTH_LIMIT), + fSecurityManager.getLimit(Limit.MAX_ELEMENT_DEPTH_LIMIT), + "maxElementDepth"}); + } + } + + /** * Calls document handler with a single character resulting from * built-in entity resolution. * diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java --- a/src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java Wed May 07 08:37:39 2014 -0700 @@ -220,6 +220,7 @@ fCurrentElement = fElementQName; String rawname = fElementQName.rawname; + checkDepth(rawname); if (fBindNamespaces) { fNamespaceContext.pushContext(); if (fScannerState == SCANNER_STATE_ROOT_ELEMENT) { diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties Wed May 07 08:37:39 2014 -0700 @@ -299,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: The length of entity \"{0}\" is \"{1}\" that exceeds the \"{2}\" limit set by \"{3}\". TotalEntitySizeLimit=JAXP00010004: The accumulated size \"{0}\" of entities exceeded the \"{1}\" limit set by \"{2}\". MaxXMLNameLimit=JAXP00010005: The name \"{0}\" exceeded the \"{1}\" limit set by \"{2}\". + MaxElementDepthLimit=JAXP00010006: The element \"{0}\" has a depth of \"{1}\" that exceeds the limit \"{2}\" set by \"{3}\". diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -276,7 +251,7 @@ NMTOKENInvalid = Attributwert "{0}" mit dem Typ NMTOKEN muss ein Namenstoken sein. NMTOKENSInvalid = Attributwert "{0}" mit dem Typ NMTOKENS muss mindestens ein Namenstoken sein. NoNotationOnEmptyElement = Elementtyp "{0}", der als EMPTY deklariert wurde, kann nicht das Attribut "{1}" mit dem Typ NOTATION deklarieren. - RootElementTypeMustMatchDoctypedecl = Dokument-Root-Element "{1}"muss mit DOCTYPE-Root "{0}" \u00FCbereinstimmen. + RootElementTypeMustMatchDoctypedecl = Document Root-Element "{1}"muss mit DOCTYPE-Root "{0}" \u00FCbereinstimmen. UndeclaredElementInContentSpec = Contentmodell des Elements "{0}" verweist auf das nicht deklarierte Element "{1}". UniqueNotationName = Deklaration f\u00FCr die Notation "{0}" ist nicht eindeutig. Ein jeweiliger Name darf nicht in mehreren Notationsdeklarationen deklariert werden. ENTITYFailedInitializeGrammar = ENTITYDatatype-Validator: Nicht erfolgreich. Initialisierungsmethode muss mit einer g\u00FCltigen Grammatikreferenz aufgerufen werden. \t @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: Die L\u00E4nge von Entit\u00E4t "{0}" ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde. TotalEntitySizeLimit=JAXP00010004: Die akkumulierte Gr\u00F6\u00DFe "{0}" der Entit\u00E4ten \u00FCberschreitet den Grenzwert "{1}", der von "{2}" festgelegt wurde. MaxXMLNameLimit=JAXP00010005: Der Name "{0}" \u00FCberschreitet den Grenzwert "{1}", der von "{2}" festgelegt wurde. + MaxElementDepthLimit=JAXP00010006: Die Tiefe von Element "{0}" ist "{1}" und \u00FCberschreitet den Grenzwert "{2}", der von "{3}" festgelegt wurde. diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: la longitud de la entidad "{0}" es "{1}", que excede el l\u00EDmite de "{2}" que ha definido "{3}". TotalEntitySizeLimit=JAXP00010004: el tama\u00F1o acumulado "{0}" de las entidades ha excedido el l\u00EDmite de "{1}" que ha definido "{2}". MaxXMLNameLimit=JAXP00010005: el nombre "{0}" ha excedido el l\u00EDmite de "{1}" que ha definido "{2}". + MaxElementDepthLimit=JAXP00010006: El elemento "{0}" tiene una profundidad de "{1}" que excede el l\u00EDmite "{2}" definido por "{3}". diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003 : La longueur de l''entit\u00E9 "{0}" est de "{1}". Cette valeur d\u00E9passe la limite de "{2}" d\u00E9finie par "{3}". TotalEntitySizeLimit=JAXP00010004 : La taille cumul\u00E9e des entit\u00E9s ("{0}") d\u00E9passe la limite de "{1}" d\u00E9finie par "{2}". MaxXMLNameLimit=JAXP00010005 : le nom "{0}" d\u00E9passe la limite de "{1}" d\u00E9finie par "{2}". + MaxElementDepthLimit=JAXP00010006 : l''\u00E9l\u00E9ment "{0}" a une profondeur de "{1}" qui d\u00E9passe la limite de "{2}" d\u00E9finie par "{3}". diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: la lunghezza dell''entit\u00E0 "{0}" \u00E8 "{1}". Tale valore supera il limite "{2}" definito da "{3}". TotalEntitySizeLimit=JAXP00010004: le dimensioni accumulate "{0}" delle entit\u00E0 supera il limite "{1}" definito da "{2}". MaxXMLNameLimit=JAXP00010005: il nome "{0}" supera il limite "{1}" definito da "{2}". + MaxElementDepthLimit=JAXP00010006: la profondit\u00E0 dell''elemento "{0}" \u00E8 "{1}". Tale valore supera il limite "{2}" definito da "{3}". diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties Wed May 07 08:37:39 2014 -0700 @@ -1,27 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -146,7 +122,7 @@ ExpectedByte = {1}\u30D0\u30A4\u30C8\u306EUTF-8\u30B7\u30FC\u30B1\u30F3\u30B9\u306E\u30D0\u30A4\u30C8{0}\u304C\u5FC5\u8981\u3067\u3059\u3002 InvalidHighSurrogate = UTF-8\u30B7\u30FC\u30B1\u30F3\u30B9\u306E\u4E0A\u4F4D\u30B5\u30ED\u30B2\u30FC\u30C8\u30FB\u30D3\u30C3\u30C8\u306E\u4E0A\u9650\u306F0x10\u3067\u3059\u304C\u30010x{0}\u304C\u691C\u51FA\u3055\u308C\u307E\u3057\u305F\u3002 OperationNotSupported = \u64CD\u4F5C"{0}"\u306F{1}\u30EA\u30FC\u30C0\u30FC\u3067\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u305B\u3093\u3002 - InvalidASCII = \u30D0\u30A4\u30C8"{0}"\u306F\u3001(7\u30D3\u30C3\u30C8) ASCII\u30AD\u30E3\u30E9\u30AF\u30BF\u30FB\u30BB\u30C3\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002 + InvalidASCII = \u30D0\u30A4\u30C8"{0}"\u306F\u3001(7\u30D3\u30C3\u30C8) ASCII\u6587\u5B57\u30BB\u30C3\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002 CharConversionFailure = \u7279\u5B9A\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3067\u3042\u308B\u3068\u78BA\u5B9A\u3055\u308C\u305F\u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u306B\u306F\u3001\u305D\u306E\u30A8\u30F3\u30B3\u30FC\u30C7\u30A3\u30F3\u30B0\u3067\u4E0D\u6B63\u306A\u30B7\u30FC\u30B1\u30F3\u30B9\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002 # DTD Messages @@ -323,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3"{0}"\u306E\u9577\u3055\u306F"{1}"\u3067\u3001"{3}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{2}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002 TotalEntitySizeLimit=JAXP00010004: \u30A8\u30F3\u30C6\u30A3\u30C6\u30A3\u306E\u7D2F\u7A4D\u30B5\u30A4\u30BA"{0}"\u306F\u3001"{2}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{1}"\u3092\u8D85\u3048\u307E\u3057\u305F\u3002 MaxXMLNameLimit=JAXP00010005: \u540D\u524D"{0}"\u306F\u3001"{2}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{1}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002 + MaxElementDepthLimit=JAXP00010006: \u8981\u7D20"{0}"\u306E\u6DF1\u3055\u306F"{1}"\u3067\u3001"{3}"\u3067\u8A2D\u5B9A\u3055\u308C\u305F\u5236\u9650"{2}"\u3092\u8D85\u3048\u3066\u3044\u307E\u3059\u3002 diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -324,4 +299,5 @@ MaxEntitySizeLimit=JAXP00010003: "{0}" \uC5D4\uD2F0\uD2F0\uC758 \uAE38\uC774\uAC00 "{3}"\uC5D0\uC11C \uC124\uC815\uB41C "{2}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD558\uB294 "{1}"\uC785\uB2C8\uB2E4. TotalEntitySizeLimit=JAXP00010004: \uC5D4\uD2F0\uD2F0\uC758 \uB204\uC801 \uD06C\uAE30 "{0}"\uC774(\uAC00) "{2}"\uC5D0\uC11C \uC124\uC815\uB41C "{1}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD588\uC2B5\uB2C8\uB2E4. MaxXMLNameLimit=JAXP00010005: "{0}" \uC774\uB984\uC774 "{2}"\uC5D0\uC11C \uC124\uC815\uB41C "{1}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD588\uC2B5\uB2C8\uB2E4. + MaxElementDepthLimit=JAXP00010006: "{0}" \uC694\uC18C\uC758 \uAE4A\uC774\uAC00 "{3}"\uC5D0\uC11C \uC124\uC815\uB41C "{2}" \uC81C\uD55C\uC744 \uCD08\uACFC\uD558\uB294 "{1}"\uC785\uB2C8\uB2E4. diff -r 8bc8dbf7b561 -r 95d394340fda src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties --- a/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties Thu Apr 17 17:20:04 2014 +0100 +++ b/src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties Wed May 07 08:37:39 2014 -0700 @@ -1,28 +1,3 @@ -# -# Copyright (c) 2009, 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 -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. Oracle designates this -# particular file as subject to the "Classpath" exception as provided -# by Oracle in the LICENSE file that accompanied this code. -# -# 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. -# - # This file contains error and warning messages related to XML # The messages are arranged in key and value tuples in a ListResourceBundle. # @@ -154,7 +129,7 @@ # 2.2 Characters InvalidCharInEntityValue = Um caractere XML inv\u00E1lido (Unicode: 0x {0}) foi encontrado no valor da entidade da literal. InvalidCharInExternalSubset = Um caractere XML inv\u00E1lido (Unicode: 0x {0}) foi encontrado no subconjunto externo do DTD. - InvalidCharInIgnoreSect = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado na se\u00E7\u00E3o condicional deletada. + InvalidCharInIgnoreSect = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado na se\u00E7\u00E3o condicional exclu\u00EDda. InvalidCharInPublicID = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado no identificador p\u00FAblico. InvalidCharInSystemID = Um caractere XML inv\u00E1lido (Unicode: 0x{0}) foi encontrado no identificador do sistema. # 2.3 Common Syntactic Constructs @@ -173,7 +148,7 @@ PEReferenceWithinMarkup = A refer\u00EAncia da entidade do par\u00E2metro "%{0};" n\u00E3o pode ocorrer na marca\u00E7\u00E3o no subconjunto interno do DTD. MSG_MARKUP_NOT_RECOGNIZED_IN_DTD = As declara\u00E7\u00F5es de marca\u00E7\u00E3o contidas ou apontadas pela declara\u00E7\u00E3o do tipo de documento devem estar corretas. # 2.10 White Space Handling - MSG_XML_SPACE_DECLARATION_ILLEGAL = Deve ser fornecida a declara\u00E7\u00E3o do atributo para "xml:space" como um tipo enumerado, cujo os \u00FAnicos valores poss\u00EDveis s\u00E3o "default" e "preserve". + MSG_XML_SPACE_DECLARATION_ILLEGAL = Deve ser fornecida a declara\u00E7\u00E3o do atributo para "xml:space" como um tipo enumerado, cujo os \u00FAnicos valores poss\u00EDveis s\u00E3o "padr\u00E3o" e "preserve". # 3.2 Element Type Declarations MSG_SPACE_REQUIRED_BEFORE_ELEMENT_TYPE_IN_ELEMENTDECL = O espa\u00E7o em branco \u00E9 necess\u00E1rio ap\u00F3s " changeset bce4362b2996 in /hg/release/icedtea7-forest-2.4/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jaxws?cmd=changeset;node=bce4362b2996 author: mkos date: Wed Apr 09 10:15:04 2014 -0400 8035613: With active Securitymanager JAXBContext.newInstance fails Reviewed-by: mullan, mgrebac diffstat: src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java | 26 +++++++-- src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java | 26 +++++++-- 7 files changed, 133 insertions(+), 49 deletions(-) diffs (406 lines): diff -r 6076c37608b3 -r bce4362b2996 src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java --- a/src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java Thu Apr 17 17:20:05 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 6076c37608b3 -r bce4362b2996 src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java Thu Apr 17 17:20:05 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 6076c37608b3 -r bce4362b2996 src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java Thu Apr 17 17:20:05 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 6076c37608b3 -r bce4362b2996 src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java Thu Apr 17 17:20:05 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 6076c37608b3 -r bce4362b2996 src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java Thu Apr 17 17:20:05 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 6076c37608b3 -r bce4362b2996 src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java Thu Apr 17 17:20:05 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { diff -r 6076c37608b3 -r bce4362b2996 src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java --- a/src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java Thu Apr 17 17:20:05 2014 +0100 +++ b/src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java Wed Apr 09 10:15:04 2014 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -31,6 +31,8 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.security.AccessController; +import java.security.PrivilegedAction; import java.util.logging.Level; import java.util.logging.Logger; @@ -41,22 +43,32 @@ * * Has *package private* access to avoid inappropriate usage. */ -/* package */ final class Utils { +final class Utils { private static final Logger LOGGER = Logger.getLogger(Utils.class.getName()); /** * static ReflectionNavigator field to avoid usage of reflection every time we use it. */ - /* package */ static final Navigator REFLECTION_NAVIGATOR; + static final Navigator REFLECTION_NAVIGATOR; static { // we statically initializing REFLECTION_NAVIGATOR property - Class refNav = null; try { - refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); + Class refNav = Class.forName("com.sun.xml.internal.bind.v2.model.nav.ReflectionNavigator"); //noinspection unchecked - Method getInstance = refNav.getDeclaredMethod("getInstance"); - getInstance.setAccessible(true); + final Method getInstance = refNav.getDeclaredMethod("getInstance"); + + // requires accessClassInPackage privilege + AccessController.doPrivileged( + new PrivilegedAction() { + @Override + public Object run() { + getInstance.setAccessible(true); + return null; + } + } + ); + //noinspection unchecked REFLECTION_NAVIGATOR = (Navigator) getInstance.invoke(null); } catch (ClassNotFoundException e) { From andrew at icedtea.classpath.org Tue Jul 15 21:21:46 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:21:46 +0000 Subject: /hg/release/icedtea7-forest-2.4/hotspot: 8 new changesets Message-ID: changeset 8c5a16aafb22 in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=8c5a16aafb22 author: hseigel date: Fri Feb 14 12:07:27 2014 -0500 8030763: Validate global memory allocation Summary: Add length checks where necessary Reviewed-by: coleenp, mschoene changeset 9d49f3448114 in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=9d49f3448114 author: hseigel date: Tue Mar 04 15:58:08 2014 -0500 8032536: JVM resolves wrong method in some unusual cases Summary: Handle package private case Reviewed-by: coleenp, acorn, jdn changeset 6406d31bdc1a in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=6406d31bdc1a author: hseigel date: Thu Mar 20 08:46:41 2014 -0400 8034985: Better form for Lambda Forms Summary: Only allow classes loaded by boot or extensions class loaders, or anonymous classes, to access privileged annotations. Reviewed-by: coleenp, ahgross, twisti changeset 7d83f2b1a320 in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=7d83f2b1a320 author: hseigel date: Wed Mar 19 18:04:09 2014 -0400 8035119: Fix exceptions to bytecode verification Summary: Prevent ctor calls to super() and this() from avoidable code (try blocks, if stmts, etc.) Reviewed-by: coleenp, acorn, mschoene changeset 1b26554a2629 in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=1b26554a2629 author: hseigel date: Wed Mar 19 14:18:19 2014 -0400 8036800: Attribute OOM to correct part of code Summary: checks that the attribute_length does not exceed the length of remaining data in the class file Reviewed-by: coleenp, ahgross changeset dc7d4b1afcc0 in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=dc7d4b1afcc0 author: coleenp date: Fri Apr 04 13:37:56 2014 -0500 8037076: Check constant pool constants Summary: Fix events log string. Reviewed-by: kvn, mschoene Contributed-by: paul.nauman at oracle.com changeset 2afa33b89a0f in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=2afa33b89a0f author: hseigel date: Mon Apr 07 09:22:54 2014 -0400 8037157: Verify call Summary: Check for null method Reviewed-by: coleenp, acorn, mschoene changeset 6f93cec20d27 in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=6f93cec20d27 author: acorn date: Tue Apr 15 15:10:07 2014 -0500 8037167: Better method signature resolution Reviewed-by: mschoene, hseigel, lfoltan Contributed-by: paul.nauman at oracle.com diffstat: src/os/bsd/vm/os_bsd.cpp | 8 +-- src/os/linux/vm/os_linux.cpp | 8 +-- src/os/solaris/vm/os_solaris.cpp | 8 +-- src/os/windows/vm/os_windows.cpp | 46 +++++++----------- src/share/vm/classfile/classFileParser.cpp | 72 ++++++++++++++++++++--------- src/share/vm/classfile/classFileParser.hpp | 24 ++++++--- src/share/vm/classfile/stackMapTable.cpp | 3 +- src/share/vm/classfile/verifier.cpp | 33 +++++++++++++- src/share/vm/classfile/verifier.hpp | 19 +++++++- src/share/vm/compiler/compileBroker.cpp | 3 +- src/share/vm/oops/klassVtable.cpp | 27 ++++++++++- src/share/vm/runtime/os.hpp | 5 +- src/share/vm/utilities/events.cpp | 6 +- src/share/vm/utilities/vmError.cpp | 3 +- 14 files changed, 175 insertions(+), 90 deletions(-) diffs (truncated from 711 to 500 lines): diff -r ffef4049ab32 -r 6f93cec20d27 src/os/bsd/vm/os_bsd.cpp --- a/src/os/bsd/vm/os_bsd.cpp Fri May 16 16:39:47 2014 +0100 +++ b/src/os/bsd/vm/os_bsd.cpp Tue Apr 15 15:10:07 2014 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -1819,9 +1819,6 @@ ::abort(); } -// unused on bsd for now. -void os::set_error_file(const char *logfile) {} - // This method is a copy of JDK's sysGetLastErrorString // from src/solaris/hpi/src/system_md.c @@ -2585,6 +2582,7 @@ // determine if this is a legacy image or modules image // modules image doesn't have "jre" subdirectory len = strlen(buf); + assert(len < buflen, "Ran out of buffer space"); jrelib_p = buf + len; // Add the appropriate library subdir @@ -2620,7 +2618,7 @@ } } - strcpy(saved_jvm_path, buf); + strncpy(saved_jvm_path, buf, MAXPATHLEN); } void os::print_jni_name_prefix_on(outputStream* st, int args_size) { diff -r ffef4049ab32 -r 6f93cec20d27 src/os/linux/vm/os_linux.cpp --- a/src/os/linux/vm/os_linux.cpp Fri May 16 16:39:47 2014 +0100 +++ b/src/os/linux/vm/os_linux.cpp Tue Apr 15 15:10:07 2014 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -1603,9 +1603,6 @@ ::abort(); } -// unused on linux for now. -void os::set_error_file(const char *logfile) {} - // This method is a copy of JDK's sysGetLastErrorString // from src/solaris/hpi/src/system_md.c @@ -2440,6 +2437,7 @@ // determine if this is a legacy image or modules image // modules image doesn't have "jre" subdirectory len = strlen(buf); + assert(len < buflen, "Ran out of buffer room"); jrelib_p = buf + len; snprintf(jrelib_p, buflen-len, "/jre/lib/%s", cpu_arch); if (0 != access(buf, F_OK)) { @@ -2462,7 +2460,7 @@ } } - strcpy(saved_jvm_path, buf); + strncpy(saved_jvm_path, buf, MAXPATHLEN); } void os::print_jni_name_prefix_on(outputStream* st, int args_size) { diff -r ffef4049ab32 -r 6f93cec20d27 src/os/solaris/vm/os_solaris.cpp --- a/src/os/solaris/vm/os_solaris.cpp Fri May 16 16:39:47 2014 +0100 +++ b/src/os/solaris/vm/os_solaris.cpp Tue Apr 15 15:10:07 2014 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -1877,9 +1877,6 @@ ::abort(); // dump core (for debugging) } -// unused -void os::set_error_file(const char *logfile) {} - // DLL functions const char* os::dll_file_extension() { return ".so"; } @@ -2561,6 +2558,7 @@ // determine if this is a legacy image or modules image // modules image doesn't have "jre" subdirectory len = strlen(buf); + assert(len < buflen, "Ran out of buffer space"); jrelib_p = buf + len; snprintf(jrelib_p, buflen-len, "/jre/lib/%s", cpu_arch); if (0 != access(buf, F_OK)) { @@ -2581,7 +2579,7 @@ } } - strcpy(saved_jvm_path, buf); + strncpy(saved_jvm_path, buf, MAXPATHLEN); } diff -r ffef4049ab32 -r 6f93cec20d27 src/os/windows/vm/os_windows.cpp --- a/src/os/windows/vm/os_windows.cpp Fri May 16 16:39:47 2014 +0100 +++ b/src/os/windows/vm/os_windows.cpp Tue Apr 15 15:10:07 2014 -0500 @@ -1767,27 +1767,28 @@ // libjvm.so is installed there (append a fake suffix // hotspot/libjvm.so). char* java_home_var = ::getenv("JAVA_HOME"); - if (java_home_var != NULL && java_home_var[0] != 0) { - - strncpy(buf, java_home_var, buflen); - - // determine if this is a legacy image or modules image - // modules image doesn't have "jre" subdirectory - size_t len = strlen(buf); - char* jrebin_p = buf + len; - jio_snprintf(jrebin_p, buflen-len, "\\jre\\bin\\"); - if (0 != _access(buf, 0)) { - jio_snprintf(jrebin_p, buflen-len, "\\bin\\"); - } - len = strlen(buf); - jio_snprintf(buf + len, buflen-len, "hotspot\\jvm.dll"); + if (java_home_var != NULL && java_home_var[0] != 0 && + strlen(java_home_var) < (size_t)buflen) { + + strncpy(buf, java_home_var, buflen); + + // determine if this is a legacy image or modules image + // modules image doesn't have "jre" subdirectory + size_t len = strlen(buf); + char* jrebin_p = buf + len; + jio_snprintf(jrebin_p, buflen-len, "\\jre\\bin\\"); + if (0 != _access(buf, 0)) { + jio_snprintf(jrebin_p, buflen-len, "\\bin\\"); + } + len = strlen(buf); + jio_snprintf(buf + len, buflen-len, "hotspot\\jvm.dll"); } } if(buf[0] == '\0') { - GetModuleFileName(vm_lib_handle, buf, buflen); - } - strcpy(saved_jvm_path, buf); + GetModuleFileName(vm_lib_handle, buf, buflen); + } + strncpy(saved_jvm_path, buf, MAX_PATH); } @@ -2212,17 +2213,6 @@ #endif //_WIN64 -// Fatal error reporting is single threaded so we can make this a -// static and preallocated. If it's more than MAX_PATH silently ignore -// it. -static char saved_error_file[MAX_PATH] = {0}; - -void os::set_error_file(const char *logfile) { - if (strlen(logfile) <= MAX_PATH) { - strncpy(saved_error_file, logfile, MAX_PATH); - } -} - static inline void report_error(Thread* t, DWORD exception_code, address addr, void* siginfo, void* context) { VMError err(t, exception_code, addr, siginfo, context); diff -r ffef4049ab32 -r 6f93cec20d27 src/share/vm/classfile/classFileParser.cpp --- a/src/share/vm/classfile/classFileParser.cpp Fri May 16 16:39:47 2014 +0100 +++ b/src/share/vm/classfile/classFileParser.cpp Tue Apr 15 15:10:07 2014 -0500 @@ -961,7 +961,7 @@ "Wrong size %u for field's Signature attribute in class file %s", attribute_length, CHECK); } - generic_signature_index = cfs->get_u2(CHECK); + generic_signature_index = parse_generic_signature_attribute(cp, CHECK); } else if (attribute_name == vmSymbols::tag_runtime_visible_annotations()) { runtime_visible_annotations_length = attribute_length; runtime_visible_annotations = cfs->get_u1_buffer(); @@ -1698,7 +1698,8 @@ } // Sift through annotations, looking for those significant to the VM: -void ClassFileParser::parse_annotations(u1* buffer, int limit, +void ClassFileParser::parse_annotations(Handle class_loader, + u1* buffer, int limit, constantPoolHandle cp, ClassFileParser::AnnotationCollector* coll, TRAPS) { @@ -1736,7 +1737,7 @@ } // Here is where parsing particular annotations will take place. - AnnotationCollector::ID id = coll->annotation_index(aname); + AnnotationCollector::ID id = coll->annotation_index(class_loader, is_anonymous(), aname); if (id == AnnotationCollector::_unknown) continue; coll->set_annotation(id); // If there are no values, just set the bit and move on: @@ -1765,20 +1766,30 @@ } } -ClassFileParser::AnnotationCollector::ID ClassFileParser::AnnotationCollector::annotation_index(Symbol* name) { +ClassFileParser::AnnotationCollector::ID ClassFileParser::AnnotationCollector::annotation_index(Handle class_loader, + bool is_anonymous, + Symbol* name) { vmSymbols::SID sid = vmSymbols::find_sid(name); + // Privileged code can use all annotations. Other code silently drops some. + const bool privileged = class_loader.is_null() || is_anonymous || + class_loader()->klass()->klass_part()->name() == + vmSymbols::sun_misc_Launcher_ExtClassLoader(); switch (sid) { case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_ForceInline_signature): if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code return _method_ForceInline; case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_DontInline_signature): if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code return _method_DontInline; case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_LambdaForm_Compiled_signature): if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code return _method_LambdaForm_Compiled; case vmSymbols::VM_SYMBOL_ENUM_NAME(java_lang_invoke_LambdaForm_Hidden_signature): if (_location != _in_method) break; // only allow for methods + if (!privileged) break; // only allow in privileged code return _method_LambdaForm_Hidden; default: break; } @@ -1818,8 +1829,8 @@ // from the method back up to the containing klass. These flag values // are added to klass's access_flags. -methodHandle ClassFileParser::parse_method(constantPoolHandle cp, bool is_interface, - AccessFlags *promoted_flags, +methodHandle ClassFileParser::parse_method(Handle class_loader, constantPoolHandle cp, + bool is_interface, AccessFlags *promoted_flags, typeArrayHandle* method_annotations, typeArrayHandle* method_parameter_annotations, typeArrayHandle* method_default_annotations, @@ -2122,13 +2133,12 @@ "Invalid Signature attribute length %u in class file %s", method_attribute_length, CHECK_(nullHandle)); } - cfs->guarantee_more(2, CHECK_(nullHandle)); // generic_signature_index - generic_signature_index = cfs->get_u2_fast(); + generic_signature_index = parse_generic_signature_attribute(cp, CHECK_(nullHandle)); } else if (method_attribute_name == vmSymbols::tag_runtime_visible_annotations()) { runtime_visible_annotations_length = method_attribute_length; runtime_visible_annotations = cfs->get_u1_buffer(); assert(runtime_visible_annotations != NULL, "null visible annotations"); - parse_annotations(runtime_visible_annotations, runtime_visible_annotations_length, cp, &parsed_annotations, CHECK_(nullHandle)); + parse_annotations(class_loader, runtime_visible_annotations, runtime_visible_annotations_length, cp, &parsed_annotations, CHECK_(nullHandle)); cfs->skip_u1(runtime_visible_annotations_length, CHECK_(nullHandle)); } else if (PreserveAllAnnotations && method_attribute_name == vmSymbols::tag_runtime_invisible_annotations()) { runtime_invisible_annotations_length = method_attribute_length; @@ -2357,8 +2367,8 @@ // from the methods back up to the containing klass. These flag values // are added to klass's access_flags. -objArrayHandle ClassFileParser::parse_methods(constantPoolHandle cp, bool is_interface, - AccessFlags* promoted_flags, +objArrayHandle ClassFileParser::parse_methods(Handle class_loader, constantPoolHandle cp, + bool is_interface, AccessFlags* promoted_flags, bool* has_final_method, objArrayOop* methods_annotations_oop, objArrayOop* methods_parameter_annotations_oop, @@ -2381,7 +2391,8 @@ objArrayHandle methods_parameter_annotations; objArrayHandle methods_default_annotations; for (int index = 0; index < length; index++) { - methodHandle method = parse_method(cp, is_interface, + methodHandle method = parse_method(class_loader, cp, + is_interface, promoted_flags, &method_annotations, &method_parameter_annotations, @@ -2490,6 +2501,17 @@ } } +// Parse generic_signature attribute for methods and fields +u2 ClassFileParser::parse_generic_signature_attribute(constantPoolHandle cp, TRAPS) { + ClassFileStream* cfs = stream(); + cfs->guarantee_more(2, CHECK_0); // generic_signature_index + u2 generic_signature_index = cfs->get_u2_fast(); + check_property( + valid_symbol_at(cp, generic_signature_index), + "Invalid Signature attribute at constant pool index %u in class file %s", + generic_signature_index, CHECK_0); + return generic_signature_index; +} void ClassFileParser::parse_classfile_sourcefile_attribute(constantPoolHandle cp, TRAPS) { ClassFileStream* cfs = stream(); @@ -2654,18 +2676,19 @@ ClassFileStream* cfs = stream(); u1* current_start = cfs->current(); - cfs->guarantee_more(2, CHECK); // length - int attribute_array_length = cfs->get_u2_fast(); - - guarantee_property(_max_bootstrap_specifier_index < attribute_array_length, - "Short length on BootstrapMethods in class file %s", - CHECK); - guarantee_property(attribute_byte_length > sizeof(u2), "Invalid BootstrapMethods attribute length %u in class file %s", attribute_byte_length, CHECK); + cfs->guarantee_more(attribute_byte_length, CHECK); + + int attribute_array_length = cfs->get_u2_fast(); + + guarantee_property(_max_bootstrap_specifier_index < attribute_array_length, + "Short length on BootstrapMethods in class file %s", + CHECK); + // The attribute contains a counted array of counted tuples of shorts, // represending bootstrap specifiers: // length*{bootstrap_method_index, argument_count*{argument_index}} @@ -2726,7 +2749,8 @@ } -void ClassFileParser::parse_classfile_attributes(constantPoolHandle cp, +void ClassFileParser::parse_classfile_attributes(Handle class_loader, + constantPoolHandle cp, ClassFileParser::ClassAnnotationCollector* parsed_annotations, TRAPS) { ClassFileStream* cfs = stream(); @@ -2809,7 +2833,8 @@ runtime_visible_annotations_length = attribute_length; runtime_visible_annotations = cfs->get_u1_buffer(); assert(runtime_visible_annotations != NULL, "null visible annotations"); - parse_annotations(runtime_visible_annotations, + parse_annotations(class_loader, + runtime_visible_annotations, runtime_visible_annotations_length, cp, parsed_annotations, @@ -3172,7 +3197,8 @@ objArrayOop methods_annotations_oop = NULL; objArrayOop methods_parameter_annotations_oop = NULL; objArrayOop methods_default_annotations_oop = NULL; - objArrayHandle methods = parse_methods(cp, access_flags.is_interface(), + objArrayHandle methods = parse_methods(class_loader, cp, + access_flags.is_interface(), &promoted_flags, &has_final_method, &methods_annotations_oop, @@ -3186,7 +3212,7 @@ // Additional attributes ClassAnnotationCollector parsed_annotations; - parse_classfile_attributes(cp, &parsed_annotations, CHECK_(nullHandle)); + parse_classfile_attributes(class_loader, cp, &parsed_annotations, CHECK_(nullHandle)); // Make sure this is the end of class file stream guarantee_property(cfs->at_eos(), "Extra bytes at the end of class file %s", CHECK_(nullHandle)); diff -r ffef4049ab32 -r 6f93cec20d27 src/share/vm/classfile/classFileParser.hpp --- a/src/share/vm/classfile/classFileParser.hpp Fri May 16 16:39:47 2014 +0100 +++ b/src/share/vm/classfile/classFileParser.hpp Tue Apr 15 15:10:07 2014 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -102,7 +102,7 @@ assert((int)_annotation_LIMIT <= (int)sizeof(_annotations_present) * BitsPerByte, ""); } // If this annotation name has an ID, report it (or _none). - ID annotation_index(Symbol* name); + ID annotation_index(Handle class_loader, bool is_anonymous, Symbol* name); // Set the annotation name: void set_annotation(ID id) { assert((int)id >= 0 && (int)id < (int)_annotation_LIMIT, "oob"); @@ -169,14 +169,14 @@ u2* java_fields_count_ptr, TRAPS); // Method parsing - methodHandle parse_method(constantPoolHandle cp, bool is_interface, - AccessFlags* promoted_flags, + methodHandle parse_method(Handle class_loader, constantPoolHandle cp, + bool is_interface, AccessFlags* promoted_flags, typeArrayHandle* method_annotations, typeArrayHandle* method_parameter_annotations, typeArrayHandle* method_default_annotations, TRAPS); - objArrayHandle parse_methods (constantPoolHandle cp, bool is_interface, - AccessFlags* promoted_flags, + objArrayHandle parse_methods (Handle class_loader, constantPoolHandle cp, + bool is_interface, AccessFlags* promoted_flags, bool* has_final_method, objArrayOop* methods_annotations_oop, objArrayOop* methods_parameter_annotations_oop, @@ -202,6 +202,7 @@ typeArrayOop parse_stackmap_table(u4 code_attribute_length, TRAPS); // Classfile attribute parsing + u2 parse_generic_signature_attribute(constantPoolHandle cp, TRAPS); void parse_classfile_sourcefile_attribute(constantPoolHandle cp, TRAPS); void parse_classfile_source_debug_extension_attribute(constantPoolHandle cp, int length, TRAPS); u2 parse_classfile_inner_classes_attribute(u1* inner_classes_attribute_start, @@ -210,7 +211,8 @@ u2 enclosing_method_method_index, constantPoolHandle cp, TRAPS); - void parse_classfile_attributes(constantPoolHandle cp, + void parse_classfile_attributes(Handle class_loader, + constantPoolHandle cp, ClassAnnotationCollector* parsed_annotations, TRAPS); void parse_classfile_synthetic_attribute(constantPoolHandle cp, TRAPS); @@ -224,7 +226,7 @@ int runtime_invisible_annotations_length, TRAPS); int skip_annotation(u1* buffer, int limit, int index); int skip_annotation_value(u1* buffer, int limit, int index); - void parse_annotations(u1* buffer, int limit, constantPoolHandle cp, + void parse_annotations(Handle class_loader, u1* buffer, int limit, constantPoolHandle cp, /* Results (currently, only one result is supported): */ AnnotationCollector* result, TRAPS); @@ -335,6 +337,12 @@ : cp->tag_at(index).is_klass_reference()); } + // Checks that the cpool index is in range and is a utf8 + bool valid_symbol_at(constantPoolHandle cp, int cpool_index) { + return (cp->is_within_bounds(cpool_index) && + cp->tag_at(cpool_index).is_utf8()); + } + public: // Constructor ClassFileParser(ClassFileStream* st) { set_stream(st); } diff -r ffef4049ab32 -r 6f93cec20d27 src/share/vm/classfile/stackMapTable.cpp --- a/src/share/vm/classfile/stackMapTable.cpp Fri May 16 16:39:47 2014 +0100 +++ b/src/share/vm/classfile/stackMapTable.cpp Tue Apr 15 15:10:07 2014 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -134,6 +134,7 @@ } // check if uninitialized objects exist on backward branches check_new_object(frame, target, CHECK_VERIFY(frame->verifier())); + frame->verifier()->update_furthest_jump(target); } void StackMapTable::check_new_object( diff -r ffef4049ab32 -r 6f93cec20d27 src/share/vm/classfile/verifier.cpp --- a/src/share/vm/classfile/verifier.cpp Fri May 16 16:39:47 2014 +0100 +++ b/src/share/vm/classfile/verifier.cpp Tue Apr 15 15:10:07 2014 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -629,6 +629,9 @@ bool no_control_flow = false; // Set to true when there is no direct control // flow from current instruction to the next // instruction in sequence + + set_furthest_jump(0); + Bytecodes::Code opcode; while (!bcs.is_last_bytecode()) { // Check for recursive re-verification before each bytecode. @@ -2239,6 +2242,29 @@ "Bad method call"); return; } + + // Make sure that this call is not jumped over. + if (bci < furthest_jump()) { + verify_error(ErrorContext::bad_code(bci), + "Bad method call from inside of a branch"); + return; + } From andrew at icedtea.classpath.org Tue Jul 15 21:22:00 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:22:00 +0000 Subject: /hg/release/icedtea7-forest-2.4/jdk: 36 new changesets Message-ID: changeset 6e281ef7f2b7 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=6e281ef7f2b7 author: jbachorik date: Fri Mar 07 10:15:36 2014 +0100 8029755: Enhance subject class Reviewed-by: sla, dfuchs, hawtin changeset 005245b60dae in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=005245b60dae author: robm date: Tue Apr 01 00:33:47 2014 +0100 8031346: Enhance RSA key handling Reviewed-by: xuelei, coffeys changeset 3936c355071f in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=3936c355071f author: dbuck date: Tue Mar 11 14:27:57 2014 -0700 8033055: Issues in 2d Reviewed-by: bae, prr changeset e1a5ab92d0a9 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=e1a5ab92d0a9 author: jbachorik date: Thu Feb 06 09:35:26 2014 +0100 8033301: Build more informative InfoBuilder Reviewed-by: sla, ahgross changeset ab5720f37cd4 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=ab5720f37cd4 author: prr date: Mon Mar 03 09:21:16 2014 -0800 8034267: Probabilistic native crash Reviewed-by: bae, serb, mschoene changeset ad775235b3f9 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=ad775235b3f9 author: mbankal date: Wed Mar 05 20:56:53 2014 -0800 8034272: Do not cram data into CRAM arrays Reviewed-by: vinnie, coffeys, ahgross changeset 75ad6f000a10 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=75ad6f000a10 author: robm date: Fri Apr 04 15:24:14 2014 +0100 8035004: Provider provides less service Reviewed-by: mullan, coffeys changeset 4fc37d23611a in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=4fc37d23611a author: igerasim date: Tue Mar 04 23:56:51 2014 +0400 8035009: Make Proxy representations consistent Reviewed-by: ahgross, jfranck changeset 26994c39fd70 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=26994c39fd70 author: malenkov date: Thu Mar 13 14:58:55 2014 +0400 8035699: File choosers should be choosier Reviewed-by: alexsch, art, skoivu changeset 4b3d9fc2558c in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=4b3d9fc2558c author: twisti date: Wed Mar 19 10:48:43 2014 -0700 8035788: Provide more consistency for lookups Reviewed-by: jrose, vlivanov, ahgross changeset 2c6544759f71 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=2c6544759f71 author: vlivanov date: Thu Mar 06 15:27:05 2014 +0400 8035793: Maximum arity maxed out Reviewed-by: jrose, twisti, ahgross changeset cd050a24fc72 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=cd050a24fc72 author: robm date: Thu Mar 27 17:28:32 2014 +0000 8036571: (process) Process process arguments carefully Reviewed-by: rriggs, coffeys changeset 68c6f18ee89d in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=68c6f18ee89d author: kizune date: Tue Mar 25 11:28:26 2014 -0700 8037046: Validate libraries to be loaded Reviewed-by: ksrini, ahgross changeset ede97ca55490 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=ede97ca55490 author: xuelei date: Wed Mar 26 03:45:30 2014 +0000 8037162: More robust DH exchanges Reviewed-by: weijun, asmotrak, ahgross, robm changeset e4ad481e9503 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=e4ad481e9503 author: igerasim date: Fri Apr 25 13:33:04 2014 +0400 8039520: More atomicity of atomic updates Reviewed-by: dl, skoivu, chegar changeset e74bc78d7d50 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=e74bc78d7d50 author: kizune date: Wed Apr 09 13:16:33 2014 +0400 8001108: an attempt to use "" as a method name should elicit NoSuchMethodException Reviewed-by: twisti changeset fcc9fe7c628b in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=fcc9fe7c628b author: kizune date: Wed Apr 09 13:06:37 2014 +0400 8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException Reviewed-by: twisti changeset 8dfe74c7d7bc in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=8dfe74c7d7bc author: dmarkov date: Thu Apr 03 11:37:02 2014 +0400 8013611: Modal dialog fails to obtain keyboard focus Reviewed-by: leonidr changeset f79b0c33fa99 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=f79b0c33fa99 author: yhuang date: Tue May 06 22:15:25 2014 -0700 8013836: getFirstDayOfWeek reports wrong day for pt-BR locale Reviewed-by: naoto changeset 1bacdebef58f in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=1bacdebef58f author: bae date: Thu Apr 03 17:09:54 2014 +0400 8019990: IM candidate window appears on the South-East corner of the display. Reviewed-by: bagiras, serb changeset 46636540eff2 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=46636540eff2 author: anashaty date: Fri Feb 07 16:00:49 2014 +0400 8023990: Regression: postscript size increase from 6u18 Reviewed-by: prr, bae changeset 6bf91da090f5 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=6bf91da090f5 author: kizune date: Wed Apr 09 13:00:26 2014 +0400 8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError Reviewed-by: twisti changeset 40b6578cddcc in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=40b6578cddcc author: kizune date: Thu Apr 10 13:55:57 2014 +0400 8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping Reviewed-by: twisti changeset 550daf7361ef in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=550daf7361ef author: igerasim date: Thu Feb 20 16:01:35 2014 +0400 8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently Reviewed-by: chegar, ewang changeset 2a56d53a2a99 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=2a56d53a2a99 author: pchelko date: Tue Feb 25 19:33:43 2014 +0400 8028285: RMI Thread can no longer call out to AWT Reviewed-by: art, serb, ddehaven changeset 729ea2e53885 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=729ea2e53885 author: kizune date: Mon Feb 03 21:46:36 2014 +0400 8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending Summary: Additional review by Chris Ries Reviewed-by: jfranck, ksrini changeset d7ebd4016863 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=d7ebd4016863 author: mcherkas date: Fri Apr 11 13:07:30 2014 +0400 8031075: [Regression] focus disappears with shift+tab on dialog having one focus component Reviewed-by: art, serb changeset 9a218d1fd68b in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=9a218d1fd68b author: kizune date: Mon Apr 14 13:48:47 2014 +0400 8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package Reviewed-by: twisti changeset 802fc47de361 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=802fc47de361 author: kizune date: Mon Apr 21 13:37:43 2014 +0400 8033278: Missed access checks for Lookup.unreflect* after 8032585 Reviewed-by: twisti changeset e30bf0f9fa0d in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=e30bf0f9fa0d author: vkempik date: Tue Mar 25 14:11:22 2014 +0100 8036786: Update jdk7 testlibrary to match jdk8 Summary: Update testlibrary in jdk7, cumulative backport Reviewed-by: alanb, sla changeset ae0e4cd74a2d in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=ae0e4cd74a2d author: anashaty date: Tue May 13 15:41:23 2014 +0400 8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 Reviewed-by: pchelko, ant changeset 5bc43002133c in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=5bc43002133c author: pchelko date: Fri Jul 11 19:00:27 2014 +0100 8042590: Running form URL throws NPE Reviewed-by: anthony, serb changeset 159b53697379 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=159b53697379 author: aefimov date: Wed Mar 19 19:16:01 2014 +0400 8037012: (tz) Support tzdata2014a Reviewed-by: coffeys, okutsu, sherman changeset 263952fa8cb1 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=263952fa8cb1 author: aefimov date: Mon Apr 07 16:59:47 2014 +0400 8038306: (tz) Support tzdata2014b Reviewed-by: coffeys, sherman, okutsu changeset 3b83560b5f15 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=3b83560b5f15 author: aefimov date: Mon May 19 01:51:35 2014 +0400 8043012: (tz) Support tzdata2014c Reviewed-by: okutsu, peytoia changeset 22d79652f370 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=22d79652f370 author: mbankal date: Wed Mar 05 22:31:11 2014 -0800 8031340: Better TLS/EC management Reviewed-by: valeriep, coffeys, ahgross diffstat: make/java/util/FILES_properties.gmk | 1 + make/sun/javazic/tzdata/VERSION | 2 +- make/sun/javazic/tzdata/africa | 48 +- make/sun/javazic/tzdata/antarctica | 41 +- make/sun/javazic/tzdata/asia | 25 +- make/sun/javazic/tzdata/australasia | 42 +- make/sun/javazic/tzdata/europe | 72 +- make/sun/javazic/tzdata/leapseconds | 2 +- make/sun/javazic/tzdata/northamerica | 7 +- make/sun/javazic/tzdata/southamerica | 19 +- make/sun/javazic/tzdata/zone.tab | 3 +- make/sun/security/ec/mapfile-vers | 3 +- src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java | 93 +- src/share/classes/com/sun/jmx/remote/util/CacheMap.java | 121 --- src/share/classes/com/sun/security/sasl/CramMD5Base.java | 20 +- src/share/classes/java/awt/Component.java | 2 +- src/share/classes/java/awt/KeyboardFocusManager.java | 72 +- src/share/classes/java/lang/ProcessBuilder.java | 6 + src/share/classes/java/lang/invoke/DirectMethodHandle.java | 110 +- src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java | 6 + src/share/classes/java/lang/invoke/Invokers.java | 1 + src/share/classes/java/lang/invoke/MethodHandle.java | 10 + src/share/classes/java/lang/invoke/MethodHandleImpl.java | 34 +- src/share/classes/java/lang/invoke/MethodHandles.java | 128 +++- src/share/classes/java/lang/reflect/Proxy.java | 12 +- src/share/classes/java/security/Provider.java | 36 +- src/share/classes/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java | 2 + src/share/classes/javax/swing/filechooser/FileSystemView.java | 3 +- src/share/classes/sun/awt/AppContext.java | 14 + src/share/classes/sun/awt/FontConfiguration.java | 4 +- src/share/classes/sun/invoke/util/VerifyAccess.java | 33 +- src/share/classes/sun/security/ec/ECKeyPairGenerator.java | 23 +- src/share/classes/sun/security/rsa/RSACore.java | 323 ++++++-- src/share/classes/sun/security/util/KeyUtil.java | 13 +- src/share/classes/sun/util/resources/CalendarData_pt_BR.properties | 40 + src/share/classes/sun/util/resources/TimeZoneNames.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_de.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_es.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_fr.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_it.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_ja.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_ko.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_sv.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java | 4 +- src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java | 4 +- src/share/native/com/sun/java/util/jar/pack/defines.h | 3 +- src/share/native/com/sun/java/util/jar/pack/jni.cpp | 99 +- src/share/native/sun/awt/medialib/awt_ImagingLib.c | 26 +- src/share/native/sun/font/freetypeScaler.c | 33 +- src/share/native/sun/management/GcInfoBuilder.c | 2 +- src/share/native/sun/security/ec/ECC_JNI.cpp | 119 +- src/solaris/classes/sun/font/FcFontConfiguration.java | 19 +- src/windows/bin/java_md.c | 8 + src/windows/classes/sun/awt/shell/Win32ShellFolder2.java | 9 +- src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java | 10 + src/windows/classes/sun/awt/windows/ThemeReader.java | 32 +- src/windows/classes/sun/awt/windows/WToolkit.java | 16 +- src/windows/classes/sun/awt/windows/WWindowPeer.java | 1 + src/windows/native/sun/windows/awt_Component.cpp | 4 +- src/windows/native/sun/windows/awt_Frame.cpp | 2 + test/java/awt/Focus/8013611/JDK8013611.java | 111 ++ test/java/awt/Focus/DialogTraversFocusBackTest/DialogTraversFocusBackTest.java | 94 ++ test/java/awt/Frame/7024749/bug7024749.java | 2 +- test/java/lang/invoke/JavaDocExamplesTest.java | 99 ++- test/java/lang/invoke/MethodHandlesTest.java | 90 +- test/java/lang/invoke/ProtectedMemberDifferentPackage/Test.java | 33 + test/java/lang/invoke/ProtectedMemberDifferentPackage/p1/T2.java | 127 +++ test/java/lang/invoke/ProtectedMemberDifferentPackage/p2/T3.java | 32 + test/java/nio/channels/Selector/ByteServer.java | 68 +- test/java/nio/channels/Selector/ReadAfterConnect.java | 34 +- test/java/nio/channels/Selector/SelectAfterRead.java | 92 +- test/java/nio/channels/Selector/SelectWrite.java | 43 +- test/javax/management/remote/mandatory/util/CacheMapTest.java | 110 -- test/lib/testlibrary/AssertsTest.java | 237 ++++++ test/lib/testlibrary/ClassFileInstaller.java | 5 +- test/lib/testlibrary/OutputAnalyzerReportingTest.java | 122 +++ test/lib/testlibrary/jdk/testlibrary/Asserts.java | 395 ++++++++++ test/lib/testlibrary/jdk/testlibrary/InputArguments.java | 88 ++ test/lib/testlibrary/jdk/testlibrary/JDKToolFinder.java | 106 ++ test/lib/testlibrary/jdk/testlibrary/JDKToolLauncher.java | 134 +++ test/lib/testlibrary/jdk/testlibrary/JcmdBase.java | 47 +- test/lib/testlibrary/jdk/testlibrary/JdkFinder.java | 78 - test/lib/testlibrary/jdk/testlibrary/OutputAnalyzer.java | 157 ++- test/lib/testlibrary/jdk/testlibrary/Platform.java | 103 ++ test/lib/testlibrary/jdk/testlibrary/ProcessThread.java | 143 +++ test/lib/testlibrary/jdk/testlibrary/ProcessTools.java | 195 ++++- test/lib/testlibrary/jdk/testlibrary/StreamPumper.java | 151 +++- test/lib/testlibrary/jdk/testlibrary/TestThread.java | 249 ++++++ test/lib/testlibrary/jdk/testlibrary/Utils.java | 232 +++++ test/lib/testlibrary/jdk/testlibrary/XRun.java | 56 + test/sun/text/resources/LocaleData | 4 +- test/sun/text/resources/LocaleDataTest.java | 4 +- 93 files changed, 4142 insertions(+), 1097 deletions(-) diffs (truncated from 7481 to 500 lines): diff -r 521761df8dea -r 22d79652f370 make/java/util/FILES_properties.gmk --- a/make/java/util/FILES_properties.gmk Mon Aug 12 02:34:25 2013 -0700 +++ b/make/java/util/FILES_properties.gmk Wed Mar 05 22:31:11 2014 -0800 @@ -107,6 +107,7 @@ sun/util/resources/CalendarData_pl.properties \ sun/util/resources/CalendarData_pt.properties \ sun/util/resources/CalendarData_pt_PT.properties \ + sun/util/resources/CalendarData_pt_BR.properties \ sun/util/resources/CalendarData_ro.properties \ sun/util/resources/CalendarData_ru.properties \ sun/util/resources/CalendarData_sk.properties \ diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/VERSION --- a/make/sun/javazic/tzdata/VERSION Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/VERSION Wed Mar 05 22:31:11 2014 -0800 @@ -21,4 +21,4 @@ # or visit www.oracle.com if you need additional information or have any # questions. # -tzdata2013i +tzdata2014c diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/africa --- a/make/sun/javazic/tzdata/africa Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/africa Wed Mar 05 22:31:11 2014 -0800 @@ -358,11 +358,54 @@ # http://www.worldtimezone.com/dst_news/dst_news_egypt02.html # +# From Ahmad El-Dardiry (2014-05-07): +# Egypt is to change back to Daylight system on May 15 +# http://english.ahram.org.eg/NewsContent/1/64/100735/Egypt/Politics-/Egypts-government-to-reapply-daylight-saving-time-.aspx + +# From Gunther Vermier (2015-05-13): +# our Egypt office confirms that the change will be at 15 May "midnight" (24:00) + +# From Paul Eggert (2014-05-13): +# Sarah El Deeb and Lee Keath of AP report that the Egyptian government says +# the change is because of blackouts in Cairo, even though Ahram Online (cited +# above) says DST had no affect on electricity consumption. The AP story says +# DST will not be observed during Ramadan. There is no information about when +# DST will end. See: +# http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833 +# +# For now, guess that later transitions will use 2010's rules, and that +# Egypt will agree with Morocco (see below) about the date Ramadan starts and +# ends, though (unlike Morocco) it will switch at 00:00 standard time. In +# Egypt the spring-forward transitions are removed for 2020-2022, when the +# guessed spring-forward date falls during the estimated Ramadan, and all +# transitions removed for 2023-2038, where the estimated Ramadan falls entirely +# outside the guessed daylight-saving time. Ramadan intrudes on the guessed +# DST starting in 2039, but that's beyond our somewhat-arbitrary cutoff. + Rule Egypt 2008 only - Aug lastThu 23:00s 0 - Rule Egypt 2009 only - Aug 20 23:00s 0 - Rule Egypt 2010 only - Aug 11 0:00 0 - Rule Egypt 2010 only - Sep 10 0:00 1:00 S Rule Egypt 2010 only - Sep lastThu 23:00s 0 - +Rule Egypt 2014 only - May 15 24:00 1:00 S +Rule Egypt 2014 only - Jun 29 0:00s 0 - +Rule Egypt 2014 only - Jul 29 0:00s 1:00 S +Rule Egypt 2014 max - Sep lastThu 23:00s 0 - +Rule Egypt 2015 2019 - Apr lastFri 0:00s 1:00 S +Rule Egypt 2015 only - Jun 18 0:00s 0 - +Rule Egypt 2015 only - Jul 18 0:00s 1:00 S +Rule Egypt 2016 only - Jun 7 0:00s 0 - +Rule Egypt 2016 only - Jul 7 0:00s 1:00 S +Rule Egypt 2017 only - May 27 0:00s 0 - +Rule Egypt 2017 only - Jun 26 0:00s 1:00 S +Rule Egypt 2018 only - May 16 0:00s 0 - +Rule Egypt 2018 only - Jun 15 0:00s 1:00 S +Rule Egypt 2019 only - May 6 0:00s 0 - +Rule Egypt 2019 only - Jun 5 0:00s 1:00 S +Rule Egypt 2020 only - May 24 0:00s 1:00 S +Rule Egypt 2021 only - May 13 0:00s 1:00 S +Rule Egypt 2022 only - May 3 0:00s 1:00 S +Rule Egypt 2023 max - Apr lastFri 0:00s 1:00 S # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Africa/Cairo 2:05:09 - LMT 1900 Oct @@ -891,7 +934,10 @@ # Another source (specifying the time for start and end in the decree): # http://www.lemag.ma/Heure-d-ete-au-Maroc-jusqu-au-27-octobre_a75620.html -# From Paul Eggert (2013-10-03): +# From Sebastien Willemijns (2014-03-18): +# http://www.afriquinfos.com/articles/2014/3/18/maroc-heure-dete-avancez-tous-horloges-247891.asp + +# From Paul Eggert (2014-03-19): # To estimate what the Moroccan government will do in future years, # transition dates for 2014 through 2038 were determined by running # the following program under GNU Emacs 24.3: diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/antarctica --- a/make/sun/javazic/tzdata/antarctica Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/antarctica Wed Mar 05 22:31:11 2014 -0800 @@ -253,24 +253,41 @@ # year-round base # Scott Base, Ross Island, since 1957-01. # See Pacific/Auckland. -# -# These rules for New Zealand are stolen from the 'australasia' file. -# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S -Rule NZAQ 1974 only - Nov 3 2:00s 1:00 D -Rule NZAQ 1975 1988 - Oct lastSun 2:00s 1:00 D -Rule NZAQ 1989 only - Oct 8 2:00s 1:00 D -Rule NZAQ 1990 2006 - Oct Sun>=1 2:00s 1:00 D -Rule NZAQ 1975 only - Feb 23 2:00s 0 S -Rule NZAQ 1976 1989 - Mar Sun>=1 2:00s 0 S -Rule NZAQ 1990 2007 - Mar Sun>=15 2:00s 0 S -Rule NZAQ 2007 max - Sep lastSun 2:00s 1:00 D -Rule NZAQ 2008 max - Apr Sun>=1 2:00s 0 S # Norway - territories # Bouvet (never inhabited) # # claims # Peter I Island (never inhabited) +# +# year-round base +# Troll, Queen Maud Land, -720041+0023206, since 2005-02-12 +# +# From Paul-Inge Flakstad (2014-03-10): +# I recently had a long dialog about this with the developer of timegenie.com. +# In the absence of specific dates, he decided to choose some likely ones: +# GMT +1 - From March 1 to the last Sunday in March +# GMT +2 - From the last Sunday in March until the last Sunday in October +# GMT +1 - From the last Sunday in October until November 7 +# GMT +0 - From November 7 until March 1 +# The dates for switching to and from UTC+0 will probably not be absolutely +# correct, but they should be quite close to the actual dates. +# +# From Paul Eggert (2014-03-21): +# The CET-switching Troll rules require zic from tzcode 2014b or later, so as +# suggested by Bengt-Inge Larsson comment them out for now, and approximate +# with only UTC and CEST. Uncomment them when 2014b is more prevalent. +# +# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S +#Rule Troll 2005 max - Mar 1 1:00u 1:00 CET +Rule Troll 2005 max - Mar lastSun 1:00u 2:00 CEST +#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 CET +#Rule Troll 2004 max - Nov 7 1:00u 0:00 UTC +# Remove the following line when uncommenting the above '#Rule' lines. +Rule Troll 2004 max - Oct lastSun 1:00u 0:00 UTC +# Zone NAME GMTOFF RULES FORMAT [UNTIL] +Zone Antarctica/Troll 0 - zzz 2005 Feb 12 + 0:00 Troll %s # Poland - year-round base # Arctowski, King George Island, -620945-0582745, since 1977 diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/asia --- a/make/sun/javazic/tzdata/asia Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/asia Wed Mar 05 22:31:11 2014 -0800 @@ -1113,8 +1113,13 @@ Rule Zion 1986 only - Sep 7 0:00 0 S Rule Zion 1987 only - Apr 15 0:00 1:00 D Rule Zion 1987 only - Sep 13 0:00 0 S -Rule Zion 1988 only - Apr 9 0:00 1:00 D -Rule Zion 1988 only - Sep 3 0:00 0 S + +# From Avigdor Finkelstein (2014-03-05): +# I check the Parliament (Knesset) records and there it's stated that the +# [1988] transition should take place on Saturday night, when the Sabbath +# ends and changes to Sunday. +Rule Zion 1988 only - Apr 10 0:00 1:00 D +Rule Zion 1988 only - Sep 4 0:00 0 S # From Ephraim Silverberg # (1997-03-04, 1998-03-16, 1998-12-28, 2000-01-17, 2000-07-25, 2004-12-22, @@ -1365,22 +1370,6 @@ # "Jordan will switch to winter time on Friday, October 27". # -# From Phil Pizzey (2009-04-02): -# ...I think I may have spotted an error in the timezone data for -# Jordan. -# The current (2009d) asia file shows Jordan going to daylight -# saving -# time on the last Thursday in March. -# -# Rule Jordan 2000 max - Mar lastThu 0:00s 1:00 S -# -# However timeanddate.com, which I usually find reliable, shows Jordan -# going to daylight saving time on the last Friday in March since 2002. -# Please see -# -# http://www.timeanddate.com/worldclock/timezone.html?n=11 -# - # From Steffen Thorsen (2009-04-02): # This single one might be good enough, (2009-03-24, Arabic): # diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/australasia --- a/make/sun/javazic/tzdata/australasia Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/australasia Wed Mar 05 22:31:11 2014 -0800 @@ -377,16 +377,18 @@ # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=6702&catid=71&Itemid=155 # From the Fijian Government Media Center (2013-08-30) via David Wheeler: -# Fiji will start daylight savings on Sunday 27th October, 2013 and end at 3am -# on Sunday 19th January, 2014.... move clocks forward by one hour from 2am +# Fiji will start daylight savings on Sunday 27th October, 2013 ... +# move clocks forward by one hour from 2am # http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-SUNDAY,-27th-OCTOBER-201.aspx -# -# From Paul Eggert (2013-09-09): + +# From Steffen Thorsen (2013-01-10): +# Fiji will end DST on 2014-01-19 02:00: +# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVINGS-TO-END-THIS-MONTH-%281%29.aspx + +# From Paul Eggert (2014-01-10): # For now, guess that Fiji springs forward the Sunday before the fourth -# Monday in October. This matches both recent practice and -# timeanddate.com's current spring-forward prediction. -# For the January 2014 transition we guessed right while timeanddate.com -# guessed wrong, so leave the fall-back prediction alone. +# Monday in October, and springs back the penultimate Sunday in January. +# This is ad hoc, but matches recent practice. # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Fiji 1998 1999 - Nov Sun>=1 2:00 1:00 S @@ -395,7 +397,8 @@ Rule Fiji 2010 only - Mar lastSun 3:00 0 - Rule Fiji 2010 max - Oct Sun>=21 2:00 1:00 S Rule Fiji 2011 only - Mar Sun>=1 3:00 0 - -Rule Fiji 2012 max - Jan Sun>=18 3:00 0 - +Rule Fiji 2012 2013 - Jan Sun>=18 3:00 0 - +Rule Fiji 2014 max - Jan Sun>=18 2:00 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva 12:00 Fiji FJ%sT # Fiji Time @@ -783,14 +786,29 @@ # Johnston # -# From Paul Eggert (2013-09-03): +# From Paul Eggert (2014-03-11): +# Sometimes Johnston kept Hawaii time, and sometimes it was an hour behind. +# Details are uncertain. We have no data for Johnston after 1970, so +# treat it like Hawaii for now. +# # In his memoirs of June 6th to October 4, 1945 # (2005), Herbert C. Bach writes, # "We started our letdown to Kwajalein Atoll and landed there at 5:00 AM # Johnston time, 1:30 AM Kwajalein time." This was in June 1945, and # confirms that Johnston kept the same time as Honolulu in summer 1945. -# We have no better information, so for now, assume this has been true -# indefinitely into the past. +# +# From Lyle McElhaney (2014-03-11): +# [W]hen JI was being used for that [atomic bomb] testing, the time being used +# was not Hawaiian time but rather the same time being used on the ships, +# which had a GMT offset of -11 hours. This apparently applied to at least the +# time from Operation Newsreel (Hardtack I/Teak shot, 1958-08-01) to the last +# Operation Fishbowl shot (Tightrope, 1962-11-04).... [See] Herman Hoerlin, +# "The United States High-Altitude Test Experience: A Review Emphasizing the +# Impact on the Environment", Los Alamos LA-6405, Oct 1976 +# . +# See the table on page 4 where he lists GMT and local times for the tests; a +# footnote for the JI tests reads that local time is "JI time = Hawaii Time +# Minus One Hour". # # See 'northamerica' for Pacific/Johnston. diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/europe --- a/make/sun/javazic/tzdata/europe Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/europe Wed Mar 05 22:31:11 2014 -0800 @@ -2768,14 +2768,18 @@ # According to the articles linked below, Turkey will change into summer # time zone (GMT+3) on March 28, 2011 at 3:00 a.m. instead of March 27. # This change is due to a nationwide exam on 27th. -# -# # http://www.worldbulletin.net/?aType=haber&ArticleID=70872 -# # Turkish: -# # http://www.hurriyet.com.tr/ekonomi/17230464.asp?gid=373 -# + +# From Faruk Pasin (2014-02-14): +# The DST for Turkey has been changed for this year because of the +# Turkish Local election.... +# http://www.sabah.com.tr/Ekonomi/2014/02/12/yaz-saatinde-onemli-degisiklik +# ... so Turkey will move clocks forward one hour on March 31 at 3:00 a.m. +# From Paul Eggert (2014-02-17): +# Here is an English-language source: +# http://www.worldbulletin.net/turkey/129016/turkey-switches-to-daylight-saving-time-march-31 # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S Rule Turkey 1916 only - May 1 0:00 1:00 S @@ -2844,6 +2848,8 @@ 2:00 Turkey EE%sT 2007 2:00 EU EE%sT 2011 Mar 27 1:00u 2:00 - EET 2011 Mar 28 1:00u + 2:00 EU EE%sT 2014 Mar 30 1:00u + 2:00 - EET 2014 Mar 31 1:00u 2:00 EU EE%sT Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents. @@ -2865,19 +2871,13 @@ # approval from 266 deputies. # # Ukraine abolishes transter back to the winter time (in Russian) -# # http://news.mail.ru/politics/6861560/ -# # # The Ukrainians will no longer change the clock (in Russian) -# # http://www.segodnya.ua/news/14290482.html -# # # Deputies cancelled the winter time (in Russian) -# # http://www.pravda.com.ua/rus/news/2011/09/20/6600616/ -# # # From Philip Pizzey (2011-10-18): # Today my Ukrainian colleagues have informed me that the @@ -2888,18 +2888,39 @@ # As far as I understand, the recent change to the Ukrainian time zone # (Europe/Kiev) to introduce permanent daylight saving time (similar # to Russia) was reverted today: -# -# # http://portal.rada.gov.ua/rada/control/en/publish/article/info_left?art_id=287324&cat_id=105995 -# # # Also reported by Alexander Bokovoy (2011-10-18) who also noted: # The law documents themselves are at +# http://w1.c1.rada.gov.ua/pls/zweb_n/webproc4_1?id=&pf3511=41484 + +# From Vladimir in Moscow via Alois Treindl re Kiev time 1991/2 (2014-02-28): +# First in Ukraine they changed Time zone from UTC+3 to UTC+2 with DST: +# 03 25 1990 02:00 -03.00 1 Time Zone 3 with DST +# 07 01 1990 02:00 -02.00 1 Time Zone 2 with DST +# * Ukrainian Government's Resolution of 18.06.1990, No. 134. +# http://search.ligazakon.ua/l_doc2.nsf/link1/T001500.html # -# -# http://w1.c1.rada.gov.ua/pls/zweb_n/webproc4_1?id=&pf3511=41484 -# - +# They did not end DST in September, 1990 (according to the law, +# "summer time" was still in action): +# 09 30 1990 03:00 -02.00 1 Time Zone 2 with DST +# * Ukrainian Government's Resolution of 21.09.1990, No. 272. +# http://search.ligazakon.ua/l_doc2.nsf/link1/KP900272.html +# +# Again no change in March, 1991 ("summer time" in action): +# 03 31 1991 02:00 -02.00 1 Time Zone 2 with DST +# +# DST ended in September 1991 ("summer time" ended): +# 09 29 1991 03:00 -02.00 0 Time Zone 2, no DST +# * Ukrainian Government's Resolution of 25.09.1991, No. 225. +# http://www.uazakon.com/documents/date_21/pg_iwgdoc.htm +# This is an answer. +# +# Since 1992 they had normal DST procedure: +# 03 29 1992 02:00 -02.00 1 DST started +# 09 27 1992 03:00 -02.00 0 DST ended +# * Ukrainian Government's Resolution of 20.03.1992, No. 139. +# http://www.uazakon.com/documents/date_8u/pg_grcasa.htm # Zone NAME GMTOFF RULES FORMAT [UNTIL] # Most of Ukraine since 1970 has been like Kiev. @@ -2910,9 +2931,8 @@ 2:00 - EET 1930 Jun 21 3:00 - MSK 1941 Sep 20 1:00 C-Eur CE%sT 1943 Nov 6 - 3:00 Russia MSK/MSD 1990 - 3:00 - MSK 1990 Jul 1 2:00 - 2:00 - EET 1992 + 3:00 Russia MSK/MSD 1990 Jul 1 2:00 + 2:00 1:00 EEST 1991 Sep 29 3:00 2:00 E-Eur EE%sT 1995 2:00 EU EE%sT # Ruthenia used CET 1990/1991. @@ -2966,7 +2986,15 @@ # Assume it happened in March by not changing the clocks. 3:00 Russia MSK/MSD 1997 3:00 - MSK 1997 Mar lastSun 1:00u - 2:00 EU EE%sT +# From Alexander Krivenyshev (2014-03-17): +# time change at 2:00 (2am) on March 30, 2014 +# http://vz.ru/news/2014/3/17/677464.html +# From Paul Eggert (2014-03-30): +# Simferopol and Sevastopol reportedly changed their central town clocks +# late the previous day, but this appears to have been ceremonial +# and the discrepancies are small enough to not worry about. + 2:00 EU EE%sT 2014 Mar 30 2:00 + 4:00 - MSK # Vatican City # See Europe/Rome. diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/leapseconds --- a/make/sun/javazic/tzdata/leapseconds Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/leapseconds Wed Mar 05 22:31:11 2014 -0800 @@ -20,7 +20,7 @@ # 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. - +# # Allowance for leapseconds added to each timezone file. # This file is in the public domain. diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/northamerica --- a/make/sun/javazic/tzdata/northamerica Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/northamerica Wed Mar 05 22:31:11 2014 -0800 @@ -414,9 +414,10 @@ # US Pacific time, represented by Los Angeles # # California, northern Idaho (Benewah, Bonner, Boundary, Clearwater, -# Idaho, Kootenai, Latah, Lewis, Nez Perce, and Shoshone counties, -# and the northern three-quarters of Idaho county), -# most of Nevada, most of Oregon, and Washington +# Kootenai, Latah, Lewis, Nez Perce, and Shoshone counties, Idaho county +# north of the Salmon River, and the towns of Burgdorf and Warren), +# Nevada (except West Wendover), Oregon (except the northern 3/4 of +# Malheur county), and Washington # # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER Rule CA 1948 only - Mar 14 2:00 1:00 D diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/southamerica --- a/make/sun/javazic/tzdata/southamerica Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/southamerica Wed Mar 05 22:31:11 2014 -0800 @@ -1298,6 +1298,13 @@ # start date is 2013-09-08 00:00.... # http://www.gob.cl/informa/2013/02/15/gobierno-anuncia-fechas-de-cambio-de-hora-para-el-ano-2013.htm +# From Jose Miguel Garrido (2014-02-19): +# Today appeared in the Diario Oficial a decree amending the time change +# dates to 2014. +# DST End: last Saturday of April 2014 (Sun 27 Apr 2014 03:00 UTC) +# DST Start: first Saturday of September 2014 (Sun 07 Sep 2014 04:00 UTC) +# http://www.diariooficial.interior.gob.cl//media/2014/02/19/do-20140219.pdf + # NOTE: ChileAQ rules for Antarctic bases are stored separately in the # 'antarctica' file. @@ -1631,6 +1638,9 @@ # From Carlos Raul Perasso (2013-03-15): # The change in Paraguay is now final. Decree number 10780 # http://www.presidencia.gov.py/uploads/pdf/presidencia-3b86ff4b691c79d4f5927ca964922ec74772ce857c02ca054a52a37b49afc7fb.pdf +# From Carlos Raul Perasso (2014-02-28): +# Decree 1264 can be found at: +# http://www.presidencia.gov.py/archivos/documentos/DECRETO1264_ey9r8zai.pdf Rule Para 2013 max - Mar Sun>=22 0:00 0 - # Zone NAME GMTOFF RULES FORMAT [UNTIL] @@ -1689,18 +1699,19 @@ Zone America/Port_of_Spain -4:06:04 - LMT 1912 Mar 2 -4:00 - AST +# These all agree with Trinidad and Tobago since 1970. Link America/Port_of_Spain America/Anguilla Link America/Port_of_Spain America/Dominica Link America/Port_of_Spain America/Grenada Link America/Port_of_Spain America/Guadeloupe -Link America/Port_of_Spain America/Marigot +Link America/Port_of_Spain America/Marigot # St Martin (French part) Link America/Port_of_Spain America/Montserrat Link America/Port_of_Spain America/St_Barthelemy -Link America/Port_of_Spain America/St_Kitts +Link America/Port_of_Spain America/St_Kitts # St Kitts & Nevis Link America/Port_of_Spain America/St_Lucia -Link America/Port_of_Spain America/St_Thomas +Link America/Port_of_Spain America/St_Thomas # Virgin Islands (US) Link America/Port_of_Spain America/St_Vincent -Link America/Port_of_Spain America/Tortola +Link America/Port_of_Spain America/Tortola # Virgin Islands (UK) # Uruguay # From Paul Eggert (1993-11-18): diff -r 521761df8dea -r 22d79652f370 make/sun/javazic/tzdata/zone.tab --- a/make/sun/javazic/tzdata/zone.tab Mon Aug 12 02:34:25 2013 -0700 +++ b/make/sun/javazic/tzdata/zone.tab Wed Mar 05 22:31:11 2014 -0800 @@ -74,6 +74,7 @@ AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I +AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF) AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF) AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN) @@ -366,6 +367,7 @@ RU +5545+03735 Europe/Moscow Moscow+00 - west Russia RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea RU +5312+05009 Europe/Samara Moscow+00 - Samara, Udmurtia +RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk @@ -421,7 +423,6 @@ UA +5026+03031 Europe/Kiev most locations UA +4837+02218 Europe/Uzhgorod Ruthenia UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk -UA +4457+03406 Europe/Simferopol central Crimea UG +0019+03225 Africa/Kampala UM +1645-16931 Pacific/Johnston Johnston Atoll From andrew at icedtea.classpath.org Tue Jul 15 21:22:55 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 21:22:55 +0000 Subject: /hg/release/icedtea6-1.13: Fix formatting issues in NEWS. Message-ID: changeset 25b0fd22e956 in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=25b0fd22e956 author: Andrew John Hughes date: Tue Jul 15 22:22:49 2014 +0100 Fix formatting issues in NEWS. 2014-07-15 Andrew John Hughes * NEWS: Fix formatting issues. diffstat: ChangeLog | 4 ++++ NEWS | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diffs (34 lines): diff -r 73fd837debeb -r 25b0fd22e956 ChangeLog --- a/ChangeLog Tue Jul 15 21:28:07 2014 +0100 +++ b/ChangeLog Tue Jul 15 22:22:49 2014 +0100 @@ -1,3 +1,7 @@ +2014-07-15 Andrew John Hughes + + * NEWS: Fix formatting issues. + 2014-07-15 Andrew John Hughes * configure.ac: Bump to 1.13.5pre. diff -r 73fd837debeb -r 25b0fd22e956 NEWS --- a/NEWS Tue Jul 15 21:28:07 2014 +0100 +++ b/NEWS Tue Jul 15 22:22:49 2014 +0100 @@ -39,7 +39,7 @@ - S8037167, CVE-2014-4216: Better method signature resolution - S8039520, CVE-2014-4262: More atomicity of atomic updates * Import of OpenJDK6 b32 - - OP32: OpenJDK6-b31 isn't compatible with Windows platform + - OJ32: OpenJDK6-b31 isn't compatible with Windows platform - OJ33: Update copyright headers introduced by the fix for OPENJDK6-32 - OJ34: OpenJDK6-b31 backport of JDK-6638712 to openjdk6 - OJ35: backport of JDK-6650759 to openjdk6 @@ -53,8 +53,8 @@ - S8042590: Running form URL throws NPE - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader * Backports - - S7027300, RH1098399: Unsynchronized HashMap access causes endless loop - - S7183251: Netbeans editor renders text wrong on JDK 7u6 build + - S7027300, RH1098399: Unsynchronized HashMap access causes endless loop + - S7183251: Netbeans editor renders text wrong on JDK 7u6 build New in release 1.13.3 (2014-04-15): From andrew at icedtea.classpath.org Tue Jul 15 23:22:16 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:22:16 +0000 Subject: /hg/release/icedtea7-forest-2.5: 52 new changesets Message-ID: changeset 45fca50266c8 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=45fca50266c8 author: asaha date: Tue Feb 11 12:32:40 2014 -0800 Added tag jdk7u65-b00 for changeset 92ac508efb9e changeset 08e7baf56f0b in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=08e7baf56f0b author: asaha date: Tue Feb 11 15:05:18 2014 -0800 Merge changeset 37680946c4f4 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=37680946c4f4 author: asaha date: Tue Feb 11 17:05:35 2014 -0800 Merge changeset cbdc064f2036 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=cbdc064f2036 author: asaha date: Wed Feb 12 16:21:31 2014 -0800 Merge changeset f22b3acfa520 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=f22b3acfa520 author: asaha date: Tue Feb 18 14:06:54 2014 -0800 Merge changeset 24b928673e5d in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=24b928673e5d author: asaha date: Thu Feb 20 08:39:29 2014 -0800 Merge changeset b9264ea7e088 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=b9264ea7e088 author: asaha date: Tue Feb 25 23:17:53 2014 -0800 Merge changeset b9aced0b425f in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=b9aced0b425f author: katleman date: Thu Feb 27 11:58:20 2014 -0800 Added tag jdk7u65-b01 for changeset b9264ea7e088 changeset 38cebeeae40e in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=38cebeeae40e author: asaha date: Thu Feb 27 12:57:15 2014 -0800 Merge changeset 71dab8493659 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=71dab8493659 author: asaha date: Tue Mar 04 17:45:30 2014 -0800 Merge changeset 3a683f1730a1 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=3a683f1730a1 author: asaha date: Wed Mar 05 13:34:23 2014 -0800 Merge changeset c0274edaf856 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=c0274edaf856 author: katleman date: Wed Mar 05 16:27:44 2014 -0800 Added tag jdk7u65-b02 for changeset 3a683f1730a1 changeset 58ae36afc173 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=58ae36afc173 author: asaha date: Tue Mar 11 14:47:56 2014 -0700 Merge changeset 10e2abe38859 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=10e2abe38859 author: asaha date: Tue Mar 11 15:14:05 2014 -0700 Merge changeset c154a8de7d34 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=c154a8de7d34 author: asaha date: Wed Mar 12 14:53:50 2014 -0700 Merge changeset 437365bc13c2 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=437365bc13c2 author: katleman date: Thu Mar 13 13:16:30 2014 -0700 Added tag jdk7u65-b03 for changeset c154a8de7d34 changeset 62e22dbc3641 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=62e22dbc3641 author: asaha date: Tue Mar 18 13:07:23 2014 -0700 Merge changeset 161a572d073a in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=161a572d073a author: katleman date: Thu Mar 20 13:04:29 2014 -0700 Added tag jdk7u65-b04 for changeset 62e22dbc3641 changeset 4cab26e4e27f in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=4cab26e4e27f author: asaha date: Thu Mar 20 14:56:02 2014 -0700 Merge changeset 093aa5b5b897 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=093aa5b5b897 author: katleman date: Tue Mar 25 11:18:50 2014 -0700 Added tag jdk7u65-b05 for changeset 4cab26e4e27f changeset b2cd3babc4ca in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=b2cd3babc4ca author: asaha date: Thu Mar 27 12:16:38 2014 -0700 Merge changeset 7eb8507ede55 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=7eb8507ede55 author: katleman date: Tue Apr 01 12:01:27 2014 -0700 Added tag jdk7u65-b06 for changeset b2cd3babc4ca changeset bc5e69657c0f in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=bc5e69657c0f author: asaha date: Thu Apr 03 11:18:39 2014 -0700 Merge changeset 416519f4dbee in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=416519f4dbee author: katleman date: Tue Apr 08 11:33:59 2014 -0700 Added tag jdk7u65-b07 for changeset bc5e69657c0f changeset 48eb3345e05f in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=48eb3345e05f author: asaha date: Wed Apr 09 14:04:37 2014 -0700 Merge changeset c779fbb7b87e in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=c779fbb7b87e author: katleman date: Tue Apr 15 23:00:25 2014 -0700 Added tag jdk7u65-b08 for changeset 48eb3345e05f changeset 74f2c37460eb in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=74f2c37460eb author: asaha date: Tue Apr 15 12:12:17 2014 -0700 Merge changeset 55cb80a107b2 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=55cb80a107b2 author: asaha date: Wed Apr 16 10:08:38 2014 -0700 Merge changeset 776bdfe6c504 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=776bdfe6c504 author: asaha date: Wed Apr 16 13:31:17 2014 -0700 Merge changeset fa5ead8cb7d2 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=fa5ead8cb7d2 author: katleman date: Mon Apr 07 12:17:15 2014 -0700 Added tag jdk7u55-b32 for changeset 5b1555517201 changeset 6041c6889393 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=6041c6889393 author: katleman date: Tue Apr 08 11:15:24 2014 -0700 Added tag jdk7u55-b33 for changeset fa5ead8cb7d2 changeset 2e7881991d52 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=2e7881991d52 author: asaha date: Mon Apr 21 09:58:30 2014 -0700 Merge changeset 24dbd36b275f in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=24dbd36b275f author: katleman date: Tue Apr 22 11:46:08 2014 -0700 Added tag jdk7u65-b09 for changeset 2e7881991d52 changeset db03cbff3895 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=db03cbff3895 author: asaha date: Thu Apr 24 11:58:53 2014 -0700 Merge changeset 3ecf3416c325 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=3ecf3416c325 author: katleman date: Tue Apr 29 12:34:43 2014 -0700 Added tag jdk7u65-b10 for changeset db03cbff3895 changeset fbe03f6f71cb in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=fbe03f6f71cb author: asaha date: Tue Apr 29 13:53:00 2014 -0700 Merge changeset 9f629f70ec6c in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=9f629f70ec6c author: asaha date: Thu May 01 08:59:38 2014 -0700 Merge changeset e0fc52d5606f in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=e0fc52d5606f author: katleman date: Tue May 06 10:02:23 2014 -0700 Added tag jdk7u65-b11 for changeset 9f629f70ec6c changeset 71cd7866ca68 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=71cd7866ca68 author: asaha date: Wed May 07 22:31:27 2014 -0700 Merge changeset 49dbfea9d3a4 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=49dbfea9d3a4 author: katleman date: Tue May 13 08:13:10 2014 -0700 Added tag jdk7u65-b12 for changeset 71cd7866ca68 changeset 0cfadcb9f800 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=0cfadcb9f800 author: katleman date: Tue May 20 12:36:33 2014 -0700 Added tag jdk7u65-b13 for changeset 49dbfea9d3a4 changeset 3cce3737be36 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=3cce3737be36 author: katleman date: Wed May 28 02:33:52 2014 -0700 Added tag jdk7u65-b14 for changeset 0cfadcb9f800 changeset 2c8b05ed9802 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=2c8b05ed9802 author: katleman date: Tue Jun 03 13:52:43 2014 -0700 Added tag jdk7u65-b15 for changeset 3cce3737be36 changeset 927d8d3db13c in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=927d8d3db13c author: katleman date: Fri Jun 13 11:56:34 2014 -0700 Added tag jdk7u65-b16 for changeset 2c8b05ed9802 changeset b51ccd328946 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=b51ccd328946 author: katleman date: Tue Jun 17 13:02:33 2014 -0700 Added tag jdk7u65-b17 for changeset 927d8d3db13c changeset 1a704e470c7d in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=1a704e470c7d author: asaha date: Wed Jun 25 08:28:53 2014 -0700 Added tag jdk7u65-b30 for changeset b51ccd328946 changeset 69328bc6ed6c in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=69328bc6ed6c author: asaha date: Wed Jul 02 09:37:46 2014 -0700 Added tag jdk7u55-b15 for changeset 744f7b17de89 changeset fa242615607f in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=fa242615607f author: asaha date: Wed Jul 02 09:47:41 2014 -0700 Merge changeset 64dbd70735c7 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=64dbd70735c7 author: asaha date: Wed Jul 02 10:07:17 2014 -0700 Added tag jdk7u65-b18 for changeset fa242615607f changeset 90f56be6f9d9 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=90f56be6f9d9 author: asaha date: Wed Jul 09 15:01:25 2014 -0700 Added tag jdk7u65-b19 for changeset 64dbd70735c7 changeset 483622a291d7 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=483622a291d7 author: andrew date: Tue Jul 15 22:47:38 2014 +0100 Merge jdk7u65-b32 changeset de1fbcb08558 in /hg/release/icedtea7-forest-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5?cmd=changeset;node=de1fbcb08558 author: andrew date: Wed Jul 16 00:20:25 2014 +0100 Added tag icedtea-2.5.1 for changeset 483622a291d7 diffstat: .hgtags | 84 +++++ .jcheck/conf | 2 - README-ppc.html | 689 +++++++++++++++++++++++++++++++++++++++++++++++ common/bin/hgforest.sh | 190 ++++++++++++ get_source.sh | 4 +- make/Defs-internal.gmk | 15 +- make/hotspot-rules.gmk | 14 + make/jdk-rules.gmk | 4 + make/scripts/hgforest.sh | 144 --------- make/scripts/webrev.ksh | 6 +- 10 files changed, 1000 insertions(+), 152 deletions(-) diffs (truncated from 1326 to 500 lines): diff -r 92ac508efb9e -r de1fbcb08558 .hgtags --- a/.hgtags Mon Jan 13 16:14:27 2014 -0800 +++ b/.hgtags Wed Jul 16 00:20:25 2014 +0100 @@ -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 @@ -186,11 +192,15 @@ 5f3645aa920d373b26d01b21f3b8b30fc4e10a0d jdk7u6-b10 cd64596c2dd7f195a6d38b6269bab23e7fad4361 jdk7u6-b11 61cfcee1d00cb4af288e640216af2bccbc3c9ef0 jdk7u6-b12 +cdab3bfb573b8832d539a8fa3e9c20f9f4965132 ppc-aix-port-b01 +06179726206f1411ed254f786be3477ca5763e37 ppc-aix-port-b02 +50f2b3cacf77467befb95b7d4fea15bbdb4d650a ppc-aix-port-b03 9b9a6d318e8aa5b8f0e42d2d3d2c0c34cb3f986d jdk7u6-b13 eff9ea1ca63df8656ebef9fedca0c647a210d807 jdk7u6-b14 528f1589f5f2adf18d5d21384ba668b9aa79841e jdk7u6-b15 7b77364eb09faac4c37ce9dd2c2308ca5525f18f jdk7u6-b16 b7c1b441d131c70278de299b5d1e59dce0755dc5 jdk7u6-b17 +0e7b94bd450d4270d4e9bd6c040c94fa4be714a6 icedtea-2.3-branchpoint 9c41f7b1460b106d18676899d24b6ea07de5a369 jdk7u6-b18 56291720b5e578046bc02761dcad2a575f99fd8e jdk7u6-b19 e79fa743fe5a801db4acc7a7daa68f581423e5d3 jdk7u6-b20 @@ -258,11 +268,13 @@ c3e42860af1cfd997fe1895594f652f0d1e9984e jdk7u12-b07 1a03ef4794dc8face4de605ae480d4c763e6b494 jdk7u12-b08 87cf81226f2012e5c21131adac7880f7e4da1133 jdk7u12-b09 +8a10a3c51f1cd88009008cf1b82071797b5f516d icedtea-2.4-branchpoint 745a15bb6d94765bb5c68048ff146590df9b8441 jdk7u14-b10 2d8fdaa5bb55b937028e385633ce58de4dcdb69c jdk7u14-b11 594dbbbb84add4aa310d51af7e298470d8cda458 jdk7u14-b12 ae5c1b29297dae0375277a0b6428c266d8d77c71 jdk7u14-b13 bb97ad0c9e5a0566e82b3b4bc43eabe680b89d97 jdk7u14-b14 +a20ac67cdbc245d1c14fec3061703232501f8334 ppc-aix-port-b04 b534282bd377e3886b9d0d4760f6fdaa1804bdd3 jdk7u14-b15 0e52db2d9bb8bc789f6c66f2cfb7cd2d3b0b16c6 jdk7u15-b01 0324fca94d073b3aad77658224f17679f25c18b1 jdk7u15-b02 @@ -357,6 +369,7 @@ 3af81bfe320c12758234233da6fa27c3c0ffcdc4 jdk7u40-b42 1d53bd8fd2a62bcf336727ebec377ef7498dd4a6 jdk7u40-b43 dc1e099cd62d250b4a997ce694b47fe2f50d2905 jdk7u40-b60 +11147a12bd8c6b02f98016a8d1151e56f42a43b6 jdk7u60-b00 6359fa34199c9619dfec0f41d2eb22a4083ce610 jdk7u40-b61 a2605cf03226ce2fef7a899ce41521c654300975 jdk7u40-b62 07e41ff8674c9438cb1124cf78eed8636ed5d4fa jdk7u45-b02 @@ -378,6 +391,7 @@ f0cdb08a4624a623bdd178b04c4bf5a2fa4dc39a jdk7u45-b18 82f1f76c44124c31cb1151833fc15c13547ab280 jdk7u45-b30 f4373de4b75ba8d7f7a5d9c1f77e7884d9064b7e jdk7u45-b31 +11147a12bd8c6b02f98016a8d1151e56f42a43b6 jdk7u60-b00 b73c006b5d81528dfb4104a79b994b56675bf75d jdk7u45-b33 05742477836cb30235328181c8e6cae5d4bb06fd jdk7u45-b34 d0d5badd77abce0469830466ff7b910d3621d847 jdk7u45-b35 @@ -397,8 +411,78 @@ 6c778574d87336a2e55156544af92ce2de799696 jdk7u51-b13 d2eeac0235eda77d0a6c72c7235a6e96bc9ad4fb jdk7u51-b30 626e76f127a44ba0118a545d37410f80000db8fb jdk7u51-b31 +472d67871307433bf3e2687c48237c48ffbf068e jdk7u51-b33 +503f1d094a1bbbd94386f5c3342130dc5f4ba6ee jdk7u51-b34 df53ec7eb789e7dec375a685dce1fa5cf63618b4 jdk7u55-b00 15bc13cd7f5d0bb06ab59935e25944fa7cb15bc8 jdk7u55-b01 b829c5947c6cd473f42cadfe2c61399fb67c2da6 jdk7u55-b02 a72b902cdd39d9f2f2d353d5ad629e543cbc01ae jdk7u55-b03 6a8ee38075621564dd276e8ed7be576d637acf79 jdk7u55-b04 +92ac508efb9e00d88b04a2bd79ab8a55f450a048 jdk7u65-b00 +92ac508efb9e00d88b04a2bd79ab8a55f450a048 jdk7u55-b05 +6c7cd2146f69cf0823765b3cf84c338c1dc7157c jdk7u55-b06 +5cad0f56c685a0673944dbc5632ea9ae7b9340c7 jdk7u55-b07 +f617c33f98e1941875457c5c227198c52917942e jdk7u55-b08 +1f02b1889f7098c1e6fdd271ef74c62a2e346b28 jdk7u55-b09 +736c951b19b9562830f61d5ebbad78775f200e94 jdk7u55-b09 +2a55bbab15f6c866281003dcf48708a9d8c145e9 jdk7u55-b10 +f4ace62029de00d2497058c3c0e1d26e019cde30 jdk7u55-b11 +de268da51b54a4f36bcc1a9af60faea285e94330 jdk7u55-b12 +d972a2d9e4f3f864d26c33ccfdacd8269e0f29a8 jdk7u55-b13 +0820b4707cfa75f8211b88b0daa67bba8475f498 jdk7u55-b30 +997ab3897d6ede80b0decdda94b569e57dd7dd90 jdk7u55-b14 +744f7b17de89527bf639d5bff3533a9ce72dfa84 jdk7u55-b15 +1f52edec29fd44c8bacce11ba7440287b37d04d1 jdk7u55-b31 +5b15555172019b3c92484abff7c92f066e162d29 jdk7u55-b32 +fa5ead8cb7d2de49cd138d93fb86fa5a10b07037 jdk7u55-b33 +11147a12bd8c6b02f98016a8d1151e56f42a43b6 jdk7u60-b00 +88113cabda386320a087b288d43e792f523cc0ba jdk7u60-b01 +6bdacebbc97f0a03be45be48a6d5b5cf2f7fe77d jdk7u60-b02 +ba9872fc05cc333e3960551ae9fa61d51b8d5e06 icedtea-2.5pre01 +fc5d15cc35b4b47fe403c57fe4bf224fcfe1426c icedtea-2.5pre02 +87f2193da40d3a2eedca95108ae78403c7bdcd49 jdk7u60-b03 +d4397128f8b65eb96287128575dd1a3da6a7825b jdk7u60-b04 +ea798405286d97f643ef809abcb1e13024b4f951 jdk7u60-b05 +b0940b205cab942512b5bca1338ab96a45a67832 jdk7u60-b06 +cae7bacaa13bb8c42a42fa35b156a7660874e907 jdk7u60-b07 +1af0560611469ad2a068a03774ecd0d7790db7b7 jdk7u60-b08 +662dc3b6467488b8c175a4423ba7a4991ad87d94 jdk7u60-b09 +023f8eb40d371d5cb761f7e60ba7b396b3fdf886 jdk7u60-b10 +798468b91bcbb81684aea8620dbb31eaceb24c6c jdk7u60-b11 +e40360c10b2ce5b24b1eea63160b78e112aa5d3f jdk7u60-b12 +9e3f6f4585c5422e85c3348f585d2264272ab803 icedtea-2.5pre03 +5e540a4d55916519f5604a422bfbb7a0967d0594 jdk7u60-b13 +1ca6a368aec38ee91a41dc03899d7dc1037de44d jdk7u60-b14 +a95b821a2627295b90fb4ae8f3b8bc2ff9c64acc jdk7u60-b15 +c6d37b19485e6a086b632d3ab4adef2588f079fb icedtea-2.5pre04 +716796f6c6f040dd53a75475e09bb19f6542146c icedtea-2.5pre06 +716796f6c6f040dd53a75475e09bb19f6542146c icedtea-2.5pre05 +19a3f6f48c541a8cf144eedffa0e52e108052e82 jdk7u60-b16 +472f5930e6cc8f307b5508995ee2edcf9913a852 jdk7u60-b17 +472f5930e6cc8f307b5508995ee2edcf9913a852 jdk7u60-b18 +b9264ea7e0887d511318bf7b53d12f944760bbbb jdk7u65-b01 +2a7a5e774023944f291ee27ca5b3ad89e0e62aaf jdk7u60-b19 +ac5183999ba532c6b89f24fe01f6f0eb96799719 jdk7u60-b30 +d42df0b6ea9d7c736e0dcc0cb2562c0ee18928f2 icedtea-2.5pre07 +6a4e587022352c27af42e7f725bdce23cecd039f icedtea-2.5pre08 +6a4e587022352c27af42e7f725bdce23cecd039f icedtea-2.5.0 +3a683f1730a148bcc1ca6eb9137116db427093f6 jdk7u65-b02 +c154a8de7d34128ab75f46a2b6a909796f63b6e3 jdk7u65-b03 +62e22dbc36410d76716bfa5e9fd679fcb4b1d845 jdk7u65-b04 +4cab26e4e27f8ff382b8d6487224af59dc7c1fa1 jdk7u65-b05 +b2cd3babc4ca1fb48b6073665e627f8bfb65d547 jdk7u65-b06 +bc5e69657c0f6d58775ac7441033bbcbbaee3268 jdk7u65-b07 +48eb3345e05fe904d2e92067da0abd04a9b375e4 jdk7u65-b08 +2e7881991d5294061023f8862b702e4730f2860d jdk7u65-b09 +db03cbff389500c7ccfd4b476ab78319f6e24d2d jdk7u65-b10 +9f629f70ec6c4249baadaadd05b0f32c9129ad05 jdk7u65-b11 +71cd7866ca68b333e36330e179ab1d69d721aaee jdk7u65-b12 +49dbfea9d3a4b709f3230d581a09d960c2de5109 jdk7u65-b13 +0cfadcb9f8006ac5601bb0ce8b74211d6b223c11 jdk7u65-b14 +3cce3737be368dc3d304508cd0d6e354f8a19f55 jdk7u65-b15 +2c8b05ed9802cf4e5f61439a6d6286e7f7cd444e jdk7u65-b16 +927d8d3db13c5221237b51efe45206054ee6e3f3 jdk7u65-b17 +b51ccd32894662064192857007ef41175d433901 jdk7u65-b30 +fa242615607fa5f6cdd1ae93bc2fb9cc2100c179 jdk7u65-b18 +64dbd70735c775bef1faf873e4bec65d73d597cb jdk7u65-b19 +483622a291d726960c8ccca5650de9569f269d7a icedtea-2.5.1 diff -r 92ac508efb9e -r de1fbcb08558 .jcheck/conf --- a/.jcheck/conf Mon Jan 13 16:14:27 2014 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -project=jdk7 -bugids=dup diff -r 92ac508efb9e -r de1fbcb08558 README-ppc.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README-ppc.html Wed Jul 16 00:20:25 2014 +0100 @@ -0,0 +1,689 @@ + + + + + + OpenJDK PowerPC/AIX Port + + + + + +

OpenJDK PowerPC Port

+ +

+This file contains some additional build instructions for +the OpenJDK PowerPC +Port for Linux and AIX. It complements the general +OpenJDK +README-builds.html file. +

+ +

Building on Linux/PPC64

+ +

+Currently, i.e. all versions after +revision ppc-aix-port-b01, +should successfully build and run on Linux/PPC64. Passing +CORE_BUILD=true on the build comamnd line will instruct the build +system to create an interpreter-only version of the VM which is in general about +an order of magnitude slower than a corresponding server VM with JIT +compiler. But it is still fully functional (e.g. it passes JVM98) and can even +be used to bootstrap itself. Starting with +revision ppc-aix-port-b03, +it is possible to build without CORE_BUILD=true and create a +JIT-enabled version of the VM (containing the C2 "Server" JIT +compiler). +

+ +

+Our current build system is a Power6 box running +SLES 10.3 with gcc version 4.1.2 (in general, more recent Linux distributions +should work as well). +

+ +

Building with the OpenJDK Linux/PPC64 port as bootstrap JDK

+ +

+A precompiled build of ppc-aix-port-b03 is available +for download. +With it and together with the other build dependencies fulfilled as described +in the +main +README-builds.html file you can build a debug version of the JDK from the +top-level source directory with the following command line (additionally +pass CORE_BUILD=true to build an interpreter-only version of the VM): +

+ +
+> make FT_CFLAGS=-m64 LANG=C \
+  ALT_BOOTDIR=<path_to>/jdk1.7.0-ppc-aix-port-b01 \
+  ARCH_DATA_MODEL=64 \
+  HOTSPOT_BUILD_JOBS=8 \
+  PARALLEL_COMPILE_JOBS=8 \
+  ALT_FREETYPE_LIB_PATH=/usr/local/lib \
+  ALT_FREETYPE_HEADERS_PATH=/usr/local/include \
+  ANT_HOME=/usr/local/apache-ant-1.8.4 \
+  VERBOSE=true \
+  CC_INTERP=true \
+  OPENJDK=true \
+  debug_build 2>&1 | tee build_ppc-aix-port_dbg.log
+
+ +

+After the build finished successfully the results can be found under +./build/linux-ppc64-debug/. Product and fastdebug versions can be +build with the make targets product_build and +fastdebug_build respectively (the build results will be located under +./build/linux-ppc64/ and ./build/linux-ppc64-fastdebug/). On +our transitional ppc-aix-port +project page you can find the build logs of our regular nightly makes. +

+ From andrew at icedtea.classpath.org Tue Jul 15 23:22:24 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:22:24 +0000 Subject: /hg/release/icedtea7-forest-2.5/corba: 54 new changesets Message-ID: changeset 30cf01a942ea in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=30cf01a942ea author: asaha date: Tue Feb 11 12:32:54 2014 -0800 Added tag jdk7u65-b00 for changeset a8d27c3fc4e4 changeset 2a6239632b84 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=2a6239632b84 author: asaha date: Tue Feb 11 15:06:15 2014 -0800 Merge changeset f180769d79d9 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=f180769d79d9 author: asaha date: Tue Feb 11 17:06:02 2014 -0800 Merge changeset d2f4586c41f2 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=d2f4586c41f2 author: asaha date: Wed Feb 12 16:21:50 2014 -0800 Merge changeset 1b48f4945fc8 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=1b48f4945fc8 author: asaha date: Tue Feb 18 14:07:19 2014 -0800 Merge changeset 5bb39057a247 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=5bb39057a247 author: asaha date: Thu Feb 20 08:39:50 2014 -0800 Merge changeset 550ae238459e in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=550ae238459e author: asaha date: Tue Feb 25 23:18:13 2014 -0800 Merge changeset d87d348a9559 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=d87d348a9559 author: katleman date: Thu Feb 27 11:58:22 2014 -0800 Added tag jdk7u65-b01 for changeset 550ae238459e changeset 43ea5feb8dfc in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=43ea5feb8dfc author: asaha date: Thu Feb 27 12:58:50 2014 -0800 Merge changeset 5a69b1ecf4ed in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=5a69b1ecf4ed author: coffeys date: Tue Mar 04 00:45:16 2014 +0000 8035618: Four api/org_omg/CORBA TCK tests fail under plugin only Reviewed-by: alanb, mchung changeset c83b152846b2 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=c83b152846b2 author: asaha date: Tue Mar 04 17:45:50 2014 -0800 Merge changeset 6a89d959cbad in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=6a89d959cbad author: asaha date: Wed Mar 05 13:34:44 2014 -0800 Merge changeset 8a9c32cf2af7 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=8a9c32cf2af7 author: katleman date: Wed Mar 05 16:27:50 2014 -0800 Added tag jdk7u65-b02 for changeset 6a89d959cbad changeset 584335f9ad4f in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=584335f9ad4f author: asaha date: Tue Mar 11 14:48:22 2014 -0700 Merge changeset ff2d5c3b1704 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=ff2d5c3b1704 author: asaha date: Tue Mar 11 15:14:30 2014 -0700 Merge changeset afed3d62e805 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=afed3d62e805 author: asaha date: Wed Mar 12 14:54:14 2014 -0700 Merge changeset 8ad4ea2ea969 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=8ad4ea2ea969 author: katleman date: Thu Mar 13 13:16:41 2014 -0700 Added tag jdk7u65-b03 for changeset afed3d62e805 changeset 38fabf72970a in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=38fabf72970a author: asaha date: Tue Mar 18 13:07:33 2014 -0700 Merge changeset e59eebfee8ad in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=e59eebfee8ad author: katleman date: Thu Mar 20 13:04:32 2014 -0700 Added tag jdk7u65-b04 for changeset 38fabf72970a changeset 12c1621ce88d in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=12c1621ce88d author: asaha date: Thu Mar 20 14:56:26 2014 -0700 Merge changeset 0cbd6550dbad in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=0cbd6550dbad author: katleman date: Tue Mar 25 11:18:52 2014 -0700 Added tag jdk7u65-b05 for changeset 12c1621ce88d changeset 5041c713522c in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=5041c713522c author: asaha date: Thu Mar 27 12:17:04 2014 -0700 Merge changeset 867a50e8b75c in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=867a50e8b75c author: katleman date: Tue Apr 01 12:01:29 2014 -0700 Added tag jdk7u65-b06 for changeset 5041c713522c changeset 144887a766dc in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=144887a766dc author: asaha date: Thu Apr 03 11:18:59 2014 -0700 Merge changeset dbe9d1055864 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=dbe9d1055864 author: katleman date: Tue Apr 08 11:34:00 2014 -0700 Added tag jdk7u65-b07 for changeset 144887a766dc changeset 5b8210c41bc4 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=5b8210c41bc4 author: asaha date: Wed Apr 09 14:05:01 2014 -0700 Merge changeset fd1c9030a08d in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=fd1c9030a08d author: katleman date: Tue Apr 15 23:00:26 2014 -0700 Added tag jdk7u65-b08 for changeset 5b8210c41bc4 changeset d31a964fad8c in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=d31a964fad8c author: asaha date: Tue Apr 15 12:12:47 2014 -0700 Merge changeset 75721f2cc456 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=75721f2cc456 author: asaha date: Wed Apr 16 10:08:45 2014 -0700 Merge changeset a5c274f37cd6 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=a5c274f37cd6 author: asaha date: Wed Apr 16 13:32:13 2014 -0700 Merge changeset 6503115cbedd in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=6503115cbedd author: katleman date: Mon Apr 07 12:17:16 2014 -0700 Added tag jdk7u55-b32 for changeset fba15e177b15 changeset c8614d56bc1c in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=c8614d56bc1c author: katleman date: Tue Apr 08 11:15:26 2014 -0700 Added tag jdk7u55-b33 for changeset 6503115cbedd changeset 1f7156e0a461 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=1f7156e0a461 author: asaha date: Mon Apr 21 09:58:54 2014 -0700 Merge changeset 8150f133e614 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=8150f133e614 author: katleman date: Tue Apr 22 11:46:15 2014 -0700 Added tag jdk7u65-b09 for changeset 1f7156e0a461 changeset be3cbbea3ec1 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=be3cbbea3ec1 author: asaha date: Thu Apr 24 11:59:23 2014 -0700 Merge changeset 1f7a14ec26a5 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=1f7a14ec26a5 author: katleman date: Tue Apr 29 12:34:47 2014 -0700 Added tag jdk7u65-b10 for changeset be3cbbea3ec1 changeset a3cb238973fc in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=a3cb238973fc author: asaha date: Tue Apr 29 13:53:43 2014 -0700 Merge changeset fd7e4972cfef in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=fd7e4972cfef author: asaha date: Thu May 01 09:01:48 2014 -0700 Merge changeset d5b621db67d0 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=d5b621db67d0 author: katleman date: Tue May 06 10:02:25 2014 -0700 Added tag jdk7u65-b11 for changeset fd7e4972cfef changeset 792ef0370bf7 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=792ef0370bf7 author: asaha date: Wed May 07 22:31:56 2014 -0700 Merge changeset b95f46ae5207 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=b95f46ae5207 author: katleman date: Tue May 13 08:13:13 2014 -0700 Added tag jdk7u65-b12 for changeset 792ef0370bf7 changeset 6efadedfe329 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=6efadedfe329 author: katleman date: Tue May 20 12:36:35 2014 -0700 Added tag jdk7u65-b13 for changeset b95f46ae5207 changeset 78966cf34d86 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=78966cf34d86 author: katleman date: Wed May 28 02:33:55 2014 -0700 Added tag jdk7u65-b14 for changeset 6efadedfe329 changeset 11354f843fc7 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=11354f843fc7 author: katleman date: Tue Jun 03 13:52:45 2014 -0700 Added tag jdk7u65-b15 for changeset 78966cf34d86 changeset d765ed30bd5e in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=d765ed30bd5e author: coffeys date: Sat Jun 07 14:28:56 2014 +0100 8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader Reviewed-by: alanb, lancea changeset cd642d59aca2 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=cd642d59aca2 author: katleman date: Fri Jun 13 11:56:35 2014 -0700 Added tag jdk7u65-b16 for changeset d765ed30bd5e changeset 8740dc71b1ce in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=8740dc71b1ce author: katleman date: Tue Jun 17 13:02:34 2014 -0700 Added tag jdk7u65-b17 for changeset cd642d59aca2 changeset 009dd583df01 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=009dd583df01 author: asaha date: Wed Jun 25 08:29:02 2014 -0700 Added tag jdk7u65-b30 for changeset 8740dc71b1ce changeset 10bcab8d4ee1 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=10bcab8d4ee1 author: asaha date: Wed Jul 02 09:37:55 2014 -0700 Added tag jdk7u55-b15 for changeset ae8120f628c2 changeset b7f66b9f9e8e in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=b7f66b9f9e8e author: asaha date: Wed Jul 02 09:48:05 2014 -0700 Merge changeset 50ddba8882e7 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=50ddba8882e7 author: asaha date: Wed Jul 02 10:07:24 2014 -0700 Added tag jdk7u65-b18 for changeset b7f66b9f9e8e changeset dae3f20d2306 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=dae3f20d2306 author: asaha date: Wed Jul 09 15:01:32 2014 -0700 Added tag jdk7u65-b19 for changeset 50ddba8882e7 changeset 895c6b104996 in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=895c6b104996 author: andrew date: Tue Jul 15 22:47:38 2014 +0100 Merge jdk7u65-b32 changeset 06663e4cfbbe in /hg/release/icedtea7-forest-2.5/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/corba?cmd=changeset;node=06663e4cfbbe author: andrew date: Wed Jul 16 00:20:14 2014 +0100 Added tag icedtea-2.5.1 for changeset 895c6b104996 diffstat: .hgtags | 83 + .jcheck/conf | 2 - make/Makefile | 2 +- make/common/Defs-aix.gmk | 397 ++++ make/common/shared/Defs-java.gmk | 8 +- make/common/shared/Platform.gmk | 12 + src/share/classes/com/sun/corba/se/impl/copyobject/JavaInputStream.sjava | 528 ----- src/share/classes/com/sun/corba/se/impl/copyobject/JavaOutputStream.sjava | 435 ---- src/share/classes/com/sun/corba/se/impl/interceptors/ThreadCurrentStack.sjava | 164 - src/share/classes/com/sun/corba/se/impl/orbutil/DefineWrapper.sjava | 120 - src/share/classes/com/sun/corba/se/impl/orbutil/resources/sunorb_pt_BR.properties | 2 +- src/share/classes/com/sun/corba/se/impl/presentation/rmi/IDLNameTranslatorImpl_save.sjava | 909 ---------- src/share/classes/com/sun/corba/se/impl/presentation/rmi/IDLTypesUtil_save.sjava | 520 ----- src/share/classes/com/sun/corba/se/impl/protocol/oldlocal/LocalClientRequestImpl.sjava | 138 - src/share/classes/com/sun/corba/se/impl/protocol/oldlocal/LocalClientResponseImpl.sjava | 162 - src/share/classes/com/sun/corba/se/impl/protocol/oldlocal/LocalServerRequestImpl.sjava | 208 -- src/share/classes/com/sun/corba/se/impl/protocol/oldlocal/LocalServerResponseImpl.sjava | 192 -- src/share/classes/com/sun/corba/se/impl/transport/BufferConnectionImpl.sjava | 710 ------- src/share/classes/com/sun/corba/se/impl/transport/DefaultSocketFactoryImpl.java | 22 + src/share/classes/com/sun/corba/se/spi/orb/ORB.java | 31 +- src/share/classes/org/omg/CORBA/ORB.java | 18 +- 21 files changed, 547 insertions(+), 4116 deletions(-) diffs (truncated from 4927 to 500 lines): diff -r a8d27c3fc4e4 -r 06663e4cfbbe .hgtags --- a/.hgtags Tue Jan 21 12:46:58 2014 +0000 +++ b/.hgtags Wed Jul 16 00:20:14 2014 +0100 @@ -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 @@ -186,11 +192,15 @@ c9f6750370c9a99d149d73fd32c363d9959d19d1 jdk7u6-b10 a2089d3bf5a00be50764e1ced77e270ceddddb5d jdk7u6-b11 34354c623c450dc9f2f58981172fa3d66f51e89c jdk7u6-b12 +325250aef90af0f5cd04b141f83a81638ae1e478 ppc-aix-port-b01 +325250aef90af0f5cd04b141f83a81638ae1e478 ppc-aix-port-b02 +325250aef90af0f5cd04b141f83a81638ae1e478 ppc-aix-port-b03 76bee3576f61d4d96fef118902d5d237a4f3d219 jdk7u6-b13 731d5dbd7020dca232023f2e6c3e3e22caccccfb jdk7u6-b14 8da4015f405b0fa267cca4780d20cd012d0a9cb4 jdk7u6-b15 7674c7ed99a53a8dcf654ab8a6963199ef562a08 jdk7u6-b16 e4a676826cb3fe2f84e19105a027c15c097f98f1 jdk7u6-b17 +68c35d6e9548bc7be9c3ce73774c6d53b0d72d3b icedtea-2.3-branchpoint b3d767dbd67f518168c561e078be5e860bc60cfc jdk7u6-b18 5c046510b9308bf514f078d48fcf0112a376ad41 jdk7u6-b19 f0c51b691d34b4a06c1e22c7960be71e0d0ee84e jdk7u6-b20 @@ -258,11 +268,13 @@ 7969d5f219248de033c296ef75fff7aae7545bbd jdk7u12-b07 6f4d4c7a254d4aca3a7f2caabb75e6559a290393 jdk7u12-b08 c8c261b2220c5b966c07784682057a915defb0da jdk7u12-b09 +efbe4cef7fe2d46a197c39eb7a94e127e0bb4c5d icedtea-2.4-branchpoint 3877f9ae971eefbfbbcb16f2ff79c72ac10ac4bd jdk7u14-b10 3bd891cd98773cf841ad65f52f25e3e6fa185cef jdk7u14-b11 fbb83600db33de6211fc58ba2a2bbb6b356aa9c2 jdk7u14-b12 cd7aaec5accf3f8fbb693153f8d9be846e0f8a05 jdk7u14-b13 9e8bde2586a1a7fd95f654c7d0043d1eb18f0793 jdk7u14-b14 +70af8b7907a504f7b6e4be1882054ca9f3ad1875 ppc-aix-port-b04 2b1fcbe4e78557822b2269b43c8b589aa1f0b522 jdk7u14-b15 622e370c2d1e8c5f48d8f520f486dc6fcc1239c5 jdk7u15-b01 30188388048333e213a839363329ac2cb0cf0e0d jdk7u15-b02 @@ -381,6 +393,7 @@ 80f65a8f58500ef5d93ddf4426d9c1909b79fadf jdk7u45-b18 a15e4a54504471f1e34a494ed66235870722a0f5 jdk7u45-b30 b7fb35bbe70d88eced3725b6e9070ad0b5b621ad jdk7u45-b31 +c5b5886004e6446b8b27ccdc1fd073354c1dc614 jdk7u60-b00 d641ac83157ec86219519c0cbaf3122bdc997136 jdk7u45-b33 aa24e046a2da95637257c9effeaabe254db0aa0b jdk7u45-b34 fab1423e6ab8ecf36da8b6bf2e454156ec701e8a jdk7u45-b35 @@ -400,8 +413,78 @@ e2f0036f712aa636cfd55334ac21ea7ca2587a7b jdk7u51-b13 6563d12c48c92af39a27ca46b4515fad8e994667 jdk7u51-b30 0ad990211737fe1b1e2737a3498ab266146d2c53 jdk7u51-b31 +ee7d9f5d18fb67564e88a10f1bd682660db60aa2 jdk7u51-b33 +65ef96a075a43e9201866d1c9b8ee3138ebcc424 jdk7u51-b34 55a509ccc0e4ed49e311c7ecf2ed29a908bc1d6b jdk7u55-b00 aabfdc799c0799837dcbbf9ea8d6df1511978b1f jdk7u55-b01 db2e6d87bade9d2061646ff9a6b39b5159fba0ec jdk7u55-b02 02ff18f156bd3382fe22e4758b138370f5238e97 jdk7u55-b03 6a88a170331fb38af5046e54bf75f38176af5c41 jdk7u55-b04 +a8d27c3fc4e4e6cd99fa164f04c30a71f474a2d6 jdk7u65-b00 +a8d27c3fc4e4e6cd99fa164f04c30a71f474a2d6 jdk7u55-b05 +af7f1808106bf4e9b4680d943677299829245d08 jdk7u55-b06 +44801796d42bebc90e8c4c7fb5bd79db04b10b75 jdk7u55-b07 +aa98fb8dc3608a30ac593635b21aca2105aaab20 jdk7u55-b08 +2a4842e7ca0b2228017542cea0fed3b8d4f4491a jdk7u55-b09 +5805c3291eb3a82cd75e95ac06eb13daa7f92866 jdk7u55-b09 +b9dae31c56a2bf69fc5932cc490cd80fccc1e0fd jdk7u55-b10 +cbd5b4b07e0c8a5f61eff396b7622e7b04d2a164 jdk7u55-b11 +3cce2a49d18d93dfca2634db32368486ebbb1590 jdk7u55-b12 +8efa6e66c13a5329c312d1a521ffab75d9a330e3 jdk7u55-b13 +e041c52fe69128ec3439d26afef9b0fcba00684c jdk7u55-b30 +a0bfd0e80ae0ae6e3a29bf527b5911c83163b3f5 jdk7u55-b14 +ae8120f628c237b18fa5c2610898659b49a60075 jdk7u55-b15 +55ff6957449cf6c79f5d5bb159df27f51ece1659 jdk7u55-b31 +fba15e177b15873e3c63b0efc7c0f5647a243a79 jdk7u55-b32 +6503115cbedda9216083fc1798e2fa5a2775f68a jdk7u55-b33 +c5b5886004e6446b8b27ccdc1fd073354c1dc614 jdk7u60-b00 +a531112cc6d0b0a1e7d4ffdaa3ba53addcd25cf4 jdk7u60-b01 +d81370c5b863acc19e8fb07315b1ec687ac1136a jdk7u60-b02 +47343904e95d315b5d2828cb3d60716e508656a9 icedtea-2.5pre01 +16906c5a09dab5f0f081a218f20be4a89137c8b1 icedtea-2.5pre02 +d7e98ed925a3885380226f8375fe109a9a25397f jdk7u60-b03 +1a3aa4637b80fabbd069ae88c241efcb3520fc49 jdk7u60-b04 +753698a910167cc29c01490648a2adbcea1314cc jdk7u60-b05 +9852efe6d6b992b73fdbf59e36fb3547a9535051 jdk7u60-b06 +84a18429f247774fc7f1bc81de271da20b40845b jdk7u60-b07 +8469bc00ddca4de366b20b32d42548c882656cd8 jdk7u60-b08 +7abca119f9543489280d560dc11256d439004f0f jdk7u60-b09 +1861f1f599728c4f15a85a5980edef916552747b jdk7u60-b10 +a429ff635395688ded6c52cd21c0b4ce75e62168 jdk7u60-b11 +3a7c12d7b1cfef7c1ad17159154c917095f68a4d icedtea-2.5pre03 +d581875525aaf618afe901da31d679195ee35f4b jdk7u60-b12 +2c8ba5f9487b0ac085874afd38f4c10a4127f62c jdk7u60-b13 +02bdeb33754315f589bd650dde656d2c9947976d jdk7u60-b14 +e5946b2cf82bdea3a4b85917e903168e65a543a7 jdk7u60-b15 +e120608ed3994b1597a6e2af96035518027d132b icedtea-2.5pre04 +1650f85c0dee5051cccb9d9db181a13fb4423dcb icedtea-2.5pre06 +fc55c94710a409afd5d89d90e958d3e37ccdc4f3 icedtea-2.5pre05 +e424fb8452851b56db202488a4e9a283934c4887 jdk7u60-b16 +b96d90694be873372cc417b38b01afed6ac1b239 jdk7u60-b17 +b96d90694be873372cc417b38b01afed6ac1b239 jdk7u60-b18 +550ae238459e0f59d9a85d183bc2b4520adac05b jdk7u65-b01 +5d1b39fe68944cff6380db56fbe2fbaa28091bf6 jdk7u60-b19 +39734d26e279098fae06cee5a127e126090ddec9 jdk7u60-b30 +03a1bf9a9e898228db9660cc5821a561bbd4108e icedtea-2.5pre07 +32c25f3ecdf67b82678b35cadc1a10fb63b312f3 icedtea-2.5pre08 +32c25f3ecdf67b82678b35cadc1a10fb63b312f3 icedtea-2.5.0 +6a89d959cbade46fcd281f421ac40a804d098f0b jdk7u65-b02 +afed3d62e8051fe65f431abe87dad50cbeba3800 jdk7u65-b03 +38fabf72970ae509350f57ffad99f6ac8fc6fdad jdk7u65-b04 +12c1621ce88defa65ebc1bdffb7141bd7d0089a6 jdk7u65-b05 +5041c713522c0fc68239fc91f7fb9498dd7edebb jdk7u65-b06 +144887a766dc17a139524dd43f1a0bc8f2a2a3a2 jdk7u65-b07 +5b8210c41bc41135687028bcb000ca116e2090f6 jdk7u65-b08 +1f7156e0a46129dbaf5b248802371564d92630a3 jdk7u65-b09 +be3cbbea3ec1e14b6492acbbd5c08222c24a5061 jdk7u65-b10 +fd7e4972cfefa174ce3d6dcb7f4b409df11a745b jdk7u65-b11 +792ef0370bf7bcf83c9404d2b44f08722dcd73aa jdk7u65-b12 +b95f46ae5207853a89d52b0453a2fb99fffee817 jdk7u65-b13 +6efadedfe3295dbf2af4a350d813524af029b116 jdk7u65-b14 +78966cf34d868ef18b8a3fa7edec368e1cc4739d jdk7u65-b15 +d765ed30bd5ed2bdd71fda56c056333e1b4b0d7d jdk7u65-b16 +cd642d59aca29ff2b56e7ed016be758828f199cd jdk7u65-b17 +8740dc71b1ceb49c76470b46205c28c1302e864d jdk7u65-b30 +b7f66b9f9e8e099428ed7640a184f6135b77e40d jdk7u65-b18 +50ddba8882e7e95150418a30bfc3ee62e3c28c6c jdk7u65-b19 +895c6b10499623eaf8897a9ed0d28a34e4cd4a89 icedtea-2.5.1 diff -r a8d27c3fc4e4 -r 06663e4cfbbe .jcheck/conf --- a/.jcheck/conf Tue Jan 21 12:46:58 2014 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -project=jdk7 -bugids=dup diff -r a8d27c3fc4e4 -r 06663e4cfbbe make/Makefile --- a/make/Makefile Tue Jan 21 12:46:58 2014 +0000 +++ b/make/Makefile Wed Jul 16 00:20:14 2014 +0100 @@ -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 a8d27c3fc4e4 -r 06663e4cfbbe make/common/Defs-aix.gmk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/common/Defs-aix.gmk Wed Jul 16 00:20:14 2014 +0100 @@ -0,0 +1,397 @@ +# +# Copyright (c) 1995, 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. Oracle designates this +# particular file as subject to the "Classpath" exception as provided +# by Oracle in the LICENSE file that accompanied this code. +# +# 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. +# + +# +# Makefile to specify compiler flags for programs and libraries +# targeted to Solaris. Should not contain any rules. +# +# WARNING: This file is shared with other workspaces. +# So when it includes other files, it must use JDK_TOPDIR. +# + +# Warning: the following variables are overridden by Defs.gmk. Set +# values will be silently ignored: +# CFLAGS (set $(OTHER_CFLAGS) instead) +# CPPFLAGS (set $(OTHER_CPPFLAGS) instead) +# CXXFLAGS (set $(OTHER_CXXFLAGS) instead) +# LDFLAGS (set $(OTHER_LDFAGS) instead) +# LDLIBS (set $(EXTRA_LIBS) instead) +# LDLIBS_COMMON (set $(EXTRA_LIBS) instead) +# LINTFLAGS (set $(OTHER_LINTFLAGS) instead) +# +# Note: CPPFLAGS are used in C and C++ compiles. +# + +# Get shared JDK settings +include $(JDK_MAKE_SHARED_DIR)/Defs.gmk + +# define these to avoid picking up ones from aliases or from +# non-standard locations +# + +AR = $(USRBIN_PATH)ar +BASENAME = $(UNIXCOMMAND_PATH)basename +CAT = $(UNIXCOMMAND_PATH)cat +# SAPJVM: Moved to shared/Compiler-aix.gmk +#CC = $(COMPILER_PATH)xlc_r +#CPP = $(COMPILER_PATH)xlc_r -E +#CXX = $(COMPILER_PATH)xlC_r +CD = cd # intrinsic unix command +CHMOD = $(UNIXCOMMAND_PATH)chmod +CMP = $(USRBIN_PATH)cmp +COMPRESS = $(USRBIN_PATH)compress +CP = $(UNIXCOMMAND_PATH)cp +CPIO = $(UNIXCOMMAND_PATH)cpio +CUT = $(USRBIN_PATH)cut +DATE = $(UNIXCOMMAND_PATH)date +DF = $(UNIXCOMMAND_PATH)df +DIFF = $(USRBIN_PATH)diff +DIRNAME = $(USRBIN_PATH)dirname +ECHO = echo # intrinsic unix command, with backslash-escaped character interpretation +EGREP = $(UNIXCOMMAND_PATH)egrep +EXPR = $(USRBIN_PATH)expr + +FIND = $(UNIXCOMMAND_PATH)find + +HEAD = $(USRBIN_PATH)head +GREP = $(UNIXCOMMAND_PATH)grep +GUNZIP = $(UNIXCOMMAND_PATH)gunzip +LEX = $(USRBIN_PATH)lex +LN = $(UNIXCOMMAND_PATH)ln +LS = $(UNIXCOMMAND_PATH)ls +M4 = $(USRBIN_PATH)m4 +MKDIR = $(UNIXCOMMAND_PATH)mkdir +MV = $(UNIXCOMMAND_PATH)mv +NAWK = $(USRBIN_PATH)awk +PWD = $(UNIXCOMMAND_PATH)pwd +#RM is defined by GNU Make as 'rm -f' +RMDIR = $(UNIXCOMMAND_PATH)rmdir +RPM = $(UNIXCOMMAND_PATH)rpm +SED = $(UNIXCOMMAND_PATH)sed +SH = $(UNIXCOMMAND_PATH)sh +SORT = $(UNIXCOMMAND_PATH)sort +STRIP = $(USRBIN_PATH)strip +TAIL = $(USRBIN_PATH)tail + +# SAPJVM: catch (gnu) tool by PATH environment variable +TAR = /usr/local/bin/tar + +TEST = $(USRBIN_PATH)test +TOUCH = $(UNIXCOMMAND_PATH)touch +TR = $(USRBIN_PATH)tr +TRUE = $(UNIXCOMMAND_PATH)true +UNAME = $(UNIXCOMMAND_PATH)uname +UNIQ = $(USRBIN_PATH)uniq +UNZIPSFX = $(USRBIN_PATH)unzipsfx +YACC = $(USRBIN_PATH)yacc + +# SAPJVM: catch (gnu) tool by PATH environment variable +ZIPEXE = $(UNIXCOMMAND_PATH)zip + +OS_VERSION = $(shell $(UNAME) -v) +OS_NAME = aix + +ARCH_DATA_MODEL=64 + +LIBARCH = ppc64 + +# Value of Java os.arch property +ARCHPROP = $(LIBARCH) + +BINDIR = $(OUTPUTDIR)/bin + +# where is unwanted output to be delivered? +DEV_NULL = /dev/null +export DEV_NULL + +CLASSPATH_SEPARATOR = : + +ifndef PLATFORM_SRC + PLATFORM_SRC = $(BUILDDIR)/../src/solaris +endif # PLATFORM_SRC + +# Location of the various .properties files specific to Linux platform +ifndef PLATFORM_PROPERTIES + PLATFORM_PROPERTIES = $(BUILDDIR)/../src/solaris/lib +endif # PLATFORM_SRC + +# Platform specific closed sources +ifndef OPENJDK + ifndef CLOSED_PLATFORM_SRC + CLOSED_PLATFORM_SRC = $(BUILDDIR)/../src/closed/solaris + endif +endif + +# SAPJVM: Set the source for the platform dependent sources of express +SAPJVMEXPRESS_PLATFORM_SRC=$(JDK_TOPDIR)/../../common/j2se/src/solaris + +# platform specific include files +PLATFORM_INCLUDE_NAME = $(PLATFORM) +PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME) + +# SAPJVM: OBJECT_SUFFIX, LIBRARY_SUFFIX, EXE_SUFFICS etc. are set in +# j2se/make/common/shared/Platform.gmk . Just override those which differ for AIX. +# suffix used for make dependencies files. +# SAPJVM AIX: -qmakedep outputs .u, not .d +override DEPEND_SUFFIX = u +# suffix used for lint files +LINT_SUFFIX = ln +# The suffix applied to the library name for FDLIBM +FDDLIBM_SUFFIX = a +# The suffix applied to scripts (.bat for windows, nothing for unix) +SCRIPT_SUFFIX = +# CC compiler object code output directive flag value +CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required! +CC_PROGRAM_OUTPUT_FLAG = -o #trailing blank required! + +# On AIX we don't have any issues using javah and javah_g. +JAVAH_SUFFIX = $(SUFFIX) + +# +# Default optimization +# + +ifndef OPTIMIZATION_LEVEL + ifeq ($(PRODUCT), java) + OPTIMIZATION_LEVEL = HIGHER + else + OPTIMIZATION_LEVEL = LOWER + endif +endif +ifndef FASTDEBUG_OPTIMIZATION_LEVEL + FASTDEBUG_OPTIMIZATION_LEVEL = LOWER +endif + +CC_OPT/LOWER = -O2 +CC_OPT/HIGHER = -O3 + +CC_OPT = $(CC_OPT/$(OPTIMIZATION_LEVEL)) + +# +# Selection of warning messages +# +CFLAGS_SHARED_OPTION=-qmkshrobj +CXXFLAGS_SHARED_OPTION=-qmkshrobj + +# +# If -Xa is in CFLAGS_COMMON it will end up ahead of $(POPT) for the +# optimized build, and that ordering of the flags completely freaks +# out cc. Hence, -Xa is instead in each CFLAGS variant. +# The extra options to the C++ compiler prevent it from: +# - adding runpath (dump -Lv) to *your* C++ compile install dir +# - adding stubs to various things such as thr_getspecific (hence -nolib) +# - creating Templates.DB in current directory (arch specific) +CFLAGS_COMMON = -qchars=signed +PIC_CODE_LARGE = -qpic=large +PIC_CODE_SMALL = -qpic=small +GLOBAL_KPIC = $(PIC_CODE_LARGE) +CFLAGS_COMMON += $(GLOBAL_KPIC) $(GCC_WARNINGS) +# SAPJVM: +# save compiler options into object file +CFLAGS_COMMON += -qsaveopt + +# SAPJVM +# preserve absolute source file infos in debug infos +CFLAGS_COMMON += -qfullpath + +# SAPJVM +# We want to be able to debug an opt build as well. +CFLAGS_OPT = -g $(POPT) +CFLAGS_DBG = -g + +CXXFLAGS_COMMON = $(GLOBAL_KPIC) -DCC_NOEX $(GCC_WARNINGS) +# SAPJVM +# We want to be able to debug an opt build as well. +CXXFLAGS_OPT = -g $(POPT) +CXXFLAGS_DBG = -g + +# FASTDEBUG: Optimize the code in the -g versions, gives us a faster debug java +ifeq ($(FASTDEBUG), true) + CFLAGS_DBG += -O2 + CXXFLAGS_DBG += -O2 +endif + +CPP_ARCH_FLAGS = -DARCH='"$(ARCH)"' + +# Alpha arch does not like "alpha" defined (potential general arch cleanup issue here) +ifneq ($(ARCH),alpha) + CPP_ARCH_FLAGS += -D$(ARCH) +else + CPP_ARCH_FLAGS += -D_$(ARCH)_ +endif + +# SAPJVM. turn `=' into `+='. +CPPFLAGS_COMMON += -D$(ARCH) -DARCH='"$(ARCH)"' -DAIX $(VERSION_DEFINES) \ + -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT + +# SAPJVM: AIX port: zip lib +CPPFLAGS_COMMON += -DSTDC + +# turn on USE_PTHREADS +CPPFLAGS_COMMON += -DUSE_PTHREADS +CFLAGS_COMMON += -DUSE_PTHREADS + +CFLAGS_COMMON += -q64 +CPPFLAGS_COMMON += -q64 + +# SAPJVM. define PPC64 +CFLAGS_COMMON += -DPPC64 +CPPFLAGS_COMMON += -DPPC64 + +# SAPJVM +LDFLAGS_COMMON += -b64 + +# SAPJVM: enable dynamic runtime linking & strip the absolute paths from the coff section +LDFLAGS_COMMON += -brtl -bnolibpath + +# SAPJVM: Additional link parameters for AIX +LDFLAGS_COMMON += -liconv + +CPPFLAGS_OPT = +CPPFLAGS_DBG += -DDEBUG + +LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH) +LDFLAGS_OPT = +LDFLAGS_DBG = + +# SAPJVM +# Export symbols +OTHER_LDFLAGS += -bexpall + +# +# Post Processing of libraries/executables +# +ifeq ($(VARIANT), OPT) + ifneq ($(NO_STRIP), true) + ifneq ($(DEBUG_BINARIES), true) + # Debug 'strip -g' leaves local function Elf symbols (better stack + # traces) + # SAPJVM + # We want to be able to debug an opt build as well. + # POST_STRIP_PROCESS = $(STRIP) -g + endif + endif +endif + +# javac Boot Flags +JAVAC_BOOT_FLAGS = -J-Xmx128m + +# +# Use: ld $(LD_MAPFILE_FLAG) mapfile *.o +# +LD_MAPFILE_FLAG = -Xlinker --version-script -Xlinker + +# +# Support for Quantify. +# +ifdef QUANTIFY +QUANTIFY_CMD = quantify From andrew at icedtea.classpath.org Tue Jul 15 23:22:40 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:22:40 +0000 Subject: /hg/release/icedtea7-forest-2.5/jaxp: 58 new changesets Message-ID: changeset 3a3e0f38aac2 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=3a3e0f38aac2 author: aefimov date: Wed Jan 22 23:41:05 2014 +0400 8031540: Introduce document horizon Reviewed-by: joehw changeset bc7dfada46d7 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=bc7dfada46d7 author: asaha date: Tue Jan 28 14:05:19 2014 -0800 Merge changeset 787e6769f46e in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=787e6769f46e author: asaha date: Tue Feb 04 22:40:16 2014 -0800 Merge changeset de9e813dadfc in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=de9e813dadfc author: asaha date: Tue Feb 11 12:33:54 2014 -0800 Added tag jdk7u65-b00 for changeset 5592b0c44617 changeset 72d24ef24ae1 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=72d24ef24ae1 author: asaha date: Tue Feb 11 15:12:01 2014 -0800 Merge changeset d0f44ce2320f in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=d0f44ce2320f author: asaha date: Tue Feb 11 15:40:12 2014 -0800 Merge changeset 0c95daa3a49c in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=0c95daa3a49c author: asaha date: Wed Feb 12 16:24:49 2014 -0800 Merge changeset 74ef528fd05f in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=74ef528fd05f author: asaha date: Tue Feb 18 14:11:16 2014 -0800 Merge changeset 62204090a0ef in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=62204090a0ef author: asaha date: Thu Feb 20 08:58:09 2014 -0800 Merge changeset dd5a398eedc7 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=dd5a398eedc7 author: asaha date: Tue Feb 25 23:20:09 2014 -0800 Merge changeset 05af000ae646 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=05af000ae646 author: katleman date: Thu Feb 27 11:58:42 2014 -0800 Added tag jdk7u65-b01 for changeset dd5a398eedc7 changeset 982cb6599a91 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=982cb6599a91 author: asaha date: Thu Feb 27 13:02:34 2014 -0800 Merge changeset 79af9fd45253 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=79af9fd45253 author: asaha date: Tue Mar 04 17:48:24 2014 -0800 Merge changeset 27909f138bdb in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=27909f138bdb author: asaha date: Wed Mar 05 13:38:08 2014 -0800 Merge changeset bd6d941ef502 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=bd6d941ef502 author: katleman date: Wed Mar 05 16:28:17 2014 -0800 Added tag jdk7u65-b02 for changeset 27909f138bdb changeset 0c588512729b in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=0c588512729b author: asaha date: Tue Mar 11 14:52:26 2014 -0700 Merge changeset 85578b47028e in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=85578b47028e author: asaha date: Tue Mar 11 15:17:34 2014 -0700 Merge changeset b3307181bd0f in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=b3307181bd0f author: asaha date: Wed Mar 12 14:57:53 2014 -0700 Merge changeset 5947da80e1fc in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=5947da80e1fc author: katleman date: Thu Mar 13 13:17:12 2014 -0700 Added tag jdk7u65-b03 for changeset b3307181bd0f changeset efa9425faaf4 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=efa9425faaf4 author: asaha date: Tue Mar 18 13:09:20 2014 -0700 Merge changeset 2aea4ff0d858 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=2aea4ff0d858 author: katleman date: Thu Mar 20 13:04:56 2014 -0700 Added tag jdk7u65-b04 for changeset efa9425faaf4 changeset 319df7bff5bf in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=319df7bff5bf author: asaha date: Thu Mar 20 15:00:30 2014 -0700 Merge changeset 5bf5fed9ba68 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=5bf5fed9ba68 author: katleman date: Tue Mar 25 11:19:00 2014 -0700 Added tag jdk7u65-b05 for changeset 319df7bff5bf changeset 5fd236e2f1bb in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=5fd236e2f1bb author: asaha date: Thu Mar 27 12:21:20 2014 -0700 Merge changeset 1799355cc78b in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=1799355cc78b author: katleman date: Tue Apr 01 12:01:44 2014 -0700 Added tag jdk7u65-b06 for changeset 5fd236e2f1bb changeset e1ae0b54e222 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=e1ae0b54e222 author: asaha date: Thu Apr 03 11:22:17 2014 -0700 Merge changeset e32ce93f57fc in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=e32ce93f57fc author: katleman date: Tue Apr 08 11:34:33 2014 -0700 Added tag jdk7u65-b07 for changeset e1ae0b54e222 changeset 86e93799766d in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=86e93799766d author: asaha date: Wed Apr 09 14:11:32 2014 -0700 Merge changeset 174a2f822f4f in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=174a2f822f4f author: katleman date: Tue Apr 15 23:00:43 2014 -0700 Added tag jdk7u65-b08 for changeset 86e93799766d changeset bb9307f52e86 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=bb9307f52e86 author: asaha date: Tue Apr 15 12:16:23 2014 -0700 Merge changeset ea1f06a2de2a in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=ea1f06a2de2a author: asaha date: Wed Apr 16 10:09:52 2014 -0700 Merge changeset b8b1f393742c in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=b8b1f393742c author: asaha date: Wed Apr 16 13:37:55 2014 -0700 Merge changeset 476aad2c130e in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=476aad2c130e author: katleman date: Mon Apr 07 12:17:38 2014 -0700 Added tag jdk7u55-b32 for changeset 94f3ad704f28 changeset 32aa4a5892b0 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=32aa4a5892b0 author: katleman date: Tue Apr 08 11:15:44 2014 -0700 Added tag jdk7u55-b33 for changeset 476aad2c130e changeset e24ee8ca4539 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=e24ee8ca4539 author: asaha date: Mon Apr 21 10:02:04 2014 -0700 Merge changeset 0fe85b9c0f5e in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=0fe85b9c0f5e author: katleman date: Tue Apr 22 11:47:13 2014 -0700 Added tag jdk7u65-b09 for changeset e24ee8ca4539 changeset 6c20039a2e01 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=6c20039a2e01 author: asaha date: Thu Apr 24 12:06:08 2014 -0700 Merge changeset 6c649ffa0481 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=6c649ffa0481 author: katleman date: Tue Apr 29 12:35:52 2014 -0700 Added tag jdk7u65-b10 for changeset 6c20039a2e01 changeset fbb85d388af7 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=fbb85d388af7 author: asaha date: Tue Apr 29 14:00:40 2014 -0700 Merge changeset 50625e7c71b9 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=50625e7c71b9 author: asaha date: Thu May 01 09:11:27 2014 -0700 Merge changeset 13b626232a02 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=13b626232a02 author: katleman date: Tue May 06 10:02:45 2014 -0700 Added tag jdk7u65-b11 for changeset 50625e7c71b9 changeset 84d29519e579 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=84d29519e579 author: asaha date: Thu May 08 11:56:00 2014 -0700 Merge changeset 97e6f940d86b in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=97e6f940d86b author: mfang date: Wed May 07 08:37:39 2014 -0700 8042264: 7u65 l10n resource file translation update 1 Reviewed-by: joehw, yhuang changeset 22232e57d9ec in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=22232e57d9ec author: mfang date: Wed May 07 08:45:53 2014 -0700 Merge changeset b56b145c3d85 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=b56b145c3d85 author: asaha date: Fri May 09 09:48:34 2014 -0700 Merge changeset 3a8933cb0219 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=3a8933cb0219 author: katleman date: Tue May 13 08:13:33 2014 -0700 Added tag jdk7u65-b12 for changeset b56b145c3d85 changeset ddb29a56b839 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=ddb29a56b839 author: katleman date: Tue May 20 12:36:58 2014 -0700 Added tag jdk7u65-b13 for changeset 3a8933cb0219 changeset 708c63672144 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=708c63672144 author: katleman date: Wed May 28 02:34:11 2014 -0700 Added tag jdk7u65-b14 for changeset ddb29a56b839 changeset a34a9f674095 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=a34a9f674095 author: katleman date: Tue Jun 03 13:52:58 2014 -0700 Added tag jdk7u65-b15 for changeset 708c63672144 changeset 178512d1bd9c in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=178512d1bd9c author: katleman date: Fri Jun 13 11:56:50 2014 -0700 Added tag jdk7u65-b16 for changeset a34a9f674095 changeset be897d0fd2a0 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=be897d0fd2a0 author: katleman date: Tue Jun 17 13:02:59 2014 -0700 Added tag jdk7u65-b17 for changeset 178512d1bd9c changeset fa617b3ef12f in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=fa617b3ef12f author: asaha date: Wed Jun 25 08:30:14 2014 -0700 Added tag jdk7u65-b30 for changeset be897d0fd2a0 changeset 1abc1b9aa984 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=1abc1b9aa984 author: asaha date: Wed Jul 02 09:38:59 2014 -0700 Added tag jdk7u55-b15 for changeset b81309c60141 changeset 45db67825358 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=45db67825358 author: asaha date: Wed Jul 02 09:54:19 2014 -0700 Merge changeset 4e323af07c47 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=4e323af07c47 author: asaha date: Wed Jul 02 10:08:38 2014 -0700 Added tag jdk7u65-b18 for changeset 45db67825358 changeset f3b7bb6f1924 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=f3b7bb6f1924 author: asaha date: Wed Jul 09 15:02:34 2014 -0700 Added tag jdk7u65-b19 for changeset 4e323af07c47 changeset 59a1a3e44108 in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=59a1a3e44108 author: andrew date: Tue Jul 15 22:47:38 2014 +0100 Merge jdk7u65-b32 changeset d77720c6a36f in /hg/release/icedtea7-forest-2.5/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxp?cmd=changeset;node=d77720c6a36f author: andrew date: Wed Jul 16 00:20:15 2014 +0100 Added tag icedtea-2.5.1 for changeset 59a1a3e44108 diffstat: .hgtags | 83 +++ .jcheck/conf | 2 - make/Makefile | 4 +- src/com/sun/org/apache/xalan/internal/XalanConstants.java | 25 + src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java | 15 +- src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java | 15 +- src/com/sun/org/apache/xalan/internal/utils/FeatureManager.java | 124 +++++ src/com/sun/org/apache/xalan/internal/utils/FeaturePropertyBase.java | 215 ++++++++++ src/com/sun/org/apache/xalan/internal/utils/XMLSecurityManager.java | 56 +- src/com/sun/org/apache/xalan/internal/utils/XMLSecurityPropertyManager.java | 129 +----- src/com/sun/org/apache/xalan/internal/xsltc/cmdline/Compile.java | 3 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionCall.java | 7 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC.java | 16 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ca.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_cs.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_de.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_es.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_fr.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_it.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ja.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ko.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_pt_BR.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sk.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sv.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_CN.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_zh_TW.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java | 3 + src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ca.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_cs.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_de.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_es.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_fr.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_it.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ja.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sk.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_CN.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_TW.java | 15 +- src/com/sun/org/apache/xalan/internal/xsltc/trax/TemplatesHandlerImpl.java | 2 +- src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerFactoryImpl.java | 71 ++- src/com/sun/org/apache/xerces/internal/impl/Constants.java | 12 + src/com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl.java | 16 + src/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java | 1 + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages.properties | 1 + src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_de.properties | 28 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_es.properties | 26 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_fr.properties | 26 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_it.properties | 26 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ja.properties | 27 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_ko.properties | 26 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_pt_BR.properties | 36 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_sv.properties | 28 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_CN.properties | 25 +- src/com/sun/org/apache/xerces/internal/impl/msg/XMLMessages_zh_TW.properties | 26 +- src/com/sun/org/apache/xerces/internal/impl/xpath/XPath.java | 2 +- src/com/sun/org/apache/xerces/internal/jaxp/DefaultValidationErrorHandler.java | 14 +- src/com/sun/org/apache/xerces/internal/jaxp/DocumentBuilderImpl.java | 2 +- src/com/sun/org/apache/xerces/internal/jaxp/SAXParserImpl.java | 23 +- src/com/sun/org/apache/xerces/internal/util/URI.java | 8 +- src/com/sun/org/apache/xerces/internal/utils/SecuritySupport.java | 2 +- src/com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer.java | 4 + src/com/sun/org/apache/xerces/internal/utils/XMLSecurityManager.java | 10 +- src/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIterNodeList.java | 6 +- src/com/sun/org/apache/xpath/internal/XPathContext.java | 3 +- src/com/sun/org/apache/xpath/internal/jaxp/JAXPExtensionsProvider.java | 8 +- src/com/sun/org/apache/xpath/internal/jaxp/XPathExpressionImpl.java | 26 +- src/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java | 27 +- src/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java | 13 +- src/javax/xml/xpath/XPathException.java | 55 ++- 82 files changed, 1019 insertions(+), 813 deletions(-) diffs (truncated from 3428 to 500 lines): diff -r c59d71409008 -r d77720c6a36f .hgtags --- a/.hgtags Wed Jan 22 10:06:51 2014 -0800 +++ b/.hgtags Wed Jul 16 00:20:15 2014 +0100 @@ -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 @@ -186,11 +192,15 @@ f4e80156296e43182a0fea5f54032d8c0fd0b41f jdk7u6-b10 5078a73b3448849f3328af5e0323b3e1b8d2d26c jdk7u6-b11 c378e596fb5b2ebeb60b89da7ad33f329d407e2d jdk7u6-b12 +15b71daf5e69c169fcbd383c0251cfc99e558d8a ppc-aix-port-b01 +15b71daf5e69c169fcbd383c0251cfc99e558d8a ppc-aix-port-b02 +15b71daf5e69c169fcbd383c0251cfc99e558d8a ppc-aix-port-b03 15b71daf5e69c169fcbd383c0251cfc99e558d8a jdk7u6-b13 da79c0fdf9a8b5403904e6ffdd8f5dc335d489d0 jdk7u6-b14 94474d6f28284a1ef492984dd6d6f66f8787de80 jdk7u6-b15 0b329a8d325b6a58d89c6042dac62ce5852380ab jdk7u6-b16 5eb867cdd08ca299fe03b31760acd57aac2b5673 jdk7u6-b17 +445dd0b578fc2ed12c539eb6f9a71cbd40bed4f6 icedtea-2.3-branchpoint 1c4b9671de5c7ed5713f55509cb2ada38b36dffe jdk7u6-b18 3ba4c395d2cf973c8c603b2aedc846bd4ae54656 jdk7u6-b19 4f7b77cc3b252098f52a8f30a74f603783a2e0f1 jdk7u6-b20 @@ -258,12 +268,14 @@ 1b914599a6d5560e743b9fecd390924ed0bf7d15 jdk7u12-b07 427a603569db59f61721e709fcb8a73390d468ae jdk7u12-b08 366ebbf581df0134d9039b649abc315e87f23772 jdk7u12-b09 +14adb683be4ebc49ee729f0253d012795a4a2ae4 icedtea-2.4-branchpoint 23191c790e12841f81ac1cf956e7dbc0b45914ee jdk7u14-b10 825eda7553590ce19eb4fa0686c4405d97daafdb jdk7u14-b11 560e5cf5b57fc91e2bc6dd1809badd58c6eb25bd jdk7u14-b12 937bae61a48febcc948b7e10ae781c9077360241 jdk7u14-b13 7038ca4959e50a02f797e639daffe6b2b4065f86 jdk7u14-b14 aa6fb94c5e7bc645f478b6f60c5e6e06bebcc2bf jdk7u14-b15 +1d1e1fc3b88d2fda0c7da55ee3abb2b455e0d317 ppc-aix-port-b04 99c114990b191f32e72c6158072033aec5816aaf jdk7u15-b01 edbaa584f09a78d0ad3c73389faf20409a552e46 jdk7u15-b02 14a9b60a2086f4e2f6ec43bee3375042946f6510 jdk7u15-b30 @@ -359,6 +371,7 @@ 66363323f14d85d4ab28e883a3323b9d72dea5fd jdk7u40-b42 c0bd71414ea513f54f23965936a837fca093ac91 jdk7u40-b43 91bc4534851265291bb3b16452a0968d6909979f jdk7u40-b60 +d9b92749a0f4c8e6c6f4fe11210c2a02d70bae74 jdk7u60-b00 c500d4ec41ff2117eabfa33e640b6df2f21deb3d jdk7u40-b61 9e3f8ab9d17be6b1a4a097fcc5bc5412013d3e86 jdk7u40-b62 1a7e2024963d3a8d6cde209de0967ac43418b82a jdk7u45-b01 @@ -381,6 +394,7 @@ 4beb90ab48f7fd46c7a9afbe66f8cccb230699ba jdk7u45-b18 a456c78a50e201a65c9f63565c8291b84a4fbd32 jdk7u45-b30 3c34f244296e98d8ebb94973c752f3395612391a jdk7u45-b31 +d9b92749a0f4c8e6c6f4fe11210c2a02d70bae74 jdk7u60-b00 056494e83d15cd1c546d32a3b35bdb6f670b3876 jdk7u45-b33 b5a83862ed2ab9cc2de3719e38c72519481a4bbb jdk7u45-b34 7fda9b300e07738116b2b95b568229bdb4b31059 jdk7u45-b35 @@ -400,9 +414,78 @@ 114654a331e2f97a048d7ed43d06d7512e20e2c1 jdk7u51-b13 3161567adae93d12c64b79592bda3046f0c0a22d jdk7u51-b30 e85ee81daec2ea2fa21bf804d03431b0664c6dff jdk7u51-b31 +1a6c3258ad218bf286c47d65e4cd80eb6763f8df jdk7u51-b33 +9cdc04d76eb19a871c739625acd801ed1b24bed9 jdk7u51-b34 807946db29f42477e8d8390be01c7e27280bc85c jdk7u55-b00 bb7779a8fc4d14719e907b8890a2665476cf45ae jdk7u55-b01 8275dc4db7f852edb331ae48d663d08b9ab2b5c7 jdk7u55-b02 381e73f93a83e8d3bfd7dbf79f4f363a8fd6442f jdk7u55-b03 c72c57f71c2ba6362d9ccfbf4743947b9ecefcac jdk7u55-b04 +5592b0c44617022e3c136eedfa1e98d4f254c964 jdk7u65-b00 5592b0c44617022e3c136eedfa1e98d4f254c964 jdk7u55-b05 +c59d714090080ad2e06f0ca5e8d354403059d8ce jdk7u55-b06 +125ea54089add3a16898b801a9989bf6cca05da6 jdk7u55-b07 +39337c00cb3ce29b4d67f6d247c3fa80f16cb49f jdk7u55-b08 +537f4f609132f3d6a4ce506c98f1dbd57f1320f8 jdk7u55-b09 +997bdd44d5de4aee319ff0a0d2892a912d9de6f5 jdk7u55-b09 +606483a43e8b6317d84922b9ed2b2c30d9e77419 jdk7u55-b10 +f3f02e67d867ae25cd4f3b9bc39a4fd17f593126 jdk7u55-b11 +708a1872f5bb8ba58ecc9fcbf4e12e6fa4783998 jdk7u55-b12 +14719f73596f5c90e3f46c0f4312f32e5b105edd jdk7u55-b13 +01f26830f88cf4f10897416fe1f4f372efcdecf5 jdk7u55-b30 +26187a65c765b3177f1b7ff0638259bf66f9ec47 jdk7u55-b14 +b81309c6014182819d752a4517d48b201d91b154 jdk7u55-b15 +5be97f6c25d9eb3ef0a05fc860964cb3d27134b0 jdk7u55-b31 +94f3ad704f28d5ec65f7a3b1cbf5cfe7e42151f3 jdk7u55-b32 +476aad2c130e2b1b7033fa6789754c03151da95c jdk7u55-b33 +d9b92749a0f4c8e6c6f4fe11210c2a02d70bae74 jdk7u60-b00 +ad39e88c503948fc4fc01e97c75b6e3c24599d23 jdk7u60-b01 +050986fd54e3ec4515032ee938bc59e86772b6c0 jdk7u60-b02 +74093b75ddd4fc2e578a3469d32b8bb2de3692d5 icedtea-2.5pre01 +d7085aad637fa90d027840c7f7066dba82b21667 icedtea-2.5pre02 +359b79d99538d17eeb90927a1e4883fcec31661f jdk7u60-b03 +7215972c2c30d0fa469a459a3e4fcee6bc93991d jdk7u60-b04 +673ea3822e59de18ae5771de7a280c6ae435ef86 jdk7u60-b05 +fd1cb0040a1d05086ca3bf32f10e1efd43f05116 jdk7u60-b06 +cd7c8fa7a057e62e094cdde78dd632de54cedb8c jdk7u60-b07 +b19c0f18b5a508be894aead53617688342690b01 jdk7u60-b08 +4bfece8a5148947d268611cc1b4485e92960064e jdk7u60-b09 +28a6c0b3b22580101bf750383c2e48d34dea2124 jdk7u60-b10 +e57490e0b99917ea8e1da1bb4d0c57fd5b7705f9 jdk7u60-b11 +1fef0a819b0acd01898f16d75fe924720412c9fd icedtea-2.5pre03 +a9574b35f0af409fa1665aadd9b2997a0f9878dc jdk7u60-b12 +92cf0b5c1c3e9b61d36671d8fb5070716e0f016b jdk7u60-b13 +2814f43a6c73414dcb2b799e1a52d5b44688590d jdk7u60-b14 +10eed57b66336660f71f7524f2283478bdf373dc jdk7u60-b15 +611fdb7bcd4f575284d0a00716371f9784b62422 icedtea-2.5pre04 +49ca8c2300207f95ea7adbda540650185fd68057 icedtea-2.5pre06 +89656c61a515f63119e556eb8827d9fa9db40dcf icedtea-2.5pre05 +fefd2d5c524b0be78876d9b98d926abda2828e79 jdk7u60-b16 +ba6b0b5dfe5a0f50fac95c488c8a5400ea07d4f8 jdk7u60-b17 +ba6b0b5dfe5a0f50fac95c488c8a5400ea07d4f8 jdk7u60-b18 +dd5a398eedc7031a4fb8682bc423e787db465c9e jdk7u65-b01 +581752d32aebea959fec84e8ae692e1f63d2c4a8 jdk7u60-b19 +cef2dec8b5d76555c5b7b2e1a62275206f76a07a jdk7u60-b30 +f4ad8e860eaf9cb6352e08ea88922d8c41fce766 icedtea-2.5pre07 +6b28d9218dac6b1ebb849fad37fd3d29f08accfc icedtea-2.5pre08 +6b28d9218dac6b1ebb849fad37fd3d29f08accfc icedtea-2.5.0 +27909f138bdb9ffdd2ab4bded231c7ccc2264046 jdk7u65-b02 +b3307181bd0f1a2c6e1e2c403b87a76e34452110 jdk7u65-b03 +efa9425faaf402b7ea9c6226eb08236d8fa1ff2b jdk7u65-b04 +319df7bff5bf7a9c2d659dd9021b918e729fa56f jdk7u65-b05 +5fd236e2f1bbc09349858f9c56dd223b6d6f21f6 jdk7u65-b06 +e1ae0b54e22200f2d67de39f6a16899ad4a1e574 jdk7u65-b07 +86e93799766d67102a37559b3831abcc825d7e24 jdk7u65-b08 +e24ee8ca453937c11be2fdbab0b4244aa7ec22bd jdk7u65-b09 +6c20039a2e0104f30697e22dc06fe83ff7a43d39 jdk7u65-b10 +50625e7c71b9b1d31bb901aec66366cacc239b3b jdk7u65-b11 +b56b145c3d85b649188a40a91106005a3ebfcf2b jdk7u65-b12 +3a8933cb0219594b72c797732768070fa23c491e jdk7u65-b13 +ddb29a56b839563502b9f80deca5d6064641f1d7 jdk7u65-b14 +708c636721447ebf679c2c754cb36a503c6177b8 jdk7u65-b15 +a34a9f6740955e1cd844c5b701d76dbe7290913a jdk7u65-b16 +178512d1bd9caf56d61811ad0d4b4269475407aa jdk7u65-b17 +be897d0fd2a0b5f43b0d0e48075e5b070ca584d4 jdk7u65-b30 +45db678253587755df4a00066e42e2fce04bbb71 jdk7u65-b18 +4e323af07c47061109fb5f585613b0cc4b4208ca jdk7u65-b19 +59a1a3e441089798763016eedfcc066e6f437bd2 icedtea-2.5.1 diff -r c59d71409008 -r d77720c6a36f .jcheck/conf --- a/.jcheck/conf Wed Jan 22 10:06:51 2014 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -project=jdk7 -bugids=dup diff -r c59d71409008 -r d77720c6a36f make/Makefile --- a/make/Makefile Wed Jan 22 10:06:51 2014 -0800 +++ b/make/Makefile Wed Jul 16 00:20:15 2014 +0100 @@ -118,13 +118,13 @@ ifdef ALT_LANGTOOLS_DIST ifdef ALT_BOOTDIR ANT_JAVA_HOME = JAVA_HOME=$(ALT_BOOTDIR) - ANT_OPTIONS += -Djdk.home=$(ALT_BOOTDIR) + ANT_OPTIONS += -Djdk.home=$(ALT_BOOTDIR) -Djava.home=$(ALT_BOOTDIR) endif ANT_OPTIONS += -Dbootstrap.dir=$(ALT_LANGTOOLS_DIST)/bootstrap else ifdef ALT_JDK_IMPORT_PATH ANT_JAVA_HOME = JAVA_HOME=$(ALT_JDK_IMPORT_PATH) - ANT_OPTIONS += -Djdk.home=$(ALT_JDK_IMPORT_PATH) + ANT_OPTIONS += -Djdk.home=$(ALT_JDK_IMPORT_PATH) -Djava.home=$(ALT_JDK_IMPORT_PATH) endif endif diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/XalanConstants.java --- a/src/com/sun/org/apache/xalan/internal/XalanConstants.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/XalanConstants.java Wed Jul 16 00:20:15 2014 +0100 @@ -91,6 +91,13 @@ */ public static final String JDK_XML_NAME_LIMIT = ORACLE_JAXP_PROPERTY_PREFIX + "maxXMLNameLimit"; + + /** + * JDK maxElementDepth limit + */ + public static final String JDK_MAX_ELEMENT_DEPTH = + ORACLE_JAXP_PROPERTY_PREFIX + "maxElementDepth"; + /** * JDK property indicating whether the parser shall print out entity * count information @@ -139,6 +146,11 @@ */ public static final String SP_XML_NAME_LIMIT = "jdk.xml.maxXMLNameLimit"; + /** + * JDK maxElementDepth limit + */ + public static final String SP_MAX_ELEMENT_DEPTH = "jdk.xml.maxElementDepth"; + //legacy System Properties public final static String ENTITY_EXPANSION_LIMIT = "entityExpansionLimit"; public static final String ELEMENT_ATTRIBUTE_LIMIT = "elementAttributeLimit" ; @@ -188,6 +200,19 @@ ORACLE_JAXP_PROPERTY_PREFIX + "xmlSecurityPropertyManager"; /** + * Feature enableExtensionFunctions + */ + public static final String ORACLE_ENABLE_EXTENSION_FUNCTION = + ORACLE_JAXP_PROPERTY_PREFIX + "enableExtensionFunctions"; + public static final String SP_ORACLE_ENABLE_EXTENSION_FUNCTION = "javax.xml.enableExtensionFunctions"; + + /** + * Values for a feature + */ + public static final String FEATURE_TRUE = "true"; + public static final String FEATURE_FALSE = "false"; + + /** * Check if we're in jdk8 or above */ public static final boolean IS_JDK8_OR_ABOVE = isJavaVersionAtLeast(8); diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java --- a/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java Wed Jul 16 00:20:15 2014 +0100 @@ -471,7 +471,13 @@ // Error messages... - private static final Object[][] _contents = new Object[][] { + /** Get the lookup table for error messages. + * + * @return The message lookup table. + */ + public Object[][] getContents() + { + return new Object[][] { /** Error message ID that has a null message, but takes in a single object. */ {"ER0000" , "{0}" }, @@ -1412,13 +1418,6 @@ }; - /** Get the lookup table for error messages. - * - * @return The int to message lookup table. - */ - public Object[][] getContents() - { - return _contents; } // ================= INFRASTRUCTURE ====================== diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java --- a/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java Wed Jul 16 00:20:15 2014 +0100 @@ -471,7 +471,13 @@ // Error messages... - private static final Object[][] _contents = new Object[][] { + /** Get the lookup table for error messages. + * + * @return The message lookup table. + */ + public Object[][] getContents() + { + return new Object[][] { /** Error message ID that has a null message, but takes in a single object. */ {"ER0000" , "{0}" }, @@ -1412,13 +1418,6 @@ }; - /** Get the lookup table for error messages. - * - * @return The int to message lookup table. - */ - public Object[][] getContents() - { - return _contents; } // ================= INFRASTRUCTURE ====================== diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java --- a/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java Wed Jul 16 00:20:15 2014 +0100 @@ -471,7 +471,13 @@ // Error messages... - private static final Object[][] _contents = new Object[][] { + /** Get the lookup table for error messages. + * + * @return The message lookup table. + */ + public Object[][] getContents() + { + return new Object[][] { /** Error message ID that has a null message, but takes in a single object. */ {"ER0000" , "{0}" }, @@ -1412,13 +1418,6 @@ }; - /** Get the lookup table for error messages. - * - * @return The int to message lookup table. - */ - public Object[][] getContents() - { - return _contents; } // ================= INFRASTRUCTURE ====================== diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java --- a/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java Wed Jul 16 00:20:15 2014 +0100 @@ -471,7 +471,13 @@ // Error messages... - private static final Object[][] _contents = new Object[][] { + /** Get the lookup table for error messages. + * + * @return The message lookup table. + */ + public Object[][] getContents() + { + return new Object[][] { /** Error message ID that has a null message, but takes in a single object. */ {"ER0000" , "{0}" }, @@ -1412,13 +1418,6 @@ }; - /** Get the lookup table for error messages. - * - * @return The int to message lookup table. - */ - public Object[][] getContents() - { - return _contents; } // ================= INFRASTRUCTURE ====================== diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java --- a/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java Wed Jul 16 00:20:15 2014 +0100 @@ -471,7 +471,13 @@ // Error messages... - private static final Object[][] _contents = new Object[][] { + /** Get the lookup table for error messages. + * + * @return The message lookup table. + */ + public Object[][] getContents() + { + return new Object[][] { /** Error message ID that has a null message, but takes in a single object. */ {"ER0000" , "{0}" }, @@ -1412,13 +1418,6 @@ }; - /** Get the lookup table for error messages. - * - * @return The int to message lookup table. - */ - public Object[][] getContents() - { - return _contents; } // ================= INFRASTRUCTURE ====================== diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java --- a/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java Wed Jul 16 00:20:15 2014 +0100 @@ -471,7 +471,13 @@ // Error messages... - private static final Object[][] _contents = new Object[][] { + /** Get the lookup table for error messages. + * + * @return The message lookup table. + */ + public Object[][] getContents() + { + return new Object[][] { /** Error message ID that has a null message, but takes in a single object. */ {"ER0000" , "{0}" }, @@ -1412,13 +1418,6 @@ }; - /** Get the lookup table for error messages. - * - * @return The int to message lookup table. - */ - public Object[][] getContents() - { - return _contents; } // ================= INFRASTRUCTURE ====================== diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java --- a/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java Wed Jul 16 00:20:15 2014 +0100 @@ -471,7 +471,13 @@ // Error messages... - private static final Object[][] _contents = new Object[][] { + /** Get the lookup table for error messages. + * + * @return The message lookup table. + */ + public Object[][] getContents() + { + return new Object[][] { /** Error message ID that has a null message, but takes in a single object. */ {"ER0000" , "{0}" }, @@ -1412,13 +1418,6 @@ }; - /** Get the lookup table for error messages. - * - * @return The int to message lookup table. - */ - public Object[][] getContents() - { - return _contents; } // ================= INFRASTRUCTURE ====================== diff -r c59d71409008 -r d77720c6a36f src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java --- a/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java Wed Jan 22 10:06:51 2014 -0800 +++ b/src/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java Wed Jul 16 00:20:15 2014 +0100 @@ -472,7 +472,13 @@ // Error messages... - private static final Object[][] _contents = new Object[][] { + /** Get the lookup table for error messages. + * + * @return The message lookup table. + */ + public Object[][] getContents() + { + return new Object[][] { /** Error message ID that has a null message, but takes in a single object. */ {"ER0000" , "{0}" }, @@ -1413,13 +1419,6 @@ }; - /** Get the lookup table for error messages. - * - * @return The int to message lookup table. From andrew at icedtea.classpath.org Tue Jul 15 23:22:57 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:22:57 +0000 Subject: /hg/release/icedtea7-forest-2.5/jaxws: 56 new changesets Message-ID: changeset 4751255c2776 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=4751255c2776 author: asaha date: Tue Feb 11 12:34:02 2014 -0800 Added tag jdk7u65-b00 for changeset 8a8dfdbc6614 changeset c2ed8dab3ea0 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=c2ed8dab3ea0 author: asaha date: Tue Feb 11 15:12:52 2014 -0800 Merge changeset 695c1de9c85f in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=695c1de9c85f author: asaha date: Tue Feb 11 15:41:09 2014 -0800 Merge changeset 78b8d1e7c424 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=78b8d1e7c424 author: asaha date: Wed Feb 12 16:25:13 2014 -0800 Merge changeset e71dc1219c4a in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=e71dc1219c4a author: mkos date: Thu Feb 13 17:38:18 2014 +0100 8026188: Enhance envelope factory Summary: Avoiding caching data initialized via TCCL in static context; fix also reviewed by Alexander Fomin Reviewed-by: ahgross, mgrebac, skoivu changeset 93ab8cf42196 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=93ab8cf42196 author: mkos date: Thu Feb 13 18:20:10 2014 +0100 8025030: Enhance stream handling Summary: Avoiding caching data initialized via TCCL in static context; fix also reviewed by Iaroslav Savytskyi, Alexander Fomin Reviewed-by: ahgross, mgrebac, skoivu changeset d43bc307bfbb in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=d43bc307bfbb author: asaha date: Tue Feb 18 14:11:41 2014 -0800 Merge changeset c57ac71c1b25 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=c57ac71c1b25 author: asaha date: Thu Feb 20 08:58:28 2014 -0800 Merge changeset 23598a667bb8 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=23598a667bb8 author: asaha date: Tue Feb 25 23:20:29 2014 -0800 Merge changeset d1da561a2571 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=d1da561a2571 author: katleman date: Thu Feb 27 11:58:44 2014 -0800 Added tag jdk7u65-b01 for changeset 23598a667bb8 changeset ae24dfc9432e in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=ae24dfc9432e author: asaha date: Thu Feb 27 13:02:59 2014 -0800 Merge changeset 8548aec8d5e9 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=8548aec8d5e9 author: asaha date: Tue Mar 04 17:48:42 2014 -0800 Merge changeset 8ac19021e6af in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=8ac19021e6af author: asaha date: Wed Mar 05 13:38:32 2014 -0800 Merge changeset d186045782ca in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=d186045782ca author: katleman date: Wed Mar 05 16:28:21 2014 -0800 Added tag jdk7u65-b02 for changeset 8ac19021e6af changeset 73d098d9271c in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=73d098d9271c author: asaha date: Tue Mar 11 14:52:50 2014 -0700 Merge changeset f004e99ef5bb in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=f004e99ef5bb author: asaha date: Tue Mar 11 15:17:54 2014 -0700 Merge changeset a70d681bc273 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=a70d681bc273 author: asaha date: Wed Mar 12 14:58:28 2014 -0700 Merge changeset 6301017fbeac in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=6301017fbeac author: katleman date: Thu Mar 13 13:17:16 2014 -0700 Added tag jdk7u65-b03 for changeset a70d681bc273 changeset 7cd17f969885 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=7cd17f969885 author: asaha date: Wed Mar 19 08:58:49 2014 -0700 Merge changeset 09bb6d00e124 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=09bb6d00e124 author: katleman date: Thu Mar 20 13:04:59 2014 -0700 Added tag jdk7u65-b04 for changeset 7cd17f969885 changeset 82d48f4b6d63 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=82d48f4b6d63 author: asaha date: Thu Mar 20 15:01:10 2014 -0700 Merge changeset 7bafb24c6466 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=7bafb24c6466 author: mkos date: Tue Mar 25 17:10:34 2014 +0100 8026188: Enhance envelope factory Summary: Avoiding caching data initialized via TCCL in static context; fix also reviewed by Iaroslav Savytskyi, Alexander Fomin Reviewed-by: kshefov changeset ef24208015fd in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=ef24208015fd author: katleman date: Tue Mar 25 11:19:02 2014 -0700 Added tag jdk7u65-b05 for changeset 7bafb24c6466 changeset 35b31c516cab in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=35b31c516cab author: asaha date: Thu Mar 27 12:21:55 2014 -0700 Merge changeset 001e953ccc95 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=001e953ccc95 author: katleman date: Tue Apr 01 12:01:45 2014 -0700 Added tag jdk7u65-b06 for changeset 35b31c516cab changeset eb89c1c30a93 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=eb89c1c30a93 author: asaha date: Thu Apr 03 11:23:06 2014 -0700 Merge changeset 19d2cb1debbb in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=19d2cb1debbb author: katleman date: Tue Apr 08 11:34:35 2014 -0700 Added tag jdk7u65-b07 for changeset eb89c1c30a93 changeset d63ca1c5bdb9 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=d63ca1c5bdb9 author: asaha date: Wed Apr 09 14:12:04 2014 -0700 Merge changeset 6092d0059338 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=6092d0059338 author: katleman date: Tue Apr 15 23:00:44 2014 -0700 Added tag jdk7u65-b08 for changeset d63ca1c5bdb9 changeset 85a9f1047597 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=85a9f1047597 author: asaha date: Tue Apr 15 12:17:00 2014 -0700 Merge changeset 3b1668fef313 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=3b1668fef313 author: asaha date: Wed Apr 16 10:10:00 2014 -0700 Merge changeset ed2c61871427 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=ed2c61871427 author: asaha date: Wed Apr 16 13:38:52 2014 -0700 Merge changeset 14c591c89293 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=14c591c89293 author: mkos date: Wed Apr 09 10:15:04 2014 -0400 8035613: With active Securitymanager JAXBContext.newInstance fails Reviewed-by: mullan, mgrebac changeset efd71c6ca083 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=efd71c6ca083 author: katleman date: Mon Apr 07 12:17:39 2014 -0700 Added tag jdk7u55-b32 for changeset b15b4084288f changeset 485d7912bc20 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=485d7912bc20 author: katleman date: Tue Apr 08 11:15:51 2014 -0700 Added tag jdk7u55-b33 for changeset efd71c6ca083 changeset e4cc1e93c633 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=e4cc1e93c633 author: asaha date: Mon Apr 21 10:02:30 2014 -0700 Merge changeset 00f22d6e5844 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=00f22d6e5844 author: katleman date: Tue Apr 22 11:47:15 2014 -0700 Added tag jdk7u65-b09 for changeset e4cc1e93c633 changeset d10ec1726741 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=d10ec1726741 author: asaha date: Thu Apr 24 12:06:48 2014 -0700 Merge changeset e2a42986e84a in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=e2a42986e84a author: katleman date: Tue Apr 29 12:35:55 2014 -0700 Added tag jdk7u65-b10 for changeset d10ec1726741 changeset 36e2ded1abe5 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=36e2ded1abe5 author: asaha date: Tue Apr 29 14:01:24 2014 -0700 Merge changeset 2f5dcee6d56b in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=2f5dcee6d56b author: asaha date: Thu May 01 09:12:15 2014 -0700 Merge changeset 066a1f6d8649 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=066a1f6d8649 author: katleman date: Tue May 06 10:02:48 2014 -0700 Added tag jdk7u65-b11 for changeset 2f5dcee6d56b changeset f03350485cd3 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=f03350485cd3 author: asaha date: Thu May 08 11:59:18 2014 -0700 Merge changeset 471f883e9830 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=471f883e9830 author: katleman date: Tue May 13 08:13:36 2014 -0700 Added tag jdk7u65-b12 for changeset f03350485cd3 changeset 11deffa2096f in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=11deffa2096f author: katleman date: Tue May 20 12:36:59 2014 -0700 Added tag jdk7u65-b13 for changeset 471f883e9830 changeset 39ad61a579fd in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=39ad61a579fd author: katleman date: Wed May 28 02:34:14 2014 -0700 Added tag jdk7u65-b14 for changeset 11deffa2096f changeset 198bf1acd262 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=198bf1acd262 author: katleman date: Tue Jun 03 13:53:00 2014 -0700 Added tag jdk7u65-b15 for changeset 39ad61a579fd changeset df4dc644fe34 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=df4dc644fe34 author: katleman date: Fri Jun 13 11:56:52 2014 -0700 Added tag jdk7u65-b16 for changeset 198bf1acd262 changeset 0e0ca87a6d52 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=0e0ca87a6d52 author: katleman date: Tue Jun 17 13:03:04 2014 -0700 Added tag jdk7u65-b17 for changeset df4dc644fe34 changeset d2798523c671 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=d2798523c671 author: asaha date: Wed Jun 25 08:30:22 2014 -0700 Added tag jdk7u65-b30 for changeset 0e0ca87a6d52 changeset 01890d636584 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=01890d636584 author: asaha date: Wed Jul 02 09:39:06 2014 -0700 Added tag jdk7u55-b15 for changeset f616603ab693 changeset dedfc93eeb5f in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=dedfc93eeb5f author: asaha date: Wed Jul 02 09:54:56 2014 -0700 Merge changeset db4cccbfd72f in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=db4cccbfd72f author: asaha date: Wed Jul 02 10:08:47 2014 -0700 Added tag jdk7u65-b18 for changeset dedfc93eeb5f changeset 0cd66509e113 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=0cd66509e113 author: asaha date: Wed Jul 09 15:02:40 2014 -0700 Added tag jdk7u65-b19 for changeset db4cccbfd72f changeset b5384b2fb987 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=b5384b2fb987 author: andrew date: Tue Jul 15 22:47:38 2014 +0100 Merge jdk7u65-b32 changeset aac78bd724c4 in /hg/release/icedtea7-forest-2.5/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jaxws?cmd=changeset;node=aac78bd724c4 author: andrew date: Wed Jul 16 00:20:16 2014 +0100 Added tag icedtea-2.5.1 for changeset b5384b2fb987 diffstat: .hgtags | 83 +++++++++ .jcheck/conf | 2 - build.properties | 3 + build.xml | 14 +- make/Makefile | 4 +- src/share/jaxws_classes/com/sun/org/glassfish/external/statistics/impl/BoundedRangeStatisticImpl.java | 1 + src/share/jaxws_classes/com/sun/tools/internal/ws/processor/modeler/annotation/WebServiceVisitor.java | 72 ++++---- src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java | 2 +- src/share/jaxws_classes/com/sun/tools/internal/ws/wsdl/parser/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/tools/internal/ws/wsdl/parser/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/tools/internal/ws/wsdl/parser/Internalizer.java | 13 +- src/share/jaxws_classes/com/sun/tools/internal/ws/wsdl/parser/JAXWSBindingExtensionHandler.java | 12 +- src/share/jaxws_classes/com/sun/tools/internal/xjc/model/nav/Utils.java | 26 ++- src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/internalizer/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/internalizer/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/internalizer/Internalizer.java | 11 +- src/share/jaxws_classes/com/sun/tools/internal/xjc/reader/xmlschema/parser/SchemaConstraintChecker.java | 8 + src/share/jaxws_classes/com/sun/xml/internal/bind/DatatypeConverterImpl.java | 37 +++- src/share/jaxws_classes/com/sun/xml/internal/bind/Messages.java | 48 +++++ src/share/jaxws_classes/com/sun/xml/internal/bind/Messages.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/bind/api/Utils.java | 26 ++- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages.java | 3 +- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Messages.properties | 5 +- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/ModelBuilder.java | 12 +- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/RuntimeBuiltinLeafInfoImpl.java | 24 +-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/model/impl/Utils.java | 26 ++- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/JAXBContextImpl.java | 26 +-- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/Utils.java | 26 ++- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/output/XMLStreamWriterOutput.java | 18 +- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/property/Utils.java | 26 ++- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/reflect/Utils.java | 26 ++- src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/unmarshaller/StAXStreamConnector.java | 19 +- src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/soap/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/soap/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/messaging/saaj/soap/EnvelopeFactory.java | 55 +++-- src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/mimepull/MemoryData.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/org/jvnet/mimepull/TempFiles.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/stream/buffer/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/xml/internal/stream/buffer/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/stream/buffer/XMLStreamBuffer.java | 11 +- src/share/jaxws_classes/com/sun/xml/internal/ws/api/streaming/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/xml/internal/ws/api/streaming/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/ws/api/streaming/XMLStreamReaderFactory.java | 47 ++-- src/share/jaxws_classes/com/sun/xml/internal/ws/api/streaming/XMLStreamWriterFactory.java | 66 +++--- src/share/jaxws_classes/com/sun/xml/internal/ws/client/WSServiceDelegate.java | 33 +- src/share/jaxws_classes/com/sun/xml/internal/ws/developer/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/xml/internal/ws/developer/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/ws/developer/MemberSubmissionEndpointReference.java | 13 +- src/share/jaxws_classes/com/sun/xml/internal/ws/model/Utils.java | 26 ++- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/AssertionSet.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/AssertionValidationProcessor.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/ComplexAssertion.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/EffectiveAlternativeSelector.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/EffectivePolicyModifier.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/NestedPolicy.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/Policy.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyAssertion.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyConstants.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyException.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyIntersector.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMap.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapExtender.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapKey.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapKeyHandler.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMapMutator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyMerger.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicyScope.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/PolicySubject.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/SimpleAssertion.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/package-info.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/PolicyLogger.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/RuntimePolicyUtilsException.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/ServiceConfigurationError.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/ServiceFinder.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/privateutil/package-info.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/AssertionData.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/CompactModelGenerator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/DefaultPolicyAssertionCreator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/ModelNode.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/NormalizedModelGenerator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelGenerator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelMarshaller.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelTranslator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyModelUnmarshaller.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicyReferenceData.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicySourceModel.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/PolicySourceModelContext.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/XmlPolicyModelMarshaller.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/XmlPolicyModelUnmarshaller.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/ExternalAttachmentsUnmarshaller.java | 12 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/attach/package-info.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/package-info.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/wspolicy/NamespaceVersion.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/sourcemodel/wspolicy/XmlToken.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/AbstractQNameValidator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/AssertionCreationException.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PolicyAssertionCreator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PolicyAssertionValidator.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/PrefixMapper.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/spi/package-info.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/PolicyMapKeyConverter.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/WsdlBindingSubject.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/policy/subject/package-info.java | 2 +- src/share/jaxws_classes/com/sun/xml/internal/ws/spi/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/xml/internal/ws/spi/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/ws/spi/ProviderImpl.java | 11 +- src/share/jaxws_classes/com/sun/xml/internal/ws/util/xml/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/xml/internal/ws/util/xml/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/ws/util/xml/XmlUtil.java | 28 ++- src/share/jaxws_classes/com/sun/xml/internal/xsom/util/ContextClassloaderLocal.java | 86 ++++++++++ src/share/jaxws_classes/com/sun/xml/internal/xsom/util/ContextClassloaderLocal.properties | 27 +++ src/share/jaxws_classes/com/sun/xml/internal/xsom/util/DomAnnotationParserFactory.java | 11 +- src/share/jaxws_classes/javax/xml/bind/DatatypeConverterImpl.java | 41 +++- src/share/jaxws_classes/javax/xml/bind/Messages.java | 4 +- src/share/jaxws_classes/javax/xml/bind/Messages.properties | 5 +- src/share/jaxws_classes/javax/xml/soap/AttachmentPart.java | 2 +- src/share/jaxws_classes/javax/xml/soap/Detail.java | 2 +- src/share/jaxws_classes/javax/xml/soap/DetailEntry.java | 2 +- src/share/jaxws_classes/javax/xml/soap/FactoryFinder.java | 23 +- src/share/jaxws_classes/javax/xml/soap/MessageFactory.java | 7 +- src/share/jaxws_classes/javax/xml/soap/MimeHeader.java | 2 +- src/share/jaxws_classes/javax/xml/soap/MimeHeaders.java | 2 +- src/share/jaxws_classes/javax/xml/soap/Name.java | 2 +- src/share/jaxws_classes/javax/xml/soap/Node.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SAAJResult.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPBody.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPBodyElement.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPConnection.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPConstants.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPElement.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPElementFactory.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPEnvelope.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPException.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPFactory.java | 3 +- src/share/jaxws_classes/javax/xml/soap/SOAPFault.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPFaultElement.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPHeader.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPHeaderElement.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPMessage.java | 2 +- src/share/jaxws_classes/javax/xml/soap/SOAPPart.java | 2 +- src/share/jaxws_classes/javax/xml/soap/Text.java | 2 +- src/share/jaxws_classes/javax/xml/ws/wsaddressing/W3CEndpointReference.java | 4 +- 144 files changed, 1867 insertions(+), 419 deletions(-) diffs (truncated from 4313 to 500 lines): diff -r 8a8dfdbc6614 -r aac78bd724c4 .hgtags --- a/.hgtags Mon Jan 13 16:14:50 2014 -0800 +++ b/.hgtags Wed Jul 16 00:20:16 2014 +0100 @@ -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 @@ -186,11 +192,15 @@ c08f88f5ae98917254cd38e204393adac22823a6 jdk7u6-b10 a37ad8f90c7bd215d11996480e37f03eb2776ce2 jdk7u6-b11 95a96a879b8c974707a7ddb94e4fcd00e93d469c jdk7u6-b12 +4325d1311d5511da36cae81332af6840af1c0fed ppc-aix-port-b01 +4325d1311d5511da36cae81332af6840af1c0fed ppc-aix-port-b02 +4325d1311d5511da36cae81332af6840af1c0fed ppc-aix-port-b03 e0a71584b8d84d28feac9594d7bb1a981d862d7c jdk7u6-b13 9ae31559fcce636b8c219180e5db1d54556db5d9 jdk7u6-b14 f1dba7ebe6a50c22ffcaf85b14b31462ce008556 jdk7u6-b15 e1d2afbb63d27600dd8c8a021eadff84a901a73c jdk7u6-b16 401bdbbf89c9187b51dc8906c0e2700ef0ffc8a3 jdk7u6-b17 +8888d2790217c31edbf13ea81d9ac06210092ad2 icedtea-2.3-branchpoint a1daf7097c61181216233e4850ef6ec56b0fe6b6 jdk7u6-b18 58c1c6ecf8f1e59db9b575ae57b2894d0152d319 jdk7u6-b19 6d17242f12edc643ecab4263e656003a1ca44c03 jdk7u6-b20 @@ -258,11 +268,13 @@ 42ba62cdc1f3c357b6d192612dd1c4b209df2662 jdk7u12-b07 66f36438f54812e44327d38129d9488e5ea59e73 jdk7u12-b08 c130f21b16a2b2e2b961362bc4baf40fde2be458 jdk7u12-b09 +a653d06d5b50cacf58aebbab8b55e7e00587cd4c icedtea-2.4-branchpoint 9207c72345c9e82d4445764df57706f7b33a7981 jdk7u14-b10 444aa84f38df2607140e9ce35a21fef0965d27a6 jdk7u14-b11 40afea757379cfaaadca13eeb7dcbc0fe195f73d jdk7u14-b12 4fe9a362c3277cd4c7a5149853e5cf59dbba7cb7 jdk7u14-b13 a2b2e716637acdb9884d21fc4b9aef3c8b59e702 jdk7u14-b14 +53bd8e6a5ffabdc878a312509cf84a72020ddf9a ppc-aix-port-b04 b5c8ac5253ef735e5aa770b7325843ec89b56633 jdk7u14-b15 abcaebcead605f89cd0919add20d8ac16637ddc2 jdk7u15-b01 62f9e7f5eb644fedd93dd93bd36bcf817a8d9c8a jdk7u15-b02 @@ -381,6 +393,7 @@ 65b0f3ccdc8bcff0d79e1b543a8cefb817529b3f jdk7u45-b18 c32c6a662d18d7195fc02125178c7543ce09bb00 jdk7u45-b30 6802a1c098c48b2c8336e06f1565254759025bab jdk7u45-b31 +cb5f95263f620967f5097c5ff8e0b27cfb9e8c44 jdk7u60-b00 e040abab3625fbced33b30cba7c0307236268211 jdk7u45-b33 e7df5d6b23c64509672d262187f51cde14db4e66 jdk7u45-b34 c654ba4b2392c2913f45b495a2ea0c53cc348d98 jdk7u45-b35 @@ -400,8 +413,78 @@ 81a1b110f70c37d2c2f0de7c0ef3bd2d04aba475 jdk7u51-b13 5dbeb9983f104be717da35c9b14923d71dd248d7 jdk7u51-b30 eb79f394916efba85f4f6c7ef562966699f2c1e8 jdk7u51-b31 +b2e40219fdcb579d9e10bf01bbd1f05ddcc936fb jdk7u51-b33 +f782f513bb1c74640fe0f4711fec6a417845e9e9 jdk7u51-b34 7c7c2ea4b6808d0abf7fd48d11440d75b0c08d3a jdk7u55-b00 c5eb0c2a0f9715b510bc641506fb90df9bf05ab0 jdk7u55-b01 a257072fc2aa482abd6ffa28e235dbe532af6d00 jdk7u55-b02 2916fdfc475bf29bc702887bf5ba02df67c98916 jdk7u55-b03 f4759b4547602b3bc865db8c5f356f46979c6389 jdk7u55-b04 +8a8dfdbc66149b89f804c5a50e4692c2520569ae jdk7u65-b00 +8a8dfdbc66149b89f804c5a50e4692c2520569ae jdk7u55-b05 +2696d6747826cea92a97b2d80be4a59ff99462bd jdk7u55-b06 +1ad971afe2b5db93420654fa65b23f827760fed7 jdk7u55-b07 +57ba92e96b7fb6f4543038c1daa390c45d8a9d84 jdk7u55-b08 +c9d8555964a581486f4c8e1bf5f5db678eb3b9f2 jdk7u55-b09 +0f469a7307b98e911aaaab8cad781eab3bd94ad6 jdk7u55-b09 +1080e907d64ab63c6138b1a61d9e5b826e83634a jdk7u55-b10 +0db5b891d1ba10211da0a8158551b35f00da7684 jdk7u55-b11 +3834eb921dfd8d29d917a0c57bb9fdd9aa58c209 jdk7u55-b12 +3b0da73591b1ea23c48aa7babc34ed776fc183f0 jdk7u55-b13 +5d726bf8fedc1f10d250e980653315919b7602f2 jdk7u55-b30 +81d0f297557c4a876727cabeb2bfcdf066a1fc9d jdk7u55-b14 +f616603ab693f6629c2994f6006ed4a21a428d8e jdk7u55-b15 +2d103c97c9bd0b3357e6d5e2b5b9ffb64c271288 jdk7u55-b31 +b15b4084288fa4ea9caf7f6b4e79d164c77bb1d6 jdk7u55-b32 +efd71c6ca0832e894b7e1619111860062fa96458 jdk7u55-b33 +cb5f95263f620967f5097c5ff8e0b27cfb9e8c44 jdk7u60-b00 +f675dfce1e61a6ed01732ae7cfbae941791cba74 jdk7u60-b01 +8a3b9e8492a5ac4e2e0c166dbfc5d058be244377 jdk7u60-b02 +3f7212cae6eb1fe4b257adfbd05a7fce47c84bf0 icedtea-2.5pre01 +4aeccc3040fa45d7156dccb03984320cb75a0d73 icedtea-2.5pre02 +d4ba4e1ed3ecdef1ef7c3b7aaf62ff69fc105cb2 jdk7u60-b03 +bef313c7ff7a7a829f8f6a305bf0c3738ad99795 jdk7u60-b04 +30afd3e2e7044b2aa87ce00ab4301990e6d94d27 jdk7u60-b05 +dc6017fb9cde43bce92d403abc2821b741cf977c jdk7u60-b06 +0380cb9d4dc27ed8e2c4fc3502e3d94b0ae0c02d jdk7u60-b07 +d3896e59b04dc4022c3e0d04e8750b281249bbd2 jdk7u60-b08 +c85645aa77cedabeeb6e01373cdd81afd56c602e jdk7u60-b09 +79501d4561e4cfa96fd77e2e92eb6a1b6ad61005 jdk7u60-b10 +5d848774565b5e188d7ba915ce1cb09d8f3fdb87 jdk7u60-b11 +c3f7dc317cdbe308045d12deeb298c8be800d495 icedtea-2.5pre03 +9d34f726e35b321072ce5bd0aad2e513b9fc972f jdk7u60-b12 +d941a701cf5ca11b2777fd1d0238e05e3c963e89 jdk7u60-b13 +43b5a7cf08e7ee018b1fa42a89510b4c381dc4c5 jdk7u60-b14 +d00389bf5439e5c42599604d2ebc909d26df8dcf jdk7u60-b15 +8c3ac91d06c0013bf4c4f4d986a5d9994bf3c049 icedtea-2.5pre04 +3a7c902a4390ed227747724f427a516e22a7d77a icedtea-2.5pre06 +9639895f69500ce364e4555a157c6875bb6e51dc icedtea-2.5pre05 +2fc16d3a321212abc0cc93462b22c4be7f693ab9 jdk7u60-b16 +b312ec543dc09db784e161eb89607d4afd4cab1e jdk7u60-b17 +b312ec543dc09db784e161eb89607d4afd4cab1e jdk7u60-b18 +23598a667bb89b57d5abab5b37781a0952e16cf9 jdk7u65-b01 +1d21eb9011a060c7761c9a8a53e69d58bbea4893 jdk7u60-b19 +39e67887a3b112bf74f84df2aac0f46c65bfb005 jdk7u60-b30 +9699fe5c5232952a0c75e4a5562d86b33ebe6bf5 icedtea-2.5pre07 +f1f1ade53c01f57c8b5c8c0bd0864bc59b294a07 icedtea-2.5pre08 +f1f1ade53c01f57c8b5c8c0bd0864bc59b294a07 icedtea-2.5.0 +8ac19021e6af5d92b46111a6c41430f36ccdb901 jdk7u65-b02 +a70d681bc273a110d10cf3c4f9b35b25ca6a600f jdk7u65-b03 +7cd17f96988509e99fbb71003aeb76d92b638fef jdk7u65-b04 +7bafb24c6466999bc08742b160d0e450bc12a2c5 jdk7u65-b05 +35b31c516cab0a81fa9d2a119ec101be3f5a2969 jdk7u65-b06 +eb89c1c30a93b1d43cbc1b7520bca46d31d0829a jdk7u65-b07 +d63ca1c5bdb9fb2e36ec4afda431c0d1dfdfc07c jdk7u65-b08 +e4cc1e93c6332c8463e75a25c3d735884d185259 jdk7u65-b09 +d10ec17267415303a71d358ae6202369db77ba96 jdk7u65-b10 +2f5dcee6d56b00551db21408ebad2ff2faad7c7a jdk7u65-b11 +f03350485cd388620981bb7e7faa2d1890d11a1b jdk7u65-b12 +471f883e9830d8341248b99da7c9cfab9fcc94d6 jdk7u65-b13 +11deffa2096f08dab69de13d4fcf361c6d252636 jdk7u65-b14 +39ad61a579fd824fbec1bec4e071376449ba8195 jdk7u65-b15 +198bf1acd262f2c16715d3be5e33d7b8de1e7776 jdk7u65-b16 +df4dc644fe344e973fc1692c28683eec8ba82600 jdk7u65-b17 +0e0ca87a6d5212a0885f0c8c00b8f7cf24a64d89 jdk7u65-b30 +dedfc93eeb5f4b28ad1a91902a0676aef0937e42 jdk7u65-b18 +db4cccbfd72fc265b736a273797963754434a7d2 jdk7u65-b19 +b5384b2fb987fc5310167a9524b4a5ee1880f56b icedtea-2.5.1 diff -r 8a8dfdbc6614 -r aac78bd724c4 .jcheck/conf --- a/.jcheck/conf Mon Jan 13 16:14:50 2014 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -project=jdk7 -bugids=dup diff -r 8a8dfdbc6614 -r aac78bd724c4 build.properties --- a/build.properties Mon Jan 13 16:14:50 2014 -0800 +++ b/build.properties Wed Jul 16 00:20:16 2014 +0100 @@ -58,6 +58,9 @@ build.dir=${output.dir}/build build.classes.dir=${build.dir}/classes +# JAXP built files +jaxp.classes.dir=${output.dir}/../jaxp/build/classes + # Distributed results dist.dir=${output.dir}/dist dist.lib.dir=${dist.dir}/lib diff -r 8a8dfdbc6614 -r aac78bd724c4 build.xml --- a/build.xml Mon Jan 13 16:14:50 2014 -0800 +++ b/build.xml Wed Jul 16 00:20:16 2014 +0100 @@ -135,9 +135,15 @@ - + - + diff -r 8a8dfdbc6614 -r aac78bd724c4 make/Makefile --- a/make/Makefile Mon Jan 13 16:14:50 2014 -0800 +++ b/make/Makefile Wed Jul 16 00:20:16 2014 +0100 @@ -101,13 +101,13 @@ ifdef ALT_LANGTOOLS_DIST ifdef ALT_BOOTDIR ANT_JAVA_HOME = JAVA_HOME=$(ALT_BOOTDIR) - ANT_OPTIONS += -Djdk.home=$(ALT_BOOTDIR) + ANT_OPTIONS += -Djdk.home=$(ALT_BOOTDIR) -Djava.home=$(ALT_BOOTDIR) endif ANT_OPTIONS += -Dbootstrap.dir=$(ALT_LANGTOOLS_DIST)/bootstrap else ifdef ALT_JDK_IMPORT_PATH ANT_JAVA_HOME = JAVA_HOME=$(ALT_JDK_IMPORT_PATH) - ANT_OPTIONS += -Djdk.home=$(ALT_JDK_IMPORT_PATH) + ANT_OPTIONS += -Djdk.home=$(ALT_JDK_IMPORT_PATH) -Djava.home=$(ALT_JDK_IMPORT_PATH) endif endif diff -r 8a8dfdbc6614 -r aac78bd724c4 src/share/jaxws_classes/com/sun/org/glassfish/external/statistics/impl/BoundedRangeStatisticImpl.java --- a/src/share/jaxws_classes/com/sun/org/glassfish/external/statistics/impl/BoundedRangeStatisticImpl.java Mon Jan 13 16:14:50 2014 -0800 +++ b/src/share/jaxws_classes/com/sun/org/glassfish/external/statistics/impl/BoundedRangeStatisticImpl.java Wed Jul 16 00:20:16 2014 +0100 @@ -26,6 +26,7 @@ package com.sun.org.glassfish.external.statistics.impl; + import com.sun.org.glassfish.external.statistics.BoundedRangeStatistic; import java.util.Map; import java.lang.reflect.*; diff -r 8a8dfdbc6614 -r aac78bd724c4 src/share/jaxws_classes/com/sun/tools/internal/ws/processor/modeler/annotation/WebServiceVisitor.java --- a/src/share/jaxws_classes/com/sun/tools/internal/ws/processor/modeler/annotation/WebServiceVisitor.java Mon Jan 13 16:14:50 2014 -0800 +++ b/src/share/jaxws_classes/com/sun/tools/internal/ws/processor/modeler/annotation/WebServiceVisitor.java Wed Jul 16 00:20:16 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 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 @@ -204,24 +204,24 @@ } portName = ClassNameInfo.getName( d.getSimpleName().replace( - SIGC_INNERCLASS, - SIGC_UNDERSCORE));; - packageName = d.getPackage().getQualifiedName(); - portName = webService != null && webService.name() != null && webService.name().length() >0 ? - webService.name() : portName; - serviceName = ClassNameInfo.getName(d.getQualifiedName())+SERVICE; - serviceName = webService != null && webService.serviceName() != null && - webService.serviceName().length() > 0 ? - webService.serviceName() : serviceName; - wsdlNamespace = seiContext.getNamespaceURI(); - typeNamespace = wsdlNamespace; + SIGC_INNERCLASS, + SIGC_UNDERSCORE));; + packageName = d.getPackage().getQualifiedName(); + portName = webService != null && webService.name() != null && webService.name().length() >0 ? + webService.name() : portName; + serviceName = ClassNameInfo.getName(d.getQualifiedName())+SERVICE; + serviceName = webService != null && webService.serviceName() != null && + webService.serviceName().length() > 0 ? + webService.serviceName() : serviceName; + wsdlNamespace = seiContext.getNamespaceURI(); + typeNamespace = wsdlNamespace; - SOAPBinding soapBinding = d.getAnnotation(SOAPBinding.class); - if (soapBinding != null) { - pushedSOAPBinding = pushSOAPBinding(soapBinding, d, d); - } else if (d.equals(typeDecl)) { - pushedSOAPBinding = pushSOAPBinding(new MySOAPBinding(), d, d); - } + SOAPBinding soapBinding = d.getAnnotation(SOAPBinding.class); + if (soapBinding != null) { + pushedSOAPBinding = pushSOAPBinding(soapBinding, d, d); + } else if (d.equals(typeDecl)) { + pushedSOAPBinding = pushSOAPBinding(new MySOAPBinding(), d, d); + } } public static boolean sameStyle(SOAPBinding.Style style, SOAPStyle soapStyle) { @@ -235,7 +235,7 @@ } protected boolean pushSOAPBinding(SOAPBinding soapBinding, Declaration bindingDecl, - TypeDeclaration classDecl) { + TypeDeclaration classDecl) { boolean changed = false; if (!sameStyle(soapBinding.style(), soapStyle)) { changed = true; @@ -293,7 +293,7 @@ // abstract protected boolean shouldProcessWebService(WebService webService, InterfaceDeclaration intf); -// abstract protected boolean shouldProcessWebService(WebService webService, ClassDeclaration decl); + // abstract protected boolean shouldProcessWebService(WebService webService, ClassDeclaration decl); protected boolean shouldProcessWebService(WebService webService, InterfaceDeclaration intf) { hasWebMethods = false; if (webService == null) @@ -315,9 +315,9 @@ return false; hasWebMethods = hasWebMethods(classDecl); SOAPBinding soapBinding = classDecl.getAnnotation(SOAPBinding.class); - if(soapBinding != null && soapBinding.style() == SOAPBinding.Style.RPC && soapBinding.parameterStyle() == SOAPBinding.ParameterStyle.BARE) { - builder.onError(classDecl.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_SOAPBINDING_PARAMETERSTYLE(soapBinding, classDecl)); - return false; + if(soapBinding != null && soapBinding.style() == SOAPBinding.Style.RPC && soapBinding.parameterStyle() == SOAPBinding.ParameterStyle.BARE) { + builder.onError(classDecl.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_SOAPBINDING_PARAMETERSTYLE(soapBinding, classDecl)); + return false; } return isLegalImplementation(webService, classDecl); } @@ -345,8 +345,8 @@ if (webMethod.exclude()) { if (webMethod.operationName().length() > 0) builder.onError(method.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_WEBMETHOD_ELEMENT_WITH_EXCLUDE("operationName", d.getQualifiedName(), method.toString())); - if (webMethod.action().length() > 0) - builder.onError(method.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_WEBMETHOD_ELEMENT_WITH_EXCLUDE("action", d.getQualifiedName(), method.toString())); + if (webMethod.action().length() > 0) + builder.onError(method.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_INVALID_WEBMETHOD_ELEMENT_WITH_EXCLUDE("action", d.getQualifiedName(), method.toString())); } else { return true; } @@ -382,7 +382,7 @@ } private InterfaceDeclaration getEndpointInterfaceDecl(String endpointInterfaceName, - ClassDeclaration d) { + ClassDeclaration d) { InterfaceDeclaration intTypeDecl = null; for (InterfaceType interfaceType : d.getSuperinterfaces()) { if (endpointInterfaceName.equals(interfaceType.toString())) { @@ -488,7 +488,7 @@ Collection modifiers = classDecl.getModifiers(); if (!modifiers.contains(Modifier.PUBLIC)){ builder.onError(classDecl.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_WEBSERVICE_CLASS_NOT_PUBLIC(classDecl.getQualifiedName())); - return false; + return false; } if (modifiers.contains(Modifier.FINAL) && !isStateful) { builder.onError(classDecl.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_WEBSERVICE_CLASS_IS_FINAL(classDecl.getQualifiedName())); @@ -538,7 +538,7 @@ } protected boolean classImplementsSEI(ClassDeclaration classDecl, - InterfaceDeclaration intfDecl) { + InterfaceDeclaration intfDecl) { for (InterfaceType interfaceType : classDecl.getSuperinterfaces()) { if (interfaceType.getDeclaration().equals(intfDecl)) return true; @@ -637,8 +637,8 @@ */ if (!isLegalType(method.getReturnType())) { builder.onError(method.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_METHOD_RETURN_TYPE_CANNOT_IMPLEMENT_REMOTE(typeDecl.getQualifiedName(), - method.getSimpleName(), - method.getReturnType())); + method.getSimpleName(), + method.getReturnType())); } boolean isOneway = method.getAnnotation(Oneway.class) != null; if (isOneway && !isValidOnewayMethod(method, typeDecl)) @@ -684,14 +684,14 @@ } protected boolean isLegalParameter(ParameterDeclaration param, - MethodDeclaration method, - TypeDeclaration typeDecl, - int paramIndex) { + MethodDeclaration method, + TypeDeclaration typeDecl, + int paramIndex) { if (!isLegalType(param.getType())) { builder.onError(param.getPosition(), WebserviceapMessages.localizableWEBSERVICEAP_METHOD_PARAMETER_TYPES_CANNOT_IMPLEMENT_REMOTE(typeDecl.getQualifiedName(), - method.getSimpleName(), - param.getSimpleName(), - param.getType().toString())); + method.getSimpleName(), + param.getSimpleName(), + param.getType().toString())); return false; } TypeMirror holderType; diff -r 8a8dfdbc6614 -r aac78bd724c4 src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java --- a/src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java Mon Jan 13 16:14:50 2014 -0800 +++ b/src/share/jaxws_classes/com/sun/tools/internal/ws/wscompile/WsimportTool.java Wed Jul 16 00:20:16 2014 +0100 @@ -334,7 +334,7 @@ if(options.verbose) { listener.message(WscompileMessages.WSIMPORT_ARCHIVE_ARTIFACT(f, options.clientjar)); } - String entry = f.getCanonicalPath().substring(base.length()+1); + String entry = f.getCanonicalPath().substring(base.length()+1).replace(File.separatorChar, '/'); BufferedInputStream bis = new BufferedInputStream( new FileInputStream(f)); JarEntry jarEntry = new JarEntry(entry); diff -r 8a8dfdbc6614 -r aac78bd724c4 src/share/jaxws_classes/com/sun/tools/internal/ws/wsdl/parser/ContextClassloaderLocal.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/share/jaxws_classes/com/sun/tools/internal/ws/wsdl/parser/ContextClassloaderLocal.java Wed Jul 16 00:20:16 2014 +0100 @@ -0,0 +1,86 @@ +/* + * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * 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 com.sun.tools.internal.ws.wsdl.parser; + +import java.security.AccessController; +import java.security.PrivilegedAction; +import java.text.MessageFormat; +import java.util.ResourceBundle; +import java.util.WeakHashMap; + +/** + * Simple utility ensuring that the value is cached only in case it is non-internal implementation + */ +abstract class ContextClassloaderLocal { + + private static final String FAILED_TO_CREATE_NEW_INSTANCE = "FAILED_TO_CREATE_NEW_INSTANCE"; + + private WeakHashMap CACHE = new WeakHashMap(); + + public V get() throws Error { + ClassLoader tccl = getContextClassLoader(); + V instance = CACHE.get(tccl); + if (instance == null) { + instance = createNewInstance(); + CACHE.put(tccl, instance); + } + return instance; + } + + public void set(V instance) { + CACHE.put(getContextClassLoader(), instance); + } + + protected abstract V initialValue() throws Exception; + + private V createNewInstance() { + try { + return initialValue(); + } catch (Exception e) { + throw new Error(format(FAILED_TO_CREATE_NEW_INSTANCE, getClass().getName()), e); + } + } + + private static String format(String property, Object... args) { + String text = ResourceBundle.getBundle(ContextClassloaderLocal.class.getName()).getString(property); + return MessageFormat.format(text, args); + } + + private static ClassLoader getContextClassLoader() { + return (ClassLoader) + AccessController.doPrivileged(new PrivilegedAction() { + public Object run() { + ClassLoader cl = null; + try { + cl = Thread.currentThread().getContextClassLoader(); + } catch (SecurityException ex) { + } + return cl; + } + }); From andrew at icedtea.classpath.org Tue Jul 15 23:23:04 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:23:04 +0000 Subject: /hg/release/icedtea7-forest-2.5/langtools: 52 new changesets Message-ID: changeset 8246cd74b091 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=8246cd74b091 author: asaha date: Tue Feb 11 12:35:15 2014 -0800 Added tag jdk7u65-b00 for changeset 25d63d986653 changeset 76b9d223f112 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=76b9d223f112 author: asaha date: Tue Feb 11 15:18:16 2014 -0800 Merge changeset 9ebc77f2bc7a in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=9ebc77f2bc7a author: asaha date: Tue Feb 11 17:10:37 2014 -0800 Merge changeset 1eebaa679b22 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=1eebaa679b22 author: asaha date: Wed Feb 12 16:28:54 2014 -0800 Merge changeset 67bbdf090b77 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=67bbdf090b77 author: asaha date: Tue Feb 18 14:14:27 2014 -0800 Merge changeset 351f61b59f75 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=351f61b59f75 author: asaha date: Thu Feb 20 09:00:02 2014 -0800 Merge changeset 7effcbb8d1fd in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=7effcbb8d1fd author: asaha date: Tue Feb 25 23:22:46 2014 -0800 Merge changeset c5a01a15f3fc in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=c5a01a15f3fc author: katleman date: Thu Feb 27 11:59:07 2014 -0800 Added tag jdk7u65-b01 for changeset 7effcbb8d1fd changeset 33b032df7a9e in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=33b032df7a9e author: asaha date: Thu Feb 27 13:08:56 2014 -0800 Merge changeset ff96febd9daf in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=ff96febd9daf author: asaha date: Tue Mar 04 17:50:56 2014 -0800 Merge changeset 75b8c65f4c14 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=75b8c65f4c14 author: asaha date: Wed Mar 05 13:41:18 2014 -0800 Merge changeset 59ac4b0725ad in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=59ac4b0725ad author: katleman date: Wed Mar 05 16:29:00 2014 -0800 Added tag jdk7u65-b02 for changeset 75b8c65f4c14 changeset 577131a1b8e2 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=577131a1b8e2 author: asaha date: Tue Mar 11 14:55:28 2014 -0700 Merge changeset e36c48be4dd2 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=e36c48be4dd2 author: asaha date: Tue Mar 11 15:20:42 2014 -0700 Merge changeset 16bb02dae837 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=16bb02dae837 author: asaha date: Wed Mar 12 15:01:57 2014 -0700 Merge changeset b7339a6b68f7 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=b7339a6b68f7 author: katleman date: Thu Mar 13 13:18:03 2014 -0700 Added tag jdk7u65-b03 for changeset 16bb02dae837 changeset 91677116552f in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=91677116552f author: asaha date: Tue Mar 18 13:11:33 2014 -0700 Merge changeset 54a6c23ccdfa in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=54a6c23ccdfa author: katleman date: Thu Mar 20 13:05:06 2014 -0700 Added tag jdk7u65-b04 for changeset 91677116552f changeset 8f585b94be8c in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=8f585b94be8c author: asaha date: Thu Mar 20 15:03:42 2014 -0700 Merge changeset f15eff13c0c0 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=f15eff13c0c0 author: katleman date: Tue Mar 25 11:19:13 2014 -0700 Added tag jdk7u65-b05 for changeset 8f585b94be8c changeset c3a8556785e8 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=c3a8556785e8 author: asaha date: Thu Mar 27 12:25:56 2014 -0700 Merge changeset 898f77f3e5a1 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=898f77f3e5a1 author: katleman date: Tue Apr 01 12:02:05 2014 -0700 Added tag jdk7u65-b06 for changeset c3a8556785e8 changeset 1978b6434c4f in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=1978b6434c4f author: asaha date: Thu Apr 03 11:26:34 2014 -0700 Merge changeset af5f39af1315 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=af5f39af1315 author: katleman date: Tue Apr 08 11:35:15 2014 -0700 Added tag jdk7u65-b07 for changeset 1978b6434c4f changeset 684f0285b699 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=684f0285b699 author: asaha date: Wed Apr 09 14:14:56 2014 -0700 Merge changeset df0aa7e38245 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=df0aa7e38245 author: katleman date: Tue Apr 15 23:00:55 2014 -0700 Added tag jdk7u65-b08 for changeset 684f0285b699 changeset 9bf8d4b99b06 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=9bf8d4b99b06 author: asaha date: Tue Apr 15 12:20:36 2014 -0700 Merge changeset 9c1dc4480164 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=9c1dc4480164 author: asaha date: Wed Apr 16 10:11:14 2014 -0700 Merge changeset c03f8871e124 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=c03f8871e124 author: asaha date: Wed Apr 16 13:43:01 2014 -0700 Merge changeset 13fed9e9f022 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=13fed9e9f022 author: katleman date: Mon Apr 07 12:17:47 2014 -0700 Added tag jdk7u55-b32 for changeset ec8793f5aa4f changeset d9e4f2bb3d75 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=d9e4f2bb3d75 author: katleman date: Tue Apr 08 11:16:55 2014 -0700 Added tag jdk7u55-b33 for changeset 13fed9e9f022 changeset 2715f7523853 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=2715f7523853 author: asaha date: Mon Apr 21 10:08:16 2014 -0700 Merge changeset e2a9d70e8444 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=e2a9d70e8444 author: katleman date: Tue Apr 22 11:47:58 2014 -0700 Added tag jdk7u65-b09 for changeset 2715f7523853 changeset 98cac38ef130 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=98cac38ef130 author: asaha date: Thu Apr 24 12:12:06 2014 -0700 Merge changeset 1217c34a8b43 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=1217c34a8b43 author: katleman date: Tue Apr 29 12:36:39 2014 -0700 Added tag jdk7u65-b10 for changeset 98cac38ef130 changeset 6e762cb12929 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=6e762cb12929 author: asaha date: Tue Apr 29 14:08:23 2014 -0700 Merge changeset 4c40603840a8 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=4c40603840a8 author: asaha date: Thu May 01 09:34:10 2014 -0700 Merge changeset 255128535c9f in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=255128535c9f author: katleman date: Tue May 06 10:03:13 2014 -0700 Added tag jdk7u65-b11 for changeset 4c40603840a8 changeset 36b01ef633b2 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=36b01ef633b2 author: asaha date: Thu May 08 12:05:19 2014 -0700 Merge changeset 5ba8a1ef0f82 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=5ba8a1ef0f82 author: katleman date: Tue May 13 08:14:02 2014 -0700 Added tag jdk7u65-b12 for changeset 36b01ef633b2 changeset 52769f410515 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=52769f410515 author: katleman date: Tue May 20 12:37:11 2014 -0700 Added tag jdk7u65-b13 for changeset 5ba8a1ef0f82 changeset 7f2891e4c6fc in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=7f2891e4c6fc author: katleman date: Wed May 28 02:34:24 2014 -0700 Added tag jdk7u65-b14 for changeset 52769f410515 changeset dea7e67840b6 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=dea7e67840b6 author: katleman date: Tue Jun 03 13:53:08 2014 -0700 Added tag jdk7u65-b15 for changeset 7f2891e4c6fc changeset 15a051dfadb6 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=15a051dfadb6 author: katleman date: Fri Jun 13 11:57:02 2014 -0700 Added tag jdk7u65-b16 for changeset dea7e67840b6 changeset 576e2fd21368 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=576e2fd21368 author: katleman date: Tue Jun 17 13:03:38 2014 -0700 Added tag jdk7u65-b17 for changeset 15a051dfadb6 changeset a7caaf4c97f7 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=a7caaf4c97f7 author: asaha date: Wed Jun 25 08:32:16 2014 -0700 Added tag jdk7u65-b30 for changeset 576e2fd21368 changeset 772fe694be95 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=772fe694be95 author: asaha date: Wed Jul 02 09:40:29 2014 -0700 Added tag jdk7u55-b15 for changeset 56c12a84e86e changeset 0f809f893588 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=0f809f893588 author: asaha date: Wed Jul 02 09:59:13 2014 -0700 Merge changeset eae289997f58 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=eae289997f58 author: asaha date: Wed Jul 02 10:10:25 2014 -0700 Added tag jdk7u65-b18 for changeset 0f809f893588 changeset afc940d62b49 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=afc940d62b49 author: asaha date: Wed Jul 09 15:03:52 2014 -0700 Added tag jdk7u65-b19 for changeset eae289997f58 changeset 4c827dc3de05 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=4c827dc3de05 author: andrew date: Tue Jul 15 22:47:39 2014 +0100 Merge jdk7u65-b32 changeset f444e2a77643 in /hg/release/icedtea7-forest-2.5/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/langtools?cmd=changeset;node=f444e2a77643 author: andrew date: Wed Jul 16 00:20:24 2014 +0100 Added tag icedtea-2.5.1 for changeset 4c827dc3de05 diffstat: .hgtags | 83 ++++++++++ .jcheck/conf | 2 - make/Makefile | 4 + make/build.properties | 3 +- make/build.xml | 2 +- src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java | 8 +- src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java | 45 +++++- src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java | 11 +- src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties | 14 +- src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties | 31 ++- src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties | 46 +++-- src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_zh_CN.properties | 14 +- src/share/classes/com/sun/tools/doclets/internal/toolkit/util/Util.java | 26 ++- src/share/classes/com/sun/tools/javac/code/Type.java | 6 +- src/share/classes/com/sun/tools/javac/code/Types.java | 52 +++-- src/share/classes/com/sun/tools/javac/resources/javac_ja.properties | 10 +- src/share/classes/com/sun/tools/javah/resources/l10n_ja.properties | 4 +- src/share/classes/com/sun/tools/javap/resources/javap_ja.properties | 63 +++++++ src/share/classes/com/sun/tools/javap/resources/javap_zh_CN.properties | 63 +++++++ test/Makefile | 3 + test/com/sun/javadoc/testHref/TestHref.java | 12 +- test/com/sun/javadoc/testJavascript/TestJavascript.java | 13 +- test/com/sun/javadoc/testLinkTaglet/TestLinkTaglet.java | 10 +- test/com/sun/javadoc/testPrivateClasses/TestPrivateClasses.java | 6 +- test/tools/javac/6567415/T6567415.java | 4 +- test/tools/javac/T5090006/broken.jar | Bin test/tools/javac/T8033294/RedundantWarningInIntersectionTest.java | 58 ++++++ test/tools/javac/api/6406133/T6406133.java | 4 +- test/tools/javac/api/6410643/T6410643.java | 4 +- test/tools/javac/api/6411310/T6411310.java | 3 +- test/tools/javac/api/6411333/T6411333.java | 3 +- test/tools/javac/api/6412656/T6412656.java | 4 +- test/tools/javac/api/6415780/T6415780.java | 4 +- test/tools/javac/api/6418694/T6418694.java | 3 +- test/tools/javac/api/6421111/T6421111.java | 3 +- test/tools/javac/api/6421756/T6421756.java | 3 +- test/tools/javac/api/6422215/T6422215.java | 4 +- test/tools/javac/api/6422327/T6422327.java | 4 +- test/tools/javac/api/6423003/T6423003.java | 3 +- test/tools/javac/api/6431257/T6431257.java | 3 +- test/tools/javac/api/6437349/T6437349.java | 3 +- test/tools/javac/api/6437999/T6437999.java | 3 +- test/tools/javac/api/6440333/T6440333.java | 3 +- test/tools/javac/api/6440528/T6440528.java | 3 +- test/tools/javac/api/6468404/T6468404.java | 3 +- test/tools/javac/api/6731573/T6731573.java | 4 +- test/tools/javac/api/6733837/T6733837.java | 4 +- test/tools/javac/api/TestJavacTaskScanner.java | 3 +- test/tools/javac/api/guide/Test.java | 3 +- test/tools/javac/api/lib/ToolTester.java | 33 +++- 50 files changed, 568 insertions(+), 132 deletions(-) diffs (truncated from 1561 to 500 lines): diff -r 25d63d986653 -r f444e2a77643 .hgtags --- a/.hgtags Mon Jan 13 16:15:06 2014 -0800 +++ b/.hgtags Wed Jul 16 00:20:24 2014 +0100 @@ -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 @@ -186,11 +192,15 @@ 21d2313dfeac8c52a04b837d13958c86346a4b12 jdk7u6-b10 13d3c624291615593b4299a273085441b1dd2f03 jdk7u6-b11 f0be10a26af08c33d9afe8fe51df29572d431bac jdk7u6-b12 +e3eeee75b861baf378d41adcd29ae70ed047eae7 ppc-aix-port-b01 +e3eeee75b861baf378d41adcd29ae70ed047eae7 ppc-aix-port-b02 +e3eeee75b861baf378d41adcd29ae70ed047eae7 ppc-aix-port-b03 fcebf337f5c1d342973573d9c6f758443c8aefcf jdk7u6-b13 35b2699c6243e9fb33648c2c25e97ec91d0e3553 jdk7u6-b14 47ae28da508861d77ee6dd408d822acf507b28ec jdk7u6-b15 5c7763489f4d2727c6d9de11f4114fb8ed839042 jdk7u6-b16 66c671f28cb2840ceec5b44c44bac073fc0b4256 jdk7u6-b17 +cee31ee38a190f77b1e21c0515bb28802dcd9678 icedtea-2.3-branchpoint 6aa859ef42876c51bb1b1d7fb4db32a916a7dcaa jdk7u6-b18 474a52eeeafb1feccffda68b96f651e65415c01d jdk7u6-b19 32acb67a79531daf678577c7ef1bde1867da807d jdk7u6-b20 @@ -258,11 +268,13 @@ 382bab6d9682eefa2185a1643dfa32d65b6c20e5 jdk7u12-b07 7c0c3aeb2c603baba2cabba9adc5a0a49afb4f47 jdk7u12-b08 96c4f3ec63552a87a825baabd7f0dfafec299483 jdk7u12-b09 +85fb9d7ce4af53f0a47d2b73d983c96239f9ff33 icedtea-2.4-branchpoint e5b1403fa68abe3ac7174c031f19e6ecf77624a0 jdk7u14-b10 db94066df63468172e074d59e71d82dc874ed7cb jdk7u14-b11 f9a326e92fafc4724f0af550c2cba82fea202a31 jdk7u14-b12 5a52c6cc8db94b68eaacb42a9b4df30a40b09d82 jdk7u14-b13 5febc4e479fad801424cdcce90a0d463a2ef9223 jdk7u14-b14 +d52538e72925a1da7b1fcff051b591beeb2452b4 ppc-aix-port-b04 5fdb509d1f1a0533b14c61c92d77ff21e0ce2488 jdk7u14-b15 1298307076c2f0c2a4acd3a2a132cbe98d399009 jdk7u15-b01 8db0105f00ce9fe6899ece52d46d78995111c456 jdk7u15-b02 @@ -359,6 +371,7 @@ 765bea9bfcfc8c472df0a2daced5e576095f46ac jdk7u40-b42 988ece7b686564084770e99ca26746c45ffb933f jdk7u40-b43 a67dbf96bf86989d0392cc5b66e5d4139cbceec7 jdk7u40-b60 +849b17bc6e9a08fa41e0ef631e51366a09842e64 jdk7u60-b00 b2e29b79e54e58349c1dbcf5449f67fc5d5a235a jdk7u40-b61 94ea3d062a3c28c64a837fa8f999c6b6956ff7c4 jdk7u40-b62 9bbfba4981e1db5016bbfbc23025763966021c26 jdk7u45-b01 @@ -381,6 +394,7 @@ ba3ff27d4082f2cf0d06e635b2b6e01f80e78589 jdk7u45-b18 164cf7491ba2f371354ba343a604eee4c61c529d jdk7u45-b30 7f5cfaedb25c2c2774d6839810d6ae543557ca01 jdk7u45-b31 +849b17bc6e9a08fa41e0ef631e51366a09842e64 jdk7u60-b00 ef7bdbe7f1fa42fd58723e541d9cdedcacb2649a jdk7u45-b33 bcb3e939d046d75436c7c8511600b6edce42e6da jdk7u45-b34 efbda7abd821f280ec3a3aa6819ad62d45595e55 jdk7u45-b35 @@ -400,8 +414,77 @@ 4d0807934c302f2e35e6a5acc6cdc720c82b5671 jdk7u51-b13 ada23e55d76a378cb2fc2cd7ffae8c147aaf0055 jdk7u51-b30 e3d4896d52ab4ad0fc0b7a45d60340dbdcb8826d jdk7u51-b31 +fb3ff30ecd8ea1637551461bfaf09fc8204b536c jdk7u51-b33 +4adc6c094545774b324d2e5511723ada2b32e6c4 jdk7u51-b34 5b44df2114e466da85c3816627bfcd1b59c6499d jdk7u55-b00 3e64e49131b88c839733c9869ff8aebcd15cf828 jdk7u55-b01 2a9f5c00ba46f895bc9d16a584bf7d80c1822268 jdk7u55-b02 0479d260ac835eb3f0c7f3d7d15be0599b92a20a jdk7u55-b03 a244cc40ae0b29028ff8503ee516cb5f9e3db6e3 jdk7u55-b04 +25d63d986653d81522b01bbd2664083ae5fdc243 jdk7u65-b00 +25d63d986653d81522b01bbd2664083ae5fdc243 jdk7u55-b05 +76eeeaace70d38795eef5215f758493421cee0ac jdk7u55-b06 +08f7914d6aa947e73269b4e60110ed12573ffa28 jdk7u55-b07 +e64301b473b43609cb28d8cfe7e5db17d9bf8a4a jdk7u55-b08 +a296112a3fd774c258375912c7ada38daf8eee1e jdk7u55-b09 +faa9f8c51a6e3fcb444729012a798e3ad09c3da4 jdk7u55-b10 +2bdd105e433da7fbf7f37ec2f75fc4bed4e54280 jdk7u55-b11 +a3cdca5d3773f67a49091f9131a4d073bc6b83d9 jdk7u55-b12 +81bf1ca3a3a71c628b7d952ba47c6f200a223f27 jdk7u55-b13 +96d55b4d88fea1d9f8227e70003210a6c10a1dba jdk7u55-b30 +c1964a222000b4884b992fdbaf8f62a45fb893c9 jdk7u55-b14 +56c12a84e86eb47e24e4bc50a4602a276e6b4e4b jdk7u55-b15 +4f6115ba266e5489b5e1968a28304f82be1f5641 jdk7u55-b31 +ec8793f5aa4fb0aff4aa2f02f458fa6720f3ec6f jdk7u55-b32 +13fed9e9f022e4a7f914c8410cbaa6f6564d4efd jdk7u55-b33 +849b17bc6e9a08fa41e0ef631e51366a09842e64 jdk7u60-b00 +b19e375d9829daf207b1bdc7f908a3e1d548462c jdk7u60-b01 +954e1616449af74f68aed57261cbeb62403377f1 jdk7u60-b02 +0d89cc5766d72e870eaf16696ec9b7b1ca4901fd icedtea-2.5pre01 +f75a642c2913e1ecbd22fc46812cffa2e7739169 icedtea-2.5pre02 +4170784840d510b4e8ae7ae250b92279aaf5eb25 jdk7u60-b03 +772aad4e9681828b8ee193b9ed971cbfe6c7f347 jdk7u60-b04 +744287fccf3b2c4fba2abf105863f0a44c3bd4da jdk7u60-b05 +8f6db72756f3e4c3cca8731d20e978fb741846d2 jdk7u60-b06 +02f050bc5569fb058ace44ed705bbb0f9022a6fe jdk7u60-b07 +be8e34e4920ebd1cfb89739d636e363c7881a548 jdk7u60-b08 +3f8b585403e596b7eadc231484f5480361c52c4b jdk7u60-b09 +3ee98cd07065dfa9a982e6692a3e875684a7e820 jdk7u60-b10 +3cc64ba8cf85942929b15c5ef21360f96db3b99c jdk7u60-b11 +f38810d86876a74b6267c207f47840c895e4f393 icedtea-2.5pre03 +b79b8b1dc88faa73229b2bce04e979ff5ec854f5 jdk7u60-b12 +3dc3e59e9580dfdf95dac57c54fe1a4209401125 jdk7u60-b13 +a8b9c1929e50a9f3ae9ae1a23c06fa73a57afce3 jdk7u60-b14 +7568ebdada118da1d1a6addcf6316ffda21801fd jdk7u60-b15 +2f5810fa2937a0ea4aec2ef03b2b7ceacd122750 icedtea-2.5pre04 +853f886673d8eddc415e6b8e87b720c1b9244467 icedtea-2.5pre06 +1b5335c79bc18fe5aa613de3ca19fc364983c492 icedtea-2.5pre05 +057caf9e0774e7c530c5710127f70c8d5f46deab jdk7u60-b16 +b7cc00c573c294b144317d44803758a291b3deda jdk7u60-b17 +b7cc00c573c294b144317d44803758a291b3deda jdk7u60-b18 +7effcbb8d1fd7ced194a294e29eea28bf552ac34 jdk7u65-b01 +40aa95c8477aa0a3f090859570f5536afc9026b7 jdk7u60-b19 +b578e801c5f0e41be96d58e213b32f5c0c9278e8 jdk7u60-b30 +4548707805795436195ddb2f1dd2061dd474bed7 icedtea-2.5pre07 +f70c7b79642290aabc561d5613333dc8c4d83172 icedtea-2.5pre08 +f70c7b79642290aabc561d5613333dc8c4d83172 icedtea-2.5.0 +75b8c65f4c148baa4084022035b22de47df9426b jdk7u65-b02 +16bb02dae837566f3c350c6313b09f6110dcba68 jdk7u65-b03 +91677116552f743f3589f3d2ba255fa1079c0c48 jdk7u65-b04 +8f585b94be8c83f89fc481cf010a129ef75cd31b jdk7u65-b05 +c3a8556785e89b7868fc4ece666120dbf8c5c7a7 jdk7u65-b06 +1978b6434c4f717ba1bd715f016ab99dff879857 jdk7u65-b07 +684f0285b699d304d1efff487b550ff2e1679e98 jdk7u65-b08 +2715f752385349274b43a1efaab5733bafc40557 jdk7u65-b09 +98cac38ef1302939a37b85c0208a7969ba4cd8ad jdk7u65-b10 +4c40603840a8ffbf5e30049b52ff336a9aca04c1 jdk7u65-b11 +36b01ef633b2e70836b5914aa6924e81ff4d41ec jdk7u65-b12 +5ba8a1ef0f82d341ede3ec2fdac7e012e42594c4 jdk7u65-b13 +52769f410515f6a7fa66a93b24a1327fa6b6174a jdk7u65-b14 +7f2891e4c6fcd9c0e31f50189a50c8de189d774f jdk7u65-b15 +dea7e67840b68ae6752b37e69e242dae2765b878 jdk7u65-b16 +15a051dfadb6a7d014f0d2739ccf0a63ade56313 jdk7u65-b17 +576e2fd21368ba67f1f19d3180f78bc440b795a1 jdk7u65-b30 +0f809f893588548a3b5c8441e28c9e0a62bc13ef jdk7u65-b18 +eae289997f58ef6396dc323c3d5b93a56fb43573 jdk7u65-b19 +4c827dc3de054b03008402f571ca645cbf7939e6 icedtea-2.5.1 diff -r 25d63d986653 -r f444e2a77643 .jcheck/conf --- a/.jcheck/conf Mon Jan 13 16:15:06 2014 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -project=jdk7 -bugids=dup diff -r 25d63d986653 -r f444e2a77643 make/Makefile --- a/make/Makefile Mon Jan 13 16:15:06 2014 -0800 +++ b/make/Makefile Wed Jul 16 00:20:24 2014 +0100 @@ -111,6 +111,10 @@ ANT_OPTIONS += -Ddebug.classfiles=true endif +ifeq ($(JAVAC_WARNINGS_FATAL), false) + ANT_OPTIONS += -Djavac.warnings.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 25d63d986653 -r f444e2a77643 make/build.properties --- a/make/build.properties Mon Jan 13 16:15:06 2014 -0800 +++ b/make/build.properties Wed Jul 16 00:20:24 2014 +0100 @@ -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 -Werror +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/ diff -r 25d63d986653 -r f444e2a77643 make/build.xml --- a/make/build.xml Mon Jan 13 16:15:06 2014 -0800 +++ b/make/build.xml Wed Jul 16 00:20:24 2014 +0100 @@ -877,7 +877,7 @@ + classpath="${build.toolclasses.dir}:${build.bootstrap.dir}/classes:${ant.home}/lib/ant.jar"/> diff -r 25d63d986653 -r f444e2a77643 src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java --- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java Mon Jan 13 16:15:06 2014 -0800 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlDocWriter.java Wed Jul 16 00:20:24 2014 +0100 @@ -181,12 +181,14 @@ String label, boolean strong, String stylename, String title, String target) { StringBuffer retlink = new StringBuffer(); + StringBuilder lnk = new StringBuilder(); retlink.append(" 127) {" + DocletConstants.NL + " allowNumber = true;" + DocletConstants.NL + " allowSep = true;" + DocletConstants.NL + " } else if ('0' <= ch && ch <= '9'" + DocletConstants.NL + diff -r 25d63d986653 -r f444e2a77643 src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties --- a/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties Mon Jan 13 16:15:06 2014 -0800 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/resources/standard_ja.properties Wed Jul 16 00:20:24 2014 +0100 @@ -25,7 +25,7 @@ doclet.Href_Enum_Title={0}\u5185\u306E\u5217\u6319\u578B doclet.Href_Type_Param_Title={0}\u5185\u306E\u578B\u30D1\u30E9\u30E1\u30FC\u30BF doclet.Href_Class_Or_Interface_Title={0}\u5185\u306E\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9 -doclet.Summary=\u6982\u8981: +doclet.Summary=\u30B5\u30DE\u30EA\u30FC: doclet.Detail=\u8A73\u7D30: doclet.navNested=\u30CD\u30B9\u30C8 doclet.navAnnotationTypeOptionalMember=\u30AA\u30D7\u30B7\u30E7\u30F3 @@ -68,7 +68,7 @@ doclet.see.class_or_package_not_found=\u30BF\u30B0{0}: \u53C2\u7167\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093: {1} doclet.see.class_or_package_not_accessible=\u30BF\u30B0{0}: \u53C2\u7167\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093: {1} doclet.see.malformed_tag={0}\u30BF\u30B0: \u4E0D\u6B63\u306A{1}\u30BF\u30B0 -doclet.Inherited_API_Summary=\u7D99\u627F\u3055\u308C\u305FAPI\u306E\u6982\u8981 +doclet.Inherited_API_Summary=\u7D99\u627F\u3055\u308C\u305FAPI\u306E\u30B5\u30DE\u30EA\u30FC doclet.Deprecated_API=\u975E\u63A8\u5968\u306EAPI doclet.Deprecated_Packages=\u975E\u63A8\u5968\u306E\u30D1\u30C3\u30B1\u30FC\u30B8 doclet.Deprecated_Classes=\u975E\u63A8\u5968\u306E\u30AF\u30E9\u30B9 @@ -135,18 +135,18 @@ doclet.Help_title=API\u30D8\u30EB\u30D7 doclet.Window_Help_title=API\u30D8\u30EB\u30D7 doclet.Help_line_1=API\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u69CB\u6210 -doclet.Help_line_2=\u3053\u306EAPI(Application Programming Interface)\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306B\u306F\u3001\u6B21\u306B\u8AAC\u660E\u3059\u308B\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u306B\u3042\u308B\u9805\u76EE\u306B\u5BFE\u5FDC\u3059\u308B\u30DA\u30FC\u30B8\u304C\u542B\u307E\u308C\u307E\u3059\u3002 -doclet.Help_line_3={0}\u30DA\u30FC\u30B8\u306FAPI\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30D5\u30ED\u30F3\u30C8\u30FB\u30DA\u30FC\u30B8\u3067\u3001\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u6982\u8981\u3092\u542B\u3080\u5168\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30EA\u30B9\u30C8\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u4E00\u9023\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u6982\u8981\u8AAC\u660E\u3082\u8868\u793A\u3055\u308C\u307E\u3059\u3002 -doclet.Help_line_4=\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u306F\u3001\u305D\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30EA\u30B9\u30C8\u3068\u3001\u305D\u308C\u305E\u308C\u306E\u6982\u8981\u3092\u542B\u3080\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u30DA\u30FC\u30B8\u306F6\u3064\u306E\u30AB\u30C6\u30B4\u30EA\u3067\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 +doclet.Help_line_2=\u3053\u306EAPI (Application Programming Interface)\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306B\u306F\u3001\u6B21\u306B\u8AAC\u660E\u3059\u308B\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u306B\u3042\u308B\u9805\u76EE\u306B\u5BFE\u5FDC\u3059\u308B\u30DA\u30FC\u30B8\u304C\u542B\u307E\u308C\u307E\u3059\u3002 +doclet.Help_line_3={0}\u30DA\u30FC\u30B8\u306FAPI\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u306E\u30D5\u30ED\u30F3\u30C8\u30FB\u30DA\u30FC\u30B8\u3067\u3001\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30B5\u30DE\u30EA\u30FC\u3092\u542B\u3080\u5168\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30EA\u30B9\u30C8\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u4E00\u9023\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u5168\u4F53\u7684\u306A\u8AAC\u660E\u3082\u8868\u793A\u3055\u308C\u307E\u3059\u3002 +doclet.Help_line_4=\u5404\u30D1\u30C3\u30B1\u30FC\u30B8\u306B\u306F\u3001\u305D\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30EA\u30B9\u30C8\u3068\u3001\u305D\u308C\u305E\u308C\u306E\u30B5\u30DE\u30EA\u30FC\u3092\u542B\u3080\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u30DA\u30FC\u30B8\u306F6\u3064\u306E\u30AB\u30C6\u30B4\u30EA\u3067\u69CB\u6210\u3055\u308C\u307E\u3059\u3002 doclet.Help_line_5=\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9 -doclet.Help_line_6=\u5404\u30AF\u30E9\u30B9\u3001\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3001\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u306F\u500B\u5225\u306E\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u30DA\u30FC\u30B8\u306B\u306F\u6B21\u306E\u3088\u3046\u306B\u3001\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u8AAC\u660E\u3068\u3001\u6982\u8981\u8868\u304A\u3088\u3073\u30E1\u30F3\u30D0\u30FC\u306E\u8A73\u7D30\u8AAC\u660E\u304C\u542B\u307E\u308C\u307E\u3059\u3002 +doclet.Help_line_6=\u5404\u30AF\u30E9\u30B9\u3001\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u3001\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u306F\u500B\u5225\u306E\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u5404\u30DA\u30FC\u30B8\u306B\u306F\u6B21\u306E\u3088\u3046\u306B\u3001\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u8AAC\u660E\u3068\u3001\u30B5\u30DE\u30EA\u30FC\u8868\u304A\u3088\u3073\u30E1\u30F3\u30D0\u30FC\u306E\u8A73\u7D30\u8AAC\u660E\u304C\u542B\u307E\u308C\u307E\u3059\u3002 doclet.Help_line_7=\u30AF\u30E9\u30B9\u968E\u5C64\u8868\u793A doclet.Help_line_8=\u76F4\u7CFB\u306E\u30B5\u30D6\u30AF\u30E9\u30B9 doclet.Help_line_9=\u65E2\u77E5\u306E\u30B5\u30D6\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30EA\u30B9\u30C8 doclet.Help_line_10=\u65E2\u77E5\u306E\u5B9F\u88C5\u30AF\u30E9\u30B9\u306E\u30EA\u30B9\u30C8 doclet.Help_line_11=\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u5BA3\u8A00 doclet.Help_line_12=\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u8AAC\u660E -doclet.Help_line_13=\u5404\u6982\u8981\u30A8\u30F3\u30C8\u30EA\u306B\u306F\u3001\u305D\u306E\u9805\u76EE\u306E\u8A73\u7D30\u306A\u8AAC\u660E\u306E\u4E2D\u304B\u30891\u884C\u76EE\u306E\u6587\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u8A73\u7D30\u306A\u8AAC\u660E\u306F\u30BD\u30FC\u30B9\u30FB\u30B3\u30FC\u30C9\u306B\u73FE\u308C\u308B\u9806\u306B\u4E26\u3079\u3089\u308C\u307E\u3059\u304C\u3001\u6982\u8981\u30A8\u30F3\u30C8\u30EA\u306F\u30A2\u30EB\u30D5\u30A1\u30D9\u30C3\u30C8\u9806\u306B\u4E26\u3079\u3089\u308C\u307E\u3059\u3002\u3053\u308C\u306B\u3088\u3063\u3066\u3001\u30D7\u30ED\u30B0\u30E9\u30DE\u304C\u8A2D\u5B9A\u3057\u305F\u8AD6\u7406\u7684\u306A\u30B0\u30EB\u30FC\u30D7\u5206\u3051\u304C\u4FDD\u6301\u3055\u308C\u307E\u3059\u3002 +doclet.Help_line_13=\u5404\u30B5\u30DE\u30EA\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306B\u306F\u3001\u305D\u306E\u9805\u76EE\u306E\u8A73\u7D30\u8AAC\u660E\u306E\u4E2D\u304B\u30891\u884C\u76EE\u306E\u6587\u304C\u8868\u793A\u3055\u308C\u307E\u3059\u3002\u30B5\u30DE\u30EA\u30FC\u30FB\u30A8\u30F3\u30C8\u30EA\u306F\u30A2\u30EB\u30D5\u30A1\u30D9\u30C3\u30C8\u9806\u3067\u3059\u304C\u3001\u8A73\u7D30\u8AAC\u660E\u306F\u30BD\u30FC\u30B9\u30FB\u30B3\u30FC\u30C9\u306B\u73FE\u308C\u308B\u9806\u306B\u306A\u3063\u3066\u3044\u307E\u3059\u3002\u3053\u308C\u306B\u3088\u3063\u3066\u3001\u30D7\u30ED\u30B0\u30E9\u30DE\u304C\u8A2D\u5B9A\u3057\u305F\u8AD6\u7406\u7684\u306A\u30B0\u30EB\u30FC\u30D7\u5206\u3051\u304C\u4FDD\u6301\u3055\u308C\u307E\u3059\u3002 doclet.Help_line_14=\u4F7F\u7528 doclet.Help_line_15=\u5404\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5316\u3055\u308C\u305F\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u304A\u3088\u3073\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u306F\u305D\u308C\u305E\u308C\u300C\u4F7F\u7528\u300D\u30DA\u30FC\u30B8\u304C\u3042\u308A\u307E\u3059\u3002\u3053\u306E\u30DA\u30FC\u30B8\u306B\u306F\u3001\u3069\u306E\u3088\u3046\u306A\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u3001\u30E1\u30BD\u30C3\u30C9\u3001\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u304A\u3088\u3073\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u3001\u7279\u5B9A\u306E\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u4E00\u90E8\u3092\u4F7F\u7528\u3057\u3066\u3044\u308B\u304B\u304C\u8A18\u8FF0\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u305F\u3068\u3048\u3070\u3001\u30AF\u30E9\u30B9A\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9A\u306E\u5834\u5408\u3001\u305D\u306E\u300C\u4F7F\u7528\u300D\u30DA\u30FC\u30B8\u306B\u306F\u3001A\u306E\u30B5\u30D6\u30AF\u30E9\u30B9\u3001A\u3068\u3057\u3066\u5BA3\u8A00\u3055\u308C\u308B\u30D5\u30A3\u30FC\u30EB\u30C9\u3001A\u3092\u8FD4\u3059\u30E1\u30BD\u30C3\u30C9\u3068\u3001\u578BA\u3092\u6301\u3064\u30E1\u30BD\u30C3\u30C9\u304A\u3088\u3073\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u304C\u542B\u307E\u308C\u307E\u3059\u3002\u3053\u306E\u30DA\u30FC\u30B8\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u306B\u306F\u3001\u307E\u305A\u305D\u306E\u30D1\u30C3\u30B1\u30FC\u30B8\u3001\u30AF\u30E9\u30B9\u307E\u305F\u306F\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306B\u79FB\u52D5\u3057\u3001\u30CA\u30D3\u30B2\u30FC\u30B7\u30E7\u30F3\u30FB\u30D0\u30FC\u306E\u300C\u4F7F\u7528\u300D\u30EA\u30F3\u30AF\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002 doclet.Help_line_16=\u968E\u5C64\u30C4\u30EA\u30FC(\u30AF\u30E9\u30B9\u968E\u5C64) diff -r 25d63d986653 -r f444e2a77643 src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties Mon Jan 13 16:15:06 2014 -0800 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets.properties Wed Jul 16 00:20:24 2014 +0100 @@ -182,25 +182,32 @@ doclet.0_and_1={0} and {1} #Documentation for Enums -doclet.enum_values_doc=\n\ +doclet.enum_values_doc.main=\n\ Returns an array containing the constants of this enum type, in\n\ the order they are declared. This method may be used to iterate\n\ over the constants as follows:\n\
\n\
  for ({0} c : {0}.values())\n\
      System.out.println(c);\n\
- 
\n\ - @return an array containing the constants of this enum type, in\n\ - the order they are declared + -doclet.enum_valueof_doc=\n\ +doclet.enum_values_doc.return=\n\ + an array containing the constants of this enum type, in the order they are declared + +doclet.enum_valueof_doc.main=\n\ Returns the enum constant of this type with the specified name.\n\ The string must match exactly an identifier used to declare an\n\ enum constant in this type. (Extraneous whitespace characters are \n\ - not permitted.)\n\ - \n\ - @param name the name of the enum constant to be returned.\n\ - @return the enum constant with the specified name\n\ - @throws IllegalArgumentException if this enum type has no constant\n\ - with the specified name\n\ - @throws NullPointerException if the argument is null + not permitted.) + +doclet.enum_valueof_doc.param_name=\ + the name of the enum constant to be returned. + +doclet.enum_valueof_doc.return=\ + the enum constant with the specified name + +doclet.enum_valueof_doc.throws_ila=\ + if this enum type has no constant with the specified name + +doclet.enum_valueof_doc.throws_npe=\ + if the argument is null diff -r 25d63d986653 -r f444e2a77643 src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties Mon Jan 13 16:15:06 2014 -0800 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/doclets_ja.properties Wed Jul 16 00:20:24 2014 +0100 @@ -66,22 +66,22 @@ doclet.malformed_html_link_tag=
\u30BF\u30B0\u306E\u5F62\u5F0F\u304C\u4E0D\u6B63:\n"{0}" doclet.tag_misuse={0}\u30BF\u30B0\u306F{1}\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u3067\u306F\u4F7F\u7528\u3067\u304D\u307E\u305B\u3093\u3002\u4F7F\u7528\u3067\u304D\u308B\u306E\u306F\u6B21\u306E\u30BF\u30A4\u30D7\u306E\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8\u5185\u306E\u307F\u3067\u3059: {2}\u3002 doclet.javafx_tag_misuse=\u30BF\u30B0 at propertyGetter\u3001 at propertySetter\u304A\u3088\u3073 at propertyDescription\u306F\u3001JavaFX\u306E\u30D7\u30ED\u30D1\u30C6\u30A3getter\u3068setter\u306E\u307F\u3067\u4F7F\u7528\u3067\u304D\u307E\u3059\u3002 -doclet.Package_Summary=\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u6982\u8981 -doclet.Interface_Summary=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u6982\u8981 -doclet.Annotation_Types_Summary=\u6CE8\u91C8\u578B\u306E\u6982\u8981 -doclet.Enum_Summary=\u5217\u6319\u578B\u306E\u6982\u8981 -doclet.Exception_Summary=\u4F8B\u5916\u306E\u6982\u8981 -doclet.Error_Summary=\u30A8\u30E9\u30FC\u306E\u6982\u8981 -doclet.Class_Summary=\u30AF\u30E9\u30B9\u306E\u6982\u8981 -doclet.Nested_Class_Summary=\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9\u306E\u6982\u8981 -doclet.Annotation_Type_Optional_Member_Summary=\u4EFB\u610F\u8981\u7D20\u306E\u6982\u8981 -doclet.Annotation_Type_Required_Member_Summary=\u5FC5\u9808\u8981\u7D20\u306E\u6982\u8981 -doclet.Field_Summary=\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u6982\u8981 -doclet.Property_Summary=\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u6982\u8981 -doclet.Enum_Constant_Summary=\u5217\u6319\u578B\u5B9A\u6570\u306E\u6982\u8981 -doclet.Constructor_Summary=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\u6982\u8981 -doclet.Method_Summary=\u30E1\u30BD\u30C3\u30C9\u306E\u6982\u8981 -doclet.Factory_Method_Summary=static\u30D5\u30A1\u30AF\u30C8\u30EA\u30FB\u30E1\u30BD\u30C3\u30C9\u306E\u6982\u8981 +doclet.Package_Summary=\u30D1\u30C3\u30B1\u30FC\u30B8\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Interface_Summary=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Annotation_Types_Summary=\u6CE8\u91C8\u578B\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Enum_Summary=\u5217\u6319\u578B\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Exception_Summary=\u4F8B\u5916\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Error_Summary=\u30A8\u30E9\u30FC\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Class_Summary=\u30AF\u30E9\u30B9\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Nested_Class_Summary=\u30CD\u30B9\u30C8\u3055\u308C\u305F\u30AF\u30E9\u30B9\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Annotation_Type_Optional_Member_Summary=\u4EFB\u610F\u8981\u7D20\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Annotation_Type_Required_Member_Summary=\u5FC5\u9808\u8981\u7D20\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Field_Summary=\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Property_Summary=\u30D7\u30ED\u30D1\u30C6\u30A3\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Enum_Constant_Summary=\u5217\u6319\u578B\u5B9A\u6570\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Constructor_Summary=\u30B3\u30F3\u30B9\u30C8\u30E9\u30AF\u30BF\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Method_Summary=\u30E1\u30BD\u30C3\u30C9\u306E\u30B5\u30DE\u30EA\u30FC +doclet.Factory_Method_Summary=static\u30D5\u30A1\u30AF\u30C8\u30EA\u30FB\u30E1\u30BD\u30C3\u30C9\u306E\u30B5\u30DE\u30EA\u30FC doclet.Interfaces=\u30A4\u30F3\u30BF\u30D5\u30A7\u30FC\u30B9 doclet.Enums=\u5217\u6319\u578B doclet.AnnotationTypes=\u6CE8\u91C8\u578B @@ -180,6 +180,16 @@ doclet.0_and_1={0}\u3068{1} #Documentation for Enums -doclet.enum_values_doc=\n\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u914D\u5217\u3092\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u8FD4\u3057\u307E\u3059\u3002\n\u3053\u306E\u30E1\u30BD\u30C3\u30C9\u306F\u6B21\u306E\u3088\u3046\u306B\u3057\u3066\u5B9A\u6570\u3092\u53CD\u5FA9\u3059\u308B\u305F\u3081\u306B\n\u4F7F\u7528\u3067\u304D\u307E\u3059:\n
\nfor({0} c: {0}.values())\n  System.out.println(c);\n
\n at return \u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\n\u542B\u3080\u914D\u5217 +doclet.enum_values_doc.main=\n\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u914D\u5217\u3092\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u8FD4\u3057\u307E\u3059\u3002\n\u3053\u306E\u30E1\u30BD\u30C3\u30C9\u306F\u6B21\u306E\u3088\u3046\u306B\u3057\u3066\u5B9A\u6570\u3092\u53CD\u5FA9\u3059\u308B\u305F\u3081\u306B\n\u4F7F\u7528\u3067\u304D\u307E\u3059:\n
\nfor({0} c: {0}.values())\n  System.out.println(c);\n
\n -doclet.enum_valueof_doc=\n\u6307\u5B9A\u3057\u305F\u540D\u524D\u3092\u6301\u3064\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u8FD4\u3057\u307E\u3059\u3002\n\u6587\u5B57\u5217\u306F\u3001\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u5BA3\u8A00\u3059\u308B\u306E\u306B\u4F7F\u7528\u3057\u305F\u8B58\u5225\u5B50\u3068\u6B63\u78BA\u306B\n\u4E00\u81F4\u3057\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n(\u4F59\u5206\u306A\u7A7A\u767D\u6587\u5B57\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002)\n\n at param name \u8FD4\u3055\u308C\u308B\u5217\u6319\u578B\u5B9A\u6570\u306E\u540D\u524D\n at return \u6307\u5B9A\u3055\u308C\u305F\u540D\u524D\u3092\u6301\u3064\u5217\u6319\u578B\u5B9A\u6570\n at throws IllegalArgumentException \u6307\u5B9A\u3055\u308C\u305F\u540D\u524D\u3092\u6301\u3064\u5B9A\u6570\u3092\n\u3053\u306E\u5217\u6319\u578B\u304C\u6301\u3063\u3066\u3044\u306A\u3044\u5834\u5408\n at throws NullPointerException \u5F15\u6570\u304Cnull\u306E\u5834\u5408 +doclet.enum_values_doc.return=\n\u3053\u306E\u5217\u6319\u578B\u306E\u5B9A\u6570\u3092\u542B\u3080\u3001\u5BA3\u8A00\u3055\u308C\u3066\u3044\u308B\u9806\u5E8F\u3067\u306E\u914D\u5217 + +doclet.enum_valueof_doc.main=\n\u6307\u5B9A\u3057\u305F\u540D\u524D\u3092\u6301\u3064\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u8FD4\u3057\u307E\u3059\u3002\n\u6587\u5B57\u5217\u306F\u3001\u3053\u306E\u578B\u306E\u5217\u6319\u578B\u5B9A\u6570\u3092\u5BA3\u8A00\u3059\u308B\u306E\u306B\u4F7F\u7528\u3057\u305F\u8B58\u5225\u5B50\u3068\u6B63\u78BA\u306B\n\u4E00\u81F4\u3057\u3066\u3044\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002\n(\u4F59\u5206\u306A\u7A7A\u767D\u6587\u5B57\u3092\u542B\u3081\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093\u3002)\n + +doclet.enum_valueof_doc.param_name=\u8FD4\u3055\u308C\u308B\u5217\u6319\u578B\u5B9A\u6570\u306E\u540D\u524D\u3002 + +doclet.enum_valueof_doc.return=\u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u5217\u6319\u578B\u5B9A\u6570 + +doclet.enum_valueof_doc.throws_ila=\u3053\u306E\u5217\u6319\u578B\u306B\u3001\u6307\u5B9A\u3057\u305F\u540D\u524D\u306E\u5B9A\u6570\u304C\u306A\u3044\u5834\u5408 From andrew at icedtea.classpath.org Tue Jul 15 23:23:22 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:23:22 +0000 Subject: /hg/release/icedtea7-forest-2.5/hotspot: 70 new changesets Message-ID: changeset c3b61b975954 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=c3b61b975954 author: asaha date: Tue Feb 11 12:33:19 2014 -0800 Added tag jdk7u65-b00 for changeset b86119fa2748 changeset 902c60412b69 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=902c60412b69 author: asaha date: Tue Feb 11 15:07:58 2014 -0800 Merge changeset 926c5c98bb26 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=926c5c98bb26 author: asaha date: Tue Feb 11 17:06:29 2014 -0800 Merge changeset 1e71efaaaa5b in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=1e71efaaaa5b author: asaha date: Wed Feb 12 16:22:48 2014 -0800 Merge changeset bfcfcf77f411 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=bfcfcf77f411 author: hseigel date: Fri Feb 14 12:07:27 2014 -0500 8030763: Validate global memory allocation Summary: Add length checks where necessary Reviewed-by: coleenp, mschoene changeset 207008854ba0 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=207008854ba0 author: asaha date: Tue Feb 18 14:08:49 2014 -0800 Merge changeset 96d38216303f in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=96d38216303f author: hseigel date: Thu Feb 20 13:51:45 2014 -0500 8034926: Attribute classes properly Summary: Add check to prevent underflow Reviewed-by: coleenp, ahgross changeset 77d04d419019 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=77d04d419019 author: asaha date: Thu Feb 20 08:56:21 2014 -0800 Merge changeset a133b4873886 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=a133b4873886 author: asaha date: Thu Feb 20 15:09:32 2014 -0800 Merge changeset 75a5b21398a3 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=75a5b21398a3 author: asaha date: Tue Feb 25 23:18:36 2014 -0800 Merge changeset 4a9635c98a91 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=4a9635c98a91 author: asaha date: Wed Feb 26 21:38:35 2014 -0800 8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 Reviewed-by: jcoomes changeset 2407065fc820 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=2407065fc820 author: katleman date: Thu Feb 27 11:58:31 2014 -0800 Added tag jdk7u65-b01 for changeset 4a9635c98a91 changeset bbe9be4ea0d4 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=bbe9be4ea0d4 author: asaha date: Thu Feb 27 13:00:19 2014 -0800 Merge changeset 6670d25b0255 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=6670d25b0255 author: hseigel date: Tue Mar 04 15:58:08 2014 -0500 8032536: JVM resolves wrong method in some unusual cases Summary: Handle package private case Reviewed-by: coleenp, acorn, jdn changeset 6e5d97fc1fcd in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=6e5d97fc1fcd author: asaha date: Tue Mar 04 17:46:54 2014 -0800 Merge changeset eb797fab50d3 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=eb797fab50d3 author: asaha date: Wed Mar 05 13:36:11 2014 -0800 Merge changeset 1d15e13e99a9 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=1d15e13e99a9 author: katleman date: Wed Mar 05 16:28:02 2014 -0800 Added tag jdk7u65-b02 for changeset eb797fab50d3 changeset af178153a503 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=af178153a503 author: asaha date: Tue Mar 11 14:50:14 2014 -0700 Merge changeset 4c7632e49838 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=4c7632e49838 author: asaha date: Tue Mar 11 15:15:49 2014 -0700 Merge changeset bb00df28ecdb in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=bb00df28ecdb author: asaha date: Wed Mar 12 14:55:11 2014 -0700 Merge changeset 59a0be024ffb in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=59a0be024ffb author: katleman date: Thu Mar 13 13:16:48 2014 -0700 Added tag jdk7u65-b03 for changeset bb00df28ecdb changeset f9dfc73ddf90 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=f9dfc73ddf90 author: asaha date: Tue Mar 18 13:08:04 2014 -0700 Merge changeset c650f71b9c67 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=c650f71b9c67 author: hseigel date: Wed Mar 19 14:18:19 2014 -0400 8036800: Attribute OOM to correct part of code Summary: checks that the attribute_length does not exceed the length of remaining data in the class file Reviewed-by: coleenp, ahgross changeset 458f18560343 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=458f18560343 author: hseigel date: Wed Mar 19 18:04:09 2014 -0400 8035119: Fix exceptions to bytecode verification Summary: Prevent ctor calls to super() and this() from avoidable code (try blocks, if stmts, etc.) Reviewed-by: coleenp, acorn, mschoene changeset 848481af9003 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=848481af9003 author: hseigel date: Thu Mar 20 08:46:41 2014 -0400 8034985: Better form for Lambda Forms Summary: Only allow classes loaded by boot or extensions class loaders, or anonymous classes, to access privileged annotations. Reviewed-by: coleenp, ahgross, twisti changeset dd49b20b15f4 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=dd49b20b15f4 author: katleman date: Thu Mar 20 13:04:48 2014 -0700 Added tag jdk7u65-b04 for changeset 848481af9003 changeset 98a884fa64a9 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=98a884fa64a9 author: asaha date: Thu Mar 20 14:57:48 2014 -0700 Merge changeset 523355010e35 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=523355010e35 author: katleman date: Tue Mar 25 11:18:54 2014 -0700 Added tag jdk7u65-b05 for changeset 98a884fa64a9 changeset 6f1dddf9c632 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=6f1dddf9c632 author: asaha date: Thu Mar 27 12:18:11 2014 -0700 Merge changeset d625fa9e59bb in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=d625fa9e59bb author: katleman date: Tue Apr 01 12:01:39 2014 -0700 Added tag jdk7u65-b06 for changeset 6f1dddf9c632 changeset ed0d828486a4 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=ed0d828486a4 author: asaha date: Thu Apr 03 11:19:47 2014 -0700 Merge changeset 02f12a9d5aec in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=02f12a9d5aec author: coleenp date: Fri Apr 04 13:37:56 2014 -0500 8037076: Check constant pool constants Summary: Fix events log string. Reviewed-by: kvn, mschoene Contributed-by: paul.nauman at oracle.com changeset a053d3d80535 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=a053d3d80535 author: asaha date: Fri Apr 04 16:17:30 2014 -0700 8039324: Increment hsx 24.65 build to b02 for 7u65-b07 Reviewed-by: jcoomes changeset 7df501a095c5 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=7df501a095c5 author: katleman date: Tue Apr 08 11:34:21 2014 -0700 Added tag jdk7u65-b07 for changeset a053d3d80535 changeset 63574c639b1d in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=63574c639b1d author: asaha date: Wed Apr 09 14:07:17 2014 -0700 Merge changeset f30a8a82c54f in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=f30a8a82c54f author: asaha date: Mon Apr 14 08:43:38 2014 -0700 8040156: Increment hsx 24.65 build to b03 for 7u65-b08 Reviewed-by: jcoomes changeset f0f39dbf68aa in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=f0f39dbf68aa author: hseigel date: Mon Apr 07 09:22:54 2014 -0400 8037157: Verify call Summary: Check for null method Reviewed-by: coleenp, acorn, mschoene changeset 6f03dfb50363 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=6f03dfb50363 author: asaha date: Mon Apr 14 08:45:59 2014 -0700 Merge changeset 4ceb9c03fe8e in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=4ceb9c03fe8e author: katleman date: Tue Apr 15 23:00:35 2014 -0700 Added tag jdk7u65-b08 for changeset 6f03dfb50363 changeset f5cb7599f587 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=f5cb7599f587 author: asaha date: Mon Apr 14 16:33:56 2014 -0700 Merge changeset 76c718fca65d in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=76c718fca65d author: asaha date: Tue Apr 15 12:13:51 2014 -0700 Merge changeset 5047927a9b8d in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=5047927a9b8d author: asaha date: Wed Apr 16 10:09:07 2014 -0700 Merge changeset a78d104b5d82 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=a78d104b5d82 author: asaha date: Wed Apr 16 13:35:41 2014 -0700 Merge changeset 98e65cb0c384 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=98e65cb0c384 author: asaha date: Fri Apr 18 22:04:33 2014 -0700 8041264: Increment hsx 24.65 build to b04 for 7u65-b09 Reviewed-by: jcoomes changeset 16b9b3c08181 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=16b9b3c08181 author: acorn date: Tue Apr 15 15:10:07 2014 -0500 8037167: Better method signature resolution Reviewed-by: mschoene, hseigel, lfoltan Contributed-by: paul.nauman at oracle.com changeset 2d77f0f9338a in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=2d77f0f9338a author: asaha date: Fri Apr 18 22:11:23 2014 -0700 Merge changeset 0901a8cf66a0 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=0901a8cf66a0 author: katleman date: Mon Apr 07 12:17:30 2014 -0700 Added tag jdk7u55-b32 for changeset ba9270b8fb1f changeset af947b2746da in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=af947b2746da author: katleman date: Tue Apr 08 11:15:34 2014 -0700 Added tag jdk7u55-b33 for changeset 0901a8cf66a0 changeset b4930eb1ea76 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=b4930eb1ea76 author: asaha date: Mon Apr 21 09:59:51 2014 -0700 Merge changeset c40bb388ca82 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=c40bb388ca82 author: katleman date: Tue Apr 22 11:46:59 2014 -0700 Added tag jdk7u65-b09 for changeset b4930eb1ea76 changeset 4736382ac9d9 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=4736382ac9d9 author: asaha date: Thu Apr 24 12:01:36 2014 -0700 Merge changeset 7349b5e998e3 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=7349b5e998e3 author: katleman date: Tue Apr 29 12:35:37 2014 -0700 Added tag jdk7u65-b10 for changeset 4736382ac9d9 changeset 2e9f7efdd172 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=2e9f7efdd172 author: asaha date: Tue Apr 29 13:56:29 2014 -0700 Merge changeset 7345c7bf20fd in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=7345c7bf20fd author: asaha date: Thu May 01 09:05:00 2014 -0700 Merge changeset 14df0698f407 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=14df0698f407 author: katleman date: Tue May 06 10:02:38 2014 -0700 Added tag jdk7u65-b11 for changeset 7345c7bf20fd changeset 28b81694b89f in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=28b81694b89f author: asaha date: Thu May 08 11:16:55 2014 -0700 Merge changeset f4ed018b4c51 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=f4ed018b4c51 author: katleman date: Tue May 13 08:13:24 2014 -0700 Added tag jdk7u65-b12 for changeset 28b81694b89f changeset 7ec585caae47 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=7ec585caae47 author: katleman date: Tue May 20 12:36:51 2014 -0700 Added tag jdk7u65-b13 for changeset f4ed018b4c51 changeset 7058f0d30de6 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=7058f0d30de6 author: katleman date: Wed May 28 02:33:59 2014 -0700 Added tag jdk7u65-b14 for changeset 7ec585caae47 changeset f1b2970a2564 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=f1b2970a2564 author: katleman date: Tue Jun 03 13:52:52 2014 -0700 Added tag jdk7u65-b15 for changeset 7058f0d30de6 changeset 4c6df9a369cb in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=4c6df9a369cb author: katleman date: Fri Jun 13 11:56:38 2014 -0700 Added tag jdk7u65-b16 for changeset f1b2970a2564 changeset aca05127f95b in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=aca05127f95b author: katleman date: Tue Jun 17 13:02:52 2014 -0700 Added tag jdk7u65-b17 for changeset 4c6df9a369cb changeset f113205ab5a9 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=f113205ab5a9 author: asaha date: Wed Jun 25 08:29:30 2014 -0700 Added tag jdk7u65-b30 for changeset aca05127f95b changeset 589326588e57 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=589326588e57 author: asaha date: Wed Jul 02 09:38:21 2014 -0700 Added tag jdk7u55-b15 for changeset 4e73c6403b44 changeset d006213be747 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=d006213be747 author: asaha date: Wed Jul 02 09:48:59 2014 -0700 Merge changeset 1d8226b3e989 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=1d8226b3e989 author: asaha date: Wed Jul 02 10:07:55 2014 -0700 Added tag jdk7u65-b18 for changeset d006213be747 changeset c43b0b843f89 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=c43b0b843f89 author: asaha date: Wed Jul 09 15:01:52 2014 -0700 Added tag jdk7u65-b19 for changeset 1d8226b3e989 changeset 278444ea0eb5 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=278444ea0eb5 author: andrew date: Tue Jul 15 22:47:39 2014 +0100 Merge jdk7u65-b32 changeset 02066294d005 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=02066294d005 author: andrew date: Tue Jul 15 22:55:15 2014 +0100 PR1868: Avoid x86 workaround when running Zero rather than a JIT Contributed-by: Matthias Klose changeset 32a780f7a690 in /hg/release/icedtea7-forest-2.5/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=32a780f7a690 author: andrew date: Wed Jul 16 00:20:26 2014 +0100 Added tag icedtea-2.5.1 for changeset 02066294d005 diffstat: .hgtags | 94 + .jcheck/conf | 2 - agent/src/os/linux/Makefile | 11 +- agent/src/os/linux/libproc.h | 31 +- agent/src/os/linux/ps_core.c | 70 +- agent/src/os/linux/ps_proc.c | 52 +- agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java | 10 +- agent/src/share/classes/sun/jvm/hotspot/jdi/JVMTIThreadState.java | 5 +- agent/src/share/classes/sun/jvm/hotspot/runtime/OSThread.java | 6 +- make/Makefile | 37 + make/aix/Makefile | 380 + make/aix/adlc_updater | 20 + make/aix/build.sh | 99 + make/aix/makefiles/adjust-mflags.sh | 87 + make/aix/makefiles/adlc.make | 234 + make/aix/makefiles/build_vm_def.sh | 18 + make/aix/makefiles/buildtree.make | 510 + make/aix/makefiles/compiler2.make | 32 + make/aix/makefiles/core.make | 33 + make/aix/makefiles/defs.make | 233 + make/aix/makefiles/dtrace.make | 27 + make/aix/makefiles/fastdebug.make | 73 + make/aix/makefiles/jsig.make | 95 + make/aix/makefiles/jvmg.make | 42 + make/aix/makefiles/jvmti.make | 118 + make/aix/makefiles/launcher.make | 97 + make/aix/makefiles/mapfile-vers-debug | 270 + make/aix/makefiles/mapfile-vers-jsig | 38 + make/aix/makefiles/mapfile-vers-product | 265 + make/aix/makefiles/ppc64.make | 108 + make/aix/makefiles/product.make | 59 + make/aix/makefiles/rules.make | 203 + make/aix/makefiles/sa.make | 116 + make/aix/makefiles/saproc.make | 125 + make/aix/makefiles/top.make | 144 + make/aix/makefiles/trace.make | 121 + make/aix/makefiles/vm.make | 384 + make/aix/makefiles/xlc.make | 180 + make/aix/platform_ppc64 | 17 + make/bsd/makefiles/arm.make | 6 +- make/bsd/makefiles/buildtree.make | 4 +- make/bsd/makefiles/gcc.make | 5 +- make/bsd/makefiles/vm.make | 10 +- make/defs.make | 25 +- make/hotspot_version | 8 +- make/linux/Makefile | 6 +- make/linux/makefiles/adlc.make | 2 + make/linux/makefiles/arm.make | 6 +- make/linux/makefiles/buildtree.make | 29 +- make/linux/makefiles/defs.make | 74 +- make/linux/makefiles/gcc.make | 43 +- make/linux/makefiles/jsig.make | 6 +- make/linux/makefiles/ppc64.make | 76 + make/linux/makefiles/rules.make | 15 +- make/linux/makefiles/saproc.make | 6 +- make/linux/makefiles/vm.make | 70 +- make/linux/makefiles/zero.make | 4 + make/linux/makefiles/zeroshark.make | 37 + make/linux/platform_ppc | 6 +- make/linux/platform_ppc64 | 17 + 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/ppc/vm/assembler_ppc.cpp | 700 + src/cpu/ppc/vm/assembler_ppc.hpp | 1990 + src/cpu/ppc/vm/assembler_ppc.inline.hpp | 830 + src/cpu/ppc/vm/bytecodeInterpreter_ppc.hpp | 105 + src/cpu/ppc/vm/bytecodeInterpreter_ppc.inline.hpp | 290 + src/cpu/ppc/vm/bytecodes_ppc.cpp | 31 + src/cpu/ppc/vm/bytecodes_ppc.hpp | 31 + src/cpu/ppc/vm/bytes_ppc.hpp | 281 + src/cpu/ppc/vm/c2_globals_ppc.hpp | 95 + src/cpu/ppc/vm/c2_init_ppc.cpp | 48 + src/cpu/ppc/vm/codeBuffer_ppc.hpp | 35 + src/cpu/ppc/vm/compile_ppc.cpp | 91 + src/cpu/ppc/vm/compile_ppc.hpp | 42 + src/cpu/ppc/vm/copy_ppc.hpp | 171 + src/cpu/ppc/vm/cppInterpreterGenerator_ppc.hpp | 43 + src/cpu/ppc/vm/cppInterpreter_ppc.cpp | 3038 ++ src/cpu/ppc/vm/cppInterpreter_ppc.hpp | 39 + src/cpu/ppc/vm/debug_ppc.cpp | 35 + src/cpu/ppc/vm/depChecker_ppc.hpp | 31 + src/cpu/ppc/vm/disassembler_ppc.hpp | 37 + src/cpu/ppc/vm/dump_ppc.cpp | 62 + src/cpu/ppc/vm/frame_ppc.cpp | 320 + src/cpu/ppc/vm/frame_ppc.hpp | 534 + src/cpu/ppc/vm/frame_ppc.inline.hpp | 303 + src/cpu/ppc/vm/globalDefinitions_ppc.hpp | 40 + src/cpu/ppc/vm/globals_ppc.hpp | 130 + src/cpu/ppc/vm/icBuffer_ppc.cpp | 71 + src/cpu/ppc/vm/icache_ppc.cpp | 77 + src/cpu/ppc/vm/icache_ppc.hpp | 52 + src/cpu/ppc/vm/interp_masm_ppc_64.cpp | 2210 + src/cpu/ppc/vm/interp_masm_ppc_64.hpp | 301 + src/cpu/ppc/vm/interpreterGenerator_ppc.hpp | 37 + src/cpu/ppc/vm/interpreterRT_ppc.cpp | 155 + src/cpu/ppc/vm/interpreterRT_ppc.hpp | 62 + src/cpu/ppc/vm/interpreter_ppc.cpp | 802 + src/cpu/ppc/vm/interpreter_ppc.hpp | 50 + src/cpu/ppc/vm/javaFrameAnchor_ppc.hpp | 78 + src/cpu/ppc/vm/jniFastGetField_ppc.cpp | 75 + src/cpu/ppc/vm/jniTypes_ppc.hpp | 110 + src/cpu/ppc/vm/jni_ppc.h | 55 + src/cpu/ppc/vm/macroAssembler_ppc.cpp | 3061 ++ src/cpu/ppc/vm/macroAssembler_ppc.hpp | 705 + src/cpu/ppc/vm/macroAssembler_ppc.inline.hpp | 422 + src/cpu/ppc/vm/methodHandles_ppc.cpp | 558 + src/cpu/ppc/vm/methodHandles_ppc.hpp | 64 + src/cpu/ppc/vm/nativeInst_ppc.cpp | 378 + src/cpu/ppc/vm/nativeInst_ppc.hpp | 395 + src/cpu/ppc/vm/ppc.ad | 12870 ++++++++++ src/cpu/ppc/vm/ppc_64.ad | 24 + src/cpu/ppc/vm/registerMap_ppc.hpp | 45 + src/cpu/ppc/vm/register_definitions_ppc.cpp | 42 + src/cpu/ppc/vm/register_ppc.cpp | 77 + src/cpu/ppc/vm/register_ppc.hpp | 662 + src/cpu/ppc/vm/relocInfo_ppc.cpp | 139 + src/cpu/ppc/vm/relocInfo_ppc.hpp | 46 + src/cpu/ppc/vm/runtime_ppc.cpp | 191 + src/cpu/ppc/vm/sharedRuntime_ppc.cpp | 3263 ++ src/cpu/ppc/vm/stubGenerator_ppc.cpp | 2119 + src/cpu/ppc/vm/stubRoutines_ppc_64.cpp | 29 + src/cpu/ppc/vm/stubRoutines_ppc_64.hpp | 40 + src/cpu/ppc/vm/templateInterpreterGenerator_ppc.hpp | 44 + src/cpu/ppc/vm/templateInterpreter_ppc.cpp | 1854 + src/cpu/ppc/vm/templateInterpreter_ppc.hpp | 41 + src/cpu/ppc/vm/templateTable_ppc_64.cpp | 4261 +++ src/cpu/ppc/vm/templateTable_ppc_64.hpp | 38 + src/cpu/ppc/vm/vmStructs_ppc.hpp | 41 + src/cpu/ppc/vm/vm_version_ppc.cpp | 487 + src/cpu/ppc/vm/vm_version_ppc.hpp | 96 + src/cpu/ppc/vm/vmreg_ppc.cpp | 51 + src/cpu/ppc/vm/vmreg_ppc.hpp | 35 + src/cpu/ppc/vm/vmreg_ppc.inline.hpp | 71 + src/cpu/ppc/vm/vtableStubs_ppc_64.cpp | 269 + src/cpu/sparc/vm/assembler_sparc.cpp | 8 +- src/cpu/sparc/vm/c1_Runtime1_sparc.cpp | 11 +- src/cpu/sparc/vm/compile_sparc.hpp | 39 + src/cpu/sparc/vm/frame_sparc.inline.hpp | 4 + src/cpu/sparc/vm/globals_sparc.hpp | 5 + src/cpu/sparc/vm/methodHandles_sparc.hpp | 6 +- src/cpu/sparc/vm/sharedRuntime_sparc.cpp | 10 +- src/cpu/sparc/vm/sparc.ad | 47 +- src/cpu/sparc/vm/templateInterpreter_sparc.cpp | 21 +- src/cpu/x86/vm/assembler_x86.cpp | 9 +- src/cpu/x86/vm/c1_LIRAssembler_x86.cpp | 16 +- src/cpu/x86/vm/c1_LIRGenerator_x86.cpp | 11 +- src/cpu/x86/vm/c1_Runtime1_x86.cpp | 11 +- src/cpu/x86/vm/c2_globals_x86.hpp | 2 +- src/cpu/x86/vm/compile_x86.hpp | 39 + src/cpu/x86/vm/frame_x86.cpp | 11 +- src/cpu/x86/vm/frame_x86.inline.hpp | 4 + src/cpu/x86/vm/globals_x86.hpp | 9 +- src/cpu/x86/vm/methodHandles_x86.hpp | 6 +- src/cpu/x86/vm/sharedRuntime_x86_32.cpp | 11 +- src/cpu/x86/vm/sharedRuntime_x86_64.cpp | 11 +- src/cpu/x86/vm/templateInterpreter_x86_32.cpp | 23 +- src/cpu/x86/vm/templateInterpreter_x86_64.cpp | 23 +- src/cpu/x86/vm/x86_32.ad | 31 +- src/cpu/x86/vm/x86_64.ad | 31 +- src/cpu/zero/vm/arm_cas.S | 31 + src/cpu/zero/vm/asm_helper.cpp | 745 + src/cpu/zero/vm/bytecodes_arm.def | 7850 ++++++ src/cpu/zero/vm/bytecodes_zero.cpp | 52 +- src/cpu/zero/vm/bytecodes_zero.hpp | 41 +- src/cpu/zero/vm/compile_zero.hpp | 40 + src/cpu/zero/vm/cppInterpreter_arm.S | 7384 +++++ src/cpu/zero/vm/cppInterpreter_zero.cpp | 51 +- src/cpu/zero/vm/cppInterpreter_zero.hpp | 2 + src/cpu/zero/vm/entryFrame_zero.hpp | 6 +- src/cpu/zero/vm/frame_zero.inline.hpp | 4 +- src/cpu/zero/vm/globals_zero.hpp | 9 +- src/cpu/zero/vm/methodHandles_zero.hpp | 12 +- src/cpu/zero/vm/sharedRuntime_zero.cpp | 10 +- src/cpu/zero/vm/shark_globals_zero.hpp | 1 - src/cpu/zero/vm/thumb2.cpp | 7985 ++++++ src/cpu/zero/vm/vm_version_zero.hpp | 11 + src/os/aix/vm/attachListener_aix.cpp | 574 + src/os/aix/vm/c2_globals_aix.hpp | 37 + src/os/aix/vm/chaitin_aix.cpp | 38 + src/os/aix/vm/decoder_aix.hpp | 48 + src/os/aix/vm/globals_aix.hpp | 63 + src/os/aix/vm/interfaceSupport_aix.hpp | 35 + src/os/aix/vm/jsig.c | 233 + src/os/aix/vm/jvm_aix.cpp | 201 + src/os/aix/vm/jvm_aix.h | 123 + src/os/aix/vm/libperfstat_aix.cpp | 124 + src/os/aix/vm/libperfstat_aix.hpp | 59 + src/os/aix/vm/loadlib_aix.cpp | 185 + src/os/aix/vm/loadlib_aix.hpp | 128 + src/os/aix/vm/mutex_aix.inline.hpp | 37 + src/os/aix/vm/osThread_aix.cpp | 58 + src/os/aix/vm/osThread_aix.hpp | 144 + src/os/aix/vm/os_aix.cpp | 5131 +++ src/os/aix/vm/os_aix.hpp | 381 + src/os/aix/vm/os_aix.inline.hpp | 294 + src/os/aix/vm/os_share_aix.hpp | 37 + src/os/aix/vm/perfMemory_aix.cpp | 1026 + src/os/aix/vm/porting_aix.cpp | 369 + src/os/aix/vm/porting_aix.hpp | 81 + src/os/aix/vm/threadCritical_aix.cpp | 68 + src/os/aix/vm/thread_aix.inline.hpp | 42 + src/os/aix/vm/vmError_aix.cpp | 122 + src/os/bsd/vm/attachListener_bsd.cpp | 4 +- src/os/bsd/vm/os_bsd.cpp | 24 +- src/os/linux/vm/decoder_linux.cpp | 6 + src/os/linux/vm/globals_linux.hpp | 5 +- src/os/linux/vm/jsig.c | 10 +- src/os/linux/vm/os_linux.cpp | 1059 +- src/os/linux/vm/os_linux.hpp | 43 +- src/os/posix/launcher/java_md.c | 13 +- src/os/posix/vm/os_posix.cpp | 504 +- src/os/posix/vm/os_posix.hpp | 28 +- src/os/solaris/vm/os_solaris.cpp | 20 +- src/os/solaris/vm/os_solaris.hpp | 3 + src/os/windows/vm/os_windows.cpp | 184 +- src/os/windows/vm/os_windows.hpp | 3 + src/os_cpu/aix_ppc/vm/aix_ppc_64.ad | 24 + src/os_cpu/aix_ppc/vm/atomic_aix_ppc.inline.hpp | 401 + src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp | 54 + src/os_cpu/aix_ppc/vm/orderAccess_aix_ppc.inline.hpp | 151 + src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp | 567 + src/os_cpu/aix_ppc/vm/os_aix_ppc.hpp | 35 + src/os_cpu/aix_ppc/vm/prefetch_aix_ppc.inline.hpp | 58 + src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.cpp | 40 + src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.hpp | 36 + src/os_cpu/aix_ppc/vm/thread_aix_ppc.cpp | 36 + src/os_cpu/aix_ppc/vm/thread_aix_ppc.hpp | 79 + src/os_cpu/aix_ppc/vm/vmStructs_aix_ppc.hpp | 66 + src/os_cpu/bsd_zero/vm/os_bsd_zero.hpp | 2 +- src/os_cpu/linux_ppc/vm/atomic_linux_ppc.inline.hpp | 401 + src/os_cpu/linux_ppc/vm/bytes_linux_ppc.inline.hpp | 39 + src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp | 54 + src/os_cpu/linux_ppc/vm/linux_ppc_64.ad | 24 + src/os_cpu/linux_ppc/vm/orderAccess_linux_ppc.inline.hpp | 149 + src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp | 620 + src/os_cpu/linux_ppc/vm/os_linux_ppc.hpp | 35 + src/os_cpu/linux_ppc/vm/prefetch_linux_ppc.inline.hpp | 50 + src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.cpp | 40 + src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.hpp | 36 + src/os_cpu/linux_ppc/vm/thread_linux_ppc.cpp | 36 + src/os_cpu/linux_ppc/vm/thread_linux_ppc.hpp | 83 + src/os_cpu/linux_ppc/vm/vmStructs_linux_ppc.hpp | 66 + src/os_cpu/linux_sparc/vm/assembler_linux_sparc.cpp | 11 +- src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp | 31 +- src/os_cpu/linux_x86/vm/os_linux_x86.cpp | 43 + src/os_cpu/linux_x86/vm/os_linux_x86.hpp | 13 + src/os_cpu/linux_zero/vm/atomic_linux_zero.inline.hpp | 14 + src/os_cpu/linux_zero/vm/globals_linux_zero.hpp | 8 +- src/os_cpu/linux_zero/vm/os_linux_zero.cpp | 47 +- src/os_cpu/linux_zero/vm/os_linux_zero.hpp | 8 +- src/share/tools/hsdis/Makefile | 11 +- src/share/tools/hsdis/hsdis-demo.c | 9 +- src/share/tools/hsdis/hsdis.c | 8 + src/share/vm/adlc/adlparse.cpp | 188 +- src/share/vm/adlc/adlparse.hpp | 4 +- src/share/vm/adlc/archDesc.hpp | 2 + src/share/vm/adlc/formssel.cpp | 89 +- src/share/vm/adlc/formssel.hpp | 3 + src/share/vm/adlc/main.cpp | 7 + src/share/vm/adlc/output_c.cpp | 187 +- src/share/vm/adlc/output_h.cpp | 41 +- src/share/vm/asm/assembler.cpp | 33 +- src/share/vm/asm/assembler.hpp | 22 +- src/share/vm/asm/codeBuffer.cpp | 15 +- src/share/vm/asm/codeBuffer.hpp | 6 +- src/share/vm/c1/c1_FrameMap.cpp | 2 +- src/share/vm/c1/c1_GraphBuilder.cpp | 4 +- src/share/vm/c1/c1_LIR.hpp | 2 +- src/share/vm/c1/c1_LinearScan.cpp | 6 +- src/share/vm/c1/c1_Runtime1.cpp | 26 +- src/share/vm/c1/c1_globals.hpp | 3 + src/share/vm/ci/ciTypeFlow.cpp | 2 +- src/share/vm/classfile/classFileParser.cpp | 71 +- src/share/vm/classfile/classFileParser.hpp | 24 +- src/share/vm/classfile/classLoader.cpp | 3 + src/share/vm/classfile/javaClasses.cpp | 33 +- src/share/vm/classfile/javaClasses.hpp | 29 +- src/share/vm/classfile/stackMapTable.cpp | 3 +- src/share/vm/classfile/symbolTable.cpp | 133 +- src/share/vm/classfile/symbolTable.hpp | 41 +- src/share/vm/classfile/systemDictionary.cpp | 32 +- src/share/vm/classfile/systemDictionary.hpp | 9 +- src/share/vm/classfile/verifier.cpp | 33 +- src/share/vm/classfile/verifier.hpp | 19 +- src/share/vm/classfile/vmSymbols.hpp | 4 +- src/share/vm/code/compiledIC.cpp | 11 +- src/share/vm/code/compiledIC.hpp | 4 + src/share/vm/code/nmethod.cpp | 44 +- src/share/vm/code/nmethod.hpp | 4 +- src/share/vm/code/relocInfo.cpp | 37 + src/share/vm/code/relocInfo.hpp | 46 +- src/share/vm/code/stubs.hpp | 3 + src/share/vm/code/vmreg.hpp | 15 +- src/share/vm/compiler/compileBroker.cpp | 3 +- src/share/vm/compiler/disassembler.hpp | 3 + src/share/vm/compiler/methodLiveness.cpp | 12 +- src/share/vm/compiler/oopMap.cpp | 7 + src/share/vm/gc_implementation/concurrentMarkSweep/cmsAdaptiveSizePolicy.cpp | 3 + src/share/vm/gc_implementation/concurrentMarkSweep/cmsCollectorPolicy.cpp | 3 + src/share/vm/gc_implementation/concurrentMarkSweep/cmsOopClosures.hpp | 18 +- src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp | 28 +- src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp | 316 +- src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.hpp | 12 +- src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp | 3 + src/share/vm/gc_implementation/concurrentMarkSweep/vmCMSOperations.cpp | 10 +- src/share/vm/gc_implementation/g1/concurrentG1Refine.cpp | 12 + src/share/vm/gc_implementation/g1/concurrentG1Refine.hpp | 9 +- src/share/vm/gc_implementation/g1/concurrentMark.cpp | 98 +- src/share/vm/gc_implementation/g1/concurrentMark.hpp | 6 + src/share/vm/gc_implementation/g1/concurrentMark.inline.hpp | 2 +- src/share/vm/gc_implementation/g1/dirtyCardQueue.cpp | 3 + src/share/vm/gc_implementation/g1/g1AllocRegion.hpp | 7 +- src/share/vm/gc_implementation/g1/g1CardCounts.cpp | 4 +- src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp | 786 +- src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp | 202 +- src/share/vm/gc_implementation/g1/g1CollectedHeap.inline.hpp | 3 +- src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp | 3 +- src/share/vm/gc_implementation/g1/g1EvacFailure.hpp | 4 +- src/share/vm/gc_implementation/g1/g1GCPhaseTimes.cpp | 20 + src/share/vm/gc_implementation/g1/g1GCPhaseTimes.hpp | 23 + src/share/vm/gc_implementation/g1/g1MarkSweep.cpp | 32 +- src/share/vm/gc_implementation/g1/g1OopClosures.inline.hpp | 1 + src/share/vm/gc_implementation/g1/g1RemSet.cpp | 168 +- src/share/vm/gc_implementation/g1/g1RemSet.hpp | 47 +- src/share/vm/gc_implementation/g1/g1RemSetSummary.cpp | 354 + src/share/vm/gc_implementation/g1/g1RemSetSummary.hpp | 118 + src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp | 105 +- src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp | 48 +- src/share/vm/gc_implementation/g1/g1_globals.hpp | 12 +- src/share/vm/gc_implementation/g1/heapRegion.cpp | 452 +- src/share/vm/gc_implementation/g1/heapRegion.hpp | 23 +- src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp | 140 +- src/share/vm/gc_implementation/g1/heapRegionRemSet.hpp | 40 +- src/share/vm/gc_implementation/g1/ptrQueue.cpp | 3 + src/share/vm/gc_implementation/g1/ptrQueue.hpp | 4 + src/share/vm/gc_implementation/parNew/parNewGeneration.cpp | 19 +- src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp | 5 +- src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp | 35 +- src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.cpp | 48 + src/share/vm/gc_implementation/parallelScavenge/psAdaptiveSizePolicy.hpp | 7 +- src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp | 10 +- src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp | 32 +- src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp | 2 +- src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.inline.hpp | 1 + src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp | 55 +- src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp | 3 + src/share/vm/gc_implementation/shared/gcTimer.cpp | 75 +- src/share/vm/gc_implementation/shared/gcTimer.hpp | 60 +- src/share/vm/gc_implementation/shared/gcTrace.cpp | 24 +- src/share/vm/gc_implementation/shared/gcTrace.hpp | 54 +- src/share/vm/gc_implementation/shared/gcTraceSend.cpp | 2 + src/share/vm/gc_implementation/shared/gcTraceTime.cpp | 19 +- src/share/vm/gc_implementation/shared/gcTraceTime.hpp | 3 +- src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp | 3 + src/share/vm/gc_implementation/shared/objectCountEventSender.cpp | 6 +- src/share/vm/gc_implementation/shared/objectCountEventSender.hpp | 3 +- src/share/vm/gc_interface/collectedHeap.cpp | 11 + src/share/vm/gc_interface/collectedHeap.hpp | 6 + src/share/vm/gc_interface/collectedHeap.inline.hpp | 3 + src/share/vm/interpreter/abstractInterpreter.hpp | 10 +- src/share/vm/interpreter/bytecodeInterpreter.cpp | 965 +- src/share/vm/interpreter/bytecodeInterpreter.hpp | 25 +- src/share/vm/interpreter/bytecodeInterpreterProfiling.hpp | 305 + src/share/vm/interpreter/interpreterRuntime.cpp | 65 +- src/share/vm/interpreter/interpreterRuntime.hpp | 25 +- src/share/vm/interpreter/invocationCounter.hpp | 22 +- src/share/vm/interpreter/linkResolver.cpp | 3 + src/share/vm/interpreter/templateTable.hpp | 14 +- src/share/vm/libadt/port.hpp | 5 +- src/share/vm/memory/allocation.cpp | 3 + src/share/vm/memory/barrierSet.hpp | 4 +- src/share/vm/memory/barrierSet.inline.hpp | 6 +- src/share/vm/memory/cardTableModRefBS.cpp | 58 +- src/share/vm/memory/cardTableModRefBS.hpp | 35 +- src/share/vm/memory/collectorPolicy.cpp | 23 +- src/share/vm/memory/defNewGeneration.cpp | 33 +- src/share/vm/memory/gcLocker.hpp | 4 + src/share/vm/memory/genCollectedHeap.cpp | 55 +- src/share/vm/memory/genMarkSweep.cpp | 3 + src/share/vm/memory/generation.cpp | 20 +- src/share/vm/memory/generation.hpp | 1 + src/share/vm/memory/iterator.cpp | 2 +- src/share/vm/memory/modRefBarrierSet.hpp | 2 +- src/share/vm/memory/resourceArea.cpp | 3 + src/share/vm/memory/resourceArea.hpp | 3 + src/share/vm/memory/sharedHeap.cpp | 8 +- src/share/vm/memory/sharedHeap.hpp | 3 +- src/share/vm/memory/space.hpp | 3 + src/share/vm/memory/tenuredGeneration.cpp | 12 + src/share/vm/memory/threadLocalAllocBuffer.cpp | 5 +- src/share/vm/memory/universe.cpp | 32 +- src/share/vm/memory/universe.hpp | 12 +- src/share/vm/oops/constantPoolKlass.cpp | 3 + src/share/vm/oops/constantPoolOop.cpp | 241 +- src/share/vm/oops/constantPoolOop.hpp | 44 +- src/share/vm/oops/cpCacheOop.cpp | 4 +- src/share/vm/oops/cpCacheOop.hpp | 32 +- src/share/vm/oops/instanceKlass.cpp | 48 +- src/share/vm/oops/instanceKlass.hpp | 10 +- src/share/vm/oops/klassVtable.cpp | 27 +- src/share/vm/oops/markOop.cpp | 3 + src/share/vm/oops/methodDataOop.cpp | 6 + src/share/vm/oops/methodDataOop.hpp | 191 + src/share/vm/oops/methodOop.hpp | 5 +- src/share/vm/oops/objArrayKlass.inline.hpp | 4 +- src/share/vm/oops/oop.cpp | 3 + src/share/vm/oops/oop.inline.hpp | 16 +- src/share/vm/oops/oopsHierarchy.cpp | 3 + src/share/vm/oops/typeArrayOop.hpp | 3 + src/share/vm/opto/block.cpp | 359 +- src/share/vm/opto/block.hpp | 8 +- src/share/vm/opto/bytecodeInfo.cpp | 10 +- src/share/vm/opto/c2_globals.hpp | 15 +- src/share/vm/opto/c2compiler.cpp | 7 +- src/share/vm/opto/callGenerator.cpp | 2 +- src/share/vm/opto/callGenerator.hpp | 3 +- src/share/vm/opto/callnode.cpp | 4 +- src/share/vm/opto/chaitin.cpp | 8 +- src/share/vm/opto/coalesce.cpp | 37 +- src/share/vm/opto/compile.cpp | 120 +- src/share/vm/opto/compile.hpp | 53 +- src/share/vm/opto/doCall.cpp | 4 +- src/share/vm/opto/gcm.cpp | 8 +- src/share/vm/opto/generateOptoStub.cpp | 71 +- src/share/vm/opto/graphKit.cpp | 51 +- src/share/vm/opto/graphKit.hpp | 46 +- src/share/vm/opto/idealGraphPrinter.cpp | 4 +- src/share/vm/opto/idealKit.cpp | 8 +- src/share/vm/opto/idealKit.hpp | 3 +- src/share/vm/opto/lcm.cpp | 43 +- src/share/vm/opto/library_call.cpp | 56 +- src/share/vm/opto/locknode.hpp | 7 +- src/share/vm/opto/loopTransform.cpp | 31 +- src/share/vm/opto/machnode.cpp | 14 + src/share/vm/opto/machnode.hpp | 28 + src/share/vm/opto/macro.cpp | 2 +- src/share/vm/opto/matcher.cpp | 72 +- src/share/vm/opto/matcher.hpp | 5 + src/share/vm/opto/memnode.cpp | 66 +- src/share/vm/opto/memnode.hpp | 206 +- src/share/vm/opto/node.cpp | 10 +- src/share/vm/opto/node.hpp | 14 +- src/share/vm/opto/output.cpp | 42 +- src/share/vm/opto/output.hpp | 7 +- src/share/vm/opto/parse.hpp | 7 + src/share/vm/opto/parse1.cpp | 7 +- src/share/vm/opto/parse2.cpp | 4 +- src/share/vm/opto/parse3.cpp | 42 +- src/share/vm/opto/postaloc.cpp | 7 +- src/share/vm/opto/reg_split.cpp | 22 +- src/share/vm/opto/regalloc.cpp | 4 +- src/share/vm/opto/regmask.cpp | 7 +- src/share/vm/opto/regmask.hpp | 7 +- src/share/vm/opto/runtime.cpp | 30 +- src/share/vm/opto/type.cpp | 1 + src/share/vm/opto/type.hpp | 3 + src/share/vm/opto/vectornode.hpp | 2 +- src/share/vm/prims/forte.cpp | 8 +- src/share/vm/prims/jni.cpp | 14 +- src/share/vm/prims/jvm.cpp | 5 +- src/share/vm/prims/jvm.h | 3 + src/share/vm/prims/jvmtiClassFileReconstituter.cpp | 2 +- src/share/vm/prims/jvmtiEnv.cpp | 6 + src/share/vm/prims/jvmtiExport.cpp | 41 + src/share/vm/prims/jvmtiExport.hpp | 7 + src/share/vm/prims/jvmtiImpl.cpp | 3 + src/share/vm/prims/jvmtiManageCapabilities.cpp | 4 +- src/share/vm/prims/jvmtiRedefineClasses.cpp | 459 +- src/share/vm/prims/jvmtiRedefineClasses.hpp | 21 +- src/share/vm/prims/methodHandles.cpp | 201 +- src/share/vm/prims/methodHandles.hpp | 43 +- src/share/vm/prims/nativeLookup.cpp | 3 + src/share/vm/prims/unsafe.cpp | 4 +- src/share/vm/prims/whitebox.cpp | 10 + src/share/vm/runtime/arguments.cpp | 92 +- src/share/vm/runtime/arguments.hpp | 10 + src/share/vm/runtime/atomic.cpp | 6 + src/share/vm/runtime/biasedLocking.cpp | 6 +- src/share/vm/runtime/deoptimization.cpp | 7 +- src/share/vm/runtime/fprofiler.hpp | 3 + src/share/vm/runtime/frame.cpp | 26 +- src/share/vm/runtime/frame.hpp | 13 +- src/share/vm/runtime/frame.inline.hpp | 7 + src/share/vm/runtime/globals.hpp | 51 +- src/share/vm/runtime/handles.cpp | 4 + src/share/vm/runtime/handles.inline.hpp | 3 + src/share/vm/runtime/interfaceSupport.hpp | 6 + src/share/vm/runtime/java.cpp | 3 + src/share/vm/runtime/javaCalls.cpp | 3 + src/share/vm/runtime/javaCalls.hpp | 3 + src/share/vm/runtime/javaFrameAnchor.hpp | 3 + src/share/vm/runtime/jniHandles.cpp | 3 + src/share/vm/runtime/memprofiler.cpp | 3 + src/share/vm/runtime/mutex.cpp | 4 + src/share/vm/runtime/mutexLocker.cpp | 7 +- src/share/vm/runtime/mutexLocker.hpp | 6 +- src/share/vm/runtime/objectMonitor.cpp | 20 +- src/share/vm/runtime/os.cpp | 45 +- src/share/vm/runtime/os.hpp | 26 +- src/share/vm/runtime/osThread.hpp | 3 + src/share/vm/runtime/safepoint.cpp | 5 +- src/share/vm/runtime/sharedRuntime.cpp | 69 +- src/share/vm/runtime/sharedRuntime.hpp | 27 +- src/share/vm/runtime/sharedRuntimeTrans.cpp | 4 + src/share/vm/runtime/sharedRuntimeTrig.cpp | 7 + src/share/vm/runtime/stubRoutines.cpp | 9 + src/share/vm/runtime/stubRoutines.hpp | 65 +- src/share/vm/runtime/sweeper.cpp | 37 +- src/share/vm/runtime/sweeper.hpp | 26 +- src/share/vm/runtime/synchronizer.cpp | 17 +- src/share/vm/runtime/task.cpp | 4 + src/share/vm/runtime/thread.cpp | 21 +- src/share/vm/runtime/thread.hpp | 32 +- src/share/vm/runtime/threadLocalStorage.cpp | 4 + src/share/vm/runtime/threadLocalStorage.hpp | 3 + src/share/vm/runtime/timer.cpp | 3 + src/share/vm/runtime/virtualspace.cpp | 208 +- src/share/vm/runtime/virtualspace.hpp | 1 + src/share/vm/runtime/vmStructs.cpp | 13 +- src/share/vm/runtime/vmThread.cpp | 5 +- src/share/vm/runtime/vmThread.hpp | 3 + src/share/vm/runtime/vm_operations.cpp | 6 +- src/share/vm/runtime/vm_operations.hpp | 4 +- src/share/vm/runtime/vm_version.cpp | 9 +- src/share/vm/services/attachListener.cpp | 38 +- src/share/vm/services/management.cpp | 23 +- src/share/vm/services/memTracker.hpp | 7 + src/share/vm/shark/sharkCompiler.cpp | 6 +- src/share/vm/shark/shark_globals.hpp | 10 + src/share/vm/trace/noTraceBackend.hpp | 6 +- src/share/vm/trace/trace.dtd | 3 - src/share/vm/trace/trace.xml | 4 +- src/share/vm/trace/traceBackend.hpp | 9 +- src/share/vm/trace/traceEvent.hpp | 29 +- src/share/vm/trace/traceEventClasses.xsl | 32 +- src/share/vm/trace/traceEventIds.xsl | 4 +- src/share/vm/trace/traceMacros.hpp | 2 +- src/share/vm/trace/traceTime.hpp | 5 +- src/share/vm/trace/traceTypes.xsl | 12 +- src/share/vm/trace/tracetypes.xml | 10 +- src/share/vm/trace/tracing.hpp | 2 +- src/share/vm/utilities/accessFlags.cpp | 3 + src/share/vm/utilities/array.cpp | 3 + src/share/vm/utilities/bitMap.cpp | 3 + src/share/vm/utilities/bitMap.hpp | 2 +- src/share/vm/utilities/bitMap.inline.hpp | 20 +- src/share/vm/utilities/debug.cpp | 4 + src/share/vm/utilities/debug.hpp | 2 +- src/share/vm/utilities/decoder.cpp | 4 + src/share/vm/utilities/decoder_elf.cpp | 2 +- src/share/vm/utilities/decoder_elf.hpp | 4 +- src/share/vm/utilities/elfFile.cpp | 55 +- src/share/vm/utilities/elfFile.hpp | 8 +- src/share/vm/utilities/elfFuncDescTable.cpp | 104 + src/share/vm/utilities/elfFuncDescTable.hpp | 149 + src/share/vm/utilities/elfStringTable.cpp | 4 +- src/share/vm/utilities/elfStringTable.hpp | 2 +- src/share/vm/utilities/elfSymbolTable.cpp | 38 +- src/share/vm/utilities/elfSymbolTable.hpp | 6 +- src/share/vm/utilities/events.cpp | 9 +- src/share/vm/utilities/exceptions.cpp | 3 + src/share/vm/utilities/globalDefinitions.hpp | 22 + src/share/vm/utilities/globalDefinitions_xlc.hpp | 202 + src/share/vm/utilities/growableArray.cpp | 3 + src/share/vm/utilities/growableArray.hpp | 8 + src/share/vm/utilities/histogram.hpp | 3 + src/share/vm/utilities/macros.hpp | 44 +- src/share/vm/utilities/ostream.cpp | 7 +- src/share/vm/utilities/preserveException.hpp | 3 + src/share/vm/utilities/taskqueue.cpp | 3 + src/share/vm/utilities/taskqueue.hpp | 114 +- src/share/vm/utilities/ticks.cpp | 68 + src/share/vm/utilities/ticks.hpp | 111 + src/share/vm/utilities/ticks.inline.hpp | 97 + src/share/vm/utilities/vmError.cpp | 45 +- src/share/vm/utilities/vmError.hpp | 8 + src/share/vm/utilities/workgroup.hpp | 3 + test/compiler/8004051/Test8004051.java | 56 + test/compiler/codegen/LoadWithMask.java | 44 + test/compiler/codegen/LoadWithMask2.java | 55 + test/compiler/gcbarriers/G1CrashTest.java | 84 + test/compiler/print/PrintInlining.java | 36 + test/compiler/reflection/ArrayNewInstanceOfVoid.java | 44 + test/compiler/regalloc/C1ObjectSpillInLogicOp.java | 45 + test/gc/8000311/Test8000311.java | 42 + test/gc/TestVerifyBeforeGCDuringStartup.java | 45 - test/gc/TestVerifyDuringStartup.java | 45 + test/gc/TestVerifySilently.java | 84 + test/gc/arguments/TestDynMaxHeapFreeRatio.java | 64 + test/gc/arguments/TestDynMinHeapFreeRatio.java | 62 + test/gc/g1/TestHumongousCodeCacheRoots.java | 143 + test/gc/g1/TestPrintRegionRememberedSetInfo.java | 92 + test/gc/g1/TestSummarizeRSetStats.java | 85 + test/gc/g1/TestSummarizeRSetStatsPerRegion.java | 55 + test/gc/g1/TestSummarizeRSetStatsThreads.java | 83 + test/gc/g1/TestSummarizeRSetStatsTools.java | 154 + test/runtime/6929067/Test6929067.sh | 14 +- test/runtime/7020373/GenOOMCrashClass.java | 157 + test/runtime/7020373/Test7020373.sh | 4 + test/runtime/7020373/testcase.jar | Bin test/runtime/7107135/Test7107135.sh | 11 +- test/runtime/InitialThreadOverflow/DoOverflow.java | 41 + test/runtime/InitialThreadOverflow/invoke.cxx | 70 + test/runtime/InitialThreadOverflow/testme.sh | 73 + test/runtime/jsig/Test8017498.sh | 94 + test/runtime/jsig/TestJNI.c | 55 + test/runtime/jsig/TestJNI.java | 42 + test/runtime/memory/LargePages/TestLargePagesFlags.java | 389 + test/testlibrary/OutputAnalyzerTest.java | 17 + test/testlibrary/com/oracle/java/testlibrary/DynamicVMOptionChecker.java | 111 + test/testlibrary/com/oracle/java/testlibrary/OutputAnalyzer.java | 33 +- test/testlibrary/com/oracle/java/testlibrary/TestDynamicVMOption.java | 95 + test/testlibrary/whitebox/sun/hotspot/WhiteBox.java | 3 + tools/mkbc.c | 607 + 621 files changed, 102261 insertions(+), 3306 deletions(-) diffs (truncated from 119977 to 500 lines): diff -r b86119fa2748 -r 32a780f7a690 .hgtags --- a/.hgtags Mon Nov 11 11:53:33 2013 -0800 +++ b/.hgtags Wed Jul 16 00:20:26 2014 +0100 @@ -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 @@ -302,6 +308,9 @@ e974e15945658e574e6c344c4a7ba225f5708c10 hs23.2-b03 f08a3a0e60c32cb0e8350e72fdc54849759096a4 jdk7u6-b12 7a8d3cd6562170f4c262e962270f679ac503f456 hs23.2-b04 +d72dd66fdc3d52aee909f8dd8f25f62f13569ffa ppc-aix-port-b01 +1efaab66c81d0a5701cc819e67376f1b27bfea47 ppc-aix-port-b02 +b69b779a26dfc5e2333504d0c82fc998ff915499 ppc-aix-port-b03 28746e6d615f27816f483485a53b790c7a463f0c jdk7u6-b13 202880d633e646d4936798d0fba6efc0cab04dc8 hs23.2-b05 6b0f178141388f5721aa5365cb542715acbf0cc7 jdk7u6-b14 @@ -311,6 +320,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 @@ -440,6 +450,7 @@ 4f7ad6299356bfd2cfb448ea4c11e8ce0fbf69f4 jdk7u12-b07 3bb803664f3d9c831d094cbe22b4ee5757e780c8 jdk7u12-b08 92e382c3cccc0afbc7f72fccea4f996e05b66b3e jdk7u12-b09 +6e4feb17117d21e0e4360f2d0fbc68397ed3ba80 icedtea-2.4-branchpoint 7554f9b2bcc72204ac10ba8b08b8e648459504df hs24-b29 181528fd1e74863a902f171a2ad46270a2fb15e0 jdk7u14-b10 4008cf63c30133f2fac148a39903552fe7a33cea hs24-b30 @@ -496,6 +507,7 @@ 273e8afccd6ef9e10e9fe121f7b323755191f3cc jdk7u25-b32 e3d2c238e29c421c3b5c001e400acbfb30790cfc jdk7u14-b14 860ae068f4dff62a77c8315f0335b7e935087e86 hs24-b34 +ca298f18e21dc66c6b5235600f8b50bcc9bbaa38 ppc-aix-port-b04 12619005c5e29be6e65f0dc9891ca19d9ffb1aaa jdk7u14-b15 be21f8a4d42c03cafde4f616fd80ece791ba2f21 hs24-b35 10e0043bda0878dbc85f3f280157eab592b47c91 jdk7u14-b16 @@ -590,6 +602,9 @@ 12374864c655a2cefb0d65caaacf215d5365ec5f jdk7u45-b18 3677c8cc3c89c0fa608f485b84396e4cf755634b jdk7u45-b30 520b7b3d9153c1407791325946b07c5c222cf0d6 jdk7u45-b31 +ae4adc1492d1c90a70bd2d139a939fc0c8329be9 jdk7u60-b00 +af1fc2868a2b919727bfbb0858449bd991bbee4a jdk7u40-b60 +cc83359f5e5eb46dd9176b0a272390b1a0a51fdc hs24.60-b01 c373a733d5d5147f99eaa2b91d6b937c28214fc9 jdk7u45-b33 0bcb43482f2ac5615437541ffb8dc0f79ece3148 jdk7u45-b34 12ea8d416f105f5971c808c89dddc1006bfc4c53 jdk7u45-b35 @@ -609,8 +624,87 @@ 6c6a2299029ad02fa2820b8ff8c61c2bbcae799c jdk7u51-b13 a398ddc79d2310ad37b131cc3794b3cf574f088e jdk7u51-b30 cf4110c35afb10456d8264c47b7cde1c20150cab jdk7u51-b31 +208419914859dd77abdb5ec755b32c237ee6e4eb jdk7u51-b33 +f8457a75bdb5052f1d8c547027a926f9b755b808 jdk7u51-b34 dee2a38ef6b26534c44c550ef4da2c3146c612c2 jdk7u55-b00 ac0063b4452bc724e8648e64f4b2d495054bb308 jdk7u55-b01 408028d410e316a99495c42df0031018890c22fe jdk7u55-b02 50fb91504dd8cdf410eb956075442daf3aacf1db jdk7u55-b03 3be3b8a032a5508646c1c5620cee18d3e69fc708 jdk7u55-b04 +b86119fa2748bd91ae4984ff2264da92b6626f8c jdk7u65-b00 +b86119fa2748bd91ae4984ff2264da92b6626f8c jdk7u55-b05 +260d919d52e500a0b20f911fade2a7710474067a jdk7u55-b06 +8cf6e0a3a0651c4132ae034c2b68ddf4eb5c4d88 jdk7u55-b07 +049fd2cef85bf2d557dd7dd8a90a6831a8168ce4 jdk7u55-b08 +9b238ab164e6d1cf9cfb560827d88ef8a7d8c898 jdk7u55-b09 +573d8d080af9eff48aa3b8f0696d8874ce36fbb1 jdk7u55-b09 +36f8bd4dd467ae4183340842fd7158ac3309b826 jdk7u55-b10 +49cada8e39b9215b9fd8b9183743f92625587cfc jdk7u55-b11 +aadc864abd1ced3049bf59ce32786a07997ba190 jdk7u55-b12 +b021fd817a0177b31d1e3d65127a27458e85801e jdk7u55-b13 +d27b468d5f3be3329ff1ff342f3347e6b2e0303b jdk7u55-b30 +dff9147a781672f20bb0577a94233264ea4a95d1 jdk7u55-b14 +4e73c6403b44f86d579b1ba03ea636c52c4b559b jdk7u55-b15 +8175599864880938d68d0a515fa561043d7d5fd0 jdk7u55-b31 +ba9270b8fb1f4852ff1d9dab15571eb9e0714495 jdk7u55-b32 +0901a8cf66a0494b55bf104c9666d4e3c6ff93f0 jdk7u55-b33 +ae4adc1492d1c90a70bd2d139a939fc0c8329be9 jdk7u60-b00 +af1fc2868a2b919727bfbb0858449bd991bbee4a jdk7u40-b60 +cc83359f5e5eb46dd9176b0a272390b1a0a51fdc hs24.60-b01 +b7d44793cd267b22352c688b0185466741bb7a89 hs24.60-b02 +90cfd4ad3c9263886d876792d72cb24ac0e03a85 hs24.60-b03 +8fd0e931efa57d1579fb1bc8a68ba3924244b99e jdk7u60-b01 +99e96aaac8afc14ce6f9f3d92ef7004cf505b35d hs24.60-b04 +0025a2a965c8f21376278245c2493d8861386fba jdk7u60-b02 +fa59add77d1a8f601a695f137248462fdc68cc2f hs24.60-b05 +a59134ccb1b704b2cd05e157970d425af43e5437 hs24.60-b06 +bc178be7e9d6fcc97e09c909ffe79d96e2305218 icedtea-2.5pre01 +f30e87f16d90f1e659b935515a3fc083ab8a0156 icedtea-2.5pre02 +2c971ed884cec0a9293ccff3def696da81823225 jdk7u60-b03 +1afbeb8cb558429156d432f35e7582716053a9cb hs24.60-b07 +05fe7a87d14908eb3f21a0d29fc72cee2f996b7f jdk7u60-b04 +f52b5452d424545e3b101d808e6d7da763d6f0f3 hs24.60-b08 +462db155547e9bdd7ba26bead42808deb0b10d44 jdk7u60-b05 +0cc4550bd9c57ba3be343bfbfcaf46b9060d5e7d jdk7u60-b06 +2d053c4fd767155b2ac5e3e0a60b08a1bcc73cab jdk7u60-b07 +a198787e7b9bc7b831ad210b67732cdb2be9e46e jdk7u60-b08 +22cae361773d14b467328e8f90cf893550d1d610 jdk7u60-b09 +6f74afd8577eb4b6a0e6f7b25cfef7d6f7d92e5f jdk7u60-b10 +a2ac67a2c1cc867a8d6b525ab1df17204186e636 jdk7u60-b11 +903304e152fc584b85cbf241fd293f8dcf1c6605 icedtea-2.5pre03 +cae50351dcece6e5bf215eabf958c5d669ffff1f jdk7u60-b12 +5853131ba4b448c5d89a3f0aa501fdf07f3b473c jdk7u60-b13 +b226be2040f971855626f5b88cb41a7d5299fea0 jdk7u60-b14 +2871f345b7e5585e20dc7aa91035967fe774cfba jdk7u60-b15 +6dfe2b3e243c2329d16af8c3c263961c547797df icedtea-2.5pre04 +3017276776bf322520e3d4007bc4761ebaeb4361 icedtea-2.5pre06 +df3f0e040c01e1b375c63f3cf32c1c088da20faa icedtea-2.5pre05 +ec76bacbb5b90efc7988dee5345c656126b97561 jdk7u60-b16 +617a6338e0c4f7699eed5061d7e8f576c3ace029 jdk7u60-b17 +617a6338e0c4f7699eed5061d7e8f576c3ace029 jdk7u60-b18 +4a9635c98a917cfcef506ca5d034c733a33c53f3 jdk7u65-b01 +361493c7cdb5f75b28efc63389d6cebaaaa43a2c jdk7u60-b19 +13f561930b3e80a94e2baddc51dfc6c43c5ca601 jdk7u60-b30 +f106b1f551d7ae8ef8d493b87818ada0f0bcdd8f icedtea-2.5pre07 +5dc3dd2819c8066197d931a213b3cf23b2758e6c icedtea-2.5pre08 +5dc3dd2819c8066197d931a213b3cf23b2758e6c icedtea-2.5.0 +eb797fab50d3b440b17b3e7c5d83f42bfa73655e jdk7u65-b02 +bb00df28ecdbd0da89ab4ed81f6f2b732fa512da jdk7u65-b03 +848481af9003067546c7f34c166bb8d745b95d5f jdk7u65-b04 +98a884fa64a9ef1753a28691106efe10942b9d70 jdk7u65-b05 +6f1dddf9c632bfb14121c9521d17b64bd0be0cd2 jdk7u65-b06 +a053d3d805355ffcd85c17e653182e17d4456bd5 jdk7u65-b07 +6f03dfb50363d26599fcf726586ea3f6d0e0347d jdk7u65-b08 +b4930eb1ea7630b4d8609e2efe6f000d3dc83235 jdk7u65-b09 +4736382ac9d999044b05eb26932ab6fc59dbb159 jdk7u65-b10 +7345c7bf20fd8c91492240a95082af9a201b3a96 jdk7u65-b11 +28b81694b89f88541e28bbc767d78e77ec66cce6 jdk7u65-b12 +f4ed018b4c51dae699da835617b19e8a49c124a4 jdk7u65-b13 +7ec585caae47f7202fb5357607f9ad058b03870e jdk7u65-b14 +7058f0d30de6826b6866ce2d146c63e943be33af jdk7u65-b15 +f1b2970a2564c3360db420431cfbba215da6ae43 jdk7u65-b16 +4c6df9a369cb9d54fe2d898452883a22b8ec6640 jdk7u65-b17 +aca05127f95b5704ee3a34104a8f86e36326f0c0 jdk7u65-b30 +d006213be74730453cf5c3ce31f1d1d505334419 jdk7u65-b18 +1d8226b3e9896656451801393eb3ae394faeb638 jdk7u65-b19 +02066294d005e81a81d3a01ec549716ebcc65723 icedtea-2.5.1 diff -r b86119fa2748 -r 32a780f7a690 .jcheck/conf --- a/.jcheck/conf Mon Nov 11 11:53:33 2013 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -project=jdk7 -bugids=dup diff -r b86119fa2748 -r 32a780f7a690 agent/src/os/linux/Makefile --- a/agent/src/os/linux/Makefile Mon Nov 11 11:53:33 2013 -0800 +++ b/agent/src/os/linux/Makefile Wed Jul 16 00:20:26 2014 +0100 @@ -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 b86119fa2748 -r 32a780f7a690 agent/src/os/linux/libproc.h --- a/agent/src/os/linux/libproc.h Mon Nov 11 11:53:33 2013 -0800 +++ b/agent/src/os/linux/libproc.h Wed Jul 16 00:20:26 2014 +0100 @@ -41,9 +41,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 @@ -88,7 +113,7 @@ }; #endif -#if defined(sparc) || defined(sparcv9) +#if defined(sparc) || defined(sparcv9) || defined(ppc64) #define user_regs_struct pt_regs #endif diff -r b86119fa2748 -r 32a780f7a690 agent/src/os/linux/ps_core.c --- a/agent/src/os/linux/ps_core.c Mon Nov 11 11:53:33 2013 -0800 +++ b/agent/src/os/linux/ps_core.c Wed Jul 16 00:20:26 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2003, 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 @@ -700,29 +700,61 @@ // read segments of a shared object static bool read_lib_segments(struct ps_prochandle* ph, int lib_fd, ELF_EHDR* lib_ehdr, uintptr_t lib_base) { - int i = 0; - ELF_PHDR* phbuf; - ELF_PHDR* lib_php = NULL; + int i = 0; + ELF_PHDR* phbuf; + ELF_PHDR* lib_php = NULL; - if ((phbuf = read_program_header_table(lib_fd, lib_ehdr)) == NULL) - return false; + int page_size = sysconf(_SC_PAGE_SIZE); - // we want to process only PT_LOAD segments that are not writable. - // i.e., text segments. The read/write/exec (data) segments would - // have been already added from core file segments. - for (lib_php = phbuf, i = 0; i < lib_ehdr->e_phnum; i++) { - if ((lib_php->p_type == PT_LOAD) && !(lib_php->p_flags & PF_W) && (lib_php->p_filesz != 0)) { - if (add_map_info(ph, lib_fd, lib_php->p_offset, lib_php->p_vaddr + lib_base, lib_php->p_filesz) == NULL) - goto err; + if ((phbuf = read_program_header_table(lib_fd, lib_ehdr)) == NULL) { + return false; + } + + // we want to process only PT_LOAD segments that are not writable. + // i.e., text segments. The read/write/exec (data) segments would + // have been already added from core file segments. + for (lib_php = phbuf, i = 0; i < lib_ehdr->e_phnum; i++) { + if ((lib_php->p_type == PT_LOAD) && !(lib_php->p_flags & PF_W) && (lib_php->p_filesz != 0)) { + + uintptr_t target_vaddr = lib_php->p_vaddr + lib_base; + map_info *existing_map = core_lookup(ph, target_vaddr); + + if (existing_map == NULL){ + if (add_map_info(ph, lib_fd, lib_php->p_offset, + target_vaddr, lib_php->p_memsz) == NULL) { + goto err; + } + } else { + // Coredump stores value of p_memsz elf field + // rounded up to page boundary. + + if ((existing_map->memsz != page_size) && + (existing_map->fd != lib_fd) && + (ROUNDUP(existing_map->memsz, page_size) != ROUNDUP(lib_php->p_memsz, page_size))) { + + print_debug("address conflict @ 0x%lx (existing map size = %ld, size = %ld, flags = %d)\n", + target_vaddr, existing_map->memsz, lib_php->p_memsz, lib_php->p_flags); + goto err; + } + + /* replace PT_LOAD segment with library segment */ + print_debug("overwrote with new address mapping (memsz %ld -> %ld)\n", + existing_map->memsz, ROUNDUP(lib_php->p_memsz, page_size)); + + existing_map->fd = lib_fd; + existing_map->offset = lib_php->p_offset; + existing_map->memsz = ROUNDUP(lib_php->p_memsz, page_size); } - lib_php++; - } + } - free(phbuf); - return true; + lib_php++; + } + + free(phbuf); + return true; err: - free(phbuf); - return false; + free(phbuf); + return false; } // process segments from interpreter (ld.so or ld-linux.so) diff -r b86119fa2748 -r 32a780f7a690 agent/src/os/linux/ps_proc.c --- a/agent/src/os/linux/ps_proc.c Mon Nov 11 11:53:33 2013 -0800 +++ b/agent/src/os/linux/ps_proc.c Wed Jul 16 00:20:26 2014 +0100 @@ -261,7 +261,7 @@ static bool read_lib_info(struct ps_prochandle* ph) { char fname[32]; - char buf[256]; + char buf[PATH_MAX]; FILE *fp = NULL; sprintf(fname, "/proc/%d/maps", ph->pid); @@ -271,10 +271,52 @@ return false; } - while(fgets_no_cr(buf, 256, fp)){ - char * word[6]; - int nwords = split_n_str(buf, 6, word, ' ', '\0'); - if (nwords > 5 && find_lib(ph, word[5]) == false) { + while(fgets_no_cr(buf, PATH_MAX, fp)){ + char * word[7]; + int nwords = split_n_str(buf, 7, word, ' ', '\0'); + + if (nwords < 6) { + // not a shared library entry. ignore. + continue; + } + + if (word[5][0] == '[') { + // not a shared library entry. ignore. + if (strncmp(word[5],"[stack",6) == 0) { + continue; + } + if (strncmp(word[5],"[heap]",6) == 0) { + continue; + } + + // SA don't handle VDSO + if (strncmp(word[5],"[vdso]",6) == 0) { + continue; + } + if (strncmp(word[5],"[vsyscall]",6) == 0) { + continue; + } + } + + if (nwords > 6) { + // prelink altered mapfile when the program is running. + // Entries like one below have to be skipped + // /lib64/libc-2.15.so (deleted) + // SO name in entries like one below have to be stripped. + // /lib64/libpthread-2.15.so.#prelink#.EECVts + char *s = strstr(word[5],".#prelink#"); + if (s == NULL) { + // No prelink keyword. skip deleted library + print_debug("skip shared object %s deleted by prelink\n", word[5]); + continue; + } + + // Fall through + print_debug("rectifing shared object name %s changed by prelink\n", word[5]); + *s = 0; + } + + if (find_lib(ph, word[5]) == false) { intptr_t base; lib_info* lib; #ifdef _LP64 diff -r b86119fa2748 -r 32a780f7a690 agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java --- a/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java Mon Nov 11 11:53:33 2013 -0800 +++ b/agent/src/share/classes/sun/jvm/hotspot/interpreter/Bytecodes.java Wed Jul 16 00:20:26 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -272,9 +272,10 @@ public static final int _fast_aldc = 229; public static final int _fast_aldc_w = 230; public static final int _return_register_finalizer = 231; - public static final int _shouldnotreachhere = 232; // For debugging + public static final int _invokehandle = 232; + public static final int _shouldnotreachhere = 233; // For debugging - public static final int number_of_codes = 233; + public static final int number_of_codes = 234; // Flag bits derived from format strings, can_trap, can_rewrite, etc.: // semantic flags: @@ -798,6 +799,9 @@ def(_return_register_finalizer, "return_register_finalizer", "b" , null , BasicType.getTVoid() , 0, true, _return ); + def(_invokehandle , "invokehandle" , "bJJ" , null , BasicType.getTIllegal(), -1, true, _invokevirtual ); + + def(_fast_aldc , "fast_aldc" , "bj" , null , BasicType.getTObject(), 1, true, _ldc ); def(_fast_aldc_w , "fast_aldc_w" , "bJJ" , null , BasicType.getTObject(), 1, true, _ldc_w ); diff -r b86119fa2748 -r 32a780f7a690 agent/src/share/classes/sun/jvm/hotspot/jdi/JVMTIThreadState.java --- a/agent/src/share/classes/sun/jvm/hotspot/jdi/JVMTIThreadState.java Mon Nov 11 11:53:33 2013 -0800 +++ b/agent/src/share/classes/sun/jvm/hotspot/jdi/JVMTIThreadState.java Wed Jul 16 00:20:26 2014 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2004, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2004, 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 @@ -29,11 +29,10 @@ public static final int JVMTI_THREAD_STATE_ALIVE = 0x0001; public static final int JVMTI_THREAD_STATE_TERMINATED = 0x0002; public static final int JVMTI_THREAD_STATE_RUNNABLE = 0x0004; - public static final int JVMTI_THREAD_STATE_WAITING = 0x0008; + public static final int JVMTI_THREAD_STATE_WAITING = 0x0080; public static final int JVMTI_THREAD_STATE_WAITING_INDEFINITELY = 0x0010; public static final int JVMTI_THREAD_STATE_WAITING_WITH_TIMEOUT = 0x0020; public static final int JVMTI_THREAD_STATE_SLEEPING = 0x0040; - public static final int JVMTI_THREAD_STATE_WAITING_FOR_NOTIFICATION = 0x0080; public static final int JVMTI_THREAD_STATE_IN_OBJECT_WAIT = 0x0100; public static final int JVMTI_THREAD_STATE_PARKED = 0x0200; public static final int JVMTI_THREAD_STATE_BLOCKED_ON_MONITOR_ENTER = 0x0400; diff -r b86119fa2748 -r 32a780f7a690 agent/src/share/classes/sun/jvm/hotspot/runtime/OSThread.java --- a/agent/src/share/classes/sun/jvm/hotspot/runtime/OSThread.java Mon Nov 11 11:53:33 2013 -0800 +++ b/agent/src/share/classes/sun/jvm/hotspot/runtime/OSThread.java Wed Jul 16 00:20:26 2014 +0100 @@ -32,7 +32,7 @@ // to the sys_thread_t structure of the classic JVM implementation. public class OSThread extends VMObject { private static JIntField interruptedField; - private static JIntField threadIdField; + private static Field threadIdField; static { VM.registerVMInitializedObserver(new Observer() { public void update(Observable o, Object data) { From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 23:23:28 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:23:28 +0000 Subject: [Bug 1868] [IcedTea7] Avoid x86 workaround when running Zero rather than a JIT In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1868 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-forest-2.5/hotspot?cmd=changeset;node=02066294d005 author: andrew date: Tue Jul 15 22:55:15 2014 +0100 PR1868: Avoid x86 workaround when running Zero rather than a JIT Contributed-by: Matthias Klose -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at icedtea.classpath.org Tue Jul 15 23:23:57 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:23:57 +0000 Subject: /hg/release/icedtea7-forest-2.5/jdk: 104 new changesets Message-ID: changeset ca75d5f6b227 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=ca75d5f6b227 author: kizune date: Mon Feb 03 21:46:36 2014 +0400 8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending Summary: Additional review by Chris Ries Reviewed-by: jfranck, ksrini changeset a0a98b2bdbac in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=a0a98b2bdbac author: twisti date: Mon Feb 03 13:00:51 2014 -0800 8032686: Issues with method invoke Reviewed-by: jrose, vlivanov, ahgross changeset 028185e4318e in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=028185e4318e author: asaha date: Tue Feb 04 22:41:06 2014 -0800 Merge changeset 0ec8934753f0 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=0ec8934753f0 author: kizune date: Fri Feb 07 20:21:23 2014 +0400 8033618: Correct logging output Reviewed-by: ksrini, alanb, ahgross changeset b7cc52fcb50f in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=b7cc52fcb50f author: asaha date: Tue Feb 11 12:34:24 2014 -0800 Added tag jdk7u65-b00 for changeset 7fa6d3ba2cc7 changeset e4fcfe1bb9e3 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=e4fcfe1bb9e3 author: asaha date: Tue Feb 11 15:14:10 2014 -0800 Merge changeset c9d44cc4d48c in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=c9d44cc4d48c author: asaha date: Tue Feb 11 10:29:33 2014 -0800 Merge changeset 268b4fed4762 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=268b4fed4762 author: asaha date: Tue Feb 11 15:41:55 2014 -0800 Merge changeset a4dd09ef9566 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=a4dd09ef9566 author: asaha date: Tue Feb 11 17:08:26 2014 -0800 Merge changeset c58a25d48388 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=c58a25d48388 author: jbachorik date: Thu Feb 06 09:35:26 2014 +0100 8033301: Build more informative InfoBuilder Reviewed-by: sla, ahgross changeset 16c88f6bd52b in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=16c88f6bd52b author: chegar date: Wed Feb 12 17:49:39 2014 +0000 8031050: (thread) Change Thread initialization so that thread name is set before invoking SecurityManager Reviewed-by: alanb, dholmes, mchung changeset 6db58f9409dc in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=6db58f9409dc author: asaha date: Wed Feb 12 16:26:05 2014 -0800 Merge changeset 802beea75025 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=802beea75025 author: asaha date: Wed Feb 12 16:35:30 2014 -0800 Merge changeset 5fb0b18ab587 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=5fb0b18ab587 author: pchelko date: Wed Feb 19 10:23:06 2014 +0400 8034772: JDK-8028795 brought a specification change to 7u55 release and caused JCK7 signature test failure Reviewed-by: art, serb changeset 14f9f6259771 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=14f9f6259771 author: asaha date: Fri Feb 21 08:39:13 2014 -0800 Merge changeset 32f9c266ef81 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=32f9c266ef81 author: pchelko date: Tue Feb 25 19:33:43 2014 +0400 8028285: RMI Thread can no longer call out to AWT Reviewed-by: art, serb, ddehaven changeset c220d329a781 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=c220d329a781 author: asaha date: Tue Feb 25 23:21:10 2014 -0800 Merge changeset 9a25873b2b41 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=9a25873b2b41 author: katleman date: Thu Feb 27 11:58:53 2014 -0800 Added tag jdk7u65-b01 for changeset c220d329a781 changeset d9bbfd8a5ef1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=d9bbfd8a5ef1 author: asaha date: Thu Feb 27 13:03:47 2014 -0800 Merge changeset 55cce9f6900d in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=55cce9f6900d author: pchelko date: Mon Mar 03 16:10:16 2014 +0400 8032960: Running forms URL throws NullPointerException in Javaconsole. Reviewed-by: anthony, serb changeset 1dfbfad6c921 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=1dfbfad6c921 author: prr date: Mon Mar 03 09:21:16 2014 -0800 8034267: Probabilistic native crash Reviewed-by: bae, serb, mschoene changeset 81353e2baf81 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=81353e2baf81 author: igerasim date: Tue Mar 04 23:56:51 2014 +0400 8035009: Make Proxy representations consistent Reviewed-by: ahgross, jfranck changeset 177d11da2566 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=177d11da2566 author: asaha date: Tue Mar 04 17:49:21 2014 -0800 Merge changeset a42a3bb22f69 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=a42a3bb22f69 author: asaha date: Wed Mar 05 13:39:18 2014 -0800 Merge changeset 7651084e944a in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=7651084e944a author: katleman date: Wed Mar 05 16:28:35 2014 -0800 Added tag jdk7u65-b02 for changeset a42a3bb22f69 changeset 1b21d26982d3 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=1b21d26982d3 author: mbankal date: Wed Mar 05 20:56:53 2014 -0800 8034272: Do not cram data into CRAM arrays Reviewed-by: vinnie, coffeys, ahgross changeset c084492f9e3d in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=c084492f9e3d author: mbankal date: Wed Mar 05 22:31:11 2014 -0800 8031340: Better TLS/EC management Reviewed-by: valeriep, coffeys, ahgross changeset 84bce1b3d28a in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=84bce1b3d28a author: vlivanov date: Thu Mar 06 15:27:05 2014 +0400 8035793: Maximum arity maxed out Reviewed-by: jrose, twisti, ahgross changeset e9cf7b6ae721 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=e9cf7b6ae721 author: mbankal date: Mon Mar 10 18:40:38 2014 +0000 8036794: Manage JavaScript instances Reviewed-by: sundar, ahgross changeset f87a73691c85 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=f87a73691c85 author: dbuck date: Tue Mar 11 14:27:57 2014 -0700 8033055: Issues in 2d Reviewed-by: bae, prr changeset aa10e1795fd7 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=aa10e1795fd7 author: igerasim date: Wed Mar 12 12:46:11 2014 +0400 8035834: InetAddress.getLocalHost() can hang after JDK-8030731 was fixed Reviewed-by: vinnie changeset 0367aad88a50 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=0367aad88a50 author: jbachorik date: Fri Mar 07 10:15:36 2014 +0100 8029755: Enhance subject class Reviewed-by: sla, dfuchs, hawtin changeset 774d237e97c4 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=774d237e97c4 author: asaha date: Tue Mar 11 14:53:30 2014 -0700 Merge changeset 50f6a2636adc in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=50f6a2636adc author: asaha date: Tue Mar 11 15:18:37 2014 -0700 Merge changeset f927e7b43b49 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=f927e7b43b49 author: asaha date: Wed Mar 12 09:10:09 2014 -0700 Merge changeset 32a094c7545d in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=32a094c7545d author: asaha date: Wed Mar 12 14:59:01 2014 -0700 Merge changeset 756071871d61 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=756071871d61 author: malenkov date: Thu Mar 13 14:58:55 2014 +0400 8035699: File choosers should be choosier Reviewed-by: alexsch, art, skoivu changeset bb8c187e84f1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=bb8c187e84f1 author: katleman date: Thu Mar 13 13:17:36 2014 -0700 Added tag jdk7u65-b03 for changeset 756071871d61 changeset f0f5f7e38090 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=f0f5f7e38090 author: asaha date: Tue Mar 18 13:10:13 2014 -0700 Merge changeset bac16c82c14a in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=bac16c82c14a author: twisti date: Wed Mar 19 10:48:43 2014 -0700 8035788: Provide more consistency for lookups Reviewed-by: jrose, vlivanov, ahgross changeset 9f62204f67ec in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=9f62204f67ec author: katleman date: Thu Mar 20 13:05:00 2014 -0700 Added tag jdk7u65-b04 for changeset bac16c82c14a changeset 828517af57e6 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=828517af57e6 author: asaha date: Thu Mar 20 15:01:38 2014 -0700 Merge changeset 5184990bf3df in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=5184990bf3df author: aefimov date: Wed Mar 19 19:16:01 2014 +0400 8037012: (tz) Support tzdata2014a Reviewed-by: coffeys, okutsu, sherman changeset 14b3f82c245f in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=14b3f82c245f author: igerasim date: Thu Feb 20 16:01:35 2014 +0400 8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently Reviewed-by: chegar, ewang changeset bfbb7e4e19d6 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=bfbb7e4e19d6 author: katleman date: Tue Mar 25 11:19:04 2014 -0700 Added tag jdk7u65-b05 for changeset 14b3f82c245f changeset cac9fc67df3e in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=cac9fc67df3e author: robm date: Thu Mar 27 17:28:32 2014 +0000 8036571: (process) Process process arguments carefully Reviewed-by: rriggs, coffeys changeset 1c76e1c3182f in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=1c76e1c3182f author: asaha date: Thu Mar 27 12:22:55 2014 -0700 Merge changeset de5bbcf48c88 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=de5bbcf48c88 author: xuelei date: Wed Mar 26 03:45:30 2014 +0000 8037162: More robust DH exchanges Reviewed-by: weijun, asmotrak, ahgross, robm changeset 3a2c7340f7de in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=3a2c7340f7de author: robm date: Tue Apr 01 00:33:47 2014 +0100 8031346: Enhance RSA key handling Reviewed-by: xuelei, coffeys changeset 81abcd983361 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=81abcd983361 author: kizune date: Tue Mar 25 11:28:26 2014 -0700 8037046: Validate libraries to be loaded Reviewed-by: ksrini, ahgross changeset 7d8e5d907895 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=7d8e5d907895 author: coffeys date: Tue Apr 01 14:25:18 2014 +0100 Merge changeset bfae8dda86b1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=bfae8dda86b1 author: katleman date: Tue Apr 01 12:01:47 2014 -0700 Added tag jdk7u65-b06 for changeset 7d8e5d907895 changeset cd286b3adc54 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=cd286b3adc54 author: asaha date: Thu Apr 03 11:24:01 2014 -0700 Merge changeset 8b0cbe0231f8 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=8b0cbe0231f8 author: robm date: Fri Apr 04 15:24:14 2014 +0100 8035004: Provider provides less service Reviewed-by: mullan, coffeys changeset cde691a6989f in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=cde691a6989f author: aefimov date: Mon Apr 07 16:59:47 2014 +0400 8038306: (tz) Support tzdata2014b Reviewed-by: coffeys, sherman, okutsu changeset 417001e147b4 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=417001e147b4 author: katleman date: Tue Apr 08 11:34:53 2014 -0700 Added tag jdk7u65-b07 for changeset cde691a6989f changeset 896bac8b653d in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=896bac8b653d author: asaha date: Wed Apr 09 14:12:49 2014 -0700 Merge changeset 9ccfe70cee62 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=9ccfe70cee62 author: vkempik date: Tue Mar 25 14:11:22 2014 +0100 8036786: Update jdk7 testlibrary to match jdk8 Summary: Update testlibrary in jdk7, cumulative backport Reviewed-by: alanb, sla changeset 03ab1beaec59 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=03ab1beaec59 author: mcherkas date: Fri Apr 11 13:07:30 2014 +0400 8031075: [Regression] focus disappears with shift+tab on dialog having one focus component Reviewed-by: art, serb changeset 39b6836b1c97 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=39b6836b1c97 author: kizune date: Wed Apr 09 13:16:33 2014 +0400 8001108: an attempt to use "" as a method name should elicit NoSuchMethodException Reviewed-by: twisti changeset b766e67e5027 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=b766e67e5027 author: kizune date: Wed Apr 09 13:06:37 2014 +0400 8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException Reviewed-by: twisti changeset fef98c3ff64d in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=fef98c3ff64d author: kizune date: Wed Apr 09 13:00:26 2014 +0400 8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError Reviewed-by: twisti changeset b82737ea61d1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=b82737ea61d1 author: kizune date: Thu Apr 10 13:55:57 2014 +0400 8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping Reviewed-by: twisti changeset 44c91f69802f in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=44c91f69802f author: dmarkov date: Thu Apr 03 11:37:02 2014 +0400 8013611: Modal dialog fails to obtain keyboard focus Reviewed-by: leonidr changeset cf4d81c3fa6f in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=cf4d81c3fa6f author: bae date: Thu Apr 03 17:09:54 2014 +0400 8019990: IM candidate window appears on the South-East corner of the display. Reviewed-by: bagiras, serb changeset fbe9320339ea in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=fbe9320339ea author: anashaty date: Fri Feb 07 16:00:49 2014 +0400 8023990: Regression: postscript size increase from 6u18 Reviewed-by: prr, bae changeset d5353f8e1e02 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=d5353f8e1e02 author: kizune date: Mon Apr 14 13:48:47 2014 +0400 8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package Reviewed-by: twisti changeset ee0cedc50d32 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=ee0cedc50d32 author: katleman date: Tue Apr 15 23:00:45 2014 -0700 Added tag jdk7u65-b08 for changeset d5353f8e1e02 changeset 473400607e72 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=473400607e72 author: asaha date: Mon Apr 14 16:34:38 2014 -0700 Merge changeset 8786d9afd84f in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=8786d9afd84f author: asaha date: Tue Apr 15 12:17:38 2014 -0700 Merge changeset 221a6b3738f3 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=221a6b3738f3 author: asaha date: Wed Apr 16 10:10:23 2014 -0700 Merge changeset a948d8801288 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=a948d8801288 author: asaha date: Wed Apr 16 13:39:41 2014 -0700 Merge changeset 473dfb1347b6 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=473dfb1347b6 author: kizune date: Mon Apr 21 13:37:43 2014 +0400 8033278: Missed access checks for Lookup.unreflect* after 8032585 Reviewed-by: twisti changeset b83f5194edf2 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=b83f5194edf2 author: dmarkov date: Thu Apr 03 11:37:02 2014 +0400 8013611: Modal dialog fails to obtain keyboard focus Reviewed-by: leonidr changeset 01a4cd03a6c8 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=01a4cd03a6c8 author: katleman date: Mon Apr 07 12:17:41 2014 -0700 Added tag jdk7u55-b32 for changeset b83f5194edf2 changeset 3f54f8a387c1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=3f54f8a387c1 author: katleman date: Tue Apr 08 11:16:12 2014 -0700 Added tag jdk7u55-b33 for changeset 01a4cd03a6c8 changeset 45913a29c1ed in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=45913a29c1ed author: asaha date: Mon Apr 21 10:03:08 2014 -0700 Merge changeset fc7967b034d3 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=fc7967b034d3 author: katleman date: Tue Apr 22 11:47:16 2014 -0700 Added tag jdk7u65-b09 for changeset 45913a29c1ed changeset a290dfe75bdb in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=a290dfe75bdb author: asaha date: Thu Apr 24 12:08:05 2014 -0700 Merge changeset 3bb943c6ff7d in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=3bb943c6ff7d author: igerasim date: Fri Apr 25 13:33:04 2014 +0400 8039520: More atomicity of atomic updates Reviewed-by: dl, skoivu, chegar changeset e67383c77c6c in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=e67383c77c6c author: katleman date: Tue Apr 29 12:36:11 2014 -0700 Added tag jdk7u65-b10 for changeset 3bb943c6ff7d changeset 2bc661ca4dc3 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=2bc661ca4dc3 author: asaha date: Tue Apr 29 14:02:13 2014 -0700 Merge changeset b84e98280630 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=b84e98280630 author: asaha date: Thu May 01 09:16:33 2014 -0700 Merge changeset 89f9d8dbef1c in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=89f9d8dbef1c author: katleman date: Tue May 06 10:02:57 2014 -0700 Added tag jdk7u65-b11 for changeset b84e98280630 changeset ab610f5627c7 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=ab610f5627c7 author: asaha date: Thu May 08 12:00:26 2014 -0700 Merge changeset 61d15f512305 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=61d15f512305 author: yhuang date: Tue May 06 22:15:25 2014 -0700 8013836: getFirstDayOfWeek reports wrong day for pt-BR locale Reviewed-by: naoto changeset 34ae1d13a333 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=34ae1d13a333 author: katleman date: Tue May 13 08:13:49 2014 -0700 Added tag jdk7u65-b12 for changeset 61d15f512305 changeset 3c74f01ece0f in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=3c74f01ece0f author: anashaty date: Tue May 13 15:41:23 2014 +0400 8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 Reviewed-by: pchelko, ant changeset 69698344d0a1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=69698344d0a1 author: aefimov date: Mon May 19 01:51:35 2014 +0400 8043012: (tz) Support tzdata2014c Reviewed-by: okutsu, peytoia changeset 2e6105ddad44 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=2e6105ddad44 author: katleman date: Tue May 20 12:37:02 2014 -0700 Added tag jdk7u65-b13 for changeset 69698344d0a1 changeset 355c2e9a57de in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=355c2e9a57de author: katleman date: Wed May 28 02:34:16 2014 -0700 Added tag jdk7u65-b14 for changeset 2e6105ddad44 changeset 8cff6ce00a91 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=8cff6ce00a91 author: pchelko date: Mon May 19 18:31:48 2014 +0400 8042590: Running form URL throws NPE Reviewed-by: anthony, serb changeset 190017413768 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=190017413768 author: katleman date: Tue Jun 03 13:53:01 2014 -0700 Added tag jdk7u65-b15 for changeset 8cff6ce00a91 changeset 23e78e36bc39 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=23e78e36bc39 author: katleman date: Fri Jun 13 11:56:54 2014 -0700 Added tag jdk7u65-b16 for changeset 190017413768 changeset 96d1fa382dda in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=96d1fa382dda author: katleman date: Tue Jun 17 13:03:15 2014 -0700 Added tag jdk7u65-b17 for changeset 23e78e36bc39 changeset 0a7949e427b0 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=0a7949e427b0 author: asaha date: Wed Jun 25 08:31:00 2014 -0700 Added tag jdk7u65-b30 for changeset 96d1fa382dda changeset dcc61b936fe1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=dcc61b936fe1 author: asaha date: Wed Jul 02 09:39:31 2014 -0700 Added tag jdk7u55-b15 for changeset a015a0971dac changeset 7f7430459adf in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=7f7430459adf author: asaha date: Wed Jul 02 09:55:48 2014 -0700 Merge changeset ba6cef21c369 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=ba6cef21c369 author: asaha date: Wed Jul 02 10:09:19 2014 -0700 Added tag jdk7u65-b18 for changeset 7f7430459adf changeset c3a56021fc22 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=c3a56021fc22 author: asaha date: Wed Jul 09 15:02:53 2014 -0700 Added tag jdk7u65-b19 for changeset ba6cef21c369 changeset 169bb2360ce1 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=169bb2360ce1 author: andrew date: Tue Jul 15 22:47:40 2014 +0100 Merge jdk7u65-b32 changeset da614e3d62ad in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=da614e3d62ad author: andrew date: Tue Jul 15 22:57:57 2014 +0100 PR1853: Revert PR729 from minor release changeset d6d4b6c9f5b4 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=d6d4b6c9f5b4 author: andrew date: Tue Jul 15 23:03:29 2014 +0100 PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 changeset dc28044d79a4 in /hg/release/icedtea7-forest-2.5/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=dc28044d79a4 author: andrew date: Wed Jul 16 00:20:22 2014 +0100 Added tag icedtea-2.5.1 for changeset d6d4b6c9f5b4 diffstat: .hgtags | 81 + .jcheck/conf | 2 - make/bridge/AccessBridgeJava/Makefile | 6 +- make/com/oracle/Makefile | 18 +- make/com/sun/java/pack/Makefile | 7 +- make/com/sun/jmx/Makefile | 10 +- make/com/sun/nio/Makefile | 2 +- make/com/sun/nio/sctp/Makefile | 2 + make/com/sun/security/auth/module/Makefile | 6 +- make/com/sun/tools/attach/Exportedfiles.gmk | 5 + make/com/sun/tools/attach/FILES_c.gmk | 5 + make/com/sun/tools/attach/FILES_java.gmk | 9 +- make/common/Defs-aix.gmk | 391 + make/common/Defs-embedded.gmk | 4 +- make/common/Defs-linux.gmk | 49 +- make/common/Defs-macosx.gmk | 15 +- make/common/Defs.gmk | 32 +- make/common/Library.gmk | 42 +- make/common/Program.gmk | 107 +- make/common/Release-macosx.gmk | 5 +- make/common/Release.gmk | 54 +- make/common/shared/Compiler-gcc.gmk | 76 +- make/common/shared/Compiler-xlc_r.gmk | 37 + make/common/shared/Defs-aix.gmk | 167 + make/common/shared/Defs-java.gmk | 23 +- make/common/shared/Defs-utils.gmk | 4 + make/common/shared/Defs-versions.gmk | 7 +- make/common/shared/Defs.gmk | 2 +- make/common/shared/Platform.gmk | 34 +- make/common/shared/Sanity.gmk | 8 + make/docs/Makefile | 6 +- make/java/fdlibm/Makefile | 7 + make/java/instrument/Makefile | 6 +- make/java/java/FILES_c.gmk | 1 - make/java/java/Makefile | 2 + make/java/java/mapfile-vers | 2 +- make/java/java/reorder-i586 | 1 - make/java/java/reorder-sparc | 1 - make/java/java/reorder-sparcv9 | 1 - make/java/jli/Makefile | 31 +- make/java/main/java/mapfile-aarch64 | 39 + make/java/main/java/mapfile-ppc64 | 43 + make/java/management/Makefile | 6 + make/java/net/FILES_c.gmk | 11 + make/java/net/Makefile | 26 +- make/java/nio/Makefile | 259 +- make/java/npt/Makefile | 2 +- make/java/security/Makefile | 12 +- make/java/sun_nio/Makefile | 2 +- make/java/util/FILES_properties.gmk | 1 + make/java/version/Makefile | 5 + make/javax/sound/SoundDefs.gmk | 68 +- make/jdk_generic_profile.sh | 183 +- make/jpda/transport/socket/Makefile | 2 +- make/sun/Makefile | 2 +- make/sun/awt/FILES_c_unix.gmk | 10 + make/sun/awt/Makefile | 33 +- make/sun/awt/mawt.gmk | 42 +- make/sun/cmm/lcms/FILES_c_unix.gmk | 7 +- make/sun/cmm/lcms/Makefile | 8 +- make/sun/font/Makefile | 24 +- make/sun/gtk/FILES_c_unix.gmk | 41 + make/sun/gtk/FILES_export_unix.gmk | 31 + make/sun/gtk/Makefile | 82 + make/sun/gtk/mapfile-vers | 72 + make/sun/javazic/tzdata/VERSION | 2 +- make/sun/javazic/tzdata/africa | 53 +- make/sun/javazic/tzdata/antarctica | 41 +- make/sun/javazic/tzdata/asia | 55 +- make/sun/javazic/tzdata/australasia | 42 +- make/sun/javazic/tzdata/europe | 72 +- make/sun/javazic/tzdata/leapseconds | 2 +- make/sun/javazic/tzdata/northamerica | 15 +- make/sun/javazic/tzdata/southamerica | 19 +- make/sun/javazic/tzdata/zone.tab | 3 +- make/sun/jawt/Makefile | 11 + make/sun/jpeg/FILES_c.gmk | 6 +- make/sun/jpeg/Makefile | 11 +- make/sun/lwawt/FILES_c_macosx.gmk | 6 + make/sun/lwawt/Makefile | 7 +- make/sun/native2ascii/Makefile | 2 +- make/sun/net/FILES_java.gmk | 229 +- make/sun/nio/cs/Makefile | 14 +- make/sun/security/Makefile | 11 +- make/sun/security/ec/Makefile | 27 +- make/sun/security/ec/mapfile-vers | 3 +- make/sun/security/jgss/wrapper/Makefile | 2 +- make/sun/security/krb5/Makefile | 8 +- make/sun/security/krb5/internal/ccache/Makefile | 49 + make/sun/security/mscapi/Makefile | 2 +- make/sun/security/pkcs11/Makefile | 6 +- make/sun/security/pkcs11/mapfile-vers | 4 +- make/sun/security/smartcardio/Makefile | 17 +- make/sun/splashscreen/FILES_c.gmk | 78 +- make/sun/splashscreen/Makefile | 37 +- make/sun/xawt/FILES_c_unix.gmk | 25 +- make/sun/xawt/FILES_export_unix.gmk | 3 +- make/sun/xawt/Makefile | 67 +- make/sun/xawt/mapfile-vers | 37 - make/tools/Makefile | 9 + make/tools/freetypecheck/Makefile | 21 +- make/tools/generate_nimbus/Makefile | 1 + make/tools/sharing/classlist.aix | 2406 ++++++ make/tools/src/build/tools/buildmetaindex/BuildMetaIndex.java | 22 +- make/tools/src/build/tools/compileproperties/CompileProperties.java | 9 +- make/tools/src/build/tools/dirdiff/DirDiff.java | 4 +- make/tools/src/build/tools/dtdbuilder/DTDBuilder.java | 34 +- make/tools/src/build/tools/dtdbuilder/DTDInputStream.java | 6 +- make/tools/src/build/tools/dtdbuilder/DTDParser.java | 44 +- make/tools/src/build/tools/dtdbuilder/PublicMapping.java | 6 +- make/tools/src/build/tools/generatebreakiteratordata/CharSet.java | 16 +- make/tools/src/build/tools/generatebreakiteratordata/DictionaryBasedBreakIteratorBuilder.java | 8 +- make/tools/src/build/tools/generatebreakiteratordata/GenerateBreakIteratorData.java | 6 +- make/tools/src/build/tools/generatebreakiteratordata/RuleBasedBreakIteratorBuilder.java | 201 +- make/tools/src/build/tools/generatebreakiteratordata/SupplementaryCharacterData.java | 6 +- make/tools/src/build/tools/generatecharacter/GenerateCharacter.java | 4 +- make/tools/src/build/tools/generatecharacter/SpecialCaseMap.java | 147 +- make/tools/src/build/tools/generatecharacter/UnicodeSpec.java | 22 +- make/tools/src/build/tools/generatecurrencydata/GenerateCurrencyData.java | 4 +- make/tools/src/build/tools/hasher/Hasher.java | 38 +- make/tools/src/build/tools/jarsplit/JarSplit.java | 5 +- make/tools/src/build/tools/javazic/Gen.java | 14 +- make/tools/src/build/tools/javazic/GenDoc.java | 16 +- make/tools/src/build/tools/javazic/Main.java | 3 +- make/tools/src/build/tools/javazic/Simple.java | 23 +- make/tools/src/build/tools/javazic/Time.java | 10 +- make/tools/src/build/tools/javazic/Zoneinfo.java | 18 +- make/tools/src/build/tools/jdwpgen/AbstractCommandNode.java | 7 +- make/tools/src/build/tools/jdwpgen/AbstractGroupNode.java | 7 +- make/tools/src/build/tools/jdwpgen/AbstractNamedNode.java | 14 +- make/tools/src/build/tools/jdwpgen/AbstractTypeListNode.java | 26 +- make/tools/src/build/tools/jdwpgen/AltNode.java | 4 +- make/tools/src/build/tools/jdwpgen/CommandSetNode.java | 11 +- make/tools/src/build/tools/jdwpgen/ConstantSetNode.java | 9 +- make/tools/src/build/tools/jdwpgen/ErrorSetNode.java | 9 +- make/tools/src/build/tools/jdwpgen/Node.java | 25 +- make/tools/src/build/tools/jdwpgen/OutNode.java | 14 +- make/tools/src/build/tools/jdwpgen/RootNode.java | 10 +- make/tools/src/build/tools/jdwpgen/SelectNode.java | 10 +- make/tools/src/build/tools/makeclasslist/MakeClasslist.java | 15 +- make/tools/src/build/tools/stripproperties/StripProperties.java | 4 +- src/macosx/classes/com/apple/eawt/_AppMenuBarHandler.java | 10 +- src/macosx/classes/sun/awt/resources/awtosx.properties | 71 + src/macosx/classes/sun/lwawt/macosx/CDropTargetContextPeer.java | 71 +- src/macosx/classes/sun/lwawt/macosx/CMenuComponent.java | 2 +- src/macosx/classes/sun/lwawt/macosx/LWCToolkit.java | 21 +- src/macosx/lib/flavormap.properties | 1 + src/macosx/native/java/util/SCDynamicStoreConfig.m | 11 - src/macosx/native/sun/awt/AWTEvent.m | 2 +- src/macosx/native/sun/awt/AWTWindow.m | 34 +- src/macosx/native/sun/awt/CDropTarget.m | 5 +- src/macosx/native/sun/awt/CMenuItem.m | 17 +- src/share/back/SDE.c | 6 + src/share/back/export/sys.h | 2 +- src/share/back/transport.c | 11 +- src/share/bin/java.c | 8 +- src/share/bin/wildcard.c | 5 + src/share/classes/com/sun/accessibility/internal/resources/accessibility_de.properties | 4 +- src/share/classes/com/sun/beans/decoder/ArrayElementHandler.java | 16 +- src/share/classes/com/sun/beans/finder/ConstructorFinder.java | 27 +- src/share/classes/com/sun/beans/finder/MethodFinder.java | 29 +- src/share/classes/com/sun/beans/finder/Signature.java | 12 + src/share/classes/com/sun/beans/finder/SignatureException.java | 41 + src/share/classes/com/sun/beans/util/Cache.java | 613 + src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageReader.java | 2 +- src/share/classes/com/sun/imageio/plugins/jpeg/JPEGImageWriter.java | 2 +- src/share/classes/com/sun/imageio/plugins/jpeg/JPEGMetadata.java | 9 +- src/share/classes/com/sun/java/swing/plaf/gtk/GTKEngine.java | 3 +- src/share/classes/com/sun/java/swing/plaf/gtk/GTKLookAndFeel.java | 10 +- src/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java | 5 +- src/share/classes/com/sun/java/swing/plaf/windows/resources/windows_fr.properties | 4 +- src/share/classes/com/sun/java/util/jar/pack/Code.java | 1 - src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java | 80 +- src/share/classes/com/sun/java/util/jar/pack/DriverResource_ja.java | 131 + src/share/classes/com/sun/java/util/jar/pack/DriverResource_zh_CN.java | 131 + src/share/classes/com/sun/jmx/remote/security/MBeanServerFileAccessController.java | 2 + src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java | 93 +- src/share/classes/com/sun/jmx/remote/util/CacheMap.java | 121 - src/share/classes/com/sun/jndi/dns/DnsContextFactory.java | 2 +- src/share/classes/com/sun/naming/internal/ResourceManager.java | 42 +- src/share/classes/com/sun/rowset/RowSetResourceBundle_de.properties | 2 +- src/share/classes/com/sun/rowset/RowSetResourceBundle_ja.properties | 6 +- src/share/classes/com/sun/rowset/RowSetResourceBundle_sv.properties | 10 +- src/share/classes/com/sun/script/javascript/RhinoScriptEngine.java | 2 +- src/share/classes/com/sun/script/javascript/RhinoScriptEngineFactory.java | 8 +- src/share/classes/com/sun/script/javascript/RhinoTopLevel.java | 2 +- src/share/classes/com/sun/security/auth/module/Krb5LoginModule.java | 3 +- src/share/classes/com/sun/security/sasl/CramMD5Base.java | 20 +- src/share/classes/com/sun/security/sasl/util/AbstractSaslImpl.java | 20 +- src/share/classes/com/sun/swing/internal/plaf/metal/resources/metal_fr.properties | 4 +- src/share/classes/com/sun/swing/internal/plaf/synth/resources/synth_fr.properties | 4 +- src/share/classes/com/sun/tools/jdi/resources/jdi_ja.properties | 4 +- src/share/classes/java/awt/AWTException.java | 4 +- src/share/classes/java/awt/Component.java | 15 +- src/share/classes/java/awt/KeyboardFocusManager.java | 72 +- src/share/classes/java/awt/Toolkit.java | 26 +- src/share/classes/java/awt/color/ICC_Profile.java | 4 +- src/share/classes/java/awt/event/InvocationEvent.java | 2 +- src/share/classes/java/io/InputStream.java | 2 +- src/share/classes/java/lang/AbstractStringBuilder.java | 4 +- src/share/classes/java/lang/Class.java | 49 +- src/share/classes/java/lang/ConditionalSpecialCasing.java | 6 +- src/share/classes/java/lang/ProcessBuilder.java | 6 + src/share/classes/java/lang/String.java | 11 +- src/share/classes/java/lang/System.java | 3 + src/share/classes/java/lang/Thread.java | 3 +- src/share/classes/java/lang/invoke/BoundMethodHandle.java | 83 +- src/share/classes/java/lang/invoke/DirectMethodHandle.java | 113 +- src/share/classes/java/lang/invoke/InvokerBytecodeGenerator.java | 9 +- src/share/classes/java/lang/invoke/Invokers.java | 1 + src/share/classes/java/lang/invoke/MethodHandle.java | 10 + src/share/classes/java/lang/invoke/MethodHandleImpl.java | 37 +- src/share/classes/java/lang/invoke/MethodHandles.java | 128 +- src/share/classes/java/lang/ref/Finalizer.java | 44 +- src/share/classes/java/lang/reflect/Proxy.java | 428 +- src/share/classes/java/lang/reflect/WeakCache.java | 393 + src/share/classes/java/net/IDN.java | 40 +- src/share/classes/java/net/SocksSocketImpl.java | 4 +- src/share/classes/java/nio/charset/Charset.java | 56 +- src/share/classes/java/nio/file/Files.java | 79 +- src/share/classes/java/security/Policy.java | 1 - src/share/classes/java/security/Provider.java | 36 +- src/share/classes/java/util/ComparableTimSort.java | 2 +- src/share/classes/java/util/HashMap.java | 8 +- src/share/classes/java/util/TimSort.java | 2 +- src/share/classes/java/util/TimeZone.java | 31 +- src/share/classes/java/util/concurrent/atomic/AtomicReferenceFieldUpdater.java | 2 + src/share/classes/java/util/jar/JarFile.java | 13 +- src/share/classes/java/util/jar/JarVerifier.java | 12 +- src/share/classes/java/util/logging/Level.java | 72 +- src/share/classes/java/util/logging/LogManager.java | 70 +- src/share/classes/java/util/logging/Logger.java | 5 +- src/share/classes/javax/crypto/Cipher.java | 172 +- src/share/classes/javax/management/MBeanAttributeInfo.java | 11 +- src/share/classes/javax/management/MBeanConstructorInfo.java | 13 +- src/share/classes/javax/management/MBeanFeatureInfo.java | 7 +- src/share/classes/javax/management/MBeanInfo.java | 20 +- src/share/classes/javax/management/MBeanNotificationInfo.java | 7 +- src/share/classes/javax/management/MBeanOperationInfo.java | 11 +- src/share/classes/javax/management/MBeanParameterInfo.java | 12 +- src/share/classes/javax/management/openmbean/OpenMBeanInfoSupport.java | 8 +- src/share/classes/javax/management/relation/RelationNotification.java | 24 +- src/share/classes/javax/management/remote/rmi/RMIConnector.java | 33 +- src/share/classes/javax/script/ScriptEngineManager.java | 24 +- src/share/classes/javax/swing/JComponent.java | 13 +- src/share/classes/javax/swing/JDialog.java | 3 +- src/share/classes/javax/swing/JEditorPane.java | 11 +- src/share/classes/javax/swing/JFrame.java | 10 +- src/share/classes/javax/swing/JInternalFrame.java | 6 +- src/share/classes/javax/swing/JPopupMenu.java | 10 +- src/share/classes/javax/swing/MenuSelectionManager.java | 5 +- src/share/classes/javax/swing/PopupFactory.java | 14 +- src/share/classes/javax/swing/SwingUtilities.java | 3 +- src/share/classes/javax/swing/SwingWorker.java | 2 +- src/share/classes/javax/swing/filechooser/FileSystemView.java | 3 +- src/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java | 6 +- src/share/classes/javax/swing/plaf/basic/BasicListUI.java | 5 +- src/share/classes/javax/swing/plaf/basic/BasicPopupMenuUI.java | 16 +- src/share/classes/javax/swing/plaf/basic/BasicTableUI.java | 8 +- src/share/classes/javax/swing/plaf/basic/BasicTreeUI.java | 12 +- src/share/classes/javax/swing/plaf/synth/ImagePainter.java | 5 +- src/share/classes/javax/swing/plaf/synth/SynthLookAndFeel.java | 3 +- src/share/classes/javax/swing/text/FlowView.java | 18 +- src/share/classes/javax/swing/text/GlyphView.java | 4 +- src/share/classes/javax/swing/text/JTextComponent.java | 6 +- src/share/classes/javax/swing/text/View.java | 78 +- src/share/classes/org/jcp/xml/dsig/internal/dom/DOMHMACSignatureMethod.java | 2 - src/share/classes/sun/applet/AppletPanel.java | 10 +- src/share/classes/sun/applet/AppletViewerPanel.java | 18 +- src/share/classes/sun/applet/resources/MsgAppletViewer_ja.java | 10 +- src/share/classes/sun/applet/resources/MsgAppletViewer_pt_BR.java | 2 +- src/share/classes/sun/applet/resources/MsgAppletViewer_sv.java | 2 +- src/share/classes/sun/awt/AWTAccessor.java | 34 +- src/share/classes/sun/awt/AppContext.java | 14 + src/share/classes/sun/awt/FontConfiguration.java | 4 +- src/share/classes/sun/awt/datatransfer/ClipboardTransferable.java | 3 +- src/share/classes/sun/awt/datatransfer/DataTransferer.java | 52 +- src/share/classes/sun/awt/image/JPEGImageDecoder.java | 2 +- src/share/classes/sun/awt/resources/awt_pt_BR.properties | 8 +- src/share/classes/sun/invoke/util/VerifyAccess.java | 33 +- src/share/classes/sun/java2d/cmm/lcms/LCMS.java | 2 +- src/share/classes/sun/launcher/resources/launcher_de.properties | 2 +- src/share/classes/sun/launcher/resources/launcher_pt_BR.properties | 6 +- src/share/classes/sun/management/resources/agent_ja.properties | 2 +- src/share/classes/sun/misc/FloatingDecimal.java | 13 + src/share/classes/sun/misc/JavaLangAccess.java | 5 + src/share/classes/sun/misc/SharedSecrets.java | 7 +- src/share/classes/sun/misc/VM.java | 17 +- src/share/classes/sun/misc/Version.java.template | 58 +- src/share/classes/sun/nio/ch/FileChannelImpl.java | 3 +- src/share/classes/sun/nio/ch/FileDispatcher.java | 12 +- src/share/classes/sun/nio/ch/SimpleAsynchronousFileChannelImpl.java | 3 +- src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java | 2 +- src/share/classes/sun/nio/cs/ext/META-INF/services/java.nio.charset.spi.CharsetProvider | 2 - src/share/classes/sun/print/DocumentPropertiesUI.java | 62 + src/share/classes/sun/print/PrinterJobWrapper.java | 60 + src/share/classes/sun/print/RasterPrinterJob.java | 4 + src/share/classes/sun/print/ServiceDialog.java | 32 +- src/share/classes/sun/rmi/registry/RegistryImpl.java | 14 + src/share/classes/sun/rmi/server/LoaderHandler.java | 2 +- src/share/classes/sun/rmi/server/UnicastServerRef.java | 2 +- src/share/classes/sun/security/ec/ECKeyPairGenerator.java | 23 +- src/share/classes/sun/security/jgss/spnego/SpNegoContext.java | 4 + src/share/classes/sun/security/krb5/Credentials.java | 17 +- src/share/classes/sun/security/krb5/Realm.java | 421 +- src/share/classes/sun/security/krb5/internal/CredentialsUtil.java | 8 +- src/share/classes/sun/security/krb5/internal/ccache/FileCredentialsCache.java | 96 +- src/share/classes/sun/security/pkcs11/Config.java | 3 + src/share/classes/sun/security/pkcs11/P11Cipher.java | 388 +- src/share/classes/sun/security/pkcs11/P11Digest.java | 185 +- src/share/classes/sun/security/pkcs11/P11Util.java | 2 +- src/share/classes/sun/security/pkcs11/SunPKCS11.java | 23 +- src/share/classes/sun/security/pkcs11/wrapper/PKCS11.java | 377 +- src/share/classes/sun/security/provider/SeedGenerator.java | 31 +- src/share/classes/sun/security/provider/certpath/OCSP.java | 18 +- src/share/classes/sun/security/rsa/RSACore.java | 323 +- src/share/classes/sun/security/ssl/SSLEngineImpl.java | 11 + src/share/classes/sun/security/ssl/SSLSocketImpl.java | 4 +- src/share/classes/sun/security/tools/JarSignerResources_zh_CN.java | 4 +- src/share/classes/sun/security/util/KeyUtil.java | 13 +- src/share/classes/sun/security/util/ObjectIdentifier.java | 2 +- src/share/classes/sun/swing/DefaultLookup.java | 3 +- src/share/classes/sun/swing/SwingUtilities2.java | 131 +- src/share/classes/sun/tools/attach/META-INF/services/com.sun.tools.attach.spi.AttachProvider | 1 + src/share/classes/sun/tools/jar/Main.java | 2 +- src/share/classes/sun/tools/jar/resources/jar_pt_BR.properties | 2 +- src/share/classes/sun/tools/jconsole/Messages.java | 7 +- src/share/classes/sun/tools/jconsole/SummaryTab.java | 4 +- src/share/classes/sun/tools/jconsole/ThreadTab.java | 5 +- src/share/classes/sun/tools/jconsole/VMPanel.java | 4 +- src/share/classes/sun/tools/jconsole/resources/messages.properties | 7 +- src/share/classes/sun/tools/jconsole/resources/messages_ja.properties | 20 +- src/share/classes/sun/tools/jconsole/resources/messages_zh_CN.properties | 8 +- src/share/classes/sun/tools/native2ascii/Main.java | 9 +- src/share/classes/sun/util/calendar/ZoneInfoFile.java | 41 +- src/share/classes/sun/util/logging/resources/logging.properties | 18 +- src/share/classes/sun/util/logging/resources/logging_zh_TW.properties | 2 +- src/share/classes/sun/util/resources/CalendarData_pt_BR.properties | 40 + src/share/classes/sun/util/resources/TimeZoneNames.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_de.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_es.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_fr.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_it.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_ja.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_ko.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_pt_BR.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_sv.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_zh_CN.java | 8 +- src/share/classes/sun/util/resources/TimeZoneNames_zh_TW.java | 8 +- src/share/demo/jvmti/gctest/sample.makefile.txt | 6 +- src/share/demo/jvmti/heapTracker/sample.makefile.txt | 19 +- src/share/demo/jvmti/heapViewer/sample.makefile.txt | 5 +- src/share/demo/jvmti/hprof/hprof_init.c | 9 + src/share/demo/jvmti/hprof/hprof_md.h | 2 +- src/share/demo/jvmti/hprof/sample.makefile.txt | 6 +- src/share/demo/jvmti/minst/sample.makefile.txt | 19 +- src/share/demo/jvmti/mtrace/sample.makefile.txt | 20 +- src/share/demo/jvmti/versionCheck/sample.makefile.txt | 6 +- src/share/demo/jvmti/waiters/sample.makefile.txt | 8 +- src/share/demo/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java | 4 +- src/share/instrument/JarFacade.c | 4 +- src/share/lib/security/java.security-linux | 4 + src/share/lib/security/java.security-macosx | 4 + src/share/lib/security/java.security-solaris | 4 + src/share/lib/security/java.security-windows | 4 + src/share/lib/security/nss.cfg.in | 5 + src/share/lib/security/sunpkcs11-solaris.cfg | 14 +- src/share/native/com/sun/java/util/jar/pack/defines.h | 3 +- src/share/native/com/sun/java/util/jar/pack/jni.cpp | 99 +- src/share/native/com/sun/java/util/jar/pack/unpack.cpp | 37 +- src/share/native/com/sun/java/util/jar/pack/zip.cpp | 2 +- src/share/native/com/sun/media/sound/SoundDefs.h | 9 + src/share/native/common/check_code.c | 41 + src/share/native/java/lang/Class.c | 13 + src/share/native/java/lang/ref/Finalizer.c | 42 - src/share/native/java/net/net_util.c | 9 + src/share/native/java/util/zip/Deflater.c | 46 +- src/share/native/java/util/zip/Inflater.c | 6 +- src/share/native/sun/awt/image/awt_ImageRep.c | 2 +- src/share/native/sun/awt/image/jpeg/README | 385 - src/share/native/sun/awt/image/jpeg/imageioJPEG.c | 12 +- src/share/native/sun/awt/image/jpeg/jcapimin.c | 284 - src/share/native/sun/awt/image/jpeg/jcapistd.c | 165 - src/share/native/sun/awt/image/jpeg/jccoefct.c | 453 - src/share/native/sun/awt/image/jpeg/jccolor.c | 462 - src/share/native/sun/awt/image/jpeg/jcdctmgr.c | 391 - src/share/native/sun/awt/image/jpeg/jchuff.c | 913 -- src/share/native/sun/awt/image/jpeg/jchuff.h | 51 - src/share/native/sun/awt/image/jpeg/jcinit.c | 76 - src/share/native/sun/awt/image/jpeg/jcmainct.c | 297 - src/share/native/sun/awt/image/jpeg/jcmarker.c | 682 - src/share/native/sun/awt/image/jpeg/jcmaster.c | 594 - src/share/native/sun/awt/image/jpeg/jcomapi.c | 110 - src/share/native/sun/awt/image/jpeg/jconfig.h | 43 - src/share/native/sun/awt/image/jpeg/jcparam.c | 614 - src/share/native/sun/awt/image/jpeg/jcphuff.c | 837 -- src/share/native/sun/awt/image/jpeg/jcprepct.c | 358 - src/share/native/sun/awt/image/jpeg/jcsample.c | 523 - src/share/native/sun/awt/image/jpeg/jctrans.c | 392 - src/share/native/sun/awt/image/jpeg/jdapimin.c | 399 - src/share/native/sun/awt/image/jpeg/jdapistd.c | 279 - src/share/native/sun/awt/image/jpeg/jdcoefct.c | 740 - src/share/native/sun/awt/image/jpeg/jdcolor.c | 398 - src/share/native/sun/awt/image/jpeg/jdct.h | 180 - src/share/native/sun/awt/image/jpeg/jddctmgr.c | 273 - src/share/native/sun/awt/image/jpeg/jdhuff.c | 655 - src/share/native/sun/awt/image/jpeg/jdhuff.h | 205 - src/share/native/sun/awt/image/jpeg/jdinput.c | 385 - src/share/native/sun/awt/image/jpeg/jdmainct.c | 516 - src/share/native/sun/awt/image/jpeg/jdmarker.c | 1390 --- src/share/native/sun/awt/image/jpeg/jdmaster.c | 561 - src/share/native/sun/awt/image/jpeg/jdmerge.c | 404 - src/share/native/sun/awt/image/jpeg/jdphuff.c | 672 - src/share/native/sun/awt/image/jpeg/jdpostct.c | 294 - src/share/native/sun/awt/image/jpeg/jdsample.c | 482 - src/share/native/sun/awt/image/jpeg/jdtrans.c | 147 - src/share/native/sun/awt/image/jpeg/jerror.c | 272 - src/share/native/sun/awt/image/jpeg/jerror.h | 295 - src/share/native/sun/awt/image/jpeg/jfdctflt.c | 172 - src/share/native/sun/awt/image/jpeg/jfdctfst.c | 228 - src/share/native/sun/awt/image/jpeg/jfdctint.c | 287 - src/share/native/sun/awt/image/jpeg/jidctflt.c | 246 - src/share/native/sun/awt/image/jpeg/jidctfst.c | 372 - src/share/native/sun/awt/image/jpeg/jidctint.c | 393 - src/share/native/sun/awt/image/jpeg/jidctred.c | 402 - src/share/native/sun/awt/image/jpeg/jinclude.h | 95 - src/share/native/sun/awt/image/jpeg/jmemmgr.c | 1124 -- src/share/native/sun/awt/image/jpeg/jmemnobs.c | 113 - src/share/native/sun/awt/image/jpeg/jmemsys.h | 202 - src/share/native/sun/awt/image/jpeg/jmorecfg.h | 378 - src/share/native/sun/awt/image/jpeg/jpeg-6b/README | 385 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcapimin.c | 284 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcapistd.c | 165 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jccoefct.c | 453 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jccolor.c | 462 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcdctmgr.c | 391 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jchuff.c | 913 ++ src/share/native/sun/awt/image/jpeg/jpeg-6b/jchuff.h | 51 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcinit.c | 76 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcmainct.c | 297 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcmarker.c | 682 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcmaster.c | 594 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcomapi.c | 110 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jconfig.h | 43 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcparam.c | 614 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcphuff.c | 837 ++ src/share/native/sun/awt/image/jpeg/jpeg-6b/jcprepct.c | 358 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jcsample.c | 523 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jctrans.c | 392 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdapimin.c | 399 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdapistd.c | 279 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdcoefct.c | 740 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdcolor.c | 398 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdct.h | 180 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jddctmgr.c | 273 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdhuff.c | 655 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdhuff.h | 205 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdinput.c | 385 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdmainct.c | 516 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdmarker.c | 1390 +++ src/share/native/sun/awt/image/jpeg/jpeg-6b/jdmaster.c | 561 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdmerge.c | 404 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdphuff.c | 672 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdpostct.c | 294 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdsample.c | 482 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jdtrans.c | 147 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jerror.c | 272 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jerror.h | 295 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jfdctflt.c | 172 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jfdctfst.c | 228 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jfdctint.c | 287 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jidctflt.c | 246 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jidctfst.c | 372 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jidctint.c | 393 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jidctred.c | 402 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jinclude.h | 95 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jmemmgr.c | 1124 ++ src/share/native/sun/awt/image/jpeg/jpeg-6b/jmemnobs.c | 113 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jmemsys.h | 202 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jmorecfg.h | 378 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jpegint.h | 396 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jpeglib.h | 1100 ++ src/share/native/sun/awt/image/jpeg/jpeg-6b/jquant1.c | 860 ++ src/share/native/sun/awt/image/jpeg/jpeg-6b/jquant2.c | 1314 +++ src/share/native/sun/awt/image/jpeg/jpeg-6b/jutils.c | 183 + src/share/native/sun/awt/image/jpeg/jpeg-6b/jversion.h | 18 + src/share/native/sun/awt/image/jpeg/jpegdecoder.c | 2 +- src/share/native/sun/awt/image/jpeg/jpegint.h | 396 - src/share/native/sun/awt/image/jpeg/jpeglib.h | 1100 -- src/share/native/sun/awt/image/jpeg/jquant1.c | 860 -- src/share/native/sun/awt/image/jpeg/jquant2.c | 1314 --- src/share/native/sun/awt/image/jpeg/jutils.c | 183 - src/share/native/sun/awt/image/jpeg/jversion.h | 18 - src/share/native/sun/awt/medialib/awt_ImagingLib.c | 26 +- src/share/native/sun/awt/medialib/mlib_sys.c | 2 +- src/share/native/sun/awt/medialib/mlib_types.h | 7 +- src/share/native/sun/awt/splashscreen/splashscreen_gif.c | 11 +- src/share/native/sun/awt/splashscreen/splashscreen_jpeg.c | 7 +- src/share/native/sun/awt/splashscreen/splashscreen_png.c | 2 +- src/share/native/sun/font/freetypeScaler.c | 239 +- src/share/native/sun/java2d/loops/GraphicsPrimitiveMgr.h | 6 +- src/share/native/sun/java2d/loops/TransformHelper.c | 11 +- src/share/native/sun/java2d/opengl/OGLContext.c | 2 + src/share/native/sun/java2d/opengl/OGLFuncs.h | 2 +- src/share/native/sun/management/GcInfoBuilder.c | 2 +- src/share/native/sun/security/ec/ECC_JNI.cpp | 129 +- src/share/native/sun/security/ec/ecc_impl.h | 297 + src/share/native/sun/security/ec/impl/ecc_impl.h | 263 - src/share/native/sun/security/jgss/wrapper/GSSLibStub.c | 185 +- src/share/native/sun/security/jgss/wrapper/NativeUtil.c | 17 +- src/share/native/sun/security/krb5/nativeccache.c | 29 +- src/share/native/sun/security/pkcs11/wrapper/p11_convert.c | 42 +- src/share/native/sun/security/pkcs11/wrapper/p11_crypt.c | 12 +- src/share/native/sun/security/pkcs11/wrapper/p11_digest.c | 7 +- src/share/native/sun/security/pkcs11/wrapper/p11_dual.c | 8 +- src/share/native/sun/security/pkcs11/wrapper/p11_general.c | 17 +- src/share/native/sun/security/pkcs11/wrapper/p11_keymgmt.c | 4 +- src/share/native/sun/security/pkcs11/wrapper/p11_mutex.c | 58 +- src/share/native/sun/security/pkcs11/wrapper/p11_objmgmt.c | 4 +- src/share/native/sun/security/pkcs11/wrapper/p11_sessmgmt.c | 14 +- src/share/native/sun/security/pkcs11/wrapper/p11_sign.c | 27 +- src/share/native/sun/security/pkcs11/wrapper/p11_util.c | 90 +- src/share/native/sun/security/pkcs11/wrapper/pkcs11wrapper.h | 9 +- src/share/npt/npt.h | 8 +- src/solaris/back/exec_md.c | 4 +- src/solaris/back/linker_md.c | 32 +- src/solaris/bin/aarch64/jvm.cfg | 36 + src/solaris/bin/java_md_solinux.c | 27 +- src/solaris/bin/ppc64/jvm.cfg | 33 + src/solaris/classes/java/lang/UNIXProcess.java.aix | 303 + src/solaris/classes/java/lang/UNIXProcess.java.bsd | 44 +- src/solaris/classes/java/lang/UNIXProcess.java.linux | 44 +- src/solaris/classes/sun/awt/UNIXToolkit.java | 6 + src/solaris/classes/sun/awt/X11/MotifDnDConstants.java | 42 +- src/solaris/classes/sun/awt/X11/MotifDnDDropTargetProtocol.java | 40 +- src/solaris/classes/sun/awt/X11/WindowPropertyGetter.java | 6 +- src/solaris/classes/sun/awt/X11/XConstants.java | 7 +- src/solaris/classes/sun/awt/X11/XDnDDragSourceProtocol.java | 18 +- src/solaris/classes/sun/awt/X11/XDnDDropTargetProtocol.java | 94 +- src/solaris/classes/sun/awt/X11/XDragSourceProtocol.java | 24 +- src/solaris/classes/sun/awt/X11/XDropTargetRegistry.java | 38 +- src/solaris/classes/sun/awt/X11/XEmbedCanvasPeer.java | 12 +- src/solaris/classes/sun/awt/X11/XErrorHandler.java | 4 +- src/solaris/classes/sun/awt/X11/XErrorHandlerUtil.java | 168 + src/solaris/classes/sun/awt/X11/XFramePeer.java | 5 + src/solaris/classes/sun/awt/X11/XKeyboardFocusManagerPeer.java | 10 +- src/solaris/classes/sun/awt/X11/XNETProtocol.java | 29 +- src/solaris/classes/sun/awt/X11/XQueryTree.java | 6 +- src/solaris/classes/sun/awt/X11/XToolkit.java | 75 - src/solaris/classes/sun/awt/X11/XTranslateCoordinates.java | 6 +- src/solaris/classes/sun/awt/X11/XWM.java | 37 +- src/solaris/classes/sun/awt/X11/XWindowPeer.java | 2 + src/solaris/classes/sun/awt/X11/XlibUtil.java | 14 +- src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java | 6 +- src/solaris/classes/sun/awt/fontconfigs/aix.fontconfig.properties | 75 + src/solaris/classes/sun/font/FcFontConfiguration.java | 19 +- src/solaris/classes/sun/nio/ch/AixAsynchronousChannelProvider.java | 91 + src/solaris/classes/sun/nio/ch/AixPollPort.java | 536 + src/solaris/classes/sun/nio/ch/DefaultAsynchronousChannelProvider.java | 2 + src/solaris/classes/sun/nio/ch/FileDispatcherImpl.java | 8 +- src/solaris/classes/sun/nio/ch/Port.java | 8 + src/solaris/classes/sun/nio/fs/AixFileStore.java | 106 + src/solaris/classes/sun/nio/fs/AixFileSystem.java | 94 + src/solaris/classes/sun/nio/fs/AixFileSystemProvider.java | 58 + src/solaris/classes/sun/nio/fs/AixNativeDispatcher.java | 56 + src/solaris/classes/sun/nio/fs/DefaultFileSystemProvider.java | 2 + src/solaris/classes/sun/nio/fs/UnixCopyFile.java | 8 +- src/solaris/classes/sun/nio/fs/UnixFileAttributeViews.java | 6 +- src/solaris/classes/sun/nio/fs/UnixNativeDispatcher.java | 4 +- src/solaris/classes/sun/nio/fs/UnixSecureDirectoryStream.java | 4 +- src/solaris/classes/sun/print/UnixPrintService.java | 73 +- src/solaris/classes/sun/print/UnixPrintServiceLookup.java | 97 +- src/solaris/classes/sun/security/smartcardio/PlatformPCSC.java | 4 +- src/solaris/classes/sun/tools/attach/AixAttachProvider.java | 88 + src/solaris/classes/sun/tools/attach/AixVirtualMachine.java | 317 + src/solaris/demo/jvmti/hprof/hprof_md.c | 126 +- src/solaris/javavm/export/jni_md.h | 18 +- src/solaris/native/com/sun/management/UnixOperatingSystem_md.c | 20 +- src/solaris/native/com/sun/security/auth/module/Solaris.c | 17 +- src/solaris/native/com/sun/security/auth/module/Unix.c | 102 +- src/solaris/native/common/deps/cups_fp.c | 104 + src/solaris/native/common/deps/cups_fp.h | 61 + src/solaris/native/common/deps/fontconfig2/fontconfig/fontconfig.h | 302 + src/solaris/native/common/deps/fontconfig2/fontconfig_fp.c | 207 + src/solaris/native/common/deps/fontconfig2/fontconfig_fp.h | 161 + src/solaris/native/common/deps/gconf2/gconf/gconf-client.h | 41 + src/solaris/native/common/deps/gconf2/gconf_fp.c | 76 + src/solaris/native/common/deps/gconf2/gconf_fp.h | 48 + src/solaris/native/common/deps/glib2/gio/gio_typedefs.h | 65 + src/solaris/native/common/deps/glib2/gio_fp.c | 109 + src/solaris/native/common/deps/glib2/gio_fp.h | 61 + src/solaris/native/common/deps/glib2/glib_fp.h | 41 + src/solaris/native/common/deps/gtk2/gtk/gtk.h | 567 + src/solaris/native/common/deps/gtk2/gtk_fp.c | 370 + src/solaris/native/common/deps/gtk2/gtk_fp.h | 468 + src/solaris/native/common/deps/gtk2/gtk_fp_check.c | 54 + src/solaris/native/common/deps/gtk2/gtk_fp_check.h | 30 + src/solaris/native/common/deps/syscalls_fp.c | 122 + src/solaris/native/common/deps/syscalls_fp.h | 79 + src/solaris/native/java/io/UnixFileSystem_md.c | 2 +- src/solaris/native/java/lang/UNIXProcess_md.c | 2 +- src/solaris/native/java/lang/java_props_macosx.c | 14 +- src/solaris/native/java/lang/java_props_macosx.h | 1 + src/solaris/native/java/lang/java_props_md.c | 35 +- src/solaris/native/java/net/Inet4AddressImpl.c | 55 + src/solaris/native/java/net/NetworkInterface.c | 177 +- src/solaris/native/java/net/PlainDatagramSocketImpl.c | 24 +- src/solaris/native/java/net/PlainSocketImpl.c | 5 +- src/solaris/native/java/net/SocketInputStream.c | 2 + src/solaris/native/java/net/bsd_close.c | 29 +- src/solaris/native/java/net/linux_close.c | 81 +- src/solaris/native/java/net/net_util_md.c | 31 +- src/solaris/native/java/net/net_util_md.h | 13 +- src/solaris/native/java/util/TimeZone_md.c | 76 +- src/solaris/native/sun/awt/CUPSfuncs.c | 137 +- src/solaris/native/sun/awt/awt_DrawingSurface.c | 12 +- src/solaris/native/sun/awt/awt_GTKToolkit.c | 228 + src/solaris/native/sun/awt/awt_GraphicsEnv.c | 19 +- src/solaris/native/sun/awt/awt_GraphicsEnv.h | 2 +- src/solaris/native/sun/awt/awt_LoadLibrary.c | 65 +- src/solaris/native/sun/awt/awt_UNIXToolkit.c | 199 - src/solaris/native/sun/awt/awt_util.c | 10 +- src/solaris/native/sun/awt/awt_util.h | 12 +- src/solaris/native/sun/awt/awt_wm.c | 26 +- src/solaris/native/sun/awt/awt_xembed_server.c | 2 +- src/solaris/native/sun/awt/fontconfig.h | 941 -- src/solaris/native/sun/awt/fontpath.c | 420 +- src/solaris/native/sun/awt/gtk2_interface.c | 987 +- src/solaris/native/sun/awt/gtk2_interface.h | 588 +- src/solaris/native/sun/awt/gtk2_interface_check.c | 34 + src/solaris/native/sun/awt/gtk2_interface_check.h | 42 + src/solaris/native/sun/awt/splashscreen/splashscreen_sys.c | 7 + src/solaris/native/sun/awt/sun_awt_X11_GtkFileDialogPeer.c | 68 +- src/solaris/native/sun/awt/swing_GTKEngine.c | 76 +- src/solaris/native/sun/awt/swing_GTKStyle.c | 20 +- src/solaris/native/sun/java2d/opengl/GLXSurfaceData.c | 7 +- src/solaris/native/sun/java2d/opengl/OGLFuncs_md.h | 2 +- src/solaris/native/sun/java2d/x11/X11SurfaceData.c | 6 +- src/solaris/native/sun/java2d/x11/XRBackendNative.c | 6 +- src/solaris/native/sun/net/spi/DefaultProxySelector.c | 465 +- src/solaris/native/sun/nio/ch/AixPollPort.c | 181 + src/solaris/native/sun/nio/ch/DatagramChannelImpl.c | 2 +- src/solaris/native/sun/nio/ch/EPollArrayWrapper.c | 1 - src/solaris/native/sun/nio/ch/FileDispatcherImpl.c | 54 +- src/solaris/native/sun/nio/ch/Net.c | 126 +- src/solaris/native/sun/nio/ch/PollArrayWrapper.c | 51 +- src/solaris/native/sun/nio/ch/SctpChannelImpl.c | 49 +- src/solaris/native/sun/nio/ch/ServerSocketChannelImpl.c | 9 + src/solaris/native/sun/nio/fs/AixNativeDispatcher.c | 224 + src/solaris/native/sun/nio/fs/GnomeFileTypeDetector.c | 94 +- src/solaris/native/sun/nio/fs/LinuxNativeDispatcher.c | 50 +- src/solaris/native/sun/nio/fs/UnixNativeDispatcher.c | 179 +- src/solaris/native/sun/security/krb5/internal/ccache/krb5ccache.c | 113 + src/solaris/native/sun/security/pkcs11/j2secmod_md.c | 15 +- src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c | 2 +- src/solaris/native/sun/security/pkcs11/wrapper/p11_md.h | 5 + src/solaris/native/sun/security/smartcardio/pcsc_md.c | 39 +- src/solaris/native/sun/security/smartcardio/pcsc_md.h | 40 + src/solaris/native/sun/tools/attach/AixVirtualMachine.c | 283 + src/solaris/native/sun/tools/attach/BsdVirtualMachine.c | 4 + src/solaris/native/sun/xawt/XlibWrapper.c | 9 +- src/solaris/native/sun/xawt/awt_Desktop.c | 103 +- src/windows/back/linker_md.c | 38 +- src/windows/bin/cmdtoargs.c | 76 +- src/windows/bin/java_md.c | 8 + src/windows/classes/java/lang/ProcessImpl.java | 6 +- src/windows/classes/java/net/DualStackPlainSocketImpl.java | 5 +- src/windows/classes/java/net/PlainSocketImpl.java | 19 +- src/windows/classes/sun/awt/shell/Win32ShellFolder2.java | 9 +- src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java | 10 + src/windows/classes/sun/awt/windows/ThemeReader.java | 32 +- src/windows/classes/sun/awt/windows/WPrinterJob.java | 315 +- src/windows/classes/sun/awt/windows/WToolkit.java | 18 +- src/windows/classes/sun/awt/windows/WWindowPeer.java | 1 + src/windows/classes/sun/nio/ch/FileDispatcherImpl.java | 3 +- src/windows/classes/sun/nio/ch/WindowsAsynchronousFileChannelImpl.java | 9 +- src/windows/classes/sun/nio/fs/WindowsConstants.java | 1 + src/windows/classes/sun/nio/fs/WindowsNativeDispatcher.java | 14 +- src/windows/classes/sun/nio/fs/WindowsWatchService.java | 104 +- src/windows/classes/sun/print/Win32MediaTray.java | 4 + src/windows/classes/sun/print/Win32PrintService.java | 238 +- src/windows/demo/jvmti/hprof/hprof_md.c | 37 +- src/windows/native/java/lang/ProcessImpl_md.c | 462 +- src/windows/native/java/lang/java_props_md.c | 4 +- src/windows/native/java/net/SocketInputStream.c | 52 +- src/windows/native/sun/nio/ch/SocketDispatcher.c | 67 +- src/windows/native/sun/nio/fs/WindowsNativeDispatcher.c | 28 +- src/windows/native/sun/security/krb5/NativeCreds.c | 106 +- src/windows/native/sun/security/pkcs11/j2secmod_md.c | 4 +- src/windows/native/sun/security/pkcs11/wrapper/p11_md.h | 4 + src/windows/native/sun/windows/awt_Component.cpp | 4 +- src/windows/native/sun/windows/awt_FileDialog.cpp | 4 +- src/windows/native/sun/windows/awt_Frame.cpp | 2 + src/windows/native/sun/windows/awt_PrintControl.cpp | 6 + src/windows/native/sun/windows/awt_PrintControl.h | 2 +- src/windows/native/sun/windows/awt_PrintJob.cpp | 167 +- src/windows/resource/java.manifest | 10 +- test/ProblemList.txt | 9 - test/com/apple/eawt/DefaultMenuBar/DefaultMenuBarTest.java | 108 + test/com/oracle/security/ucrypto/TestAES.java | 118 +- test/com/oracle/security/ucrypto/TestDigest.java | 24 +- test/com/oracle/security/ucrypto/TestRSA.java | 276 +- test/com/oracle/security/ucrypto/UcryptoTest.java | 28 +- test/com/sun/corba/cachedSocket/7056731.sh | 2 +- test/com/sun/corba/transport/KeepAliveSockets.java | 68 + test/com/sun/crypto/provider/Cipher/UTIL/TestUtil.java | 13 +- test/com/sun/jdi/ImmutableResourceTest.sh | 2 +- test/com/sun/jdi/JITDebug.sh | 2 +- test/com/sun/jdi/ShellScaffold.sh | 4 +- test/com/sun/jdi/Solaris32AndSolaris64Test.sh | 2 +- test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh | 2 +- test/com/sun/nio/sctp/SctpChannel/ReceiveIntoDirect.java | 276 + test/com/sun/tools/attach/CommonSetup.sh | 2 +- test/java/awt/Component/PrintAllXcheckJNI/PrintAllXcheckJNI.java | 9 + test/java/awt/DataFlavor/MissedHtmlAndRtfBug/InterprocessMessages.java | 3 +- test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.html | 25 +- test/java/awt/DataFlavor/MissedHtmlAndRtfBug/MissedHtmlAndRtfBug.java | 17 +- test/java/awt/Focus/8013611/JDK8013611.java | 111 + test/java/awt/Focus/DialogTraversFocusBackTest/DialogTraversFocusBackTest.java | 94 + test/java/awt/Focus/KeyEventForBadFocusOwnerTest/KeyEventForBadFocusOwnerTest.java | 144 + test/java/awt/Frame/7024749/bug7024749.java | 2 +- test/java/awt/Frame/DefaultUnixIcon/TestUnixDefaultIcon.java | 448 + test/java/awt/FullScreen/TranslucentWindow/TranslucentWindow.java | 1 + test/java/awt/JAWT/JAWT.sh | 173 + test/java/awt/JAWT/Makefile.cygwin | 49 + test/java/awt/JAWT/Makefile.unix | 48 + test/java/awt/JAWT/Makefile.win | 47 + test/java/awt/JAWT/MyCanvas.java | 72 + test/java/awt/JAWT/myfile.c | 106 + test/java/awt/JAWT/myfile.cpp | 110 + test/java/awt/List/FirstItemRemoveTest/FirstItemRemoveTest.html | 43 + test/java/awt/List/FirstItemRemoveTest/FirstItemRemoveTest.java | 119 + test/java/awt/Toolkit/AutoShutdown/ShowExitTest/ShowExitTest.sh | 8 + test/java/awt/Toolkit/ToolkitPropertyTest/bug7129133.java | 50 + test/java/awt/TrayIcon/ShowAfterDisposeTest/ShowAfterDisposeTest.html | 43 + test/java/awt/TrayIcon/ShowAfterDisposeTest/ShowAfterDisposeTest.java | 246 + test/java/awt/appletviewer/IOExceptionIfEncodedURLTest/IOExceptionIfEncodedURLTest.sh | 8 + test/java/awt/dnd/DropTargetEnterExitTest/ExtraDragEnterTest.java | 133 + test/java/awt/dnd/DropTargetEnterExitTest/MissedDragExitTest.java | 128 + test/java/awt/print/bug8023392/bug8023392.html | 20 + test/java/awt/print/bug8023392/bug8023392.java | 286 + test/java/beans/XMLDecoder/8028054/Task.java | 99 + test/java/beans/XMLDecoder/8028054/TestConstructorFinder.java | 81 + test/java/beans/XMLDecoder/8028054/TestMethodFinder.java | 81 + test/java/beans/XMLEncoder/Test8027066.java | 41 + test/java/io/Serializable/evolution/RenamePackage/run.sh | 2 +- test/java/io/Serializable/serialver/classpath/run.sh | 2 +- test/java/io/Serializable/serialver/nested/run.sh | 2 +- test/java/lang/Class/checkMemberAccess/CheckMemberAccess.java | 123 + test/java/lang/Class/checkMemberAccess/test.policy | 6 + test/java/lang/ClassLoader/deadlock/TestCrossDelegate.sh | 3 + test/java/lang/ClassLoader/deadlock/TestOneWayDelegate.sh | 3 + test/java/lang/ProcessBuilder/Basic.java | 23 +- test/java/lang/ProcessBuilder/InheritIO/InheritIO.java | 47 + test/java/lang/ProcessBuilder/InheritIO/InheritIO.sh | 81 + test/java/lang/ProcessBuilder/InheritIOEHandle.java | 147 + test/java/lang/ProcessBuilder/SiblingIOEHandle.java | 205 + test/java/lang/Runtime/exec/CloseRace.java | 146 + test/java/lang/String/ToLowerCase.java | 7 +- test/java/lang/StringCoding/CheckEncodings.sh | 2 +- test/java/lang/System/MacEncoding/ExpectedEncoding.java | 66 + test/java/lang/System/MacEncoding/MacJNUEncoding.sh | 96 + test/java/lang/System/MacEncoding/TestFileEncoding.java | 168 + test/java/lang/System/MacJNUEncoding/ExpectedEncoding.java | 56 - test/java/lang/System/MacJNUEncoding/MacJNUEncoding.sh | 96 - test/java/lang/ThreadGroup/Suspend.java | 58 +- test/java/lang/annotation/loaderLeak/LoaderLeak.sh | 2 +- test/java/lang/instrument/RedefineBigClass.sh | 4 +- test/java/lang/instrument/RedefineBigClassApp.java | 44 +- test/java/lang/instrument/RetransformBigClass.sh | 4 +- test/java/lang/instrument/RetransformBigClassApp.java | 44 +- test/java/lang/instrument/appendToClassLoaderSearch/CommonSetup.sh | 4 + test/java/lang/invoke/8009222/Test8009222.java | 49 + test/java/lang/invoke/BigArityTest.java | 2 +- test/java/lang/invoke/CallSiteTest.java | 2 +- test/java/lang/invoke/JavaDocExamplesTest.java | 99 +- test/java/lang/invoke/MethodHandlesTest.java | 92 +- test/java/lang/invoke/ProtectedMemberDifferentPackage/Test.java | 33 + test/java/lang/invoke/ProtectedMemberDifferentPackage/p1/T2.java | 127 + test/java/lang/invoke/ProtectedMemberDifferentPackage/p2/T3.java | 32 + test/java/lang/invoke/RicochetTest.java | 2 +- test/java/lang/invoke/TestCatchExceptionWithVarargs.java | 97 + test/java/lang/management/OperatingSystemMXBean/TestSystemLoadAvg.sh | 2 +- test/java/lang/management/PlatformLoggingMXBean/LoggingMXBeanTest.java | 51 +- test/java/lang/management/PlatformLoggingMXBean/PlatformLoggingMXBeanTest.java | 13 +- test/java/lang/ref/FinalizeOverride.java | 167 + test/java/net/Authenticator/B4769350.java | 489 +- test/java/net/Authenticator/B4933582.sh | 2 +- test/java/net/DatagramSocket/SetDatagramSocketImplFactory/ADatagramSocket.sh | 2 +- test/java/net/IDN/UseSTD3ASCIIRules.java | 80 + test/java/net/PlainSocketImpl/CustomSocketImplFactory.java | 107 + test/java/net/ServerSocket/AnotherSelectFdsLimit.java | 78 + test/java/net/ServerSocket/SelectFdsLimit.java | 104 + test/java/net/Socket/OldSocketImpl.sh | 2 +- test/java/net/Socket/asyncClose/Race.java | 77 + test/java/net/URL/B5086147.sh | 2 +- test/java/net/URL/TestHttps.java | 34 + test/java/net/URL/runconstructor.sh | 2 +- test/java/net/URLClassLoader/B5077773.sh | 2 +- test/java/net/URLClassLoader/closetest/CloseTest.java | 3 +- test/java/net/URLClassLoader/closetest/Common.java | 37 +- test/java/net/URLClassLoader/closetest/GetResourceAsStream.java | 2 + test/java/net/URLClassLoader/sealing/checksealed.sh | 2 +- test/java/net/URLConnection/6212146/test.sh | 2 +- test/java/nio/MappedByteBuffer/Basic.java | 91 +- test/java/nio/channels/AsynchronousChannelGroup/Unbounded.java | 69 +- test/java/nio/channels/Selector/ByteServer.java | 68 +- test/java/nio/channels/Selector/ReadAfterConnect.java | 34 +- test/java/nio/channels/Selector/SelectAfterRead.java | 92 +- test/java/nio/channels/Selector/SelectWrite.java | 43 +- test/java/nio/channels/SocketChannel/ShortWrite.java | 100 +- test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/linux-i586/libLauncher.so | Bin test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-i586/libLauncher.so | Bin test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-sparc/libLauncher.so | Bin test/java/nio/channels/spi/SelectorProvider/inheritedChannel/lib/solaris-sparcv9/libLauncher.so | Bin test/java/nio/charset/coders/CheckSJISMappingProp.sh | 2 +- test/java/nio/charset/spi/basic.sh | 4 +- test/java/nio/file/Files/BytesAndLines.java | 36 +- test/java/rmi/activation/Activatable/extLoadedImpl/ext.sh | 2 +- test/java/rmi/activation/rmidViaInheritedChannel/InheritedChannelNotServerSocket.java | 9 +- test/java/rmi/activation/rmidViaInheritedChannel/RmidViaInheritedChannel.java | 9 +- test/java/rmi/registry/readTest/readTest.sh | 2 +- test/java/rmi/testlibrary/TestLibrary.java | 29 +- test/java/security/Security/ClassLoaderDeadlock/ClassLoaderDeadlock.sh | 4 + test/java/security/Security/ClassLoaderDeadlock/Deadlock.sh | 4 + test/java/security/Security/ClassLoaderDeadlock/Deadlock2.sh | 4 + test/java/security/Security/signedfirst/Dyn.sh | 4 + test/java/security/Security/signedfirst/Static.sh | 4 + test/java/util/Arrays/TimSortStackSize.java | 123 + test/java/util/Currency/PropertiesTest.sh | 2 +- test/java/util/Locale/LocaleCategory.sh | 2 +- test/java/util/Locale/data/deflocale.rhel5 | 3924 ---------- test/java/util/Locale/data/deflocale.rhel5.fmtasdefault | 3924 ---------- test/java/util/Locale/data/deflocale.sol10 | 1725 ---- test/java/util/Locale/data/deflocale.sol10.fmtasdefault | 1725 ---- test/java/util/Locale/data/deflocale.win7 | 1494 --- test/java/util/Locale/data/deflocale.win7.fmtasdefault | 1494 --- test/java/util/PluggableLocale/ExecTest.sh | 2 +- test/java/util/ResourceBundle/Bug6299235Test.sh | 2 +- test/java/util/ResourceBundle/Control/ExpirationTest.sh | 2 +- test/java/util/ServiceLoader/basic.sh | 2 +- test/java/util/jar/JarInputStream/ExtraFileInMetaInf.java | 71 + test/java/util/logging/LevelResourceBundle.java | 10 +- test/java/util/logging/LocalizedLevelName.java | 103 + test/java/util/logging/TestGetLoggerNPE.java | 91 + test/java/util/logging/TestLogConfigurationDeadLock.java | 256 + test/java/util/logging/TestLogConfigurationDeadLockWithConf.java | 340 + test/java/util/logging/TestLoggerBundleSync.java | 535 + test/java/util/logging/bundlesearch/ResourceBundleSearchTest.java | 45 +- test/java/util/logging/deadlockconf.properties | 22 + test/java/util/prefs/CheckUserPrefsStorage.sh | 2 +- test/javax/crypto/SecretKeyFactory/FailOverTest.sh | 2 +- test/javax/imageio/stream/StreamCloserLeak/run_test.sh | 8 + test/javax/management/MBeanInfo/MBeanInfoEqualsNPETest.java | 216 + test/javax/management/MBeanInfo/MBeanInfoHashCodeNPETest.java | 176 + test/javax/management/monitor/CounterMonitorThresholdTest.java | 21 +- test/javax/management/monitor/NullAttributeValueTest.java | 68 +- test/javax/management/openmbean/OpenMBeanInfoEqualsNPETest.java | 196 + test/javax/management/openmbean/OpenMBeanInfoHashCodeNPETest.java | 173 + test/javax/management/remote/mandatory/URLTest.java | 2 - test/javax/management/remote/mandatory/connection/BrokenConnectionTest.java | 17 +- test/javax/management/remote/mandatory/connection/IdleTimeoutTest.java | 20 +- test/javax/management/remote/mandatory/connection/RMIConnectorInternalMapTest.java | 122 + test/javax/management/remote/mandatory/connection/RMIConnectorNullSubjectConnTest.java | 105 + test/javax/management/remote/mandatory/util/CacheMapTest.java | 110 - test/javax/script/CommonSetup.sh | 2 +- test/javax/security/auth/Subject/doAs/Test.sh | 5 + test/javax/swing/JComboBox/6236162/bug6236162.java | 119 + test/javax/swing/JFileChooser/4150029/bug4150029.html | 32 + test/javax/swing/JFileChooser/4150029/bug4150029.java | 19 +- test/javax/swing/JInternalFrame/4193219/IconCoord.java | 161 + test/javax/swing/JInternalFrame/4251301/bug4251301.java | 139 + test/javax/swing/JInternalFrame/InternalFrameIsNotCollectedTest.java | 17 +- test/javax/swing/JMenuBar/4750590/bug4750590.java | 98 + test/javax/swing/JMenuItem/4171437/bug4171437.java | 108 + test/javax/swing/JMenuItem/ActionListenerCalledTwice/ActionListenerCalledTwiceTest.java | 3 +- test/javax/swing/JPopupMenu/4458079/bug4458079.java | 110 + test/javax/swing/JSplitPane/4816114/bug4816114.java | 151 + test/javax/swing/JTable/7068740/bug7068740.java | 27 +- test/javax/swing/JTree/4927934/bug4927934.java | 247 + test/javax/swing/Popup/TaskbarPositionTest.java | 340 + test/javax/swing/plaf/basic/BasicMenuUI/4983388/bug4983388.java | 89 + test/javax/swing/plaf/basic/BasicTreeUI/8023474/bug8023474.java | 174 + test/javax/swing/text/StyledEditorKit/8016833/bug8016833.java | 270 + test/javax/swing/text/View/8014863/bug8014863.java | 132 +- test/javax/xml/jaxp/XPath/8009579/XPathExceptionInitCause.java | 220 + test/javax/xml/jaxp/XPath/8015978/XPathNegativeZero.java | 72 + test/javax/xml/jaxp/XPath/8015978/dummy.xml | 1 + test/javax/xml/jaxp/XPath/8015978/negativezero.xsl | 4 + test/javax/xml/jaxp/parsers/8022548/XOMParserTest.java | 26 +- test/javax/xml/jaxp/parsers/8024707/TestFunc.java | 35 + test/javax/xml/jaxp/parsers/8024707/XSLT.java | 51 + test/javax/xml/jaxp/parsers/8024707/in.xml | 4 + test/javax/xml/jaxp/parsers/8024707/test.xsl | 10 + test/javax/xml/jaxp/transform/8004476/SecureProcessingTest.xml | 2 + test/javax/xml/jaxp/transform/8004476/TestBase.java | 82 + test/javax/xml/jaxp/transform/8004476/XPathExFuncTest.java | 287 + test/javax/xml/jaxp/transform/8004476/XSLTExFuncTest.java | 248 + test/javax/xml/jaxp/transform/8004476/tokenize.xml | 7 + test/javax/xml/jaxp/transform/8004476/tokenize.xsl | 30 + test/javax/xml/jaxp/validation/8015092/XPathWhiteSpaceTest.java | 60 + test/javax/xml/jaxp/validation/8015092/idIxpns.xsd | 12 + test/javax/xml/jaxp/validation/8015092/idIxpns1.xsd | 12 + test/javax/xml/jaxp/validation/8015092/idJ029.xsd | 21 + test/javax/xml/jaxp/validation/8015092/idJimp.xsd | 11 + test/javax/xml/jaxp/validation/8015243/AnyURITest.java | 60 + test/javax/xml/jaxp/validation/8015243/anyURI_b006.xsd | 32 + test/javax/xml/ws/clientjar/TestService.java | 39 + test/javax/xml/ws/clientjar/TestWsImport.java | 151 + test/lib/security/java.policy/Ext_AllPolicy.sh | 2 +- test/lib/testlibrary/AssertsTest.java | 237 + test/lib/testlibrary/ClassFileInstaller.java | 5 +- test/lib/testlibrary/OutputAnalyzerReportingTest.java | 122 + test/lib/testlibrary/jdk/testlibrary/Asserts.java | 395 + test/lib/testlibrary/jdk/testlibrary/FileUtils.java | 194 + test/lib/testlibrary/jdk/testlibrary/InputArguments.java | 88 + test/lib/testlibrary/jdk/testlibrary/JDKToolFinder.java | 106 + test/lib/testlibrary/jdk/testlibrary/JDKToolLauncher.java | 134 + test/lib/testlibrary/jdk/testlibrary/JcmdBase.java | 47 +- test/lib/testlibrary/jdk/testlibrary/JdkFinder.java | 78 - test/lib/testlibrary/jdk/testlibrary/OutputAnalyzer.java | 157 +- test/lib/testlibrary/jdk/testlibrary/Platform.java | 103 + test/lib/testlibrary/jdk/testlibrary/ProcessThread.java | 143 + test/lib/testlibrary/jdk/testlibrary/ProcessTools.java | 195 +- test/lib/testlibrary/jdk/testlibrary/StreamPumper.java | 151 +- test/lib/testlibrary/jdk/testlibrary/TestThread.java | 249 + test/lib/testlibrary/jdk/testlibrary/Utils.java | 232 + test/lib/testlibrary/jdk/testlibrary/XRun.java | 56 + test/sun/awt/datatransfer/DataFlavorComparatorTest.java | 46 + test/sun/management/jdp/JdpTest.sh | 32 +- test/sun/management/jmxremote/bootstrap/GeneratePropertyPassword.sh | 2 +- test/sun/management/jmxremote/bootstrap/linux-i586/launcher | Bin test/sun/management/jmxremote/bootstrap/solaris-i586/launcher | Bin test/sun/management/jmxremote/bootstrap/solaris-sparc/launcher | Bin test/sun/management/windows/revokeall.exe | Bin test/sun/misc/IoTrace/IoTraceAgent.java | 4 + test/sun/misc/IoTrace/ioTraceTest.sh | 2 +- test/sun/misc/URLClassPath/ClassnameCharTest.sh | 2 +- test/sun/net/InetAddress/nameservice/dns/cname.sh | 2 +- test/sun/net/idn/nfscis.spp | Bin test/sun/net/idn/nfscsi.spp | Bin test/sun/net/idn/nfscss.spp | Bin test/sun/net/idn/nfsmxp.spp | Bin test/sun/net/idn/nfsmxs.spp | Bin test/sun/net/www/MarkResetTest.sh | 2 +- test/sun/net/www/http/HttpClient/RetryPost.sh | 2 +- test/sun/net/www/protocol/file/DirPermissionDenied.sh | 1 + test/sun/net/www/protocol/jar/B5105410.sh | 2 +- test/sun/net/www/protocol/jar/jarbug/run.sh | 2 +- test/sun/security/jgss/spnego/MechTokenMissing.java | 53 + test/sun/security/krb5/ParseCAPaths.java | 86 +- test/sun/security/krb5/auto/BadKdc.java | 29 +- test/sun/security/krb5/auto/BadKdc1.java | 11 +- test/sun/security/krb5/auto/BadKdc2.java | 7 +- test/sun/security/krb5/auto/KDC.java | 6 +- test/sun/security/krb5/auto/LoginNoPass.java | 73 + test/sun/security/krb5/auto/MaxRetries.java | 8 +- test/sun/security/krb5/auto/SaslGSS.java | 47 +- test/sun/security/krb5/auto/TcpTimeout.java | 141 +- test/sun/security/krb5/krb5-capaths.conf | 81 +- test/sun/security/krb5/runNameEquals.sh | 4 + test/sun/security/pkcs11/MessageDigest/TestCloning.java | 141 + test/sun/security/pkcs11/Provider/ConfigQuotedString.sh | 6 + test/sun/security/pkcs11/Provider/Login.sh | 6 + test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.chk | Bin test/sun/security/pkcs11/nss/lib/linux-amd64/libfreebl3.so | Bin test/sun/security/pkcs11/nss/lib/linux-amd64/libnspr4.so | Bin test/sun/security/pkcs11/nss/lib/linux-amd64/libnss3.so | Bin test/sun/security/pkcs11/nss/lib/linux-amd64/libnssckbi.so | Bin test/sun/security/pkcs11/nss/lib/linux-amd64/libplc4.so | Bin test/sun/security/pkcs11/nss/lib/linux-amd64/libplds4.so | Bin test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.chk | Bin test/sun/security/pkcs11/nss/lib/linux-amd64/libsoftokn3.so | Bin test/sun/security/pkcs11/nss/lib/linux-i586/libnspr4.so | Bin test/sun/security/pkcs11/nss/lib/linux-i586/libnss3.so | Bin test/sun/security/pkcs11/nss/lib/linux-i586/libnssckbi.so | Bin test/sun/security/pkcs11/nss/lib/linux-i586/libplc4.so | Bin test/sun/security/pkcs11/nss/lib/linux-i586/libplds4.so | Bin test/sun/security/pkcs11/nss/lib/linux-i586/libsoftokn3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-amd64/libnspr4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-amd64/libnss3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-amd64/libnssckbi.so | Bin test/sun/security/pkcs11/nss/lib/solaris-amd64/libplc4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-amd64/libplds4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-amd64/libsoftokn3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-i586/libfreebl3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-i586/libnspr4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-i586/libnss3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-i586/libnssckbi.so | Bin test/sun/security/pkcs11/nss/lib/solaris-i586/libplc4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-i586/libplds4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-i586/libsoftokn3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.chk | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libfreebl_hybrid_3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libnspr4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libnss3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libnssckbi.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libplc4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libplds4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.chk | Bin test/sun/security/pkcs11/nss/lib/solaris-sparc/libsoftokn3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnspr4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnss3.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libnssckbi.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplc4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libplds4.so | Bin test/sun/security/pkcs11/nss/lib/solaris-sparcv9/libsoftokn3.so | Bin test/sun/security/pkcs11/nss/lib/windows-i586/libnspr4.dll | Bin test/sun/security/pkcs11/nss/lib/windows-i586/libplc4.dll | Bin test/sun/security/pkcs11/nss/lib/windows-i586/libplds4.dll | Bin test/sun/security/pkcs11/nss/lib/windows-i586/nss3.dll | Bin test/sun/security/pkcs11/nss/lib/windows-i586/nssckbi.dll | Bin test/sun/security/pkcs11/nss/lib/windows-i586/softokn3.dll | Bin test/sun/security/provider/PolicyFile/getinstance/getinstance.sh | 4 + test/sun/security/ssl/com/sun/net/ssl/internal/ssl/EngineArgs/DebugReportsOneExtraByte.sh | 2 +- test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLEngineImpl/SSLEngineDeadlock.java | 21 +- test/sun/security/ssl/com/sun/net/ssl/internal/ssl/SSLSocketImpl/NotifyHandshakeTest.sh | 2 +- test/sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxy.sh | 2 +- test/sun/security/ssl/sun/net/www/protocol/https/HttpsURLConnection/PostThruProxyWithAuth.sh | 2 +- test/sun/security/tools/jarsigner/AlgOptions.sh | 2 +- test/sun/security/tools/jarsigner/EntriesOrder.java | 204 + test/sun/security/tools/jarsigner/PercentSign.sh | 2 +- test/sun/security/tools/jarsigner/diffend.sh | 2 +- test/sun/security/tools/jarsigner/jvindex.sh | 76 + test/sun/security/tools/jarsigner/oldsig.sh | 2 +- test/sun/security/tools/keytool/AltProviderPath.sh | 2 +- test/sun/security/tools/keytool/CloneKeyAskPassword.sh | 4 + test/sun/security/tools/keytool/NoExtNPE.sh | 4 + test/sun/security/tools/keytool/SecretKeyKS.sh | 2 +- test/sun/security/tools/keytool/StandardAlgName.sh | 2 +- test/sun/security/tools/keytool/printssl.sh | 2 +- test/sun/security/tools/keytool/resource.sh | 2 +- test/sun/security/tools/keytool/standard.sh | 2 +- test/sun/security/tools/policytool/Alias.sh | 2 +- test/sun/security/tools/policytool/ChangeUI.sh | 2 +- test/sun/security/tools/policytool/OpenPolicy.sh | 2 +- test/sun/security/tools/policytool/SaveAs.sh | 2 +- test/sun/security/tools/policytool/UpdatePermissions.sh | 2 +- test/sun/security/tools/policytool/UsePolicy.sh | 2 +- test/sun/security/tools/policytool/i18n.sh | 2 +- test/sun/text/resources/LocaleData | 4 +- test/sun/text/resources/LocaleDataTest.java | 4 +- test/sun/tools/native2ascii/NativeErrors.java | 4 +- test/sun/tools/native2ascii/resources/ImmutableResourceTest.sh | 2 +- test/tools/launcher/I18NArgTest.java | 111 + test/tools/launcher/RunpathTest.java | 84 + test/tools/pack200/MemoryAllocatorTest.java | 369 + 1047 files changed, 62382 insertions(+), 48725 deletions(-) diffs (truncated from 133124 to 500 lines): diff -r 88a7dc88e190 -r dc28044d79a4 .hgtags --- a/.hgtags Wed Jan 29 21:39:16 2014 +0400 +++ b/.hgtags Wed Jul 16 00:20:22 2014 +0100 @@ -50,6 +50,7 @@ f708138c9aca4b389872838fe6773872fce3609e jdk7-b73 eacb36e30327e7ae33baa068e82ddccbd91eaae2 jdk7-b74 8885b22565077236a927e824ef450742e434a230 jdk7-b75 +fb2ee5e96b171ae9db67274d87ffaba941e8bfa6 icedtea7-1.12 8fb602395be0f7d5af4e7e93b7df2d960faf9d17 jdk7-b76 e6a5d095c356a547cf5b3c8885885aca5e91e09b jdk7-b77 1143e498f813b8223b5e3a696d79da7ff7c25354 jdk7-b78 @@ -63,6 +64,7 @@ eae6e9ab26064d9ba0e7665dd646a1fd2506fcc1 jdk7-b86 2cafbbe9825e911a6ca6c17d9a18eb1f0bf0873c jdk7-b87 b3c69282f6d3c90ec21056cd1ab70dc0c895b069 jdk7-b88 +2017795af50aebc00f500e58f708980b49bc7cd1 icedtea7-1.13 4a6abb7e224cc8d9a583c23c5782e4668739a119 jdk7-b89 7f90d0b9dbb7ab4c60d0b0233e4e77fb4fac597c jdk7-b90 08a31cab971fcad4695e913d0f3be7bde3a90747 jdk7-b91 @@ -111,6 +113,7 @@ 554adcfb615e63e62af530b1c10fcf7813a75b26 jdk7-b134 d8ced728159fbb2caa8b6adb477fd8efdbbdf179 jdk7-b135 aa13e7702cd9d8aca9aa38f1227f966990866944 jdk7-b136 +1571aa7abe47a54510c62a5b59a8c343cdaf67cb icedtea-1.14 29296ea6529a418037ccce95903249665ef31c11 jdk7-b137 60d3d55dcc9c31a30ced9caa6ef5c0dcd7db031d jdk7-b138 d80954a89b49fda47c0c5cace65a17f5a758b8bd jdk7-b139 @@ -123,6 +126,7 @@ 539e576793a8e64aaf160e0d6ab0b9723cd0bef0 jdk7-b146 69e973991866c948cf1808b06884ef2d28b64fcb jdk7u1-b01 f097ca2434b1412b12ab4a5c2397ce271bf681e7 jdk7-b147 +7ec1845521edfb1843cad3868217983727ece53d icedtea-2.0-branchpoint 2baf612764d215e6f3a5b48533f74c6924ac98d7 jdk7u1-b02 a4781b6d9cfb6901452579adee17c9a17c1b584c jdk7u1-b03 b223ed9a5fdf8ce3af42adfa8815975811d70eae jdk7u1-b04 @@ -141,6 +145,7 @@ 79c8c4608f60e1f981b17ba4077dfcaa2ed67be4 jdk7u2-b12 fb2980d7c9439e3d62ab12f40506a2a2db2df0f4 jdk7u2-b13 24e42f1f9029f9f5a9b1481d523facaf09452e5b jdk7u2-b21 +a75913596199fbb8583f9d74021f54dc76f87b14 icedtea-2.1-branchpoint e3790f3ce50aa4e2a1b03089ac0bcd48f9d1d2c2 jdk7u3-b02 7e8351342f0b22b694bd3c2db979643529f32e71 jdk7u3-b03 fc6b7b6ac837c9e867b073e13fc14e643f771028 jdk7u3-b04 @@ -157,6 +162,7 @@ 6485e842d7f736b6ca3d7e4a7cdc5de6bbdd870c jdk7u4-b10 d568e85567ccfdd75f3f0c42aa0d75c440422827 jdk7u4-b11 16781e84dcdb5f82c287a3b5387dde9f8aaf74e0 jdk7u4-b12 +907555f6191a0cd84886b07c4c40bc6ce498b8b1 icedtea-2.2-branchpoint c929e96aa059c8b79ab94d5b0b1a242ca53a5b32 jdk7u4-b13 09f612bac047b132bb9bf7d4aa8afe6ea4d5b938 jdk7u4-b14 9e15d1f3fa4b35b8c950323c76b9ed094d434b97 jdk7u5-b01 @@ -186,11 +192,15 @@ a2bd61800667c38d759a0e02a756063d47dbcdc0 jdk7u6-b10 18a1b4f0681ae6e748fc60162dd76e357de3304b jdk7u6-b11 76306dce87104d9f333db3371ca97c80cac9674a jdk7u6-b12 +35172a51cc7639a44fe06ffbd5be471e48b71a88 ppc-aix-port-b01 +3097457689ba2d41b1d692191c5ba2f2b30aff9e ppc-aix-port-b02 +3097457689ba2d41b1d692191c5ba2f2b30aff9e ppc-aix-port-b03 aa49fe7490963f0c53741fbca3a175e0fec93951 jdk7u6-b13 3ce621d9b988abcccd86b52a97ea39133006c245 jdk7u6-b14 e50c9a5f001c61f49e7e71b25b97ed4095d3557b jdk7u6-b15 966e21feb7f088e318a35b069c1a61ff6363e554 jdk7u6-b16 aa0ad405f70bc7a7af95fef109f114ceecf31232 jdk7u6-b17 +8ff5fca08814f1f0eeda40aaec6f2936076b7444 icedtea-2.3-branchpoint 4a6917092af80481c1fa5b9ec8ccae75411bb72c jdk7u6-b18 a263f787ced5bc7c14078ae552c82de6bd011611 jdk7u6-b19 09145b546a2b6ae1f44d5c8a7d2a37d48e4b39e2 jdk7u6-b20 @@ -258,11 +268,13 @@ cb81ee79a72d84f99b8e7d73b5ae73124b661fe7 jdk7u12-b07 b5e180ef18a0c823675bcd32edfbf2f5122d9722 jdk7u12-b08 2e7fe0208e9c928f2f539fecb6dc8a1401ecba9e jdk7u12-b09 +b171007921c3d01066848c88cbcb6a376df3f01c icedtea-2.4-branchpoint e012aace90500a88f51ce83fcd27791f5dbf493f jdk7u14-b10 9eb82fb221f3b34a5df97e7db3c949fdb0b6fee0 jdk7u14-b11 ee3ab2ed2371dd72ad5a75ebb6b6b69071e29390 jdk7u14-b12 7c0d4bfd9d2c183ebf8566013af5111927b472f6 jdk7u14-b13 3982fc37bc256b07a710f25215e5525cfbefe2ed jdk7u14-b14 +739869c45976bb154908af5d145b7ed98c6a7d47 ppc-aix-port-b04 2eb3ac105b7fe7609a20c9986ecbccab71f1609f jdk7u14-b15 835448d525a10bb826f4f7ebe272fc410bdb0f5d jdk7u15-b01 0443fe2d8023111b52f4c8db32e038f4a5a9f373 jdk7u15-b02 @@ -365,6 +377,7 @@ c5ca4daec23b5e7f99ac8d684f5016ff8bfebbb0 jdk7u45-b18 4797f984f6c93c433aa797e9b2d8f904cf083f96 jdk7u45-b30 8c343a783777b8728cb819938f387db0acf7f3ac jdk7u45-b31 +db5a29c812ee25c34ce9cd97de6e0dae284a4e34 jdk7u60-b00 402d54c7d8ce95f3945cc3d698e528e4adec7b9b jdk7u45-b33 34e8f9f26ae612ebac36357eecbe70ea20e0233c jdk7u45-b34 3dbb06a924cdf73d39b8543824ec88ae501ba5c6 jdk7u45-b35 @@ -384,10 +397,78 @@ d19a89fdfb9b959b8638441d9d396685d6c7ab7b jdk7u51-b13 ef58b2b9a9a1e1a42b0139b57816a160c4681371 jdk7u51-b30 5bca0d0969b13b1d9b8caba3cce8293a98d68318 jdk7u51-b31 +e9143dc3dc2a8f4b896e74f70d6c503d73c40533 jdk7u51-b33 +c1eaf405fb8d7beddd75c6f81671970f6baa70d8 jdk7u51-b34 f5eee4f1d5b4a1e19febc9c26c863ae853ed6d2e jdk7u55-b00 5010db5b9b5ab07a9409a5c557d3f43ab32dc428 jdk7u55-b01 2ca3e1fa4455ad564228ad6e654498167af2f20d jdk7u55-b02 c12b3c81366cb067ff4444952209d54bfa387353 jdk7u55-b03 476d1bddaa32bf440953c3b1814ba38f16886c03 jdk7u55-b04 +7fa6d3ba2cc77cd1e6f24e33f0c39788cb2893b8 jdk7u65-b00 7fa6d3ba2cc77cd1e6f24e33f0c39788cb2893b8 jdk7u55-b05 795654fce29c38d4c8504f760d8d8a36248d38ed jdk7u55-b06 +4b2ed892b195e95f7541aaa3b129a2caa5faae1d jdk7u55-b07 +db1323224053a18ecc62bdc1d3902d93b33f0b70 jdk7u55-b08 +534eeff29ac9fcbbb99ef8908548dbb368d04baf jdk7u55-b09 +d39dd4135844ca5c707bc39ae1d7e020d49880ce jdk7u55-b09 +b231536550067c3b00c77d0e035afe8faaa15581 jdk7u55-b10 +2d80b7cd7aae76f0909a210414317dcf846ad651 jdk7u55-b11 +07be5d5508733ed37c11fcd21a13ae3c8288313b jdk7u55-b12 +92fd166252c2701092a510002f4cf9285a20473d jdk7u55-b13 +4a5651c84b1e6cf26dc9b19f00747e5004efba68 jdk7u55-b30 +ffd99c5975217a14609851602c5f5dc005234aba jdk7u55-b14 +a015a0971dacd536f1ab92bf9bcf0dafb7684e61 jdk7u55-b15 +88f1bf248cc520e0bf7ef17bc862f87aab958373 jdk7u55-b31 +b83f5194edf23b752fe2c0a9be361455f87196df jdk7u55-b32 +01a4cd03a6c85abb62eb5d1c2b5bf7d2f544c04e jdk7u55-b33 +db5a29c812ee25c34ce9cd97de6e0dae284a4e34 jdk7u60-b00 +def34c4a798678c424786a8f0d0508e90185958d jdk7u60-b01 +ff67c89658525e8903fb870861ed3645befd6bc5 jdk7u60-b02 +7d5b758810c20af12c6576b7d570477712360744 icedtea-2.5pre01 +3162252ff26b4e6788b0c79405b035b535afa018 icedtea-2.5pre02 +b1bcc999a8f1b4b4452b59c6636153bb0154cf5a jdk7u60-b03 +efc8886310cbccb941f826acfad2ad51a2891be5 jdk7u60-b04 +4fb749a3110727d5334c69793578a3254a053bf5 jdk7u60-b05 +46ca1ce7550f1463d60c3eacaf7b8cdc44b0c66e jdk7u60-b06 +d5a2f60006e3c4243abeee0f623e5c3f79372fd8 jdk7u60-b07 +0dd27693876d66d176457749d0f2161b219eba2d jdk7u60-b08 +7b571638b0f51bcbe04c088dfff569b4cba6bbdf jdk7u60-b09 +fb4981489b09594d2449527e2d511834cf8ad370 jdk7u60-b10 +c2bb87dae8a08eab6f4f336ce5a59865aa0214d6 jdk7u60-b11 +06f771c9a7b7e05cadfde6f316893be31f18ea70 icedtea-2.5pre03 +1a90de8005e3de2475fd9355dcdb6f5e60bf89cc jdk7u60-b12 +b06d4ed71ae0bc6e13f5a8437cb6388f17c66e84 jdk7u60-b13 +b7fbd9b4febf8961091fdf451d3da477602a8f1d jdk7u60-b14 +04882f9a073e8de153ec7ad32486569fd9a087ec jdk7u60-b15 +2cef4a93bcb881190a1d828dfae1574c535bb19a icedtea-2.5pre04 +575b3a2fa6c940036a9ab6b554bcfe76f5151add icedtea-2.5pre06 +6cb22bfdd98bd5b97eadaad926b52e8582f63077 icedtea-2.5pre05 +41547583c3a035c3924ffedfa8704e58d69e5c50 jdk7u60-b16 +e484202d9a4104840d758a21b2bba1250e766343 jdk7u60-b17 +e484202d9a4104840d758a21b2bba1250e766343 jdk7u60-b18 +c220d329a78161f79df73048ed55db91f538e3b7 jdk7u65-b01 +7190843ddaf4f3ad158c3071be0f4ca42a5802dc jdk7u60-b19 +8dc56d0f3e860658619eaa57d10fb1a4182d71cd jdk7u60-b30 +5607f5a99784da3d78d2062f6b0bb99da864ca65 icedtea-2.5pre07 +9705894e1370a492481123357433ca7a0adde838 icedtea-2.5pre08 +9705894e1370a492481123357433ca7a0adde838 icedtea-2.5.0 +a42a3bb22f6991d8f6a30e4f1782ad620c40eb65 jdk7u65-b02 +756071871d61e1ca410c63a3f1c4dabcc51a90df jdk7u65-b03 +bac16c82c14a35d1e9d3c4d0bd317dbbb296f34e jdk7u65-b04 +14b3f82c245fb8d0eeb21dc99ff0b4985571910c jdk7u65-b05 +7d8e5d90789533b5cc22eeb15c19ce1bb8a20573 jdk7u65-b06 +cde691a6989fa875107a3974aa92681d286be6ec jdk7u65-b07 +d5353f8e1e02e12a1262d65ed85183425b0cdf13 jdk7u65-b08 +45913a29c1edd3e63c9c818ffab7aebd4d75fa40 jdk7u65-b09 +3bb943c6ff7dd614cb428501db8c2c655e5f5223 jdk7u65-b10 +b84e98280630be44a87f4336009f61350f3c7dc0 jdk7u65-b11 +61d15f512305655a51c04811006850e4955936bd jdk7u65-b12 +69698344d0a1771ed9162ecad2065829ca1f8994 jdk7u65-b13 +2e6105ddad44866c4cdc1ba06620b48685e34111 jdk7u65-b14 +8cff6ce00a91820b4cb7ef24ed42063c2305127d jdk7u65-b15 +190017413768f02addea8b2c5106157e3c4076c7 jdk7u65-b16 +23e78e36bc39f4f761ac2b0e055c562c3ff204f5 jdk7u65-b17 +96d1fa382dda17ae105f28083bda41f79fc3093f jdk7u65-b30 +7f7430459adfe7b7fb65da8c3fac2ac5e3495ea1 jdk7u65-b18 +ba6cef21c369076be97dd8133fd4a158cd486bd8 jdk7u65-b19 +d6d4b6c9f5b48254a6dc1430dee9ee85d7f86b97 icedtea-2.5.1 diff -r 88a7dc88e190 -r dc28044d79a4 .jcheck/conf --- a/.jcheck/conf Wed Jan 29 21:39:16 2014 +0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -project=jdk7 -bugids=dup diff -r 88a7dc88e190 -r dc28044d79a4 make/bridge/AccessBridgeJava/Makefile --- a/make/bridge/AccessBridgeJava/Makefile Wed Jan 29 21:39:16 2014 +0400 +++ b/make/bridge/AccessBridgeJava/Makefile Wed Jul 16 00:20:22 2014 +0100 @@ -1,5 +1,5 @@ # -# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 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 @@ -51,7 +51,7 @@ # # Java files to compile. # -FILES_java = com/sun/java/accessibility/AccessBridge.java +FILES_java = com/sun/java/accessibility/AccessBridgeLoader.java com/sun/java/accessibility/AccessBridge.java # # Location for the newly built classfiles. @@ -68,7 +68,7 @@ build: prebuild prebuild: - $(CP) $(CLOSED_PLATFORM_SRC)/classes/com/sun/java/accessibility/$(ABPLATFORM)/AccessBridge.java \ + $(CP) $(CLOSED_PLATFORM_SRC)/classes/com/sun/java/accessibility/$(ABPLATFORM)/AccessBridgeLoader.java \ $(CLOSED_PLATFORM_SRC)/classes/com/sun/java/accessibility all : build $(JARFILE) diff -r 88a7dc88e190 -r dc28044d79a4 make/com/oracle/Makefile --- a/make/com/oracle/Makefile Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/oracle/Makefile Wed Jul 16 00:20:22 2014 +0100 @@ -30,22 +30,8 @@ #SUBDIRS_MAKEFLAGS += JAVAC_LINT_OPTIONS=-Xlint:all,-deprecation,-path include $(BUILDDIR)/common/Defs.gmk -JFR_SRCDIRS_EXIST := $(shell \ - if [ -d $(CLOSED_SHARE_SRC)/native/oracle/jfr ] ; then \ - echo true; \ - else \ - echo false; \ - fi) - -JFR = -ifndef OPENJDK - ifndef JAVASE_EMBEDDED - ifeq ($(JFR_SRCDIRS_EXIST), true) - ifneq (${ARCH},arm) - JFR = jfr - endif - endif - endif +ifeq ($(BUILD_JFR), true) + JFR = jfr endif # build com/oracle/security/ucrypto on Solaris platform for non-OpenJDK builds diff -r 88a7dc88e190 -r dc28044d79a4 make/com/sun/java/pack/Makefile --- a/make/com/sun/java/pack/Makefile Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/sun/java/pack/Makefile Wed Jul 16 00:20:22 2014 +0100 @@ -75,7 +75,7 @@ OTHER_CXXFLAGS += $(ZINCLUDE) LDDFLAGS += $(ZIPOBJS) else - LDDFLAGS += $(ZLIB_LIBS) + OTHER_LDLIBS += $(ZLIB_LIBS) OTHER_CXXFLAGS += $(ZLIB_CFLAGS) -DSYSTEM_ZLIB endif else @@ -99,8 +99,7 @@ RES = $(OBJDIR)/$(PGRM).res else LDOUTPUT = -o #Have a space - LDDFLAGS += -lc - OTHER_LDLIBS += $(LIBCXX) + OTHER_LDLIBS += -lc $(LIBCXX) # setup the list of libraries to link in... ifeq ($(PLATFORM), linux) ifeq ("$(CC_VER_MAJOR)", "3") @@ -157,7 +156,7 @@ $(prep-target) $(RM) $(TEMPDIR)/mapfile-vers $(CP) mapfile-vers-unpack200 $(TEMPDIR)/mapfile-vers - $(LINKER) $(LDDFLAGS) $(UNPACK_EXE_FILES_o) $(RES) $(LIBCXX) $(LDOUTPUT)$(TEMPDIR)/unpack200$(EXE_SUFFIX) + $(LINKER) $(LDDFLAGS) $(UNPACK_EXE_FILES_o) $(RES) $(OTHER_LDLIBS) $(LDOUTPUT)$(TEMPDIR)/unpack200$(EXE_SUFFIX) ifdef MT $(MT) /manifest $(OBJDIR)/unpack200$(EXE_SUFFIX).manifest /outputresource:$(TEMPDIR)/unpack200$(EXE_SUFFIX);#1 endif diff -r 88a7dc88e190 -r dc28044d79a4 make/com/sun/jmx/Makefile --- a/make/com/sun/jmx/Makefile Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/sun/jmx/Makefile Wed Jul 16 00:20:22 2014 +0100 @@ -114,13 +114,19 @@ endif ifeq ($(CROSS_COMPILE_ARCH),) -RMIC = $(RMIC_JAVA) $(JAVA_TOOLS_FLAGS) -cp $(OUTPUTDIR)/classes sun.rmi.rmic.Main +RMIC_VM = $(RMIC_JAVA) else -RMIC = $(BOOT_JAVA_CMD) $(JAVA_TOOLS_FLAGS) -cp $(OUTPUTDIR)/classes sun.rmi.rmic.Main +RMIC_VM = $(BOOT_JAVA_CMD) endif +RMIC = $(RMIC_VM) $(JAVA_TOOLS_FLAGS) -cp $(OUTPUTDIR)/classes sun.rmi.rmic.Main $(CLASSDESTDIR)/%_Stub.class: $(CLASSDESTDIR)/%.class $(prep-target) + if [ -x $(PAX_COMMAND) ] ; then \ + if [ -w $(RMIC_VM) ] ; then \ + $(PAX_COMMAND) $(PAX_COMMAND_ARGS) $(RMIC_VM) ; \ + fi ; \ + fi $(RMIC) -classpath "$(CLASSDESTDIR)" \ -d $(CLASSDESTDIR) \ -v1.2 \ diff -r 88a7dc88e190 -r dc28044d79a4 make/com/sun/nio/Makefile --- a/make/com/sun/nio/Makefile Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/sun/nio/Makefile Wed Jul 16 00:20:22 2014 +0100 @@ -31,7 +31,7 @@ include $(BUILDDIR)/common/Defs.gmk # MMM: disable for now -ifneq ($(PLATFORM), macosx) +ifeq (, $(findstring $(PLATFORM), macosx aix)) include $(BUILDDIR)/common/Subdirs.gmk SUBDIRS = sctp endif diff -r 88a7dc88e190 -r dc28044d79a4 make/com/sun/nio/sctp/Makefile --- a/make/com/sun/nio/sctp/Makefile Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/sun/nio/sctp/Makefile Wed Jul 16 00:20:22 2014 +0100 @@ -60,7 +60,9 @@ -I$(CLASSHDRDIR)/../../../../java/java.nio/nio/CClassHeaders ifeq ($(PLATFORM), linux) +ifneq ($(COMPILER_WARNINGS_FATAL),false) COMPILER_WARNINGS_FATAL=true +endif #OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -ljava -lnet -lpthread -ldl OTHER_LDLIBS += -L$(LIBDIR)/$(LIBARCH) -lnio -lnet -lpthread -ldl endif diff -r 88a7dc88e190 -r dc28044d79a4 make/com/sun/security/auth/module/Makefile --- a/make/com/sun/security/auth/module/Makefile Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/sun/security/auth/module/Makefile Wed Jul 16 00:20:22 2014 +0100 @@ -67,7 +67,7 @@ include FILES_c_solaris.gmk endif # solaris -ifneq (,$(findstring $(PLATFORM), linux macosx)) +ifneq (,$(findstring $(PLATFORM), linux macosx aix)) LIBRARY = jaas_unix include FILES_export_unix.gmk include FILES_c_unix.gmk @@ -78,7 +78,3 @@ # include $(BUILDDIR)/common/Library.gmk -# -# JVMDI implementation lives in the VM. -# -OTHER_LDLIBS = $(JVMLIB) diff -r 88a7dc88e190 -r dc28044d79a4 make/com/sun/tools/attach/Exportedfiles.gmk --- a/make/com/sun/tools/attach/Exportedfiles.gmk Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/sun/tools/attach/Exportedfiles.gmk Wed Jul 16 00:20:22 2014 +0100 @@ -47,3 +47,8 @@ FILES_export = \ sun/tools/attach/BsdVirtualMachine.java endif + +ifeq ($(PLATFORM), aix) +FILES_export = \ + sun/tools/attach/AixVirtualMachine.java +endif diff -r 88a7dc88e190 -r dc28044d79a4 make/com/sun/tools/attach/FILES_c.gmk --- a/make/com/sun/tools/attach/FILES_c.gmk Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/sun/tools/attach/FILES_c.gmk Wed Jul 16 00:20:22 2014 +0100 @@ -43,3 +43,8 @@ FILES_c = \ BsdVirtualMachine.c endif + +ifeq ($(PLATFORM), aix) +FILES_c = \ + AixVirtualMachine.c +endif diff -r 88a7dc88e190 -r dc28044d79a4 make/com/sun/tools/attach/FILES_java.gmk --- a/make/com/sun/tools/attach/FILES_java.gmk Wed Jan 29 21:39:16 2014 +0400 +++ b/make/com/sun/tools/attach/FILES_java.gmk Wed Jul 16 00:20:22 2014 +0100 @@ -32,7 +32,7 @@ com/sun/tools/attach/spi/AttachProvider.java \ sun/tools/attach/HotSpotAttachProvider.java \ sun/tools/attach/HotSpotVirtualMachine.java - + ifeq ($(PLATFORM), solaris) FILES_java += \ sun/tools/attach/SolarisAttachProvider.java @@ -48,11 +48,16 @@ sun/tools/attach/BsdAttachProvider.java endif +ifeq ($(PLATFORM), aix) +FILES_java += \ + sun/tools/attach/AixAttachProvider.java +endif + # # Files that need to be copied # SERVICEDIR = $(CLASSBINDIR)/META-INF/services - + FILES_copy = \ $(SERVICEDIR)/com.sun.tools.attach.spi.AttachProvider diff -r 88a7dc88e190 -r dc28044d79a4 make/common/Defs-aix.gmk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/make/common/Defs-aix.gmk Wed Jul 16 00:20:22 2014 +0100 @@ -0,0 +1,391 @@ +# +# Copyright (c) 1995, 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. Oracle designates this +# particular file as subject to the "Classpath" exception as provided +# by Oracle in the LICENSE file that accompanied this code. +# +# 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. +# + +# +# Makefile to specify compiler flags for programs and libraries +# targeted to AIX. Should not contain any rules. +# +# WARNING: This file is shared with other workspaces. +# So when it includes other files, it must use JDK_TOPDIR. +# + +# Warning: the following variables are overridden by Defs.gmk. Set +# values will be silently ignored: +# CFLAGS (set $(OTHER_CFLAGS) instead) +# CPPFLAGS (set $(OTHER_CPPFLAGS) instead) +# CXXFLAGS (set $(OTHER_CXXFLAGS) instead) +# LDFLAGS (set $(OTHER_LDFAGS) instead) +# LDLIBS (set $(EXTRA_LIBS) instead) +# LDLIBS_COMMON (set $(EXTRA_LIBS) instead) +# LINTFLAGS (set $(OTHER_LINTFLAGS) instead) +# +# Note: CPPFLAGS are used in C and C++ compiles. +# + +# Get shared JDK settings +include $(JDK_MAKE_SHARED_DIR)/Defs.gmk + +# define these to avoid picking up ones from aliases or from +# non-standard locations +# + +AR = $(USRBIN_PATH)ar +BASENAME = $(UNIXCOMMAND_PATH)basename +CAT = $(UNIXCOMMAND_PATH)cat +CD = cd # intrinsic unix command +CHMOD = $(UNIXCOMMAND_PATH)chmod +CMP = $(USRBIN_PATH)cmp +COMPRESS = $(USRBIN_PATH)compress +CP = $(UNIXCOMMAND_PATH)cp +CPIO = $(UNIXCOMMAND_PATH)cpio +CUT = $(USRBIN_PATH)cut +DATE = $(UNIXCOMMAND_PATH)date +DF = $(UNIXCOMMAND_PATH)df +DIFF = $(USRBIN_PATH)diff +DIRNAME = $(USRBIN_PATH)dirname +ECHO = echo # intrinsic unix command, with backslash-escaped character interpretation +EGREP = $(UNIXCOMMAND_PATH)egrep +EXPR = $(USRBIN_PATH)expr + +FIND = $(UNIXCOMMAND_PATH)find + +HEAD = $(USRBIN_PATH)head +GREP = $(UNIXCOMMAND_PATH)grep +GUNZIP = $(UNIXCOMMAND_PATH)gunzip +LEX = $(USRBIN_PATH)lex +LN = $(UNIXCOMMAND_PATH)ln +LS = $(UNIXCOMMAND_PATH)ls +M4 = $(USRBIN_PATH)m4 +MKDIR = $(UNIXCOMMAND_PATH)mkdir +MV = $(UNIXCOMMAND_PATH)mv +NAWK = $(USRBIN_PATH)awk +PWD = $(UNIXCOMMAND_PATH)pwd +#RM is defined by GNU Make as 'rm -f' +RMDIR = $(UNIXCOMMAND_PATH)rmdir +RPM = $(UNIXCOMMAND_PATH)rpm +SED = $(UNIXCOMMAND_PATH)sed +SH = $(UNIXCOMMAND_PATH)sh +SORT = $(UNIXCOMMAND_PATH)sort +STRIP = $(USRBIN_PATH)strip +TAIL = $(USRBIN_PATH)tail + +TAR = tar # We need GNU TAR which must be found trough PATH (may be in /opt/freeware/bin or /usr/local/bin) + +TEST = $(USRBIN_PATH)test +TOUCH = $(UNIXCOMMAND_PATH)touch +TR = $(USRBIN_PATH)tr +TRUE = $(UNIXCOMMAND_PATH)true +UNAME = $(UNIXCOMMAND_PATH)uname +UNIQ = $(USRBIN_PATH)uniq +UNZIPSFX = $(USRBIN_PATH)unzipsfx +YACC = $(USRBIN_PATH)yacc + +ZIPEXE = zip # Must be found trough PATH (may be in /opt/freeware/bin or /usr/local/bin) + +OS_VERSION = $(shell $(UNAME) -v) +OS_NAME = aix + +ARCH_DATA_MODEL=64 + From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 23:24:05 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:24:05 +0000 Subject: [Bug 729] [IcedTea8] GTKLookAndFeel should be the system look&feel on all GNU/Linux desktops In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729 --- Comment #30 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=da614e3d62ad author: andrew date: Tue Jul 15 22:57:57 2014 +0100 PR1853: Revert PR729 from minor release -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 23:24:09 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:24:09 +0000 Subject: [Bug 1853] [IcedTea7] Revert PR729 from minor release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1853 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=da614e3d62ad author: andrew date: Tue Jul 15 22:57:57 2014 +0100 PR1853: Revert PR729 from minor release -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Tue Jul 15 23:24:14 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 15 Jul 2014 23:24:14 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 --- Comment #6 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-forest-2.5/jdk?cmd=changeset;node=d6d4b6c9f5b4 author: andrew date: Tue Jul 15 23:03:29 2014 +0100 PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at icedtea.classpath.org Wed Jul 16 00:14:01 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 16 Jul 2014 00:14:01 +0000 Subject: /hg/release/icedtea7-2.5: Sync with 2.5.1 tag. Message-ID: changeset 4e0d6d141661 in /hg/release/icedtea7-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-2.5?cmd=changeset;node=4e0d6d141661 author: Andrew John Hughes date: Wed Jul 16 00:52:19 2014 +0100 Sync with 2.5.1 tag. PR1853: Revert PR729 from minor release PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 PR1868: Avoid x86 workaround when running Zero rather than a JIT S8029755, CVE-2014-4209: Enhance subject class S8030763: Validate global memory allocation S8031340, CVE-2014-4264: Better TLS/EC management S8031346, CVE-2014-4244: Enhance RSA key handling S8031540: Introduce document horizon S8032536: JVM resolves wrong method in some unusual cases S8033055: Issues in 2d S8033301, CVE-2014-4266: Build more informative InfoBuilder S8034267: Probabilistic native crash S8034272: Do not cram data into CRAM arrays S8034985, CVE-2014-2483: Better form for Lambda Forms S8035004, CVE-2014-4252: Provider provides less service S8035009, CVE-2014-4218: Make Proxy representations consistent S8035119, CVE-2014-4219: Fix exceptions to bytecode verification S8035699, CVE-2014-4268: File choosers should be choosier S8035788. CVE-2014-4221: Provide more consistency for lookups S8035793, CVE-2014-4223: Maximum arity maxed out S8036571: (process) Process process arguments carefully S8036800: Attribute OOM to correct part of code S8037046: Validate libraries to be loaded S8037076, CVE-2014-2490: Check constant pool constants S8037157: Verify call S8037162, CVE-2014-4263: More robust DH exchanges S8037167, CVE-2014-4216: Better method signature resolution S8039520, CVE-2014-4262: More atomicity of atomic updates S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException S8013611: Modal dialog fails to obtain keyboard focus S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale S8019990: IM candidate window appears on the South-East corner of the display. S8023990: Regression: postscript size increase from 6u18 S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping S8025030: Enhance stream handling S8026188: Enhance envelope factory S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently S8028285: RMI Thread can no longer call out to AWT S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package S8032686: Issues with method invoke S8033278: Missed access checks for Lookup.unreflect* after 8032585 S8033618: Correct logging output S8034926: Attribute classes properly S8035613: With active Securitymanager JAXBContext.newInstance fails S8035834: InetAddress.getLocalHost() can hang after JDK-8030731 was fixed S8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 S8036786: Update jdk7 testlibrary to match jdk8 S8036794: Manage JavaScript instances S8039324: Increment hsx 24.65 build to b02 for 7u65-b07 S8040156: Increment hsx 24.65 build to b03 for 7u65-b08 S8041264: Increment hsx 24.65 build to b04 for 7u65-b09 S8042264: 7u65 l10n resource file translation update 1 S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 S8042590: Running form URL throws NPE S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader S8043012: (tz) Support tzdata2014c 2014-07-15 Andrew John Hughes * Makefile.am: (JDK_UPDATE_VERSION): Bump to 65. (BUILD_VERSION): Bump to b32. (CORBA_CHANGESET): Update to icedtea-2.5.1 tag. (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_URL): Use PACKAGE_VERSION instead of branch so old versions from the same branch aren't overwritten. * NEWS: Updated. * configure.ac: Bump to 2.5.1. * hotspot.map: Update to icedtea-2.5.1 tag. * patches/boot/ecj-diamond.patch: Regenerated. diffstat: ChangeLog | 26 + Makefile.am | 30 +- NEWS | 64 ++ configure.ac | 2 +- hotspot.map | 2 +- patches/boot/ecj-diamond.patch | 1136 +++++++++++++++++++-------------------- 6 files changed, 669 insertions(+), 591 deletions(-) diffs (truncated from 3199 to 500 lines): diff -r d6f5bb3ba579 -r 4e0d6d141661 ChangeLog --- a/ChangeLog Wed Jun 25 12:44:45 2014 -0400 +++ b/ChangeLog Wed Jul 16 00:52:19 2014 +0100 @@ -1,3 +1,29 @@ +2014-07-15 Andrew John Hughes + + * Makefile.am: + (JDK_UPDATE_VERSION): Bump to 65. + (BUILD_VERSION): Bump to b32. + (CORBA_CHANGESET): Update to icedtea-2.5.1 tag. + (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_URL): Use PACKAGE_VERSION instead of + branch so old versions from the same branch + aren't overwritten. + * NEWS: Updated. + * configure.ac: Bump to 2.5.1. + * hotspot.map: Update to icedtea-2.5.1 tag. + * patches/boot/ecj-diamond.patch: + Regenerated. + 2014-06-25 Andrew John Hughes * configure.ac: Set to 2.5.1pre. diff -r d6f5bb3ba579 -r 4e0d6d141661 Makefile.am --- a/Makefile.am Wed Jun 25 12:44:45 2014 -0400 +++ b/Makefile.am Wed Jul 16 00:52:19 2014 +0100 @@ -1,22 +1,22 @@ # Dependencies -JDK_UPDATE_VERSION = 60 -BUILD_VERSION = b30 +JDK_UPDATE_VERSION = 65 +BUILD_VERSION = b32 COMBINED_VERSION = $(JDK_UPDATE_VERSION)-$(BUILD_VERSION) -CORBA_CHANGESET = 32c25f3ecdf6 -JAXP_CHANGESET = 6b28d9218dac -JAXWS_CHANGESET = f1f1ade53c01 -JDK_CHANGESET = 9705894e1370 -LANGTOOLS_CHANGESET = f70c7b796422 -OPENJDK_CHANGESET = 6a4e58702235 +CORBA_CHANGESET = 895c6b104996 +JAXP_CHANGESET = 59a1a3e44108 +JAXWS_CHANGESET = b5384b2fb987 +JDK_CHANGESET = d6d4b6c9f5b4 +LANGTOOLS_CHANGESET = 4c827dc3de05 +OPENJDK_CHANGESET = 483622a291d7 -CORBA_SHA256SUM = 1f9f07f31ce8588cd3cd12465f94e142c852c380059a3dab9831d86d3f264253 -JAXP_SHA256SUM = 59edb741e1b00243c040b399986960fad9e42f7e5dbe0a1e34798752b080c488 -JAXWS_SHA256SUM = ed3803635ed25f58cd86ad8ca27585f77cc50385da0342112980cc6ba8ff6028 -JDK_SHA256SUM = 508b4e26704749172022c95f44c5aa9feb391e82b54a545fdb79f3a51c269f83 -LANGTOOLS_SHA256SUM = 0eb9c19cfbecfbc6ef1e37f475d73f16469b9e1d969f69b1af4b10cbc2415659 -OPENJDK_SHA256SUM = 9a2f9486a48d51f84bdf9b9a52dc34fe90b886aa60ff5447b7f2502479065859 +CORBA_SHA256SUM = d476f22db32e028cc30dda47fec81e5ba0e113f029c3ed7a30edf8fc1404819b +JAXP_SHA256SUM = d13778e5bbf6cda22a40b9d5186d2a7d1a3f34d998b1ac4d65fe3abd12fffa25 +JAXWS_SHA256SUM = 29c39856af1153620023c3fa0313be2f23dc02208db1a8429ca80d1eebfce06f +JDK_SHA256SUM = 76194344fca5db4c79e4a2af28efd9fbb2e38e879b5afc59042874519bb5f7fc +LANGTOOLS_SHA256SUM = 374174ea3b7eb2bb81d9dfae4749d7b3c9037d07004aa59aaa5e8ed5fba922d3 +OPENJDK_SHA256SUM = 0496072760c521aa184f3c26c1f515a89ef6f9a88df14fa888c6ee6cdd9379b7 DROP_URL = http://icedtea.classpath.org/download/drops @@ -36,7 +36,7 @@ ICEDTEA_BRANCH = 2.5 ICEDTEA_PREFIX = $(ICEDTEA_MAJOR)-forest-$(ICEDTEA_BRANCH) ICEDTEA_HG_URL = http://icedtea.classpath.org/hg/release/$(ICEDTEA_PREFIX) -ICEDTEA_URL = $(DROP_URL)/$(ICEDTEA_MAJOR)/$(ICEDTEA_BRANCH) +ICEDTEA_URL = $(DROP_URL)/$(ICEDTEA_MAJOR)/$(PACKAGE_VERSION) HS_TYPE = "`$(AWK) 'version==$$1 {print $$2}' version=$(HSBUILD) $(abs_top_srcdir)/hotspot.map`" HS_URL = "`$(AWK) 'version==$$1 {print $$3}' version=$(HSBUILD) $(abs_top_srcdir)/hotspot.map`" diff -r d6f5bb3ba579 -r 4e0d6d141661 NEWS --- a/NEWS Wed Jun 25 12:44:45 2014 -0400 +++ b/NEWS Wed Jul 16 00:52:19 2014 +0100 @@ -14,6 +14,70 @@ New in release 2.5.1 (2014-07-XX): +* Security fixes + - S8029755, CVE-2014-4209: Enhance subject class + - S8030763: Validate global memory allocation + - S8031340, CVE-2014-4264: Better TLS/EC management + - S8031346, CVE-2014-4244: Enhance RSA key handling + - S8031540: Introduce document horizon + - S8032536: JVM resolves wrong method in some unusual cases + - S8033055: Issues in 2d + - S8033301, CVE-2014-4266: Build more informative InfoBuilder + - S8034267: Probabilistic native crash + - S8034272: Do not cram data into CRAM arrays + - S8034985, CVE-2014-2483: Better form for Lambda Forms + - S8035004, CVE-2014-4252: Provider provides less service + - S8035009, CVE-2014-4218: Make Proxy representations consistent + - S8035119, CVE-2014-4219: Fix exceptions to bytecode verification + - S8035699, CVE-2014-4268: File choosers should be choosier + - S8035788. CVE-2014-4221: Provide more consistency for lookups + - S8035793, CVE-2014-4223: Maximum arity maxed out + - S8036571: (process) Process process arguments carefully + - S8036800: Attribute OOM to correct part of code + - S8037046: Validate libraries to be loaded + - S8037076, CVE-2014-2490: Check constant pool constants + - S8037157: Verify call + - S8037162, CVE-2014-4263: More robust DH exchanges + - S8037167, CVE-2014-4216: Better method signature resolution + - S8039520, CVE-2014-4262: More atomicity of atomic updates +* Backports + - S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException + - S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException + - S8013611: Modal dialog fails to obtain keyboard focus + - S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale + - S8019990: IM candidate window appears on the South-East corner of the display. + - S8023990: Regression: postscript size increase from 6u18 + - S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError + - S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping + - S8025030: Enhance stream handling + - S8026188: Enhance envelope factory + - S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently + - S8028285: RMI Thread can no longer call out to AWT + - S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending + - S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component + - S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package + - S8032686: Issues with method invoke + - S8033278: Missed access checks for Lookup.unreflect* after 8032585 + - S8033618: Correct logging output + - S8034926: Attribute classes properly + - S8035613: With active Securitymanager JAXBContext.newInstance fails + - S8035834: InetAddress.getLocalHost() can hang after JDK-8030731 was fixed + - S8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 + - S8036786: Update jdk7 testlibrary to match jdk8 + - S8036794: Manage JavaScript instances + - S8039324: Increment hsx 24.65 build to b02 for 7u65-b07 + - S8040156: Increment hsx 24.65 build to b03 for 7u65-b08 + - S8041264: Increment hsx 24.65 build to b04 for 7u65-b09 + - S8042264: 7u65 l10n resource file translation update 1 + - S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 + - S8042590: Running form URL throws NPE + - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader + - S8043012: (tz) Support tzdata2014c +* Bug fixes + - PR1853: Revert PR729 from minor release + - PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 + - PR1868: Avoid x86 workaround when running Zero rather than a JIT + New in release 2.5.0 (2014-06-13): * OpenJDK diff -r d6f5bb3ba579 -r 4e0d6d141661 configure.ac --- a/configure.ac Wed Jun 25 12:44:45 2014 -0400 +++ b/configure.ac Wed Jul 16 00:52:19 2014 +0100 @@ -1,4 +1,4 @@ -AC_INIT([icedtea], [2.5.1pre], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea], [2.5.1], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AM_MAINTAINER_MODE([enable]) AC_CONFIG_FILES([Makefile]) diff -r d6f5bb3ba579 -r 4e0d6d141661 hotspot.map --- a/hotspot.map Wed Jun 25 12:44:45 2014 -0400 +++ b/hotspot.map Wed Jul 16 00:52:19 2014 +0100 @@ -1,3 +1,3 @@ # version type(drop/hg) url changeset sha256sum -default drop http://icedtea.classpath.org/download/drops/icedtea7/2.5 5dc3dd2819c8 645a43adaec3be3d3297479d134c02e444af9f0be33d35942f0ca863592fea26 +default drop http://icedtea.classpath.org/download/drops/icedtea7/2.5 02066294d005 78d57f7c207d8f56bba2ee6aec232a836fd51830d352cfa4804d8077d9a7b32b aarch64 drop http://icedtea.classpath.org/download/drops/aarch64/2.5 d17532dbc6a7 3ad1f3116d30fb937719c6c462e070d689170dcf99173f785a9b13db074e1938 diff -r d6f5bb3ba579 -r 4e0d6d141661 patches/boot/ecj-diamond.patch --- a/patches/boot/ecj-diamond.patch Wed Jun 25 12:44:45 2014 -0400 +++ b/patches/boot/ecj-diamond.patch Wed Jul 16 00:52:19 2014 +0100 @@ -1,6 +1,6 @@ diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java ---- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2014-04-17 17:52:18.000000000 +0100 -+++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2014-04-18 05:22:34.006722160 +0100 +--- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2014-07-15 22:47:38.000000000 +0100 ++++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2014-07-15 23:17:03.375226216 +0100 @@ -58,7 +58,7 @@ private CorbaConnection conn; @@ -11,8 +11,8 @@ public static synchronized void cleanCache( ORB orb ) { synchronized (iorMapLock) { diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java ---- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2014-04-17 17:52:18.000000000 +0100 -+++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2014-04-18 05:22:34.006722160 +0100 +--- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2014-07-15 22:47:38.000000000 +0100 ++++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2014-07-15 23:17:03.375226216 +0100 @@ -1315,7 +1315,7 @@ protected void shutdownServants(boolean wait_for_completion) { Set oaset; @@ -23,8 +23,8 @@ for (ObjectAdapterFactory oaf : oaset) diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java ---- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2014-04-17 17:52:18.000000000 +0100 -+++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2014-04-18 05:22:34.006722160 +0100 +--- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2014-07-15 22:47:38.000000000 +0100 ++++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2014-07-15 23:17:03.375226216 +0100 @@ -108,7 +108,7 @@ private ThreadGroup threadGroup; @@ -44,8 +44,8 @@ for (WorkerThread wt : copy) { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java ---- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2014-04-18 05:21:17.197587007 +0100 -+++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2014-04-18 05:22:34.006722160 +0100 +--- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2014-07-15 23:15:12.177527771 +0100 ++++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2014-07-15 23:17:03.375226216 +0100 @@ -297,8 +297,8 @@ // private final static class EncodingInfos { @@ -67,8 +67,8 @@ final String javaName = (String) keys.nextElement(); final String[] mimes = parseMimeTypes(props.getProperty(javaName)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java openjdk-boot/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2014-04-18 05:22:34.006722160 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2014-07-15 23:17:03.375226216 +0100 @@ -63,9 +63,10 @@ */ public final class DocumentHandler extends DefaultHandler { @@ -84,8 +84,8 @@ private Reference loader; private ExceptionListener listener; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/TypeResolver.java openjdk-boot/jdk/src/share/classes/com/sun/beans/TypeResolver.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2014-04-18 05:22:34.006722160 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2014-07-15 23:17:03.375226216 +0100 @@ -46,7 +46,7 @@ */ public final class TypeResolver { @@ -105,8 +105,8 @@ CACHE.put(actual, map); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/util/Cache.java openjdk-boot/jdk/src/share/classes/com/sun/beans/util/Cache.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/util/Cache.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/beans/util/Cache.java 2014-04-18 05:22:34.006722160 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/util/Cache.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/beans/util/Cache.java 2014-07-15 23:17:03.375226216 +0100 @@ -45,7 +45,7 @@ private final Kind keyKind; // a reference kind for the cache keys private final Kind valueKind; // a reference kind for the cache values @@ -153,8 +153,8 @@ }; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2014-07-15 23:17:03.375226216 +0100 @@ -104,9 +104,9 @@ return this.def.compareTo(that.def); } @@ -226,8 +226,8 @@ for (int i = 0; i < layout.length(); i++) { if (layout.charAt(i++) != '[') diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2014-04-18 05:21:17.213587245 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2014-07-15 23:15:12.237528687 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2014-07-15 23:17:03.375226216 +0100 @@ -257,7 +257,7 @@ assert(basicCodings[_meta_default] == null); assert(basicCodings[_meta_canon_min] != null); @@ -290,8 +290,8 @@ return true; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2014-04-18 05:21:16.089570632 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2014-07-15 23:15:12.069526120 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2014-07-15 23:17:03.375226216 +0100 @@ -466,7 +466,7 @@ void readInnerClasses(Class cls) throws IOException { @@ -302,8 +302,8 @@ InnerClass ic = new InnerClass(readClassRef(), diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2014-07-15 23:17:03.375226216 +0100 @@ -743,9 +743,9 @@ // Steps 1/2/3 are interdependent, and may be iterated. // Steps 4 and 5 may be decided independently afterward. @@ -340,8 +340,8 @@ if (popset.add(values[i])) popvals.add(values[i]); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2014-07-15 23:17:03.375226216 +0100 @@ -402,7 +402,7 @@ private static Map codeMap; @@ -352,8 +352,8 @@ Coding x1 = codeMap.get(x0); if (x1 == null) codeMap.put(x0, x1 = x0); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2014-07-15 23:17:03.375226216 +0100 @@ -921,7 +921,7 @@ public static Index[] partition(Index ix, int[] keys) { @@ -382,8 +382,8 @@ Entry e = work.previous(); work.remove(); // pop stack diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2014-04-18 05:21:17.217587303 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2014-07-15 23:15:12.237528687 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2014-07-15 23:17:03.375226216 +0100 @@ -61,7 +61,7 @@ ResourceBundle.getBundle("com.sun.java.util.jar.pack.DriverResource"); @@ -421,8 +421,8 @@ for (String optline : options.split("\n")) { String[] words = optline.split("\\p{Space}+"); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2014-07-15 23:17:03.375226216 +0100 @@ -45,7 +45,7 @@ private final ArrayList flist; @@ -433,8 +433,8 @@ for (int i = 0 ; i < capacity ; i++) { flist.add(null); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2014-04-18 05:21:16.093570691 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2014-07-15 23:15:12.073526180 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2014-07-15 23:17:03.375226216 +0100 @@ -112,7 +112,7 @@ public static final Attribute.Layout attrSourceFileSpecial; public static final Map attrDefs; @@ -590,8 +590,8 @@ // Add to the end of ths list: if (!fileSet.contains(cls.file)) diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2014-04-18 05:21:17.217587303 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2014-07-15 23:15:12.241528748 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2014-07-15 23:17:03.375226216 +0100 @@ -686,7 +686,7 @@ cp_Signature_classes.expectLength(getIntTotal(numSigClasses)); cp_Signature_classes.readFrom(in); @@ -705,8 +705,8 @@ ClassEntry thisClass = curClass.thisClass; ClassEntry superClass = curClass.superClass; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java 2014-04-18 05:21:17.217587303 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java 2014-07-15 23:15:12.241528748 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageWriter.java 2014-07-15 23:17:03.379226275 +0100 @@ -116,7 +116,7 @@ int[][] attrCounts; // count attr. occurences @@ -762,8 +762,8 @@ for (Class cls : pkg.classes) { if (!cls.hasInnerClasses()) continue; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java 2014-04-18 05:22:34.010722218 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackerImpl.java 2014-07-15 23:17:03.379226275 +0100 @@ -183,8 +183,8 @@ final Map attrDefs; final Map attrCommands; @@ -794,8 +794,8 @@ for (JarEntry je : Collections.list(jf.entries())) { InFile inFile = new InFile(jf, je); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java 2014-04-18 05:22:34.014722277 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PopulationCoding.java 2014-07-15 23:17:03.379226275 +0100 @@ -309,7 +309,7 @@ // As each new value is added, we assert that the value // was not already in the set. @@ -806,8 +806,8 @@ maxForDebug += fillp; int min = Integer.MIN_VALUE; // farthest from the center diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java 2014-04-18 05:21:17.217587303 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java 2014-04-18 05:22:34.014722277 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java 2014-07-15 23:15:12.241528748 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PropMap.java 2014-07-15 23:17:03.379226275 +0100 @@ -48,8 +48,8 @@ */ @@ -838,8 +838,8 @@ while (res.remove(null)); return res; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java 2014-04-18 05:22:34.014722277 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/TLGlobals.java 2014-07-15 23:17:03.379226275 +0100 @@ -58,12 +58,12 @@ private final Map memberEntries; @@ -860,8 +860,8 @@ } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java 2014-04-18 05:21:17.217587303 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java 2014-04-18 05:22:34.014722277 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java 2014-07-15 23:15:12.241528748 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/UnpackerImpl.java 2014-07-15 23:17:03.379226275 +0100 @@ -233,7 +233,7 @@ props.setProperty(java.util.jar.Pack200.Unpacker.PROGRESS,"50"); pkg.ensureAllClassFiles(); @@ -872,8 +872,8 @@ String name = file.nameString; JarEntry je = new JarEntry(Utils.getJarEntryName(name)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java 2014-04-18 05:21:17.217587303 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java 2014-04-18 05:22:34.014722277 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java 2014-07-15 23:15:12.241528748 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Utils.java 2014-07-15 23:17:03.379226275 +0100 @@ -132,7 +132,7 @@ // Keep a TLS point to the global data and environment. // This makes it simpler to supply environmental options @@ -884,32 +884,20 @@ // convenience methods to access the TL globals static TLGlobals getTLGlobals() { diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java openjdk-boot/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java 2014-04-11 14:11:25.841801783 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java 2014-04-11 14:24:28.078759639 +0100 -@@ -60,9 +60,9 @@ - } - if (principalsCache == null || accCache == null) { - principalsCache = -- new CacheMap<>(PRINCIPALS_CACHE_SIZE); -+ new CacheMap(PRINCIPALS_CACHE_SIZE); - accCache = -- new CacheMap<>(ACC_CACHE_SIZE); -+ new CacheMap(ACC_CACHE_SIZE); - } - - // Retrieve the principals for the given -@@ -106,7 +106,7 @@ +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/jmx/remote/security/SubjectDelegator.java 2014-07-15 23:18:11.116260222 +0100 +@@ -56,7 +56,7 @@ // principal in the delegated subject // - final Principal[] dp = delegatedPrincipals; -- final Collection permissions = new ArrayList<>(dp.length); -+ final Collection permissions = new ArrayList(dp.length); - for(Principal p : dp) { + Collection ps = getSubjectPrincipals(delegatedSubject); +- final Collection permissions = new ArrayList<>(ps.size()); ++ final Collection permissions = new ArrayList(ps.size()); + for(Principal p : ps) { final String pname = p.getClass().getName() + "." + p.getName(); permissions.add(new SubjectDelegationPermission(pname)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java openjdk-boot/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java 2014-04-18 05:22:34.014722277 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/media/sound/AbstractLine.java 2014-07-15 23:17:03.379226275 +0100 @@ -54,7 +54,7 @@ * Contains event dispatcher per thread group. */ @@ -919,9 +907,21 @@ /** * Constructs a new AbstractLine. +diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/JDK13Services.java openjdk-boot/jdk/src/share/classes/com/sun/media/sound/JDK13Services.java +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/JDK13Services.java 2014-07-15 23:03:29.000000000 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/media/sound/JDK13Services.java 2014-07-15 23:17:03.455227437 +0100 +@@ -102,7 +102,7 @@ + && !SoundbankReader.class.equals(serviceClass) + && !MidiFileWriter.class.equals(serviceClass) + && !MidiFileReader.class.equals(serviceClass)) { +- providers = new ArrayList<>(0); ++ providers = new ArrayList(0); + } else { + providers = JSSecurityManager.getProviders(serviceClass); + } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java openjdk-boot/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java 2014-04-17 22:51:43.000000000 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java 2014-04-18 05:22:34.014722277 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/media/sound/RealTimeSequencer.java 2014-07-15 23:03:29.000000000 +0100 From bugzilla-daemon at icedtea.classpath.org Wed Jul 16 00:14:12 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 16 Jul 2014 00:14:12 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 --- Comment #7 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.5?cmd=changeset;node=4e0d6d141661 author: Andrew John Hughes date: Wed Jul 16 00:52:19 2014 +0100 Sync with 2.5.1 tag. PR1853: Revert PR729 from minor release PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 PR1868: Avoid x86 workaround when running Zero rather than a JIT S8029755, CVE-2014-4209: Enhance subject class S8030763: Validate global memory allocation S8031340, CVE-2014-4264: Better TLS/EC management S8031346, CVE-2014-4244: Enhance RSA key handling S8031540: Introduce document horizon S8032536: JVM resolves wrong method in some unusual cases S8033055: Issues in 2d S8033301, CVE-2014-4266: Build more informative InfoBuilder S8034267: Probabilistic native crash S8034272: Do not cram data into CRAM arrays S8034985, CVE-2014-2483: Better form for Lambda Forms S8035004, CVE-2014-4252: Provider provides less service S8035009, CVE-2014-4218: Make Proxy representations consistent S8035119, CVE-2014-4219: Fix exceptions to bytecode verification S8035699, CVE-2014-4268: File choosers should be choosier S8035788. CVE-2014-4221: Provide more consistency for lookups S8035793, CVE-2014-4223: Maximum arity maxed out S8036571: (process) Process process arguments carefully S8036800: Attribute OOM to correct part of code S8037046: Validate libraries to be loaded S8037076, CVE-2014-2490: Check constant pool constants S8037157: Verify call S8037162, CVE-2014-4263: More robust DH exchanges S8037167, CVE-2014-4216: Better method signature resolution S8039520, CVE-2014-4262: More atomicity of atomic updates S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException S8013611: Modal dialog fails to obtain keyboard focus S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale S8019990: IM candidate window appears on the South-East corner of the display. S8023990: Regression: postscript size increase from 6u18 S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping S8025030: Enhance stream handling S8026188: Enhance envelope factory S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently S8028285: RMI Thread can no longer call out to AWT S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package S8032686: Issues with method invoke S8033278: Missed access checks for Lookup.unreflect* after 8032585 S8033618: Correct logging output S8034926: Attribute classes properly S8035613: With active Securitymanager JAXBContext.newInstance fails S8035834: InetAddress.getLocalHost() can hang after JDK-8030731 was fixed S8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 S8036786: Update jdk7 testlibrary to match jdk8 S8036794: Manage JavaScript instances S8039324: Increment hsx 24.65 build to b02 for 7u65-b07 S8040156: Increment hsx 24.65 build to b03 for 7u65-b08 S8041264: Increment hsx 24.65 build to b04 for 7u65-b09 S8042264: 7u65 l10n resource file translation update 1 S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 S8042590: Running form URL throws NPE S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader S8043012: (tz) Support tzdata2014c 2014-07-15 Andrew John Hughes * Makefile.am: (JDK_UPDATE_VERSION): Bump to 65. (BUILD_VERSION): Bump to b32. (CORBA_CHANGESET): Update to icedtea-2.5.1 tag. (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_URL): Use PACKAGE_VERSION instead of branch so old versions from the same branch aren't overwritten. * NEWS: Updated. * configure.ac: Bump to 2.5.1. * hotspot.map: Update to icedtea-2.5.1 tag. * patches/boot/ecj-diamond.patch: Regenerated. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 16 00:14:15 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 16 Jul 2014 00:14:15 +0000 Subject: [Bug 729] [IcedTea8] GTKLookAndFeel should be the system look&feel on all GNU/Linux desktops In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729 --- Comment #31 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.5?cmd=changeset;node=4e0d6d141661 author: Andrew John Hughes date: Wed Jul 16 00:52:19 2014 +0100 Sync with 2.5.1 tag. PR1853: Revert PR729 from minor release PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 PR1868: Avoid x86 workaround when running Zero rather than a JIT S8029755, CVE-2014-4209: Enhance subject class S8030763: Validate global memory allocation S8031340, CVE-2014-4264: Better TLS/EC management S8031346, CVE-2014-4244: Enhance RSA key handling S8031540: Introduce document horizon S8032536: JVM resolves wrong method in some unusual cases S8033055: Issues in 2d S8033301, CVE-2014-4266: Build more informative InfoBuilder S8034267: Probabilistic native crash S8034272: Do not cram data into CRAM arrays S8034985, CVE-2014-2483: Better form for Lambda Forms S8035004, CVE-2014-4252: Provider provides less service S8035009, CVE-2014-4218: Make Proxy representations consistent S8035119, CVE-2014-4219: Fix exceptions to bytecode verification S8035699, CVE-2014-4268: File choosers should be choosier S8035788. CVE-2014-4221: Provide more consistency for lookups S8035793, CVE-2014-4223: Maximum arity maxed out S8036571: (process) Process process arguments carefully S8036800: Attribute OOM to correct part of code S8037046: Validate libraries to be loaded S8037076, CVE-2014-2490: Check constant pool constants S8037157: Verify call S8037162, CVE-2014-4263: More robust DH exchanges S8037167, CVE-2014-4216: Better method signature resolution S8039520, CVE-2014-4262: More atomicity of atomic updates S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException S8013611: Modal dialog fails to obtain keyboard focus S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale S8019990: IM candidate window appears on the South-East corner of the display. S8023990: Regression: postscript size increase from 6u18 S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping S8025030: Enhance stream handling S8026188: Enhance envelope factory S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently S8028285: RMI Thread can no longer call out to AWT S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package S8032686: Issues with method invoke S8033278: Missed access checks for Lookup.unreflect* after 8032585 S8033618: Correct logging output S8034926: Attribute classes properly S8035613: With active Securitymanager JAXBContext.newInstance fails S8035834: InetAddress.getLocalHost() can hang after JDK-8030731 was fixed S8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 S8036786: Update jdk7 testlibrary to match jdk8 S8036794: Manage JavaScript instances S8039324: Increment hsx 24.65 build to b02 for 7u65-b07 S8040156: Increment hsx 24.65 build to b03 for 7u65-b08 S8041264: Increment hsx 24.65 build to b04 for 7u65-b09 S8042264: 7u65 l10n resource file translation update 1 S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 S8042590: Running form URL throws NPE S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader S8043012: (tz) Support tzdata2014c 2014-07-15 Andrew John Hughes * Makefile.am: (JDK_UPDATE_VERSION): Bump to 65. (BUILD_VERSION): Bump to b32. (CORBA_CHANGESET): Update to icedtea-2.5.1 tag. (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_URL): Use PACKAGE_VERSION instead of branch so old versions from the same branch aren't overwritten. * NEWS: Updated. * configure.ac: Bump to 2.5.1. * hotspot.map: Update to icedtea-2.5.1 tag. * patches/boot/ecj-diamond.patch: Regenerated. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 16 00:14:19 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 16 Jul 2014 00:14:19 +0000 Subject: [Bug 1868] [IcedTea7] Avoid x86 workaround when running Zero rather than a JIT In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1868 --- Comment #2 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.5?cmd=changeset;node=4e0d6d141661 author: Andrew John Hughes date: Wed Jul 16 00:52:19 2014 +0100 Sync with 2.5.1 tag. PR1853: Revert PR729 from minor release PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 PR1868: Avoid x86 workaround when running Zero rather than a JIT S8029755, CVE-2014-4209: Enhance subject class S8030763: Validate global memory allocation S8031340, CVE-2014-4264: Better TLS/EC management S8031346, CVE-2014-4244: Enhance RSA key handling S8031540: Introduce document horizon S8032536: JVM resolves wrong method in some unusual cases S8033055: Issues in 2d S8033301, CVE-2014-4266: Build more informative InfoBuilder S8034267: Probabilistic native crash S8034272: Do not cram data into CRAM arrays S8034985, CVE-2014-2483: Better form for Lambda Forms S8035004, CVE-2014-4252: Provider provides less service S8035009, CVE-2014-4218: Make Proxy representations consistent S8035119, CVE-2014-4219: Fix exceptions to bytecode verification S8035699, CVE-2014-4268: File choosers should be choosier S8035788. CVE-2014-4221: Provide more consistency for lookups S8035793, CVE-2014-4223: Maximum arity maxed out S8036571: (process) Process process arguments carefully S8036800: Attribute OOM to correct part of code S8037046: Validate libraries to be loaded S8037076, CVE-2014-2490: Check constant pool constants S8037157: Verify call S8037162, CVE-2014-4263: More robust DH exchanges S8037167, CVE-2014-4216: Better method signature resolution S8039520, CVE-2014-4262: More atomicity of atomic updates S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException S8013611: Modal dialog fails to obtain keyboard focus S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale S8019990: IM candidate window appears on the South-East corner of the display. S8023990: Regression: postscript size increase from 6u18 S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping S8025030: Enhance stream handling S8026188: Enhance envelope factory S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently S8028285: RMI Thread can no longer call out to AWT S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package S8032686: Issues with method invoke S8033278: Missed access checks for Lookup.unreflect* after 8032585 S8033618: Correct logging output S8034926: Attribute classes properly S8035613: With active Securitymanager JAXBContext.newInstance fails S8035834: InetAddress.getLocalHost() can hang after JDK-8030731 was fixed S8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 S8036786: Update jdk7 testlibrary to match jdk8 S8036794: Manage JavaScript instances S8039324: Increment hsx 24.65 build to b02 for 7u65-b07 S8040156: Increment hsx 24.65 build to b03 for 7u65-b08 S8041264: Increment hsx 24.65 build to b04 for 7u65-b09 S8042264: 7u65 l10n resource file translation update 1 S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 S8042590: Running form URL throws NPE S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader S8043012: (tz) Support tzdata2014c 2014-07-15 Andrew John Hughes * Makefile.am: (JDK_UPDATE_VERSION): Bump to 65. (BUILD_VERSION): Bump to b32. (CORBA_CHANGESET): Update to icedtea-2.5.1 tag. (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_URL): Use PACKAGE_VERSION instead of branch so old versions from the same branch aren't overwritten. * NEWS: Updated. * configure.ac: Bump to 2.5.1. * hotspot.map: Update to icedtea-2.5.1 tag. * patches/boot/ecj-diamond.patch: Regenerated. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 16 00:14:22 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 16 Jul 2014 00:14:22 +0000 Subject: [Bug 1853] [IcedTea7] Revert PR729 from minor release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1853 --- Comment #2 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.5?cmd=changeset;node=4e0d6d141661 author: Andrew John Hughes date: Wed Jul 16 00:52:19 2014 +0100 Sync with 2.5.1 tag. PR1853: Revert PR729 from minor release PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 PR1868: Avoid x86 workaround when running Zero rather than a JIT S8029755, CVE-2014-4209: Enhance subject class S8030763: Validate global memory allocation S8031340, CVE-2014-4264: Better TLS/EC management S8031346, CVE-2014-4244: Enhance RSA key handling S8031540: Introduce document horizon S8032536: JVM resolves wrong method in some unusual cases S8033055: Issues in 2d S8033301, CVE-2014-4266: Build more informative InfoBuilder S8034267: Probabilistic native crash S8034272: Do not cram data into CRAM arrays S8034985, CVE-2014-2483: Better form for Lambda Forms S8035004, CVE-2014-4252: Provider provides less service S8035009, CVE-2014-4218: Make Proxy representations consistent S8035119, CVE-2014-4219: Fix exceptions to bytecode verification S8035699, CVE-2014-4268: File choosers should be choosier S8035788. CVE-2014-4221: Provide more consistency for lookups S8035793, CVE-2014-4223: Maximum arity maxed out S8036571: (process) Process process arguments carefully S8036800: Attribute OOM to correct part of code S8037046: Validate libraries to be loaded S8037076, CVE-2014-2490: Check constant pool constants S8037157: Verify call S8037162, CVE-2014-4263: More robust DH exchanges S8037167, CVE-2014-4216: Better method signature resolution S8039520, CVE-2014-4262: More atomicity of atomic updates S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException S8013611: Modal dialog fails to obtain keyboard focus S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale S8019990: IM candidate window appears on the South-East corner of the display. S8023990: Regression: postscript size increase from 6u18 S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping S8025030: Enhance stream handling S8026188: Enhance envelope factory S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently S8028285: RMI Thread can no longer call out to AWT S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package S8032686: Issues with method invoke S8033278: Missed access checks for Lookup.unreflect* after 8032585 S8033618: Correct logging output S8034926: Attribute classes properly S8035613: With active Securitymanager JAXBContext.newInstance fails S8035834: InetAddress.getLocalHost() can hang after JDK-8030731 was fixed S8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 S8036786: Update jdk7 testlibrary to match jdk8 S8036794: Manage JavaScript instances S8039324: Increment hsx 24.65 build to b02 for 7u65-b07 S8040156: Increment hsx 24.65 build to b03 for 7u65-b08 S8041264: Increment hsx 24.65 build to b04 for 7u65-b09 S8042264: 7u65 l10n resource file translation update 1 S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 S8042590: Running form URL throws NPE S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader S8043012: (tz) Support tzdata2014c 2014-07-15 Andrew John Hughes * Makefile.am: (JDK_UPDATE_VERSION): Bump to 65. (BUILD_VERSION): Bump to b32. (CORBA_CHANGESET): Update to icedtea-2.5.1 tag. (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_URL): Use PACKAGE_VERSION instead of branch so old versions from the same branch aren't overwritten. * NEWS: Updated. * configure.ac: Bump to 2.5.1. * hotspot.map: Update to icedtea-2.5.1 tag. * patches/boot/ecj-diamond.patch: Regenerated. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Wed Jul 16 06:14:10 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 16 Jul 2014 08:14:10 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: References: <53C56FCC.6040803@redhat.com> Message-ID: <53C61832.9030009@redhat.com> On 07/15/2014 08:18 PM, Fernando Cassia wrote: > On Tue, Jul 15, 2014 at 3:15 PM, Jiri Vanek wrote: >> Nope. ITW is continuing to run unsigned applets. It jsut warning you more. > > No, it does not automatically load applets. You?ve got to click to run. Yes. And thats wrong? Also - if they understand, they can allow all unsigned appelts to norbeing asked, or remember theirs decisions. > Hence "Will all my applets fail to work next year? (as they are doing > with latest > Oracle releases)" no. W are nto going to allow this. > > Most people, when faced with non-loading applets, think they "don?t I must be missing something. "non-laoding" applets ? The appelts do load (??). > work". You are assuming that people actually follow, read and > understand security dialogs. Uff... I must admit my user experience study is not as rich as it should be. May you be more specific what you think is an flaw? And ifit really is, what is and cure for it? Thank you in advance, J. From andrew at icedtea.classpath.org Wed Jul 16 07:09:22 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 16 Jul 2014 07:09:22 +0000 Subject: /hg/release/icedtea7-2.5: 2 new changesets Message-ID: changeset 960cf7b88b42 in /hg/release/icedtea7-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-2.5?cmd=changeset;node=960cf7b88b42 author: Andrew John Hughes date: Wed Jul 16 08:02:42 2014 +0100 Update AArch64 port and add July 2014 security patches. Common frame handling for C1/C2 which correctly handle all frame sizes Fix register misuse in verify_method_data_pointer Fix register usage in generate_verify_oop(). Restrict default ReservedCodeCacheSize to 128M Use explicit barrier instructions in C1. 2014-07-16 Andrew John Hughes * patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch, * patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch: Removed, as applied upstream. * Makefile.am: (ICEDTEA_PATCHES): Updated. * NEWS: Likewise. * hotspot.map: Bump aarch64 port to latest tip. * patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch, * patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch, * patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch, * patches/hotspot/aarch64/20140715-8036800-attribute_oom_to_right_code.patch, * patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch, * patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch, * patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch, * patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch: July 2014 security patches for AArch64 HotSpot. changeset 93624ef7b10e in /hg/release/icedtea7-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-2.5?cmd=changeset;node=93624ef7b10e author: Andrew John Hughes date: Wed Jul 16 08:08:57 2014 +0100 PR1867: Turn the infinality patch off by default 2014-07-16 Andrew John Hughes PR1867: Turn the infinality patch off by default * NEWS: Updated. * acinclude.m4: (IT_ENABLE_INFINALITY): Set default to no. diffstat: ChangeLog | 26 + Makefile.am | 10 +- NEWS | 7 + acinclude.m4 | 4 +- hotspot.map | 4 +- patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch | 22 - patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch | 32 - patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch | 233 ++++++++++ patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch | 77 +++ patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch | 119 +++++ patches/hotspot/aarch64/20140715-8036800-attribute_oom_to_right_code.patch | 40 + patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch | 37 + patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch | 25 + patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch | 67 ++ patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch | 48 ++ 15 files changed, 691 insertions(+), 60 deletions(-) diffs (truncated from 841 to 500 lines): diff -r 4e0d6d141661 -r 93624ef7b10e ChangeLog --- a/ChangeLog Wed Jul 16 00:52:19 2014 +0100 +++ b/ChangeLog Wed Jul 16 08:08:57 2014 +0100 @@ -1,3 +1,29 @@ +2014-07-16 Andrew John Hughes + + PR1867: Turn the infinality patch off by default + * NEWS: Updated. + * acinclude.m4: + (IT_ENABLE_INFINALITY): Set default to no. + +2014-07-16 Andrew John Hughes + + * patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch, + * patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch: + Removed, as applied upstream. + * Makefile.am: + (ICEDTEA_PATCHES): Updated. + * NEWS: Likewise. + * hotspot.map: Bump aarch64 port to latest tip. + * patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch, + * patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch, + * patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch, + * patches/hotspot/aarch64/20140715-8036800-attribute_oom_to_right_code.patch, + * patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch, + * patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch, + * patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch, + * patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch: + July 2014 security patches for AArch64 HotSpot. + 2014-07-15 Andrew John Hughes * Makefile.am: diff -r 4e0d6d141661 -r 93624ef7b10e Makefile.am --- a/Makefile.am Wed Jul 16 00:52:19 2014 +0100 +++ b/Makefile.am Wed Jul 16 08:08:57 2014 +0100 @@ -279,8 +279,14 @@ if WITH_ALT_HSBUILD ICEDTEA_PATCHES += patches/hotspot/aarch64/werror.patch \ - patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch \ - patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch + patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch \ + patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch \ + patches/hotspot/aarch64/20140715-8036800-attribute_oom_to_right_code.patch \ + patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch \ + patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch \ + patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch \ + patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch \ + patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch if ENABLE_SYSTEMTAP ICEDTEA_PATCHES += \ patches/hotspot/aarch64/systemtap_gc.patch diff -r 4e0d6d141661 -r 93624ef7b10e NEWS --- a/NEWS Wed Jul 16 00:52:19 2014 +0100 +++ b/NEWS Wed Jul 16 08:08:57 2014 +0100 @@ -76,7 +76,14 @@ * Bug fixes - PR1853: Revert PR729 from minor release - PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 + - PR1867: Turn the infinality patch off by default - PR1868: Avoid x86 workaround when running Zero rather than a JIT +* AArch64 port + - Common frame handling for C1/C2 which correctly handle all frame sizes + - Fix register misuse in verify_method_data_pointer + - Fix register usage in generate_verify_oop(). + - Restrict default ReservedCodeCacheSize to 128M + - Use explicit barrier instructions in C1. New in release 2.5.0 (2014-06-13): diff -r 4e0d6d141661 -r 93624ef7b10e acinclude.m4 --- a/acinclude.m4 Wed Jul 16 00:52:19 2014 +0100 +++ b/acinclude.m4 Wed Jul 16 08:08:57 2014 +0100 @@ -2813,7 +2813,7 @@ AC_REQUIRE([IT_CHECK_FOR_FONTCONFIG]) AC_MSG_CHECKING([whether to use fontconfig to provide better font rendering]) AC_ARG_ENABLE([infinality], - [AS_HELP_STRING(--enable-infinality,build with fontconfig font rendering [[default=yes]])], + [AS_HELP_STRING(--enable-infinality,build with fontconfig font rendering [[default=no]])], [ case "${enableval}" in yes) @@ -2825,7 +2825,7 @@ esac ], [ - enable_infinality=yes + enable_infinality=no ]) AC_MSG_RESULT([$enable_infinality]) AM_CONDITIONAL([ENABLE_INFINALITY], test x"${enable_infinality}" = "xyes") diff -r 4e0d6d141661 -r 93624ef7b10e hotspot.map --- a/hotspot.map Wed Jul 16 00:52:19 2014 +0100 +++ b/hotspot.map Wed Jul 16 08:08:57 2014 +0100 @@ -1,3 +1,3 @@ # version type(drop/hg) url changeset sha256sum -default drop http://icedtea.classpath.org/download/drops/icedtea7/2.5 02066294d005 78d57f7c207d8f56bba2ee6aec232a836fd51830d352cfa4804d8077d9a7b32b -aarch64 drop http://icedtea.classpath.org/download/drops/aarch64/2.5 d17532dbc6a7 3ad1f3116d30fb937719c6c462e070d689170dcf99173f785a9b13db074e1938 +default drop http://icedtea.classpath.org/download/drops/icedtea7/2.5.1 02066294d005 78d57f7c207d8f56bba2ee6aec232a836fd51830d352cfa4804d8077d9a7b32b +aarch64 drop http://icedtea.classpath.org/download/drops/aarch64/2.5.1 a03843f2ff15 e88ca1ef9eeafa9bac7f0e5277a927129288547f241f0ed1e53969c6888177f2 diff -r 4e0d6d141661 -r 93624ef7b10e patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch --- a/patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch Wed Jul 16 00:52:19 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,22 +0,0 @@ -# HG changeset patch -# User dsimms -# Date 1389348912 -3600 -# Fri Jan 10 11:15:12 2014 +0100 -# Node ID b478fbd631095afe8c37e3582c467d3ef64c7ba5 -# Parent 212a8089da498a233d4279e4b50235c271090f71 -8029858: Enhance array copies -Summary: Just read the source element once -Reviewed-by: coleenp, ahgross - -diff --git a/src/share/vm/oops/objArrayKlass.cpp b/src/share/vm/oops/objArrayKlass.cpp ---- openjdk/hotspot/src/share/vm/oops/objArrayKlass.cpp -+++ openjdk/hotspot/src/share/vm/oops/objArrayKlass.cpp -@@ -269,7 +269,7 @@ - if (element_is_null || - (new_val->klass())->is_subtype_of(bound)) { - bs->write_ref_field_pre(p, new_val); -- *p = *from; -+ *p = element; - } else { - // We must do a barrier to cover the partial copy. - const size_t pd = pointer_delta(p, dst, (size_t)heapOopSize); diff -r 4e0d6d141661 -r 93624ef7b10e patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch --- a/patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch Wed Jul 16 00:52:19 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ -# HG changeset patch -# User hseigel -# Date 1392921059 18000 -# Thu Feb 20 13:30:59 2014 -0500 -# Node ID 9b289963cb9a14636fbe8faaa2dd6d3678464a7b -# Parent c96a3381e55ebacff49901b98c2ee87e17cb0632 -8034926: Attribute classes properly -Summary: Add check to prevent underflow -Reviewed-by: coleenp, ahgross - -diff --git a/src/share/vm/classfile/classFileParser.cpp b/src/share/vm/classfile/classFileParser.cpp ---- openjdk/hotspot/src/share/vm/classfile/classFileParser.cpp -+++ openjdk/hotspot/src/share/vm/classfile/classFileParser.cpp -@@ -1,5 +1,5 @@ - /* -- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. -+ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -2777,6 +2777,11 @@ - "Short length on BootstrapMethods in class file %s", - CHECK); - -+ guarantee_property(attribute_byte_length > sizeof(u2), -+ "Invalid BootstrapMethods attribute length %u in class file %s", -+ attribute_byte_length, -+ CHECK); -+ - // The attribute contains a counted array of counted tuples of shorts, - // represending bootstrap specifiers: - // length*{bootstrap_method_index, argument_count*{argument_index}} diff -r 4e0d6d141661 -r 93624ef7b10e patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch Wed Jul 16 08:08:57 2014 +0100 @@ -0,0 +1,233 @@ +# HG changeset patch +# User hseigel +# Date 1392308897 18000 +# Thu Feb 13 11:28:17 2014 -0500 +# Node ID 5656140324ed3a86860f5bf43f5cab8c99374d9d +# Parent bf4dc2e29b5cfb724e9289347146ad6df37d011b +8030763: Validate global memory allocation +Summary: Add length checks where necessary +Reviewed-by: coleenp, mschoene + +diff -r bf4dc2e29b5c -r 5656140324ed src/os/bsd/vm/os_bsd.cpp +--- openjdk/hotspot/src/os/bsd/vm/os_bsd.cpp Wed Feb 12 11:33:30 2014 -0800 ++++ openjdk/hotspot/src/os/bsd/vm/os_bsd.cpp Thu Feb 13 11:28:17 2014 -0500 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -1115,10 +1115,6 @@ + ::abort(); + } + +-// unused on bsd for now. +-void os::set_error_file(const char *logfile) {} +- +- + // This method is a copy of JDK's sysGetLastErrorString + // from src/solaris/hpi/src/system_md.c + +@@ -1808,6 +1804,7 @@ + // determine if this is a legacy image or modules image + // modules image doesn't have "jre" subdirectory + len = strlen(buf); ++ assert(len < buflen, "Ran out of buffer space"); + jrelib_p = buf + len; + + // Add the appropriate library subdir +@@ -1841,7 +1838,7 @@ + } + } + +- strcpy(saved_jvm_path, buf); ++ strncpy(saved_jvm_path, buf, MAXPATHLEN); + } + + void os::print_jni_name_prefix_on(outputStream* st, int args_size) { +diff -r bf4dc2e29b5c -r 5656140324ed src/os/linux/vm/os_linux.cpp +--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp Wed Feb 12 11:33:30 2014 -0800 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp Thu Feb 13 11:28:17 2014 -0500 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -1572,9 +1572,6 @@ + ::abort(); + } + +-// unused on linux for now. +-void os::set_error_file(const char *logfile) {} +- + + // This method is a copy of JDK's sysGetLastErrorString + // from src/solaris/hpi/src/system_md.c +@@ -2399,6 +2396,7 @@ + // determine if this is a legacy image or modules image + // modules image doesn't have "jre" subdirectory + len = strlen(buf); ++ assert(len < buflen, "Ran out of buffer room"); + jrelib_p = buf + len; + snprintf(jrelib_p, buflen-len, "/jre/lib/%s", cpu_arch); + if (0 != access(buf, F_OK)) { +@@ -2419,7 +2417,7 @@ + } + } + +- strcpy(saved_jvm_path, buf); ++ strncpy(saved_jvm_path, buf, MAXPATHLEN); + } + + void os::print_jni_name_prefix_on(outputStream* st, int args_size) { +diff -r bf4dc2e29b5c -r 5656140324ed src/os/solaris/vm/os_solaris.cpp +--- openjdk/hotspot/src/os/solaris/vm/os_solaris.cpp Wed Feb 12 11:33:30 2014 -0800 ++++ openjdk/hotspot/src/os/solaris/vm/os_solaris.cpp Thu Feb 13 11:28:17 2014 -0500 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -1788,9 +1788,6 @@ + ::abort(); // dump core (for debugging) + } + +-// unused +-void os::set_error_file(const char *logfile) {} +- + // DLL functions + + const char* os::dll_file_extension() { return ".so"; } +@@ -2474,6 +2471,7 @@ + // determine if this is a legacy image or modules image + // modules image doesn't have "jre" subdirectory + len = strlen(buf); ++ assert(len < buflen, "Ran out of buffer space"); + jrelib_p = buf + len; + snprintf(jrelib_p, buflen-len, "/jre/lib/%s", cpu_arch); + if (0 != access(buf, F_OK)) { +@@ -2492,7 +2490,7 @@ + } + } + +- strcpy(saved_jvm_path, buf); ++ strncpy(saved_jvm_path, buf, MAXPATHLEN); + } + + +diff -r bf4dc2e29b5c -r 5656140324ed src/os/windows/vm/os_windows.cpp +--- openjdk/hotspot/src/os/windows/vm/os_windows.cpp Wed Feb 12 11:33:30 2014 -0800 ++++ openjdk/hotspot/src/os/windows/vm/os_windows.cpp Thu Feb 13 11:28:17 2014 -0500 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -1819,7 +1819,8 @@ + // libjvm.so is installed there (append a fake suffix + // hotspot/libjvm.so). + char* java_home_var = ::getenv("JAVA_HOME"); +- if (java_home_var != NULL && java_home_var[0] != 0) { ++ if (java_home_var != NULL && java_home_var[0] != 0 && ++ strlen(java_home_var) < (size_t)buflen) { + + strncpy(buf, java_home_var, buflen); + +@@ -1837,9 +1838,9 @@ + } + + if(buf[0] == '\0') { +- GetModuleFileName(vm_lib_handle, buf, buflen); +- } +- strcpy(saved_jvm_path, buf); ++ GetModuleFileName(vm_lib_handle, buf, buflen); ++ } ++ strncpy(saved_jvm_path, buf, MAX_PATH); + } + + +@@ -2290,19 +2291,8 @@ + } + + */ +-#endif //_WIN64 +- +- +-// Fatal error reporting is single threaded so we can make this a +-// static and preallocated. If it's more than MAX_PATH silently ignore +-// it. +-static char saved_error_file[MAX_PATH] = {0}; +- +-void os::set_error_file(const char *logfile) { +- if (strlen(logfile) <= MAX_PATH) { +- strncpy(saved_error_file, logfile, MAX_PATH); +- } +-} ++#endif // _WIN64 ++ + + static inline void report_error(Thread* t, DWORD exception_code, + address addr, void* siginfo, void* context) { +diff -r bf4dc2e29b5c -r 5656140324ed src/share/vm/compiler/compileBroker.cpp +--- openjdk/hotspot/src/share/vm/compiler/compileBroker.cpp Wed Feb 12 11:33:30 2014 -0800 ++++ openjdk/hotspot/src/share/vm/compiler/compileBroker.cpp Thu Feb 13 11:28:17 2014 -0500 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -2089,6 +2089,7 @@ + ResourceMark rm; + char* method_name = method->name()->as_C_string(); + strncpy(_last_method_compiled, method_name, CompileBroker::name_buffer_length); ++ _last_method_compiled[CompileBroker::name_buffer_length - 1] = '\0'; // ensure null terminated + char current_method[CompilerCounters::cmname_buffer_length]; + size_t maxLen = CompilerCounters::cmname_buffer_length; + +diff -r bf4dc2e29b5c -r 5656140324ed src/share/vm/runtime/os.hpp +--- openjdk/hotspot/src/share/vm/runtime/os.hpp Wed Feb 12 11:33:30 2014 -0800 ++++ openjdk/hotspot/src/share/vm/runtime/os.hpp Thu Feb 13 11:28:17 2014 -0500 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -470,9 +470,6 @@ + // run cmd in a separate process and return its exit code; or -1 on failures + static int fork_and_exec(char *cmd); + +- // Set file to send error reports. +- static void set_error_file(const char *logfile); +- + // os::exit() is merged with vm_exit() + // static void exit(int num); + +diff -r bf4dc2e29b5c -r 5656140324ed src/share/vm/utilities/vmError.cpp +--- openjdk/hotspot/src/share/vm/utilities/vmError.cpp Wed Feb 12 11:33:30 2014 -0800 ++++ openjdk/hotspot/src/share/vm/utilities/vmError.cpp Thu Feb 13 11:28:17 2014 -0500 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -975,7 +975,6 @@ + if (fd != -1) { + out.print_raw("# An error report file with more information is saved as:\n# "); + out.print_raw_cr(buffer); +- os::set_error_file(buffer); + + log.set_fd(fd); + } else { diff -r 4e0d6d141661 -r 93624ef7b10e patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch Wed Jul 16 08:08:57 2014 +0100 @@ -0,0 +1,77 @@ +# HG changeset patch +# User hseigel +# Date 1393965993 18000 +# Tue Mar 04 15:46:33 2014 -0500 +# Node ID c02077c4b79c0e7a29f439a1e6eb753a6c314b00 +# Parent c28dffbb1d7489ba206e80a3be0a954a9df6277e +8032536: JVM resolves wrong method in some unusual cases +Summary: Handle package private case +Reviewed-by: coleenp, acorn, jdn + +diff -r c28dffbb1d74 -r c02077c4b79c src/share/vm/oops/klassVtable.cpp +--- openjdk/hotspot/src/share/vm/oops/klassVtable.cpp Wed Feb 26 22:07:40 2014 -0800 ++++ openjdk/hotspot/src/share/vm/oops/klassVtable.cpp Tue Mar 04 15:46:33 2014 -0500 +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -249,6 +249,17 @@ + // For bytecodes not produced by javac together it is possible that a method does not override + // the superclass's method, but might indirectly override a super-super class's vtable entry + // If none found, return a null superk, else return the superk of the method this does override ++// For public and protected methods: if they override a superclass, they will ++// also be overridden themselves appropriately. ++// Private methods do not override and are not overridden. ++// Package Private methods are trickier: ++// e.g. P1.A, pub m ++// P2.B extends A, package private m ++// P1.C extends B, public m ++// P1.C.m needs to override P1.A.m and can not override P2.B.m ++// Therefore: all package private methods need their own vtable entries for ++// them to be the root of an inheritance overriding decision ++// Package private methods may also override other vtable entries + InstanceKlass* klassVtable::find_transitive_override(InstanceKlass* initialsuper, methodHandle target_method, + int vtable_index, Handle target_loader, Symbol* target_classname, Thread * THREAD) { + InstanceKlass* superk = initialsuper; +@@ -396,8 +407,11 @@ + target_classname, THREAD)) + != (InstanceKlass*)NULL)))) + { +- // overriding, so no new entry +- allocate_new = false; ++ // Package private methods always need a new entry to root their own ++ // overriding. They may also override other methods. ++ if (!target_method()->is_package_private()) { ++ allocate_new = false; ++ } + + if (checkconstraints) { + // Override vtable entry if passes loader constraint check +@@ -541,8 +555,9 @@ + AccessFlags class_flags, + TRAPS) { + if (class_flags.is_interface()) { +- // Interfaces do not use vtables, so there is no point to assigning +- // a vtable index to any of their methods. If we refrain from doing this, ++ // Interfaces do not use vtables, except for java.lang.Object methods, ++ // so there is no point to assigning ++ // a vtable index to any of their local methods. If we refrain from doing this, + // we can use Method::_vtable_index to hold the itable index + return false; + } +@@ -580,6 +595,12 @@ + return true; + } + ++ // Package private methods always need a new entry to root their own ++ // overriding. This allows transitive overriding to work. ++ if (target_method()->is_package_private()) { ++ return true; ++ } ++ + // search through the super class hierarchy to see if we need + // a new entry + ResourceMark rm; diff -r 4e0d6d141661 -r 93624ef7b10e patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch Wed Jul 16 08:08:57 2014 +0100 @@ -0,0 +1,119 @@ +# HG changeset patch +# User hseigel +# Date 1395065875 14400 +# Mon Mar 17 10:17:55 2014 -0400 +# Node ID aff11567504cdbf0d24cb23a97f9829af47a86f4 +# Parent cc7a96a360d08b926aea788ea6a5dd6dbd963f99 +8035119: Fix exceptions to bytecode verification +Summary: Prevent ctor calls to super() and this() from avoidable code (try blocks, if stmts, etc.) +Reviewed-by: coleenp, acorn, mschoene + +diff -r cc7a96a360d0 -r aff11567504c src/share/vm/classfile/stackMapTable.cpp +--- openjdk/hotspot/src/share/vm/classfile/stackMapTable.cpp Tue Mar 11 14:02:23 2014 -0700 ++++ openjdk/hotspot/src/share/vm/classfile/stackMapTable.cpp Mon Mar 17 10:17:55 2014 -0400 +@@ -1,5 +1,5 @@ + /* From bugzilla-daemon at icedtea.classpath.org Wed Jul 16 07:09:30 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 16 Jul 2014 07:09:30 +0000 Subject: [Bug 1867] [IcedTea7] Turn the infinality patch off by default In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1867 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.5?cmd=changeset;node=93624ef7b10e author: Andrew John Hughes date: Wed Jul 16 08:08:57 2014 +0100 PR1867: Turn the infinality patch off by default 2014-07-16 Andrew John Hughes PR1867: Turn the infinality patch off by default * NEWS: Updated. * acinclude.m4: (IT_ENABLE_INFINALITY): Set default to no. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Wed Jul 16 09:05:00 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 16 Jul 2014 11:05:00 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: References: <53C56FCC.6040803@redhat.com> <53C61832.9030009@redhat.com> Message-ID: <53C6403C.6020806@redhat.com> On 07/16/2014 09:06 AM, Fernando Cassia wrote: > On Wed, Jul 16, 2014 at 3:14 AM, Jiri Vanek wrote: >> >> Also - if they understand, they can allow all unsigned appelts to norbeing >> asked, or remember theirs decisions. > > Dear Jiri, I'm just trying to explain the reasoning of the OP, I'm not > saying what you claim I'm saying. > Since we have trouble understanding each other, I'll ignore you from now on. > Thanks. > Then please, may you explain what i'm not understand? J. From andrew at icedtea.classpath.org Wed Jul 16 09:45:38 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 16 Jul 2014 09:45:38 +0000 Subject: /hg/release/icedtea7-2.5: 2 new changesets Message-ID: changeset a2d9b45d7491 in /hg/release/icedtea7-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-2.5?cmd=changeset;node=a2d9b45d7491 author: Andrew John Hughes date: Wed Jul 16 08:10:35 2014 +0100 Set release date for 2.5.1. 2014-07-16 Andrew John Hughes * NEWS: Set release date for 2.5.1. changeset d90f34b6a990 in /hg/release/icedtea7-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-2.5?cmd=changeset;node=d90f34b6a990 author: Andrew John Hughes date: Wed Jul 16 10:44:54 2014 +0100 Added tag icedtea-2.5.1 for changeset a2d9b45d7491 diffstat: .hgtags | 1 + ChangeLog | 4 ++++ NEWS | 2 +- 3 files changed, 6 insertions(+), 1 deletions(-) diffs (31 lines): diff -r 93624ef7b10e -r d90f34b6a990 .hgtags --- a/.hgtags Wed Jul 16 08:08:57 2014 +0100 +++ b/.hgtags Wed Jul 16 10:44:54 2014 +0100 @@ -37,3 +37,4 @@ d0b14be8cbf8a705a3bec6cf8828b982405b059c icedtea-2.4-branchpoint b3eb30a2db9022bf34c51794ebe66f623c359d4c icedtea-2.5-branchpoint 81ffee9f8143a9ced4e3c418924f2641ed72b2cc icedtea-2.5.0 +a2d9b45d7491a9c84afb33a457533817a7f3e600 icedtea-2.5.1 diff -r 93624ef7b10e -r d90f34b6a990 ChangeLog --- a/ChangeLog Wed Jul 16 08:08:57 2014 +0100 +++ b/ChangeLog Wed Jul 16 10:44:54 2014 +0100 @@ -1,3 +1,7 @@ +2014-07-16 Andrew John Hughes + + * NEWS: Set release date for 2.5.1. + 2014-07-16 Andrew John Hughes PR1867: Turn the infinality patch off by default diff -r 93624ef7b10e -r d90f34b6a990 NEWS --- a/NEWS Wed Jul 16 08:08:57 2014 +0100 +++ b/NEWS Wed Jul 16 10:44:54 2014 +0100 @@ -12,7 +12,7 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 2.5.1 (2014-07-XX): +New in release 2.5.1 (2014-07-16): * Security fixes - S8029755, CVE-2014-4209: Enhance subject class From gnu_andrew at member.fsf.org Wed Jul 16 10:06:01 2014 From: gnu_andrew at member.fsf.org (Andrew Hughes) Date: Wed, 16 Jul 2014 11:06:01 +0100 Subject: [SECURITY] IcedTea 2.5.1 for OpenJDK 7 Released! Message-ID: <20140716100601.GA18085@carrie.the212.com> The IcedTea project provides a harness to build the source code from OpenJDK using Free Software build tools, along with additional features such as the ability to build against system libraries and support for alternative virtual machines and architectures beyond those supported by OpenJDK. This release updates our OpenJDK 7 support in the 2.5.x series with the July 2014 security fixes. If you find an issue with the release, 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 release can be found below. What's New? =========== New in release 2.5.1 (2014-07-16): * Security fixes - S8029755, CVE-2014-4209: Enhance subject class - S8030763: Validate global memory allocation - S8031340, CVE-2014-4264: Better TLS/EC management - S8031346, CVE-2014-4244: Enhance RSA key handling - S8031540: Introduce document horizon - S8032536: JVM resolves wrong method in some unusual cases - S8033055: Issues in 2d - S8033301, CVE-2014-4266: Build more informative InfoBuilder - S8034267: Probabilistic native crash - S8034272: Do not cram data into CRAM arrays - S8034985, CVE-2014-2483: Better form for Lambda Forms - S8035004, CVE-2014-4252: Provider provides less service - S8035009, CVE-2014-4218: Make Proxy representations consistent - S8035119, CVE-2014-4219: Fix exceptions to bytecode verification - S8035699, CVE-2014-4268: File choosers should be choosier - S8035788. CVE-2014-4221: Provide more consistency for lookups - S8035793, CVE-2014-4223: Maximum arity maxed out - S8036571: (process) Process process arguments carefully - S8036800: Attribute OOM to correct part of code - S8037046: Validate libraries to be loaded - S8037076, CVE-2014-2490: Check constant pool constants - S8037157: Verify call - S8037162, CVE-2014-4263: More robust DH exchanges - S8037167, CVE-2014-4216: Better method signature resolution - S8039520, CVE-2014-4262: More atomicity of atomic updates * Backports - S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException - S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException - S8013611: Modal dialog fails to obtain keyboard focus - S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale - S8019990: IM candidate window appears on the South-East corner of the display. - S8023990: Regression: postscript size increase from 6u18 - S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError - S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping - S8025030: Enhance stream handling - S8026188: Enhance envelope factory - S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently - S8028285: RMI Thread can no longer call out to AWT - S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending - S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component - S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package - S8032686: Issues with method invoke - S8033278: Missed access checks for Lookup.unreflect* after 8032585 - S8033618: Correct logging output - S8034926: Attribute classes properly - S8035613: With active Securitymanager JAXBContext.newInstance fails - S8035834: InetAddress.getLocalHost() can hang after JDK-8030731 was fixed - S8035923: Set minor version for hotspot in 7u65 to 65 and build number to b01 - S8036786: Update jdk7 testlibrary to match jdk8 - S8036794: Manage JavaScript instances - S8039324: Increment hsx 24.65 build to b02 for 7u65-b07 - S8040156: Increment hsx 24.65 build to b03 for 7u65-b08 - S8041264: Increment hsx 24.65 build to b04 for 7u65-b09 - S8042264: 7u65 l10n resource file translation update 1 - S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 - S8042590: Running form URL throws NPE - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader - S8043012: (tz) Support tzdata2014c * Bug fixes - PR1853: Revert PR729 from minor release - PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 - PR1867: Turn the infinality patch off by default - PR1868: Avoid x86 workaround when running Zero rather than a JIT * AArch64 port - Common frame handling for C1/C2 which correctly handle all frame sizes - Fix register misuse in verify_method_data_pointer - Fix register usage in generate_verify_oop(). - Restrict default ReservedCodeCacheSize to 128M - Use explicit barrier instructions in C1. The tarballs can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea-2.5.1.tar.gz * http://icedtea.classpath.org/download/source/icedtea-2.5.1.tar.xz We provide both gzip and xz tarballs, so that those who are able to make use of the smaller tarball produced by xz may do so. The tarballs are accompanied by digital signatures available at: * http://icedtea.classpath.org/download/source/icedtea-2.5.1.tar.gz.sig * http://icedtea.classpath.org/download/source/icedtea-2.5.1.tar.xz.sig These are 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 SHA256 checksums: 06483c252099d41e33eade8ceee9231a15ba1e9594f90e2d32943d17c8802acd icedtea-2.5.1.tar.gz ce9aad813b3e1fd2d08ad1755e973e22271eb13a3cbff612b8f6e6660301d2fa icedtea-2.5.1.tar.gz.sig 9471b4e143807df75655d113618dafcdc1a67d3183364fceaaf139014b778913 icedtea-2.5.1.tar.xz 3633fa56b0c0e1f4ef91f93cf5025f06d90d03bcdbc8beaf0476007815a2cfd6 icedtea-2.5.1.tar.xz.sig The checksums can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea-2.5.1.sha256 The following people helped with these releases: * Andrew Hughes (all backports & bug fixes, release management) We would also like to thank the bug reporters and testers! To get started: $ tar xzf icedtea-2.5.1.tar.gz or: $ tar x -I xz -f icedtea-2.5.1.tar.xz then: $ mkdir icedtea-build $ cd icedtea-build $ ../icedtea-2.5.1/configure $ make Full build requirements and instructions are available in the INSTALL file. Happy hacking! -- Andrew :) 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: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: From ptisnovs at icedtea.classpath.org Wed Jul 16 11:52:35 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 16 Jul 2014 11:52:35 +0000 Subject: /hg/gfx-test: Added proper links to JavaDoc. Message-ID: changeset 4a4fb5d90d48 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=4a4fb5d90d48 author: Pavel Tisnovsky date: Wed Jul 16 13:53:35 2014 +0200 Added proper links to JavaDoc. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/BitBltConvolveOp.java | 120 +++++++++++----------- 2 files changed, 65 insertions(+), 60 deletions(-) diffs (truncated from 555 to 500 lines): diff -r 61329390414a -r 4a4fb5d90d48 ChangeLog --- a/ChangeLog Tue Jul 15 13:05:37 2014 +0200 +++ b/ChangeLog Wed Jul 16 13:53:35 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-16 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltConvolveOp.java: + Added proper links to JavaDoc. + 2014-07-15 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltBasicTests.java: diff -r 61329390414a -r 4a4fb5d90d48 src/org/gfxtest/testsuites/BitBltConvolveOp.java --- a/src/org/gfxtest/testsuites/BitBltConvolveOp.java Tue Jul 15 13:05:37 2014 +0200 +++ b/src/org/gfxtest/testsuites/BitBltConvolveOp.java Wed Jul 16 13:53:35 2014 +0200 @@ -144,7 +144,7 @@ private static final ConvolveOp laplaceOperatorDiagROP = new ConvolveOp(LaplaceOperatorDiag); /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -158,7 +158,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -172,7 +172,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -186,7 +186,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -200,7 +200,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -214,7 +214,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -228,7 +228,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -242,7 +242,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -256,7 +256,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -270,7 +270,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -284,7 +284,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -298,7 +298,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -312,7 +312,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -326,7 +326,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -340,7 +340,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -354,7 +354,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -368,7 +368,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -382,7 +382,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -396,7 +396,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -410,7 +410,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -424,7 +424,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -438,7 +438,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -452,7 +452,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -466,7 +466,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -480,7 +480,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -494,7 +494,7 @@ } /** - * Test basic BitBlt operation for empty buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for empty buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -508,7 +508,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -522,7 +522,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -536,7 +536,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -550,7 +550,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -564,7 +564,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -578,7 +578,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -592,7 +592,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -606,7 +606,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -620,7 +620,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -634,7 +634,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -648,7 +648,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -662,7 +662,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -676,7 +676,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -690,7 +690,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -704,7 +704,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -718,7 +718,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -732,7 +732,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -746,7 +746,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 {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -760,7 +760,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -774,7 +774,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -788,7 +788,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -802,7 +802,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -816,7 +816,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -830,7 +830,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -844,7 +844,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -858,7 +858,7 @@ } /** - * Test basic BitBlt operation for grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -872,7 +872,7 @@ } /** - * Test basic BitBlt operation for diagonal grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for diagonal grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -886,7 +886,7 @@ } /** - * Test basic BitBlt operation for diagonal grid buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for diagonal grid buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image From helpcrypto at gmail.com Wed Jul 16 12:13:48 2014 From: helpcrypto at gmail.com (helpcrypto helpcrypto) Date: Wed, 16 Jul 2014 14:13:48 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: <53C6403C.6020806@redhat.com> References: <53C56FCC.6040803@redhat.com> <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> Message-ID: Hello again I think you are mixing a lot of things here...the guilty one is Adam for resurrecting a dead zombie message from November '13 :P Adam/Jiri: NaCi/PPAPI wont work for privileged execution, hence -probably- wont work as a replacement for NPAPI (at least for my crypto applet). If you want to discuss about this, i encorage you to open a new thread. This is enough confusing already ;) Fernando: This discussion has (originally) nothing to do with signed/unsigned. Java 21-55 updates failed for manifest-sign related issues, but the question was related to NPAPI deprecation. Hope not to angry anyone Regards. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 16 14:05:57 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 16 Jul 2014 14:05:57 +0000 Subject: [Bug 1870] New: --enable-sunec requires a nss-softokn.pc which is only available in Fedora Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1870 Bug ID: 1870 Summary: --enable-sunec requires a nss-softokn.pc which is only available in Fedora Product: IcedTea Version: 2.5.0 Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: doko at ubuntu.com CC: unassigned at icedtea.classpath.org according to http://pkgs.fedoraproject.org/cgit/nss-softokn.git/tree/ this is a local patch, and doesn't work anywhere else. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jkang at redhat.com Wed Jul 16 14:27:16 2014 From: jkang at redhat.com (Jie Kang) Date: Wed, 16 Jul 2014 10:27:16 -0400 (EDT) Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> <53C547FC.2070104@redhat.com> <53C54E6B.8050109@gmx.de> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> Message-ID: <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> Hello Here is the revised patch with unit tests. If it looks okay I will work on backporting it to 1.5. Thanks, -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: console-1858-3.patch Type: text/x-patch Size: 5694 bytes Desc: not available URL: From omajid at redhat.com Wed Jul 16 15:18:48 2014 From: omajid at redhat.com (Omair Majid) Date: Wed, 16 Jul 2014 11:18:48 -0400 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> <53C547FC.2070104@redhat.com> <53C54E6B.8050109@gmx.de> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> Message-ID: <20140716151848.GB2392@redhat.com> * Jie Kang [2014-07-16 10:28]: > + s = byteStorage.toString("UTF-8"); How do you know that the byte array being written is in UTF-8? Is this a safe assumption? > + } catch (UnsupportedEncodingException e) { > + s = byteStorage.toString(); If utf8 is missing from the JDK, I would like to think we are screwed. Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From jvanek at redhat.com Wed Jul 16 15:35:21 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 16 Jul 2014 17:35:21 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <20140716151848.GB2392@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> <53C547FC.2070104@redhat.com> <53C54E6B.8050109@gmx.de> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <20140716151848.GB2392@redhat.com> Message-ID: <53C69BB9.4010202@redhat.com> On 07/16/2014 05:18 PM, Omair Majid wrote: > * Jie Kang [2014-07-16 10:28]: >> + s = byteStorage.toString("UTF-8"); > > How do you know that the byte array being written is in UTF-8? Is this a > safe assumption? Well this is tricky :( On one side java is iinternally utf8, so it is most safe assumption of unsafe assumptions. I even think it is better then usage of platform default encoding. But it is second in queue in my mind, and others may think differently. > >> + } catch (UnsupportedEncodingException e) { >> + s = byteStorage.toString(); > > If utf8 is missing from the JDK, I would like to think we are screwed. > Can it? I doubt ... J., From omajid at redhat.com Wed Jul 16 15:42:36 2014 From: omajid at redhat.com (Omair Majid) Date: Wed, 16 Jul 2014 11:42:36 -0400 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C69BB9.4010202@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C543B8.6040707@gmx.de> <53C547FC.2070104@redhat.com> <53C54E6B.8050109@gmx.de> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <20140716151848.GB2392@redhat.com> <53C69BB9.4010202@redhat.com> Message-ID: <20140716154235.GD2392@redhat.com> * Jiri Vanek [2014-07-16 11:36]: > On 07/16/2014 05:18 PM, Omair Majid wrote: > >* Jie Kang [2014-07-16 10:28]: > >>+ s = byteStorage.toString("UTF-8"); > > > >How do you know that the byte array being written is in UTF-8? Is this a > >safe assumption? > > Well this is tricky :( > > On one side java is iinternally utf8, so it is most safe assumption of unsafe assumptions. It's actually UCS-2/UTF-16. [1] > I even think it is better then usage of platform default encoding. Oh, I *wish* everything used UTF-8 everywhere. But it's only a dream at this point. > >>+ } catch (UnsupportedEncodingException e) { > >>+ s = byteStorage.toString(); > > > >If utf8 is missing from the JDK, I would like to think we are screwed. > > > Can it? I doubt ... It really, really shouldn't be missing from the jre. This is one of the cases where it probably makes sense to throw a RuntimeException (AssertionError?) to abort rather than trying to continue. Thanks, Omair [1] http://docs.oracle.com/javase/7/docs/api/java/nio/charset/Charset.html -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From fcassia at gmail.com Wed Jul 16 15:44:31 2014 From: fcassia at gmail.com (Fernando Cassia) Date: Wed, 16 Jul 2014 12:44:31 -0300 Subject: Icedtea supports something called "Pepper"? In-Reply-To: <53C6403C.6020806@redhat.com> References: <53C56FCC.6040803@redhat.com> <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> Message-ID: On Wed, Jul 16, 2014 at 6:05 AM, Jiri Vanek wrote: > Then please, may you explain what i'm not understand? The OP referred to "his applets stopped working" on the ORACLE JDK. I explained that I think that is due to his applets code being UNSIGNED, and that he should, going forward, sign his applets. You replied that applets continue to work with Icedtea, and asked if I wanted to see Icedtea run unsigned applets without click to play. That was NOT what I was saying. I was describing the way Oracle JRE/JDK works now, for security reasons. (click to play on unsigned code), and that users who see that (applets disabled) jump to the conclusion that "his applets stopped working" without getting into the details of WHY... FC From jvanek at redhat.com Wed Jul 16 15:58:40 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 16 Jul 2014 17:58:40 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: References: <53C56FCC.6040803@redhat.com> <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> Message-ID: <53C6A130.7060801@redhat.com> On 07/16/2014 05:44 PM, Fernando Cassia wrote: > On Wed, Jul 16, 2014 at 6:05 AM, Jiri Vanek wrote: >> Then please, may you explain what i'm not understand? > > The OP referred to "his applets stopped working" on the ORACLE JDK. > I explained that I think that is due to his applets code being > UNSIGNED, and that he should, going forward, sign his applets. > You replied that applets continue to work with Icedtea, and asked if I > wanted to see Icedtea run unsigned applets without click to play. That > was NOT what I was saying. I was describing the way Oracle JRE/JDK > works now, for security reasons. (click to play on unsigned code), and > that users who see that (applets disabled) jump to the conclusion that > "his applets stopped working" without getting into the details of > WHY... > There is (common) misinterpretation in this. You must differ - oracle (proprietary) JDK - oracle (proprietary) plugin/webstart implementation - openjdk (still some distros are using it wrapped by icedtea) - icedtea-web (another jdk plugin/implementation) and forcompletness: - ibm (proprietary jdk) - ibm plugin and javaws implementation Icedtea-web is implementation of javaws and have its java plugin, similar to Oracle's plugin. Even Ibm java have its plugin+(theirs!) javaws implementation. Unlike proprietary plugin, which is bundled together with proprietary jdk, icedtea-web can run on Openjdk, Oracle JDK and IBM jdk (there are still something to fix with IBM jdk). Icedtea web is not bounded to Openjdk, nor OracleJDk nor IBM. If you will run Icedtea-web with oracle jdk (or Ibm) it will always behave as icedta-web. Not like proprietary plugin. So the issue you are describing is in plugin implementation. Not in icedtea, nor in Oracle JDK. And vice versa - if you will be able to runproprietaru plugin/javaws on different jdk, it will (probably, I have never tried) behave as you are used from "home" jdk. This may be hard to understand (especially if you were around original classpath plugin, later around icedtea, and have missed separation of ITW, or dying of icedtea), but I hope it clarifies things a bit for you. Now - thw question is still unanswered - what should ITW do better for you? J. From jkang at redhat.com Wed Jul 16 16:09:28 2014 From: jkang at redhat.com (Jie Kang) Date: Wed, 16 Jul 2014 12:09:28 -0400 (EDT) Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C698CD.2020706@gmx.de> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C547FC.2070104@redhat.com> <53C54E6B.8050109@gmx.de> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> Message-ID: <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 07/16/2014 04:27 PM, Jie Kang wrote: > > Hello > > > > Here is the revised patch with unit tests. If it looks okay I will work on > > backporting it to 1.5. > > > > > > Thanks, > > > > diff --git a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > > b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > > --- a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > > +++ b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > > [?] > > @@ -55,7 +54,7 @@ > > > > // Everthing written to TeeOutputStream is written to our log too > > > > - private final StringBuffer string = new StringBuffer(); > > + private final ByteArrayOutputStream byteStorage = new > > ByteArrayOutputStream(); > > Naming: byteStorage is very misleading. What is a byte storage? Please rename > this member variable to what it is, e.g. byteOutputStream. Well to me a byte storage is some object that stores bytes. Personal style prefers not naming objects after the object identifier regardless, I have changed the name to byteOutputStream. I guess this is situational but 'Jpanel jpanel' is something I hope to never see. > > > private final boolean isError; > > > > public TeeOutputStream(PrintStream stdStream, boolean isError) { > > [?] > > @@ -82,32 +80,27 @@ > > > > @Override > > public synchronized void write(byte[] b, int off, int len) { > > - if (b == null) { > > - throw new NullPointerException(); > > - } else if ((off < 0) || (off > b.length) || (len < 0) > > - || ((off + len) > b.length) || ((off + len) < 0)) { > > - throw new IndexOutOfBoundsException(); > > - } else if (len == 0) { > > Err, testing len for 0 is indeed a good optimization. ;-) Readded the test for 0 length. > > > - return; > > - } > > - for (int i = 0; i < len; i++) { > > - appendChar(b[off + i]); > > - } > > + appendByteArray(b, off, len); > > super.write(b, off, len); > > } > > > > @Override > > public synchronized void write(int b) { > > - appendChar(b); > > + appendByte(b); > > Yep, proper renaming. Good. :-) > > > super.write(b); > > } > > > > private void flushLog() { > > - if (string.length() <= 0 ){ > > - return; > > + String s = ""; > > Why initialize here with an empty string? Strings are immutable, remember? > Besides, any of the ByteArrayOutputStream.toString() methods will always > return > a String, never null, so need to worry about null here. > > > + try { > > + s = byteStorage.toString("UTF-8"); > > Err, why do you suddenly assume the passed in byte array to be UTF-8 encoded? > If > anything, only the current default encoding can be assumed. So no, you cannot > do > this. > > > + } catch (UnsupportedEncodingException e) { > > + s = byteStorage.toString(); > > Just stick to ByteArrayOutputStream.toString() only. > And, even if byteStorage.size() is 0 ByteArrayOutputStream.toString() will > still > return an empty string (""). > > > } > > - log(string.toString()); > > - string.setLength(0); > > + if (s.length() > 0 ){ > > Formatting: Please remove the space before ) and add a space between ) and {. > > Why do you check for s' length to be greater than 0? Cannot log handle empty > strings? I think there is no reason to log empty strings. There is no reason to propagate this to log. > > > + log(s.toString()); > > ??? s is already of type String? > > > + byteStorage.reset(); > > + } > > } > > > > @Override > > @@ -121,11 +114,23 @@ > > return isError; > > } > > > > - private void appendChar(int b) { > > - if ( b <= 0 || b == '\n'){ > > + private void appendByte(int b) { > > + byteStorage.write(b); > > + if ( b <= 0 || b == '\n'){ > > Unfortunately, this is not correct. Like Jiri and me have been debating, it > is > not that simple in this case. With b being part of a multi-byte encoded > character we cannot assume it to be denoting the 0 (\u0000) or new line > (\u000a, > \000a\u000c, or \u000c\u000a) code point. > > So, what you actually would need to do is to convert the byte array > (byteStorage) to a String and then check for the String's last character to > be 0 > or new line. And yes, for every /single/ byte appended.\ Done. > > Besides, incorrect formatting still remains. > > > flushLog(); > > - } else { > > - string.append((char)b); > > + } > > + } > > + > > + private void appendByteArray(byte[] b, int off, int len) { > > + byteStorage.write(b, off, len); > > + String s = ""; > > Again, no need to initialize with an empty string here. > > > + try { > > + s = new String(b, off, len, "UTF-8"); > > Again, why do you suddenly assume the passed in byte array to be UTF-8 > encoded? > > > + } catch (UnsupportedEncodingException e) { > > + s = new String(b, off, len); > > + } > > + if(s.endsWith(System.getProperty("line.separator"))) { > > Yep, something like this would need to happen in appendByte(int) too. ;-) > > Yet, for better performance System.getProperty("line.separator") should be > put > into a final String member on TeeOutputStream's constuction. > > Again, formatting: Add a space between if and (. > > > + flushLog(); > > } > > } > > Jacob > Thanks, -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: console-1858-4.patch Type: text/x-patch Size: 5815 bytes Desc: not available URL: From fcassia at gmail.com Wed Jul 16 16:15:35 2014 From: fcassia at gmail.com (Fernando Cassia) Date: Wed, 16 Jul 2014 13:15:35 -0300 Subject: Icedtea supports something called "Pepper"? In-Reply-To: <53C6A130.7060801@redhat.com> References: <53C56FCC.6040803@redhat.com> <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> <53C6A130.7060801@redhat.com> Message-ID: On Wed, Jul 16, 2014 at 12:58 PM, Jiri Vanek wrote: > Icedtea-web is implementation of javaws and have its java plugin, similar to > Oracle's plugin. Even Ibm java have its plugin+(theirs!) javaws > implementation. I'm perfectly aware of what you say. Although no one in its sane mind would run Icedtea-web on top of Oracle JRE/JDK unless he's a masochist. You should check Red Hat's own presentations, which claim OpenJDK 7 and JDK 7 share "95% shared code". The remaining missing 5% surely being JWS and the plug-in implementation. www.redhat.com/summit/2012/pdf/2012-DevDay-OpenJDK-Bhole.pdf Slides 2-3... So, for all intents and purposes, and generally speaking, OpenJDK is JDK is OpenJDK... FC From jkang at redhat.com Wed Jul 16 18:06:43 2014 From: jkang at redhat.com (Jie Kang) Date: Wed, 16 Jul 2014 14:06:43 -0400 (EDT) Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C6AC6F.8060009@gmx.de> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> Message-ID: <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 07/16/2014 06:09 PM, Jie Kang wrote: > > ----- Original Message ----- > >> On 07/16/2014 04:27 PM, Jie Kang wrote: > >>> Hello > >>> > >>> Here is the revised patch with unit tests. If it looks okay I will work > >>> on > >>> backporting it to 1.5. > >>> > >>> > >>> Thanks, > >>> > >> > diff --git > >> > a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > >> > b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > >> > --- a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > >> > +++ b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > >> > [?] > >> > @@ -55,7 +54,7 @@ > >> > > >> > // Everthing written to TeeOutputStream is written to our log too > >> > > >> > - private final StringBuffer string = new StringBuffer(); > >> > + private final ByteArrayOutputStream byteStorage = new > >> > ByteArrayOutputStream(); > >> > >> Naming: byteStorage is very misleading. What is a byte storage? Please > >> rename > >> this member variable to what it is, e.g. byteOutputStream. > > > > > > Well to me a byte storage is some object that stores bytes. Personal style > > prefers not naming objects after the object identifier regardless, I have > > changed the name to byteOutputStream. > > > > I guess this is situational but 'Jpanel jpanel' is something I hope to > > never see. > > Yes, every rule has exceptions. ;-) And yes, every rule or style can be > abused. > But, in this case I think it is a good choice for a name because it describes > a > part of TeeOutputStream's core functionality. > > >> > >> > private final boolean isError; > >> > > >> > public TeeOutputStream(PrintStream stdStream, boolean isError) { > >> > [?] > >> > @@ -82,32 +80,27 @@ > >> > > >> > @Override > >> > public synchronized void write(byte[] b, int off, int len) { > >> > - if (b == null) { > >> > - throw new NullPointerException(); > >> > - } else if ((off < 0) || (off > b.length) || (len < 0) > >> > - || ((off + len) > b.length) || ((off + len) < 0)) { > >> > - throw new IndexOutOfBoundsException(); > >> > - } else if (len == 0) { > >> > >> Err, testing len for 0 is indeed a good optimization. ;-) > > > > Readded the test for 0 length. > > > >> > >> > - return; > >> > - } > >> > - for (int i = 0; i < len; i++) { > >> > - appendChar(b[off + i]); > >> > - } > >> > + appendByteArray(b, off, len); > >> > super.write(b, off, len); > >> > } > >> > > >> > @Override > >> > public synchronized void write(int b) { > >> > - appendChar(b); > >> > + appendByte(b); > >> > >> Yep, proper renaming. Good. :-) > >> > >> > super.write(b); > >> > } > >> > > >> > private void flushLog() { > >> > - if (string.length() <= 0 ){ > >> > - return; > >> > + String s = ""; > >> > >> Why initialize here with an empty string? Strings are immutable, remember? > >> Besides, any of the ByteArrayOutputStream.toString() methods will always > >> return > >> a String, never null, so need to worry about null here. > >> > >> > + try { > >> > + s = byteStorage.toString("UTF-8"); > >> > >> Err, why do you suddenly assume the passed in byte array to be UTF-8 > >> encoded? > >> If > >> anything, only the current default encoding can be assumed. So no, you > >> cannot > >> do > >> this. > >> > >> > + } catch (UnsupportedEncodingException e) { > >> > + s = byteStorage.toString(); > >> > >> Just stick to ByteArrayOutputStream.toString() only. > >> And, even if byteStorage.size() is 0 ByteArrayOutputStream.toString() will > >> still > >> return an empty string (""). > >> > >> > } > >> > - log(string.toString()); > >> > - string.setLength(0); > >> > + if (s.length() > 0 ){ > >> > >> Formatting: Please remove the space before ) and add a space between ) and > >> {. > >> > >> Why do you check for s' length to be greater than 0? Cannot log handle > >> empty > >> strings? > > > > I think there is no reason to log empty strings. There is no reason to > > propagate this to log. > > > >> > >> > + log(s.toString()); > >> > >> ??? s is already of type String? > >> > >> > + byteStorage.reset(); > >> > + } > >> > } > >> > > >> > @Override > >> > @@ -121,11 +114,23 @@ > >> > return isError; > >> > } > >> > > >> > - private void appendChar(int b) { > >> > - if ( b <= 0 || b == '\n'){ > >> > + private void appendByte(int b) { > >> > + byteStorage.write(b); > >> > + if ( b <= 0 || b == '\n'){ > >> > >> Unfortunately, this is not correct. Like Jiri and me have been debating, > >> it > >> is > >> not that simple in this case. With b being part of a multi-byte encoded > >> character we cannot assume it to be denoting the 0 (\u0000) or new line > >> (\u000a, > >> \000a\u000c, or \u000c\u000a) code point. > >> > >> So, what you actually would need to do is to convert the byte array > >> (byteStorage) to a String and then check for the String's last character > >> to > >> be 0 > >> or new line. And yes, for every /single/ byte appended.\ > > > > Done. > > > >> > >> Besides, incorrect formatting still remains. > >> > >> > flushLog(); > >> > - } else { > >> > - string.append((char)b); > >> > + } > >> > + } > >> > + > >> > + private void appendByteArray(byte[] b, int off, int len) { > >> > + byteStorage.write(b, off, len); > >> > + String s = ""; > >> > >> Again, no need to initialize with an empty string here. > >> > >> > + try { > >> > + s = new String(b, off, len, "UTF-8"); > >> > >> Again, why do you suddenly assume the passed in byte array to be UTF-8 > >> encoded? > >> > >> > + } catch (UnsupportedEncodingException e) { > >> > + s = new String(b, off, len); > >> > + } > >> > + if(s.endsWith(System.getProperty("line.separator"))) { > >> > >> Yep, something like this would need to happen in appendByte(int) too. ;-) > >> > >> Yet, for better performance System.getProperty("line.separator") should be > >> put > >> into a final String member on TeeOutputStream's constuction. > >> > >> Again, formatting: Add a space between if and (. > >> > >> > + flushLog(); > >> > } > >> > } > > Overall the patch looks good. One last nit though: > > > diff --git a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > > b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > > --- a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > > +++ b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > > [?] > > + public ByteArrayOutputStream getByteArrayOutputStream() { > > + return this.byteArrayOutputStream; > > + } > > Do we really want to expose this internal ByteArrayOutputStream instance? I > cannot think of any good reason now. Actually, it is a helper for > TeeOutputStream to be able to flush() on every new line. What if a caller > calls > ByteArrayOutputStream.reset() before TeeOutputStream has flushed? Then > possibly > data could get lost. Because of this, in any case, this method should return > a > clone of this.byteArrayOutputStream. Hmm good catch on the reset use case. I was having a lot of trouble figuring out how to properly unit test TeeOutputStream which is a sign that the whole class needs to be rewritten but at the same time I have yet to think of an acceptable reimplementation. So this might be considered a temporary patch that resolves the bug before a rework of the whole class. And also we must consider that the backport to 1.5 should probably not have a rewrite of the class, which will use this patch. In terms of the problem with unit testing, we need to make sure calls to TeeOutputStream result in successful writes to the ByteOutputStream. However, given the current implementation there really isn't any way that I can see to validate that ByteOutputStream contains the correct write information without either exposing something or rewriting the class. I decided the getter was the best solution for the moment. It's also possible to expose flushLog() and have it return the flushed contents, but this sidesteps the PrintStream and doesn't feel as good to me. I've made it return a copy and also set the method to be protected since it's really only used for testing. Just to make it clear, I also really dislike this approach so if you have any suggestions I will be happy to hear them. > > Jacob > -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: console-1858-5.patch Type: text/x-patch Size: 6124 bytes Desc: not available URL: From gitne at gmx.de Wed Jul 16 19:07:14 2014 From: gitne at gmx.de (Jacob Wisor) Date: Wed, 16 Jul 2014 21:07:14 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> Message-ID: <53C6CD62.80002@gmx.de> On 07/16/2014 08:06 PM, Jie Kang wrote: > ----- Original Message ----- >> On 07/16/2014 06:09 PM, Jie Kang wrote: >> >> Overall the patch looks good. One last nit though: >> >> > diff --git a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java >> > b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java >> > --- a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java >> > +++ b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java >> > [?] >> > + public ByteArrayOutputStream getByteArrayOutputStream() { >> > + return this.byteArrayOutputStream; >> > + } >> >> Do we really want to expose this internal ByteArrayOutputStream instance? I >> cannot think of any good reason now. Actually, it is a helper for >> TeeOutputStream to be able to flush() on every new line. What if a caller >> calls >> ByteArrayOutputStream.reset() before TeeOutputStream has flushed? Then >> possibly >> data could get lost. Because of this, in any case, this method should return >> a >> clone of this.byteArrayOutputStream. > > > Hmm good catch on the reset use case. > I was having a lot of trouble figuring out how to properly unit test TeeOutputStream which is a sign that the whole class needs to be rewritten but at the same time I have yet to think of an acceptable reimplementation. Hmm, I do not think TeeOutputStream needs a rewrite. Except that it perhaps may have been better to make it extend from a custom FilterOutputStream and then write to a PrintStream. If you are having difficulties writing a test for TeeOutputStream then you should probably take a step back and think again about *what* a test is actually testing for or rather verifying. Actually, it is not that difficult, it is fairly easy in this case. > So this might be considered a temporary patch that resolves the bug before a rework of the whole class. And also we must consider that the backport to 1.5 should probably not have a rewrite of the class, which will use this patch. > > In terms of the problem with unit testing, we need to make sure calls to TeeOutputStream result in successful writes to the ByteOutputStream. However, given the current implementation there really isn't any way that I can see to validate that ByteOutputStream contains the correct write information without either exposing something or rewriting the class. I decided the getter was the best solution for the moment. It's also possible to expose flushLog() and have it return the flushed contents, but this sidesteps the PrintStream and doesn't feel as good to me. No, a reference to TeeOutputStream.byteArrayOutputStream is not required for a test. We should not be even bothering about it because it is not TeeOutputStream's /output/. > I've made it return a copy and also set the method to be protected since it's really only used for testing. Just to make it clear, I also really dislike this approach so if you have any suggestions I will be happy to hear them. My advice is, as always with tests; test for the output depending on input, not a unit's or module's internal structure. TeeOutputStream's output are its print() and println() methods. You can read this output with a PipedInputStream. Verify the input you get from PipedInputStream, not TeeOutputStream's internal structure. Then there is also no need to expose TeeOutputStream.byteArrayOutputStream. Jacob From jkang at redhat.com Wed Jul 16 19:40:55 2014 From: jkang at redhat.com (Jie Kang) Date: Wed, 16 Jul 2014 15:40:55 -0400 (EDT) Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53C6CD62.80002@gmx.de> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> <53C6CD62.80002@gmx.de> Message-ID: <304852374.9075659.1405539655793.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 07/16/2014 08:06 PM, Jie Kang wrote: > > ----- Original Message ----- > >> On 07/16/2014 06:09 PM, Jie Kang wrote: > >> > >> Overall the patch looks good. One last nit though: > >> > >> > diff --git > >> > a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > >> > b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > >> > --- a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > >> > +++ b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java > >> > [?] > >> > + public ByteArrayOutputStream getByteArrayOutputStream() { > >> > + return this.byteArrayOutputStream; > >> > + } > >> > >> Do we really want to expose this internal ByteArrayOutputStream instance? > >> I > >> cannot think of any good reason now. Actually, it is a helper for > >> TeeOutputStream to be able to flush() on every new line. What if a caller > >> calls > >> ByteArrayOutputStream.reset() before TeeOutputStream has flushed? Then > >> possibly > >> data could get lost. Because of this, in any case, this method should > >> return > >> a > >> clone of this.byteArrayOutputStream. > > > > > > Hmm good catch on the reset use case. > > I was having a lot of trouble figuring out how to properly unit test > > TeeOutputStream which is a sign that the whole class needs to be rewritten > > but at the same time I have yet to think of an acceptable > > reimplementation. > > Hmm, I do not think TeeOutputStream needs a rewrite. Except that it perhaps > may > have been better to make it extend from a custom FilterOutputStream and then > write to a PrintStream. > > If you are having difficulties writing a test for TeeOutputStream then you > should probably take a step back and think again about *what* a test is > actually > testing for or rather verifying. Actually, it is not that difficult, it is > fairly easy in this case. > > > So this might be considered a temporary patch that resolves the bug before > > a > rework of the whole class. And also we must consider that the backport to 1.5 > should probably not have a rewrite of the class, which will use this patch. > > > > In terms of the problem with unit testing, we need to make sure calls to > > TeeOutputStream result in successful writes to the ByteOutputStream. > > However, given the current implementation there really isn't any way that > > I can see to validate that ByteOutputStream contains the correct write > > information without either exposing something or rewriting the class. I > > decided the getter was the best solution for the moment. It's also > > possible to expose flushLog() and have it return the flushed contents, but > > this sidesteps the PrintStream and doesn't feel as good to me. > > No, a reference to TeeOutputStream.byteArrayOutputStream is not required for > a > test. We should not be even bothering about it because it is not > TeeOutputStream's /output/. I wonder why there was a bug this simple... maybe because it wasn't tested? > > > I've made it return a copy and also set the method to be protected since > > it's really only used for testing. Just to make it clear, I also really > > dislike this approach so if you have any suggestions I will be happy to > > hear them. > > My advice is, as always with tests; test for the output depending on input, > not > a unit's or module's internal structure. > TeeOutputStream's output are its print() and println() methods. You can read > this output with a PipedInputStream. Verify the input you get from > PipedInputStream, not TeeOutputStream's internal structure. Then there is > also > no need to expose TeeOutputStream.byteArrayOutputStream. I think you are missing the test case's purpose here or I am misunderstanding you. The purpose of TeeOutputStream is two-fold. a) it supers PrintStream and pipes all input to some outputStream given. b) it also 'pipes' all input to the logger through flushLog(). I use quotes on the word pipe because the way it works is nowhere near as nice as piping. You seem to be thinking that we should only test a) which assuming PrintStream works, is not very useful. The bug that is being fixed here is that when TeeOutputStream wrote to the logger through flushLog(), data was lost as it did a byte-by-byte to char assignment to the StringBuffer. This has nothing to do with TeeOutputStream's output to whatever stream is given to it on construction. The output through supering to PrintStream did not have this issue as PrintStream actually works (yay). If you ran a user-test on this with some special character like '?' you would note that the stream given to TeeOutputStream contains the correct string while the logging that eventually goes to JavaConsole does not contain the correct string. In this situation it would have been nice to make sure that the logging had worked correctly, which is where unit tests come in. The way the logging works is it calls OutputController.getLogger.log(message) which stores the message in a queue and then consumes it on it's own accord, which eventually goes to JavaConsole, which has a List of messages recieved that is displayed in the GUI. As you can see here, there is no piping involved which is unfortunate as if it did, unit testing would be as easy as your above solution. We could also add dependencies on OutputController and/or JavaConsole in our tests but that destroys the concept of a unit test. Or we could also consider applying a mocking framework such as mockito but I don't think ITW uses mockito and I am reluctant to suggest adding it. So... what do we need to validate? That the logged data is correct, not that the TeeOutputStream's PrintStream output is correct. > > Jacob > Regards, -- Jie Kang From bugzilla-daemon at icedtea.classpath.org Wed Jul 16 21:03:08 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 16 Jul 2014 21:03:08 +0000 Subject: [Bug 1870] --enable-sunec requires a nss-softokn.pc which is only available in Fedora In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1870 --- Comment #1 from Andrew John Hughes --- It requires libfreebl.a and the alghmac.h & blapi.h headers from NSS >= 3.16.1 or libfreebl.a, libsoftokn.a and {softoken,lowkeyti,softoknt,blapi,alghmac}.h on earlier versions. Refactoring was done in NSS in 3.16.1 at our request to reduce the required footprint [0]. IcedTea actually supports two options, both of which we've used on Gentoo for the different NSS versions: 1. For >= 3.16.1, use nss-softokn from pkg-config. The build will use the libraries from NSS, adding -lfreebl itself, but the CFLAGS from nss-softokn, so an additional include directory can be added (Gentoo uses /usr/include/nss/private). 2. For earlier versions, use nss-java which uses the CFLAGS and libs from that package. It appends -DLEGACY_NSS to the CFLAGS so that softoken.h is included rather than freebl.h. We can look at more options if really necessary but I'd prefer you worked with one of the existing ones with your NSS package. This code has been worked on in HEAD since about April. Alternatively, if you are already happy with the ECC support provided by the PKCS11+NSS provider, you don't need this option at all. Fedora's never used that in an actual release, but I know Debian & Gentoo have been using it for years. [0] https://bugzilla.redhat.com/show_bug.cgi?id=1075702 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 16 21:05:10 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 16 Jul 2014 21:05:10 +0000 Subject: [Bug 1870] --enable-sunec requires a nss-softokn.pc which is only available in Fedora In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1870 --- Comment #2 from Andrew John Hughes --- This is the latest Gentoo ebuild for NSS with SunEC support: http://git.overlays.gentoo.org/gitweb/?p=proj/java.git;a=blob;f=dev-libs/nss/nss-3.16.1.ebuild;h=edad7e44b98e33a1be2d61effb0775e313512f34;hb=bb7ec406bddc9418167472f992431e599d7030b8 Notably: if use java ; then cp -L */lib/libfreebl.a "${ED}"/usr/$(get_libdir) || die "copying libs failed" fi if use java ; then local javapc="${ED}"/usr/$(get_libdir)/pkgconfig/nss{,-softokn}.pc cp -L "${ED}"/usr/$(get_libdir)/pkgconfig/nss.pc ${javapc} sed -i -e 's#Libs:#Libs: -lfreebl#' -e 's#Cflags:#Cflags: -I${includedir}/private#' ${javapc} fi if use java ; then insinto /usr/include/nss/private doins private/nss/{blapi,alghmac}.h fi -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gnu.andrew at redhat.com Thu Jul 17 00:01:01 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 16 Jul 2014 20:01:01 -0400 (EDT) Subject: Icedtea supports something called "Pepper"? In-Reply-To: <53C6A130.7060801@redhat.com> References: <53C56FCC.6040803@redhat.com> <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> <53C6A130.7060801@redhat.com> Message-ID: <497564714.11195006.1405555261970.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 07/16/2014 05:44 PM, Fernando Cassia wrote: > > On Wed, Jul 16, 2014 at 6:05 AM, Jiri Vanek wrote: > >> Then please, may you explain what i'm not understand? > > > > The OP referred to "his applets stopped working" on the ORACLE JDK. > > I explained that I think that is due to his applets code being > > UNSIGNED, and that he should, going forward, sign his applets. > > You replied that applets continue to work with Icedtea, and asked if I > > wanted to see Icedtea run unsigned applets without click to play. That > > was NOT what I was saying. I was describing the way Oracle JRE/JDK > > works now, for security reasons. (click to play on unsigned code), and > > that users who see that (applets disabled) jump to the conclusion that > > "his applets stopped working" without getting into the details of > > WHY... > > > > There is (common) misinterpretation in this. > > You must differ > > - oracle (proprietary) JDK > - oracle (proprietary) plugin/webstart implementation > - openjdk (still some distros are using it wrapped by icedtea) All for 6 & 7, as far as I'm aware. > - icedtea-web (another jdk plugin/implementation) > and forcompletness: > - ibm (proprietary jdk) > - ibm plugin and javaws implementation > > > Icedtea-web is implementation of javaws and have its java plugin, similar to > Oracle's plugin. Even > Ibm java have its plugin+(theirs!) javaws implementation. > Unlike proprietary plugin, which is bundled together with proprietary jdk, > icedtea-web can run on > Openjdk, Oracle JDK and IBM jdk (there are still something to fix with IBM > jdk). Icedtea web is not > bounded to Openjdk, nor OracleJDk nor IBM. Did you find a way around patching sun.applet.AppletPanel then? Because, as far as I'm aware, IcedTea-Web needs that and it's only in IcedTea. > > If you will run Icedtea-web with oracle jdk (or Ibm) it will always behave as > icedta-web. Not like > proprietary plugin. So the issue you are describing is in plugin > implementation. Not in icedtea, nor > in Oracle JDK. And vice versa - if you will be able to runproprietaru > plugin/javaws on different > jdk, it will (probably, I have never tried) behave as you are used from > "home" jdk. > > This may be hard to understand (especially if you were around original > classpath plugin, later > around icedtea, and have missed separation of ITW, or dying of icedtea), but > I hope it clarifies > things a bit for you. Any "dying of icedtea" is purely a fantasy in your own head, so I could imagine most people would find that hard to understand. Dying projects don't generally have three releases within around a month (probably four by tomorrow). > > > Now - thw question is still unanswered - what should ITW do better for you? > > J. > -- 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 Jul 17 00:15:09 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 16 Jul 2014 20:15:09 -0400 (EDT) Subject: Icedtea supports something called "Pepper"? In-Reply-To: References: <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> <53C6A130.7060801@redhat.com> Message-ID: <212625683.11199242.1405556109986.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On Wed, Jul 16, 2014 at 12:58 PM, Jiri Vanek wrote: > > Icedtea-web is implementation of javaws and have its java plugin, similar > > to > > Oracle's plugin. Even Ibm java have its plugin+(theirs!) javaws > > implementation. > > I'm perfectly aware of what you say. Although no one in its sane mind > would run Icedtea-web on top of Oracle JRE/JDK unless he's a > masochist. > > You should check Red Hat's own presentations, which claim OpenJDK 7 > and JDK 7 share "95% shared code". The remaining missing 5% surely > being JWS and the plug-in implementation. > > www.redhat.com/summit/2012/pdf/2012-DevDay-OpenJDK-Bhole.pdf > Slides 2-3... > > So, for all intents and purposes, and generally speaking, OpenJDK is > JDK is OpenJDK... I think you'll find we know more about this than you; both Jiri and I do work on this code on a daily basis. This 5% figure is rather dated. To my knowledge, the proprietary Oracle JDK has: * A proprietary graphics renderer as opposed to Pisces. * A proprietary font renderer as opposed to FreeType. * A proprietary colour management system as opposed to LCMS. * Proprietary ports to ARM32 and PPC32. * A proprietary SNMP plugin for JMX. and it tends to be growing, rather than shrinking. You can look through the OpenJDK makefiles for areas which depend on OPENJDK being defined/undefined but even that is becoming obscured now, as they switch to including proprietary makefiles instead. Contrary to what you say, I don't think the 5% figure even includes the deployment (plugin, Java Web Start, etc.) code, as it's not required by the Java specification (the same goes for the SNMP plugin and JIT ports). This is why OpenJDK can pass the TCK without including such code. The 5% instead refers to the graphics code listed above. An implementation of this is required to pass the TCK, and that implementation differs between the two JDKs. > > FC > 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 ptisnovs at icedtea.classpath.org Thu Jul 17 09:17:11 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 17 Jul 2014 09:17:11 +0000 Subject: /hg/gfx-test: Ten new tests added into CAGOperationsOnTwoConcent... Message-ID: changeset 7a5edc6bcf02 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=7a5edc6bcf02 author: Pavel Tisnovsky date: Thu Jul 17 11:18:04 2014 +0200 Ten new tests added into CAGOperationsOnTwoConcentricCircles. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java | 200 ++++++++++ 2 files changed, 205 insertions(+), 0 deletions(-) diffs (222 lines): diff -r 4a4fb5d90d48 -r 7a5edc6bcf02 ChangeLog --- a/ChangeLog Wed Jul 16 13:53:35 2014 +0200 +++ b/ChangeLog Thu Jul 17 11:18:04 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-17 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java: + Ten new tests added into CAGOperationsOnTwoConcentricCircles. + 2014-07-16 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltConvolveOp.java: diff -r 4a4fb5d90d48 -r 7a5edc6bcf02 src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java --- a/src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java Wed Jul 16 13:53:35 2014 +0200 +++ b/src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java Thu Jul 17 11:18:04 2014 +0200 @@ -2859,6 +2859,206 @@ } /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using inverse subtract operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testInverseSubtractTextureFillUsingRGBTexture4(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture4(image, graphics2d); + // create area using inverse subtract operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingInverseSubtractOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using Intersect operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testIntersectTextureFillUsingRGBTexture4(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture4(image, graphics2d); + // create area using Intersect operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingIntersectOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using Xor operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testXorTextureFillUsingRGBTexture4(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture4(image, graphics2d); + // create area using Xor operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingXorOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using union operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testUnionTextureFillUsingRGBTexture5(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture5(image, graphics2d); + // create area using union operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingUnionOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using subtract operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testSubtractTextureFillUsingRGBTexture5(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture5(image, graphics2d); + // create area using subtract operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingSubtractOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using inverse subtract operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testInverseSubtractTextureFillUsingRGBTexture5(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture5(image, graphics2d); + // create area using inverse subtract operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingInverseSubtractOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using Intersect operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testIntersectTextureFillUsingRGBTexture5(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture5(image, graphics2d); + // create area using Intersect operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingIntersectOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using Xor operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testXorTextureFillUsingRGBTexture5(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture5(image, graphics2d); + // create area using Xor operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingXorOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** * Entry point to the test suite. * * @param args not used in this case From jvanek at redhat.com Thu Jul 17 09:19:08 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 17 Jul 2014 11:19:08 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: <497564714.11195006.1405555261970.JavaMail.zimbra@redhat.com> References: <53C56FCC.6040803@redhat.com> <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> <53C6A130.7060801@redhat.com> <497564714.11195006.1405555261970.JavaMail.zimbra@redhat.com> Message-ID: <53C7950C.3020109@redhat.com> On 07/17/2014 02:01 AM, Andrew Hughes wrote: > ----- Original Message ----- >> On 07/16/2014 05:44 PM, Fernando Cassia wrote: >>> On Wed, Jul 16, 2014 at 6:05 AM, Jiri Vanek wrote: >>>> Then please, may you explain what i'm not understand? >>> >>> The OP referred to "his applets stopped working" on the ORACLE JDK. >>> I explained that I think that is due to his applets code being >>> UNSIGNED, and that he should, going forward, sign his applets. >>> You replied that applets continue to work with Icedtea, and asked if I >>> wanted to see Icedtea run unsigned applets without click to play. That >>> was NOT what I was saying. I was describing the way Oracle JRE/JDK >>> works now, for security reasons. (click to play on unsigned code), and >>> that users who see that (applets disabled) jump to the conclusion that >>> "his applets stopped working" without getting into the details of >>> WHY... >>> >> >> There is (common) misinterpretation in this. >> >> You must differ >> >> - oracle (proprietary) JDK >> - oracle (proprietary) plugin/webstart implementation >> - openjdk (still some distros are using it wrapped by icedtea) > > All for 6 & 7, as far as I'm aware. > >> - icedtea-web (another jdk plugin/implementation) >> and forcompletness: >> - ibm (proprietary jdk) >> - ibm plugin and javaws implementation >> >> >> Icedtea-web is implementation of javaws and have its java plugin, similar to >> Oracle's plugin. Even >> Ibm java have its plugin+(theirs!) javaws implementation. >> Unlike proprietary plugin, which is bundled together with proprietary jdk, >> icedtea-web can run on >> Openjdk, Oracle JDK and IBM jdk (there are still something to fix with IBM >> jdk). Icedtea web is not >> bounded to Openjdk, nor OracleJDk nor IBM. > > Did you find a way around patching sun.applet.AppletPanel then? Because, as far > as I'm aware, IcedTea-Web needs that and it's only in IcedTea. > Yes I did[1]. It is in 1.5.1 and head. We woek fine with 6,7,8 and Oracle+Open JDK. We work even with IBM but there are issues with signed appelts (as IBM have different libraries - wotk in progress here.) The new issue is 9 - and moduels, and so no longer possible usage of refelction :( J. [1]no magic here - http://icedtea.classpath.org/hg/icedtea-web/rev/c6591d36d68a From dbhole at redhat.com Thu Jul 17 13:42:19 2014 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 17 Jul 2014 09:42:19 -0400 Subject: Icedtea supports something called "Pepper"? In-Reply-To: <212625683.11199242.1405556109986.JavaMail.zimbra@redhat.com> References: <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> <53C6A130.7060801@redhat.com> <212625683.11199242.1405556109986.JavaMail.zimbra@redhat.com> Message-ID: <20140717134218.GC7576@redhat.com> * Andrew Hughes [2014-07-16 20:16]: > ----- Original Message ----- > > On Wed, Jul 16, 2014 at 12:58 PM, Jiri Vanek wrote: > > > Icedtea-web is implementation of javaws and have its java plugin, similar > > > to > > > Oracle's plugin. Even Ibm java have its plugin+(theirs!) javaws > > > implementation. > > > > I'm perfectly aware of what you say. Although no one in its sane mind > > would run Icedtea-web on top of Oracle JRE/JDK unless he's a > > masochist. > > > > You should check Red Hat's own presentations, which claim OpenJDK 7 > > and JDK 7 share "95% shared code". The remaining missing 5% surely > > being JWS and the plug-in implementation. > > > > www.redhat.com/summit/2012/pdf/2012-DevDay-OpenJDK-Bhole.pdf > > Slides 2-3... > > > > So, for all intents and purposes, and generally speaking, OpenJDK is > > JDK is OpenJDK... > > I think you'll find we know more about this than you; both Jiri and I do > work on this code on a daily basis. > > This 5% figure is rather dated. To my knowledge, the proprietary Oracle > JDK has: > > * A proprietary graphics renderer as opposed to Pisces. > * A proprietary font renderer as opposed to FreeType. > * A proprietary colour management system as opposed to LCMS. > * Proprietary ports to ARM32 and PPC32. > * A proprietary SNMP plugin for JMX. > > and it tends to be growing, rather than shrinking. You can look through > the OpenJDK makefiles for areas which depend on OPENJDK being defined/undefined > but even that is becoming obscured now, as they switch to including proprietary > makefiles instead. > > Contrary to what you say, I don't think the 5% figure even includes the > deployment (plugin, Java Web Start, etc.) code, as it's not required by > the Java specification (the same goes for the SNMP plugin and JIT ports). > This is why OpenJDK can pass the TCK without including such code. The 5% > instead refers to the graphics code listed above. An implementation of this > is required to pass the TCK, and that implementation differs between the two JDKs. > +1. The 5% in my slides refers to the Java implementation itself. Slide 9 in the previous years presentation clarifies this: http://www.redhat.com/summit/2011/presentations/summit/whats_next/thursday/bhole_t_1020_java_from_openjdk_to_rhel_and_what_lies_ahead.pdf For the 2012 one I must have just mentioned verbally. Deepak > > > > FC > > > > 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 Thu Jul 17 16:11:26 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Thu, 17 Jul 2014 12:11:26 -0400 (EDT) Subject: Icedtea supports something called "Pepper"? In-Reply-To: <53C7950C.3020109@redhat.com> References: <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> <53C6A130.7060801@redhat.com> <497564714.11195006.1405555261970.JavaMail.zimbra@redhat.com> <53C7950C.3020109@redhat.com> Message-ID: <1122510031.11629508.1405613486620.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 07/17/2014 02:01 AM, Andrew Hughes wrote: > > ----- Original Message ----- > >> On 07/16/2014 05:44 PM, Fernando Cassia wrote: > >>> On Wed, Jul 16, 2014 at 6:05 AM, Jiri Vanek wrote: > >>>> Then please, may you explain what i'm not understand? > >>> > >>> The OP referred to "his applets stopped working" on the ORACLE JDK. > >>> I explained that I think that is due to his applets code being > >>> UNSIGNED, and that he should, going forward, sign his applets. > >>> You replied that applets continue to work with Icedtea, and asked if I > >>> wanted to see Icedtea run unsigned applets without click to play. That > >>> was NOT what I was saying. I was describing the way Oracle JRE/JDK > >>> works now, for security reasons. (click to play on unsigned code), and > >>> that users who see that (applets disabled) jump to the conclusion that > >>> "his applets stopped working" without getting into the details of > >>> WHY... > >>> > >> > >> There is (common) misinterpretation in this. > >> > >> You must differ > >> > >> - oracle (proprietary) JDK > >> - oracle (proprietary) plugin/webstart implementation > >> - openjdk (still some distros are using it wrapped by icedtea) > > > > All for 6 & 7, as far as I'm aware. > > > >> - icedtea-web (another jdk plugin/implementation) > >> and forcompletness: > >> - ibm (proprietary jdk) > >> - ibm plugin and javaws implementation > >> > >> > >> Icedtea-web is implementation of javaws and have its java plugin, similar > >> to > >> Oracle's plugin. Even > >> Ibm java have its plugin+(theirs!) javaws implementation. > >> Unlike proprietary plugin, which is bundled together with proprietary jdk, > >> icedtea-web can run on > >> Openjdk, Oracle JDK and IBM jdk (there are still something to fix with IBM > >> jdk). Icedtea web is not > >> bounded to Openjdk, nor OracleJDk nor IBM. > > > > Did you find a way around patching sun.applet.AppletPanel then? Because, as > > far > > as I'm aware, IcedTea-Web needs that and it's only in IcedTea. > > > > Yes I did[1]. It is in 1.5.1 and head. We woek fine with 6,7,8 and > Oracle+Open JDK. We work even > with IBM but there are issues with signed appelts (as IBM have different > libraries - wotk in > progress here.) Oh, this is excellent news :) May be worth opening a bug to remove the patch from IcedTea then? ;) > > The new issue is 9 - and moduels, and so no longer possible usage of > refelction :( > > I guess now is the time to get what you need in 9 upstream. > J. > > [1]no magic here - > http://icedtea.classpath.org/hg/icedtea-web/rev/c6591d36d68a > -- 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 Jul 17 16:28:11 2014 From: aph at redhat.com (Andrew Haley) Date: Thu, 17 Jul 2014 17:28:11 +0100 Subject: Yet another flag which breaks debugging Message-ID: <53C7F99B.6000405@redhat.com> Just a heads-up about JDK9: the default, even in slowdebug builds, is -Og; this eliminates useful debug helper functions. To build a proper slowdebug build, you need to build with DEBUG_CFLAGS=-O0 Andrew. From dalibor.topic at oracle.com Thu Jul 17 16:48:37 2014 From: dalibor.topic at oracle.com (dalibor topic) Date: Thu, 17 Jul 2014 18:48:37 +0200 Subject: Yet another flag which breaks debugging In-Reply-To: <53C7F99B.6000405@redhat.com> References: <53C7F99B.6000405@redhat.com> Message-ID: <53C7FE65.9030309@oracle.com> See https://bugs.openjdk.java.net/browse/JDK-8047734 to track the fix. On 17.07.2014 18:28, Andrew Haley wrote: > Just a heads-up about JDK9: the default, even in slowdebug builds, is > -Og; this eliminates useful debug helper functions. > > To build a proper slowdebug build, you need to build with > DEBUG_CFLAGS=-O0 > > Andrew. > -- Dalibor Topic | Principal Product Manager Phone: +494089091214 | Mobile: +491737185961 ORACLE Deutschland B.V. & Co. KG | K?hneh?fe 5 | 22761 Hamburg ORACLE Deutschland B.V. & Co. KG Hauptverwaltung: Riesstr. 25, D-80992 M?nchen Registergericht: Amtsgericht M?nchen, HRA 95603 Gesch?ftsf?hrer: J?rgen Kunz Komplement?rin: ORACLE Deutschland Verwaltung B.V. Hertogswetering 163/167, 3543 AS Utrecht, Niederlande Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697 Gesch?ftsf?hrer: Alexander van der Ven, Astrid Kepper, Val Maher Oracle is committed to developing practices and products that help protect the environment From aazores at redhat.com Thu Jul 17 18:30:10 2014 From: aazores at redhat.com (Andrew Azores) Date: Thu, 17 Jul 2014 14:30:10 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <20140715165436.GB613@redhat.com> References: <20140702163109.GD2271@redhat.com> <53B4357D.5040402@redhat.com> <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> <20140715151922.GA613@redhat.com> <53C54C53.50105@redhat.com> <20140715165436.GB613@redhat.com> Message-ID: <53C81632.20400@redhat.com> On 07/15/2014 12:54 PM, Omair Majid wrote: > * Andrew Azores [2014-07-15 11:44]: >> On 07/15/2014 11:19 AM, Omair Majid wrote: >>> * Andrew Azores [2014-07-15 11:12]: >>>> Which part? Just the URLPermission's port, or the downloadHost itself? >>> The port: it should match the port where the jars were downloaded from. >> Hmm. Does JNLPFile#getCodebase()#toURI()#normalize()#getPort() sound right? >> That's what it boils down to in this patch now. I don't know of anywhere >> where we keep a more explicit reference to the port that was actually used >> to download the resources, but I suppose that would generally be either that >> same port, or if not specified, then just the default port for the protocol, >> so the same thing as this. Right? > I believe you are correct, but my knowledge of the internals is a bit > old. Maybe check how that download url for the resource is computed > > Thanks, > Omair > Okay, took some digging. Now the applet's location's host domain is simply assumed to be the host part of the resource's location, which should be located somewhere below the applet codebase. This host is permuted with the ports from each of the applet's associated resources and a set constructed from the permutations, then each of the set's members are added to the sandbox permission. If a port is not specified then the URLPermission documentation says it takes this to mean the default port, at least for http(s) schemes - I don't know what happens for eg ftp. No port restriction perhaps? It's not clear from the documentation I've seen, but I wouldn't expect it to mean the permission has no effect, so I suppose it's no port restriction (unfortunately). So here are some examples of what the results *should* look like in a few cases. Case A - extremely simple, standard applet codebase = http://example.com/applet host = http://example.com resources = [ http://example.com/applet/app.jar ] permissions = [ http://example.com:80/- ] Case B - simple applet with multiple jars codebase = http://example.com/applet host = http://example.com resources = [ http://example.com/applet/app.jar, http://example.com/applet/lib/applib.jar ] permissions = [ http://example.com:80/- ] Case C - applet with resources from explicitly defined ports codebase = http://example.com/applet host = http://example.com resources = [ http://example.com:8080/applet/app.jar, http://example.com:9090/applet/lib/applib.jar ] permissions = [ http://example.com:8080/-, http://example.com:9090/- ] Case D - resources with different protocols codebase = http://example.com/applet host = http://example.com resources = [ http://example.com/applet/app.jar, https://example.com/applet/lib/applib.jar ] permissions = [ http://example.com:80/-, https://example.com:443/- ] Case E - resources with different protocols and explicit port codebase = http://example.com/applet host = http://example.com resources = [ http://example.com/applet/app.jar, https://example.com:4430/applet/lib/applib.jar ] permissions = [ http://example.com:80/-, https://example.com:4430/- ] * Case F - applet with no JARs... not sure what to do about this one codebase = http://example.com/applet host = http://example.com resources = [ http://example.com/applet/app.class ] permissions = [ ] Any ideas on what to do for case F? Perhaps as well as iterating over all the JARs' locations I should also add the JNLPFile's getCodebase()'s host with its default port - but this could end up adding an extra permission that shouldn't actually need to be there? And any ideas on how to write reproducers for this? Should I just make a simple reproducer that attempts to make some bogus connection on a non-default port, for example, and check that it fails (this would cover Case A)? I've already included some unit tests for the simple URI manipulation stuff. I was thinking of adding some tests using dummy JNLP files and exposing SecurityDesc#getUrlPermissions() as package-private to be able to better test the expected results in the Cases above, but this would mean that the SecurityDescTest would also need to do the same reflection to determine if URLPermission is available. Should that be done? Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: urlpermissions-7.patch Type: text/x-patch Size: 15822 bytes Desc: not available URL: From omajid at redhat.com Thu Jul 17 18:38:40 2014 From: omajid at redhat.com (Omair Majid) Date: Thu, 17 Jul 2014 14:38:40 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53C81632.20400@redhat.com> References: <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> <20140715151922.GA613@redhat.com> <53C54C53.50105@redhat.com> <20140715165436.GB613@redhat.com> <53C81632.20400@redhat.com> Message-ID: <20140717183839.GD5672@redhat.com> * Andrew Azores [2014-07-17 14:30]: > I don't know > what happens for eg ftp. No port restriction perhaps? It's not clear from > the documentation I've seen, but I wouldn't expect it to mean the permission > has no effect, so I suppose it's no port restriction (unfortunately). Maybe not add one for ftp until we have a bug report? > So here are some examples of what the results *should* look like in a few > cases. These look great! Thanks for taking care of this! > * Case F - applet with no JARs... not sure what to do about this one > codebase = http://example.com/applet > host = http://example.com > resources = [ http://example.com/applet/app.class ] > permissions = [ ] > > Any ideas on what to do for case F? Perhaps as well as iterating over all > the JARs' locations I should also add the JNLPFile's getCodebase()'s host > with its default port - but this could end up adding an extra permission > that shouldn't actually need to be there? That seems like the right thing to do. > And any ideas on how to write > reproducers for this? Should I just make a simple reproducer that attempts > to make some bogus connection on a non-default port, for example, and check > that it fails (this would cover Case A)? Yeah. But make sure the failure is caused by the URL permission, not because the resource is not actually there. Jiri might have better idea about reproducers, though. > I've already included some unit > tests for the simple URI manipulation stuff. I was thinking of adding some > tests using dummy JNLP files and exposing SecurityDesc#getUrlPermissions() > as package-private to be able to better test the expected results in the > Cases above, but this would mean that the SecurityDescTest would also need > to do the same reflection to determine if URLPermission is available. Should > that be done? That sounds like a bit of a mess. Maybe the test is not worth having if it's hard to read/write/debug. Patch itself looks okay. Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From aazores at redhat.com Thu Jul 17 18:56:04 2014 From: aazores at redhat.com (Andrew Azores) Date: Thu, 17 Jul 2014 14:56:04 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <20140717183839.GD5672@redhat.com> References: <53B5C338.4090906@redhat.com> <20140703210250.GA2296@redhat.com> <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> <20140715151922.GA613@redhat.com> <53C54C53.50105@redhat.com> <20140715165436.GB613@redhat.com> <53C81632.20400@redhat.com> <20140717183839.GD5672@redhat.com> Message-ID: <53C81C44.4000007@redhat.com> On 07/17/2014 02:38 PM, Omair Majid wrote: > * Andrew Azores [2014-07-17 14:30]: >> I don't know >> what happens for eg ftp. No port restriction perhaps? It's not clear from >> the documentation I've seen, but I wouldn't expect it to mean the permission >> has no effect, so I suppose it's no port restriction (unfortunately). > Maybe not add one for ftp until we have a bug report? Well, there's nothing being added that explicitly handles any particular protocol. I'm just much less sure about what happens with eg ftp than for http(s), because the documentation just doesn't seem to specify. > >> So here are some examples of what the results *should* look like in a few >> cases. > These look great! Thanks for taking care of this! > >> * Case F - applet with no JARs... not sure what to do about this one >> codebase = http://example.com/applet >> host = http://example.com >> resources = [ http://example.com/applet/app.class ] >> permissions = [ ] >> >> Any ideas on what to do for case F? Perhaps as well as iterating over all >> the JARs' locations I should also add the JNLPFile's getCodebase()'s host >> with its default port - but this could end up adding an extra permission >> that shouldn't actually need to be there? > That seems like the right thing to do. -8 patch attached with this added, no other changes. > >> And any ideas on how to write >> reproducers for this? Should I just make a simple reproducer that attempts >> to make some bogus connection on a non-default port, for example, and check >> that it fails (this would cover Case A)? > Yeah. But make sure the failure is caused by the URL permission, not > because the resource is not actually there. Jiri might have better idea > about reproducers, though. > >> I've already included some unit >> tests for the simple URI manipulation stuff. I was thinking of adding some >> tests using dummy JNLP files and exposing SecurityDesc#getUrlPermissions() >> as package-private to be able to better test the expected results in the >> Cases above, but this would mean that the SecurityDescTest would also need >> to do the same reflection to determine if URLPermission is available. Should >> that be done? > That sounds like a bit of a mess. Maybe the test is not worth having if > it's hard to read/write/debug. Yea, it definitely would be a bit of a mess. > > Patch itself looks okay. > > Thanks, > Omair > I'll wait for Jiri's word on the reproducers then. Once I figure out how I'm going to tackle that then I'll also include an updated 1.5 backport, but that's really just going to come down to removing ReflectiveOperationException and producing some nasty try/catches again instead. Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: urlpermissions-8.patch Type: text/x-patch Size: 16914 bytes Desc: not available URL: From omajid at redhat.com Thu Jul 17 18:58:43 2014 From: omajid at redhat.com (Omair Majid) Date: Thu, 17 Jul 2014 14:58:43 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53C81C44.4000007@redhat.com> References: <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> <20140715151922.GA613@redhat.com> <53C54C53.50105@redhat.com> <20140715165436.GB613@redhat.com> <53C81632.20400@redhat.com> <20140717183839.GD5672@redhat.com> <53C81C44.4000007@redhat.com> Message-ID: <20140717185842.GE5672@redhat.com> * Andrew Azores [2014-07-17 14:56]: > I'll also include an updated 1.5 backport, but that's really just > going to come down to removing ReflectiveOperationException and > producing some nasty try/catches again instead. For the record, I think this is really silly. Why should icedtea-web 1.5 support Java 6, 7 and 8? Why not just release an icedtea-web 1.6 that supports 7 and 8? Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From aazores at redhat.com Thu Jul 17 18:59:33 2014 From: aazores at redhat.com (Andrew Azores) Date: Thu, 17 Jul 2014 14:59:33 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <20140717185842.GE5672@redhat.com> References: <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> <20140715151922.GA613@redhat.com> <53C54C53.50105@redhat.com> <20140715165436.GB613@redhat.com> <53C81632.20400@redhat.com> <20140717183839.GD5672@redhat.com> <53C81C44.4000007@redhat.com> <20140717185842.GE5672@redhat.com> Message-ID: <53C81D15.3040602@redhat.com> On 07/17/2014 02:58 PM, Omair Majid wrote: > * Andrew Azores [2014-07-17 14:56]: >> I'll also include an updated 1.5 backport, but that's really just >> going to come down to removing ReflectiveOperationException and >> producing some nasty try/catches again instead. > For the record, I think this is really silly. Why should icedtea-web 1.5 > support Java 6, 7 and 8? Why not just release an icedtea-web 1.6 that > supports 7 and 8? > > Thanks, > Omair > I am fully on board with this. Thanks, -- Andrew A From omajid at redhat.com Thu Jul 17 19:29:52 2014 From: omajid at redhat.com (Omair Majid) Date: Thu, 17 Jul 2014 15:29:52 -0400 Subject: [rfc][icedtea-web] Reflectively add URLPermission to SecurityDesc if available In-Reply-To: <53C81C44.4000007@redhat.com> References: <53B5C7A1.9080700@redhat.com> <53C3E42D.6000408@redhat.com> <20140714150959.GA11827@redhat.com> <53C544C7.30303@redhat.com> <20140715151922.GA613@redhat.com> <53C54C53.50105@redhat.com> <20140715165436.GB613@redhat.com> <53C81632.20400@redhat.com> <20140717183839.GD5672@redhat.com> <53C81C44.4000007@redhat.com> Message-ID: <20140717192951.GF5672@redhat.com> * Andrew Azores [2014-07-17 14:56]: > On 07/17/2014 02:38 PM, Omair Majid wrote: > >* Andrew Azores [2014-07-17 14:30]: > >>* Case F - applet with no JARs... not sure what to do about this one > >>codebase = http://example.com/applet > >>host = http://example.com > >>resources = [ http://example.com/applet/app.class ] > >>permissions = [ ] > >> > >>Any ideas on what to do for case F? Perhaps as well as iterating over all > >>the JARs' locations I should also add the JNLPFile's getCodebase()'s host > >>with its default port - but this could end up adding an extra permission > >>that shouldn't actually need to be there? > >That seems like the right thing to do. > > -8 patch attached with this added, no other changes. Looks good to me. Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From ldracz at redhat.com Thu Jul 17 20:32:24 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Thu, 17 Jul 2014 16:32:24 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] Copy Paste refactored to use System Clipboard In-Reply-To: <1975580194.7657870.1405348996435.JavaMail.zimbra@redhat.com> Message-ID: <1697347631.9705334.1405629144240.JavaMail.zimbra@redhat.com> Hello, I have been working with Andrew A on a patch that refactors the copy and paste functionality to use the system clipboard. We had to refactor the parsing to allow it take in Strings instead of requiring a file. 2014-07-14 Andrew Azores Lukasz Dracz * netx/net/sourceforge/jnlp/resources/Messages.properties (PEClipboardError, PEInvalidPolicy, PEClipboardAccessError): added * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java (renameCodebaseButtonAction, copyCodebaseButtonAction, pasteCodebaseButtonAction): changed functionality to call methods from PolicyEditorController that use system clipboard * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorController.java (addPolicyEntry): added (openAndParsePolicyFile): throws new exception InvalidPolicyException (copyCodebaseToClipboard, getClipboardContentAsString, getPolicyEntryFromClipboard, getCodebaseFromClipboard, getPermissionsFromClipboard, getCustomPermissionsFromClipboard): new methods * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEntry.java (getCodebase, getPermissions, getCustomPermissions, fromString, validatePolicy): new overloaded methods * netx/net/sourceforge/jnlp/security/policyeditor/PolicyFileModel.java all methods made synchronized (openAndParsePolicyFile): extracted and modified parsing logic (parsePolicyString): new method (clearPermissions): also clears Custom Permissions now * netx/net/sourceforge/jnlp/security/policyeditor/InvalidPolicyException.java: added new exception * netx/net/sourceforge/jnlp/security/policyeditor/CustomPermission.java (equals, hashCode): Override these methods to be able to compare custom permissions. New constructors for custom permission, one of the constructors takes only PermissionType, PermissionTarget and the other takes an additional PermissionActions * tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPermissionTest.java, * tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorParsingTest.java, * tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorTest.java, * tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorControllerTest.java, * tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEntryTest.java, * tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyFileModelTest.java: added new unit tests Thank you, Lukasz Dracz -------------- next part -------------- A non-text attachment was scrubbed... Name: PolicyEditorUnitTests.patch Type: text/x-patch Size: 48792 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: copyPasteRefactoredToUseSystemClipboard-5.patch Type: text/x-patch Size: 41144 bytes Desc: not available URL: From bugzilla-daemon at icedtea.classpath.org Thu Jul 17 22:13:04 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 17 Jul 2014 22:13:04 +0000 Subject: [Bug 1875] New: Eclipse IDE closes at create a new project Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1875 Bug ID: 1875 Summary: Eclipse IDE closes at create a new project Product: IcedTea Version: unspecified Hardware: x86 OS: Linux Status: NEW Severity: blocker Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: andrecardosodev at gmail.com CC: unassigned at icedtea.classpath.org Created attachment 1124 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1124&action=edit hs_error.log I don't know what is this error, but always on try to create a new Android Project with Eclipse it closes. In logs I have information that is need to enable the "core dumps". The possible solutions I've tried doesn't work. The same thing happens when I try to create a new AVD. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Fri Jul 18 07:54:45 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Fri, 18 Jul 2014 09:54:45 +0200 Subject: Icedtea supports something called "Pepper"? In-Reply-To: <1122510031.11629508.1405613486620.JavaMail.zimbra@redhat.com> References: <53C61832.9030009@redhat.com> <53C6403C.6020806@redhat.com> <53C6A130.7060801@redhat.com> <497564714.11195006.1405555261970.JavaMail.zimbra@redhat.com> <53C7950C.3020109@redhat.com> <1122510031.11629508.1405613486620.JavaMail.zimbra@redhat.com> Message-ID: <53C8D2C5.6030808@redhat.com> On 07/17/2014 06:11 PM, Andrew Hughes wrote: > > > ----- Original Message ----- >> On 07/17/2014 02:01 AM, Andrew Hughes wrote: >>> ----- Original Message ----- >>>> On 07/16/2014 05:44 PM, Fernando Cassia wrote: >>>>> On Wed, Jul 16, 2014 at 6:05 AM, Jiri Vanek wrote: >>>>>> Then please, may you explain what i'm not understand? >>>>> >>>>> The OP referred to "his applets stopped working" on the ORACLE JDK. >>>>> I explained that I think that is due to his applets code being >>>>> UNSIGNED, and that he should, going forward, sign his applets. >>>>> You replied that applets continue to work with Icedtea, and asked if I >>>>> wanted to see Icedtea run unsigned applets without click to play. That >>>>> was NOT what I was saying. I was describing the way Oracle JRE/JDK >>>>> works now, for security reasons. (click to play on unsigned code), and >>>>> that users who see that (applets disabled) jump to the conclusion that >>>>> "his applets stopped working" without getting into the details of >>>>> WHY... >>>>> >>>> >>>> There is (common) misinterpretation in this. >>>> >>>> You must differ >>>> >>>> - oracle (proprietary) JDK >>>> - oracle (proprietary) plugin/webstart implementation >>>> - openjdk (still some distros are using it wrapped by icedtea) >>> >>> All for 6 & 7, as far as I'm aware. >>> >>>> - icedtea-web (another jdk plugin/implementation) >>>> and forcompletness: >>>> - ibm (proprietary jdk) >>>> - ibm plugin and javaws implementation >>>> >>>> >>>> Icedtea-web is implementation of javaws and have its java plugin, similar >>>> to >>>> Oracle's plugin. Even >>>> Ibm java have its plugin+(theirs!) javaws implementation. >>>> Unlike proprietary plugin, which is bundled together with proprietary jdk, >>>> icedtea-web can run on >>>> Openjdk, Oracle JDK and IBM jdk (there are still something to fix with IBM >>>> jdk). Icedtea web is not >>>> bounded to Openjdk, nor OracleJDk nor IBM. >>> >>> Did you find a way around patching sun.applet.AppletPanel then? Because, as >>> far >>> as I'm aware, IcedTea-Web needs that and it's only in IcedTea. >>> >> >> Yes I did[1]. It is in 1.5.1 and head. We woek fine with 6,7,8 and >> Oracle+Open JDK. We work even >> with IBM but there are issues with signed appelts (as IBM have different >> libraries - wotk in >> progress here.) > > Oh, this is excellent news :) > > May be worth opening a bug to remove the patch from IcedTea then? ;) > Yes. But not before 1.6 is released (or at least 1.5.1) as this "fix" is not going to 1.4. >> >> The new issue is 9 - and moduels, and so no longer possible usage of >> refelction :( >> >> > > I guess now is the time to get what you need in 9 upstream. Well I have already started. http://mail.openjdk.java.net/pipermail/awt-dev/2014-May/007828.html http://mail.openjdk.java.net/pipermail/awt-dev/2014-June/008072.html http://mail.openjdk.java.net/pipermail/awt-dev/2014-June/008073.html http://mail.openjdk.java.net/pipermail/awt-dev/2014-June/008074.html But I got stuck a bit. Today, itw needs to extend some classes. I'm wondering how I will be extending compeltely private calsses - although based on public api :)) The only way I currently see is to get rid from extends, and continue with using (pattern). Which need some reengeneering :( > >> J. >> >> [1]no magic here - >> http://icedtea.classpath.org/hg/icedtea-web/rev/c6591d36d68a >> > From bugzilla-daemon at icedtea.classpath.org Fri Jul 18 09:56:37 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 18 Jul 2014 09:56:37 +0000 Subject: [Bug 1875] Eclipse IDE closes at create a new project In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1875 Severin Gehwolf changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |sgehwolf at redhat.com Resolution|--- |INVALID --- Comment #1 from Severin Gehwolf --- The crash originated from third-party JNI code coming from Eclipse (SWT). Please report this bug to the ADT developers. Unfortunately there is nothing we can do to fix it. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ptisnovs at icedtea.classpath.org Fri Jul 18 12:05:39 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 18 Jul 2014 12:05:39 +0000 Subject: /hg/gfx-test: Updated BitBltCropImage.java. Message-ID: changeset 82e939a72143 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=82e939a72143 author: Pavel Tisnovsky date: Fri Jul 18 14:06:39 2014 +0200 Updated BitBltCropImage.java. diffstat: ChangeLog | 5 +++++ src/org/gfxtest/testsuites/BitBltCropImage.java | 22 +++++++++++----------- 2 files changed, 16 insertions(+), 11 deletions(-) diffs (114 lines): diff -r 7a5edc6bcf02 -r 82e939a72143 ChangeLog --- a/ChangeLog Thu Jul 17 11:18:04 2014 +0200 +++ b/ChangeLog Fri Jul 18 14:06:39 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-18 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltCropImage.java: + Updated. + 2014-07-17 Pavel Tisnovsky * src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java: diff -r 7a5edc6bcf02 -r 82e939a72143 src/org/gfxtest/testsuites/BitBltCropImage.java --- a/src/org/gfxtest/testsuites/BitBltCropImage.java Thu Jul 17 11:18:04 2014 +0200 +++ b/src/org/gfxtest/testsuites/BitBltCropImage.java Fri Jul 18 14:06:39 2014 +0200 @@ -1,7 +1,7 @@ /* Java gfx-test framework - Copyright (C) 2010, 2011, 2012, 2013 Red Hat + Copyright (C) 2010, 2011, 2012, 2013, 2014 Red Hat This file is part of IcedTea. @@ -83,7 +83,7 @@ { /** - * Test basic BitBlt operation for checker buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -166,7 +166,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -249,7 +249,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -584,7 +584,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -667,7 +667,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -750,7 +750,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -833,7 +833,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -916,7 +916,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -999,7 +999,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations @@ -1082,7 +1082,7 @@ } /** - * Test basic BitBlt operation for checker buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for checker buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * No crop is performed to that image. * @param image * image used as a destination for BitBlt-type operations From ldracz at redhat.com Fri Jul 18 15:53:37 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Fri, 18 Jul 2014 11:53:37 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] PolicyEditor Help Menu Dialog In-Reply-To: <1408059307.10015451.1405696557913.JavaMail.zimbra@redhat.com> Message-ID: <68382570.10039571.1405698817132.JavaMail.zimbra@redhat.com> Hello, I have been working with Andrew A on a patch that adds an Help Menu to PolicyEditor and two menu items that spawn dialogs (about,help). 2014-07-18 Andrew Azores Lukasz Dracz * netx/net/sourceforge/jnlp/resources/Messages.properties (PEHelpMenu, PEAboutPolicyEditorItem, PEPolicyEditorHelpItem, PEAboutDialogTitle, PEAboutDialogContent, PEHelpDialogTitle, PEHelpDialogContent, PEHelpMenuMnemonic, PEAboutPolicyEditorItemMnemonic, PEPolicyEditorHelpItemMnemonic, PEAboutPolicyEditorCloseAccelerator):added * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java (policyEditorHelpButtonAction, aboutPolicyEditorButtonAction): added and used to open dialogs (helpMenu, aboutPolicyEditorItem, policyEditorHelpItem): added * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorAboutDialog.java Implements a frame that uses a textpane which takes html within a scrollpane to show dialogs in. (close, setupLayout): added (CloseKeyListener): added class Thank you, Lukasz Dracz From ldracz at redhat.com Fri Jul 18 17:27:51 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Fri, 18 Jul 2014 13:27:51 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] PolicyEditor Help Menu Dialog In-Reply-To: <53C94894.4040408@gmx.de> References: <68382570.10039571.1405698817132.JavaMail.zimbra@redhat.com> <53C94894.4040408@gmx.de> Message-ID: <1268344973.10083294.1405704471096.JavaMail.zimbra@redhat.com> Hello, > Patch file is missing... ;-) Yes, sorry and thanks for noticing. Thank you, Lukasz Dracz -------------- next part -------------- A non-text attachment was scrubbed... Name: AboutDialog-6.patch Type: text/x-patch Size: 11232 bytes Desc: not available URL: From gnu.andrew at redhat.com Fri Jul 18 21:21:16 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Fri, 18 Jul 2014 22:21:16 +0100 Subject: IcedTea-Sound 1.0.0 Released! Message-ID: <20140718212106.GA21559@carrie.the212.com> We are pleased to announce the inaugural release of IcedTea-Sound. At present, IcedTea-Sound contains the PulseAudio provider which was removed from IcedTea itself from 2.5.0 onwards. More providers may be included in the future. If you find an issue with the release, please report it to our bug database (http://icedtea.classpath.org/bugzilla) under the IcedTea-Sound product and the appropriate component. Development discussion takes place on the distro-pkg-dev at openjdk.java.net mailing list (as with IcedTea) and patches are always welcome. Full details of the release can be found below. What's New? =========== New in release 1.0.0 (2014-07-18): * PR1741: Break PulseAudio provider out into IcedTea-Sound * PR1840: Replace Makefile.am references to PULSE_JAVA with ICEDTEA_SOUND * PR1842: Linker does not check that symbols can be resolved for libpulse-java.so * PR1876: The following shared libraries lack a SONAME: /usr/lib64/libicedtea-sound.so The tarballs can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz We provide both gzip and xz tarballs, so that those who are able to make use of the smaller tarball produced by xz may do so. The tarballs are accompanied by digital signatures available at: * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz.sig * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz.sig These are 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 SHA256 checksums: 0d09bc9656f9125642f70bb322f8ec92ec0ae28fdd295e83c4ce3c7576e79bd3 icedtea-sound-1.0.0.tar.gz cb47dec753e4853ba8021a3b532631c2b751450d0d9d580c3ddce99fe8b4c7a9 icedtea-sound-1.0.0.tar.gz.sig 29511d271cbb5259eac5dd48867e27d61ce4ce15026dc105277dbf1238333dbb icedtea-sound-1.0.0.tar.xz c16cb29502d6edb16fb611b3d1ffbda199919f56afc8691a7dceee08b009b528 icedtea-sound-1.0.0.tar.xz.sig The checksums can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.sha256 The following people helped with this release: * Andrew Hughes (all bug fixes, release management) We would also like to thank the bug reporters and testers! To get started: $ tar xzf icedtea-sound-1.0.0.tar.gz or: $ tar x -I xz -f icedtea-sound-1.0.0.tar.xz then: $ mkdir its-build $ cd its-build $ ../icedtea-sound-1.0.0/configure --prefix=${install_location} $ make $ make install where ${install_location} should be replaced by the prefix where you wish to install IcedTea-Sound (default is /usr/local). Depending on the prefix selected, the 'make install' step may need root privileges. Full build requirements and instructions are available in the INSTALL file. 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: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: From gnu_andrew at member.fsf.org Fri Jul 18 22:49:57 2014 From: gnu_andrew at member.fsf.org (Andrew Hughes) Date: Fri, 18 Jul 2014 23:49:57 +0100 Subject: IcedTea-Sound 1.0.1 Released! Message-ID: <20140718224957.GA7791@carrie.the212.com> We are pleased to announce the release of IcedTea-Sound 1.0.1... after finding that IcedTea-Sound 1.0.0 was a little broken :( If you find an issue with the release, please report it to our bug database (http://icedtea.classpath.org/bugzilla) under the IcedTea-Sound product and the appropriate component. Development discussion takes place on the distro-pkg-dev at openjdk.java.net mailing list (as with IcedTea) and patches are always welcome. Full details of the release can be found below. What's New? =========== New in release 1.0.1 (2014-07-18): * PR1877: Code not updated in accordance with name changes in PR1840 The tarballs can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.1.tar.gz * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.1.tar.xz We provide both gzip and xz tarballs, so that those who are able to make use of the smaller tarball produced by xz may do so. The tarballs are accompanied by digital signatures available at: * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.1.tar.gz.sig * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.1.tar.xz.sig These are 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 SHA256 checksums: 71ba4ede06cfb9375c373c98191de2564cd32b925f5dffcd109a172a14d5e3db icedtea-sound-1.0.1.tar.gz 9d9ff790a3012ce6bb47260906ff3512eea428ace94efc3969f8832f12c7a479 icedtea-sound-1.0.1.tar.gz.sig 6ff852b82ae7db7a95981271037eb3a3d52c59581e3b27a638a7c6bc8eecb4a3 icedtea-sound-1.0.1.tar.xz e8c4b0a6a02c7314ae47e5de79b6d00c93dbe7a9f66c2b5a1d78b837c6831161 icedtea-sound-1.0.1.tar.xz.sig The checksums can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.1.sha256 The following people helped with this release: * Andrew Hughes (all bug fixes, release management) We would also like to thank the bug reporters and testers! To get started: $ tar xzf icedtea-sound-1.0.1.tar.gz or: $ tar x -I xz -f icedtea-sound-1.0.1.tar.xz then: $ mkdir its-build $ cd its-build $ ../icedtea-sound-1.0.1/configure --prefix=${install_location} $ make $ make install where ${install_location} should be replaced by the prefix where you wish to install IcedTea-Sound (default is /usr/local). Depending on the prefix selected, the 'make install' step may need root privileges. Full build requirements and instructions are available in the INSTALL file. 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: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: From bugzilla-daemon at icedtea.classpath.org Mon Jul 21 08:20:48 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 21 Jul 2014 08:20:48 +0000 Subject: [Bug 1878] New: A fatal error has been detected by the Java Runtime Environment Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1878 Bug ID: 1878 Summary: A fatal error has been detected by the Java Runtime Environment Product: IcedTea Version: unspecified Hardware: x86_64 OS: Linux Status: NEW Severity: blocker Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: denis690 at yahoo.com CC: unassigned at icedtea.classpath.org Created attachment 1126 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1126&action=edit log1 STEPS: ======= Start Eclipse Open Jave file using double click Start editing files PROBLEM: ========= Crash occured: # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x00007fb41ad062a1, pid=32003, tid=140414266464000 # # JRE version: OpenJDK Runtime Environment (7.0_55-b14) (build 1.7.0_55-b14) # Java VM: OpenJDK 64-Bit Server VM (24.51-b03 mixed mode linux-amd64 compressed oops) # Problematic frame: # C [libsoup-2.4.so.1+0x6c2a1] soup_session_feature_detach+0x11 # # 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 # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. # --------------- T H R E A D --------------- Current thread (0x00007fb4b800a800): JavaThread "main" [_thread_in_native, id=32006, stack(0x00007fb4be695000,0x00007fb4be796000)] siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x0000000000000000 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ptisnovs at icedtea.classpath.org Mon Jul 21 10:15:51 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 21 Jul 2014 10:15:51 +0000 Subject: /hg/gfx-test: Five new tests added info CAGOperationsOnTwoConcen... Message-ID: changeset e16f2b0cc220 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=e16f2b0cc220 author: Pavel Tisnovsky date: Mon Jul 21 12:16:53 2014 +0200 Five new tests added info CAGOperationsOnTwoConcentricCircles. diffstat: ChangeLog | 5 + src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java | 125 ++++++++++ 2 files changed, 130 insertions(+), 0 deletions(-) diffs (147 lines): diff -r 82e939a72143 -r e16f2b0cc220 ChangeLog --- a/ChangeLog Fri Jul 18 14:06:39 2014 +0200 +++ b/ChangeLog Mon Jul 21 12:16:53 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-21 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java: + Five new tests added info CAGOperationsOnTwoConcentricCircles. + 2014-07-18 Pavel Tisnovsky * src/org/gfxtest/testsuites/BitBltCropImage.java: diff -r 82e939a72143 -r e16f2b0cc220 src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java --- a/src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java Fri Jul 18 14:06:39 2014 +0200 +++ b/src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java Mon Jul 21 12:16:53 2014 +0200 @@ -3059,6 +3059,131 @@ } /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using union operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testUnionTextureFillUsingRGBTexture6(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture6(image, graphics2d); + // create area using union operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingUnionOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using subtract operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testSubtractTextureFillUsingRGBTexture6(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture6(image, graphics2d); + // create area using subtract operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingSubtractOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using inverse subtract operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testInverseSubtractTextureFillUsingRGBTexture6(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture6(image, graphics2d); + // create area using inverse subtract operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingInverseSubtractOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using Intersect operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testIntersectTextureFillUsingRGBTexture6(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture6(image, graphics2d); + // create area using Intersect operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingIntersectOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** + * Checks the process of creating and rendering new geometric shape + * constructed from two concentric circles using Xor operator. The shape is rendered + * using texture paint (fill). + * + * @param image + * image to which area is to be drawn + * @param graphics2d + * graphics canvas + * @return test result status - PASSED, FAILED or ERROR + */ + public TestResult testXorTextureFillUsingRGBTexture6(TestImage image, Graphics2D graphics2d) + { + // set stroke color + CommonRenderingStyles.setStrokeColor(graphics2d); + // set fill color + CommonRenderingStyles.setTextureFillUsingRGBTexture6(image, graphics2d); + // create area using Xor operator + Area area = CommonCAGOperations.createAreaFromTwoConcentricCirclesUsingXorOperator(image); + // draw the area + graphics2d.fill(area); + // test result + return TestResult.PASSED; + } + + /** * Entry point to the test suite. * * @param args not used in this case From aazores at redhat.com Mon Jul 21 14:07:03 2014 From: aazores at redhat.com (Andrew Azores) Date: Mon, 21 Jul 2014 10:07:03 -0400 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) Message-ID: <53CD1E87.5080102@redhat.com> Hi, This patch addresses the issues covered in [0]. I'm not so familiar with the C++ side and my C++ is much much rustier than my Java, so this patch may be shockingly rough for its size ;) [0] https://bugzilla.redhat.com/show_bug.cgi?id=1121549 Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: rh1121549-fixes.patch Type: text/x-patch Size: 2857 bytes Desc: not available URL: From aazores at redhat.com Mon Jul 21 14:51:57 2014 From: aazores at redhat.com (Andrew Azores) Date: Mon, 21 Jul 2014 10:51:57 -0400 Subject: [rfc][icedtea-web][policyeditor] "File - New" Message-ID: <53CD290D.4030703@redhat.com> Hi, This patch adds "File - New" functionality to PolicyEditor, so a new policy file can be created/edited properly. Previously the editor would either have to be relaunched, or the current file could be saved and then the contents changed for the new file and "Save As" used to put it in the correct location. This patch also makes the window title dynamic, so that it shows the currently open file's path (if any), and also an asterisk if any changes have been made in the editor since the file was opened or last saved. Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: policyeditor-file-new.patch Type: text/x-patch Size: 14183 bytes Desc: not available URL: From aazores at redhat.com Mon Jul 21 18:13:51 2014 From: aazores at redhat.com (Andrew Azores) Date: Mon, 21 Jul 2014 14:13:51 -0400 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <355576086.2312669.1404416283315.JavaMail.zimbra@redhat.com> References: <5384BC13.5010708@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53AC3661.4080107@redhat.com> <53B29B1A.10707@redhat.com> <53B410AA.9010803@redhat.com> <1868720576.1347648.1404315274305.JavaMail.zimbra@redhat.com> <355576086.2312669.1404416283315.JavaMail.zimbra@redhat.com> Message-ID: <53CD585F.6090507@redhat.com> On 07/03/2014 03:38 PM, Lukasz Dracz wrote: > Hello, > > I have taken off all the @KnownToFail annotations, added the Application-Library-Allowable-Codebase Attribute to the Manifests and ran the tests to ensure the dialogs do not appear. On ALLOW_UNSIGNED for security level all the tests pass and no prompts appear, however on ASK_UNSIGNED with the attribute added in the manifest the dialogs change from missing ALAC to matching ALAC dialogs which I believe is fine, and intended. I also removed from my reproducers the signed tests that I was going to implement before I found out Andrew Azores had already written them and accidently submitted them last time. > > Thank you, > Lukasz D Ping Thanks, -- Andrew A From bugzilla-daemon at icedtea.classpath.org Mon Jul 21 20:31:50 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 21 Jul 2014 20:31:50 +0000 Subject: [Bug 1879] New: Security Approval Panel hangs on Closing Browser Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1879 Bug ID: 1879 Summary: Security Approval Panel hangs on Closing Browser Product: IcedTea-Web Version: hg Hardware: x86_64 OS: Linux Status: NEW Severity: minor Priority: P5 Component: Plugin Assignee: dbhole at redhat.com Reporter: jkang at redhat.com CC: unassigned at icedtea.classpath.org Closing Firefox when the Security Approval Panel is active results in the panel remaining and Firefox remaining as a process in Sl+ state Steps to reproduce: 1. Run in terminal: firefox http://docs.oracle.com/javase/tutorial/deployment/applet/examples/dist/applet_ComponentArch_DynamicTreeDemo/AppletPage.html 2. Wait for Security Panel to pop-up 3. When panel appears, close firefox using the x button (usually top-right corner) 4. In another terminal you can run: ps aux | grep terminal The firefox process remains. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Tue Jul 22 09:22:11 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 22 Jul 2014 11:22:11 +0200 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53CD1E87.5080102@redhat.com> References: <53CD1E87.5080102@redhat.com> Message-ID: <53CE2D43.9010109@redhat.com> On 07/21/2014 04:07 PM, Andrew Azores wrote: > Hi, > > This patch addresses the issues covered in [0]. I'm not so familiar with the C++ side and my C++ is > much much rustier than my Java, so this patch may be shockingly rough for its size ;) not at all. Moreover good work! From globals cope I'm missing the fix for Defect type: CHECKED_RETURN 7. icedtea-web-1.5/plugin/icedteanp/IcedTeaParseProperties.cc:328:unchecked_value ? No check of the return value of "read_deploy_property_value(std::string("deployment.security.level", std::allocator()), a3)". 1. Defect type: RESOURCE_LEAK 10. icedtea-web-1.5/plugin/icedteanp/IcedTeaPluginUtils.cc:1154:leaked_handle ? Handle variable "plugin_file_log_fd" going out of scope leaks the handle. and family of 1. Defect type: CLANG_WARNING 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaScriptablePluginObject.cc:750:9:warning ? Dereference of undefined pointer value Expand 2. Defect type: CLANG_WARNING 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaScriptablePluginObject.cc:728:13:warning ? Value stored to 'java_result' is never read Expand 3. Defect type: CLANG_WARNING 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaNPPlugin.cc:377:12:warning ? Value stored to 'startup_error' during its initialization is never read Anyway they can be handled in another changest (I can run custom covescan for you once this is pushed to see) Some nits inline: > > [0] https://bugzilla.redhat.com/show_bug.cgi?id=1121549 > > Thanks, > > -- > Andrew A > > > rh1121549-fixes.patch > > > diff --git a/plugin/icedteanp/IcedTeaNPPlugin.cc b/plugin/icedteanp/IcedTeaNPPlugin.cc > --- a/plugin/icedteanp/IcedTeaNPPlugin.cc > +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc > @@ -375,6 +375,10 @@ ITNP_New (NPMIMEType pluginType, NPP ins > > // start the jvm if needed > NPError startup_error = start_jvm_if_needed(); > + if (startup_error != NPERR_NO_ERROR) { > + PLUGIN_ERROR ("Failed to start JVM\n"); > + return startup_error; > + } Cant this exit when it should not? > > // Initialize data->instance_id. > // > @@ -2027,7 +2031,7 @@ NP_Initialize (NPNetscapeFuncs* browserT > NPError np_error = initialize_data_directory(); > if (np_error != NPERR_NO_ERROR) > { > - PLUGIN_ERROR("Unable create data directory %s\n"); > + PLUGIN_ERROR("Unable to create data directory %s\n", data_directory.c_str()); > return np_error; > } can go in. > > diff --git a/plugin/icedteanp/IcedTeaParseProperties.cc b/plugin/icedteanp/IcedTeaParseProperties.cc > --- a/plugin/icedteanp/IcedTeaParseProperties.cc > +++ b/plugin/icedteanp/IcedTeaParseProperties.cc > @@ -133,10 +133,14 @@ string get_log_dir(){ > string r1= string(getenv ("XDG_CONFIG_HOME"))+"/icedtea-web"; > string r2 = r1+"/"+default_itw_log_dir_name; > if (!IcedTeaPluginUtilities::file_exists(r1)){ > - g_mkdir(r1.c_str(), 755); > + if (!g_mkdir(r1.c_str(), 755)) { > + PLUGIN_ERROR("Failed to create directory %s\n", r1.c_str()); > + } > } > if (!IcedTeaPluginUtilities::file_exists(r2)){ > - g_mkdir(r2.c_str(), 755); > + if (!g_mkdir(r2.c_str(), 755)) { > + PLUGIN_ERROR("Failed to create directory %s\n", r2.c_str()); > + } > } > return r2; > } > @@ -144,10 +148,14 @@ string get_log_dir(){ > string r1 = string(mypasswd->pw_dir)+"/.config/icedtea-web"; > string r2 = r1+"/"+default_itw_log_dir_name; > if (!IcedTeaPluginUtilities::file_exists(r1)){ > - g_mkdir(r1.c_str(), 755); > + if (!g_mkdir(r1.c_str(), 755)) { > + PLUGIN_ERROR("Failed to create directory %s\n", r1.c_str()); > + } > } > if (!IcedTeaPluginUtilities::file_exists(r2)){ > - g_mkdir(r2.c_str(), 755); > + if (!g_mkdir(r2.c_str(), 755)) { > + PLUGIN_ERROR("Failed to create directory %s\n", r2.c_str()); > + } > } > return r2; For those 4 mkdirs - if this directory already exists then the mkdir should not be called at all (maybe some check for its write ability?? moreover 100% for different changeset) Anyway. THis check is included. So I woud liek to add (!IcedTeaPluginUtilities::file_exists(r1){} if (!isWriteableDirectory(){"warning to user} As thsoe are called only when and it do not exists, then more serious warring with possible workarounds like check permissions on parents, set XDG_CONFIG* for first hunk and.. not sure what for second :) or similar and warning like ITW will not work., SHould be printed. > } > diff --git a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc > --- a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc > +++ b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc > @@ -704,7 +704,7 @@ IcedTeaScriptableJavaObject::setProperty > browser_functions.intfromidentifier(name_id) >= 0) // else if array and requesting index > { > > - JavaResultData* java_result = java_request.getArrayLength(instance_id); > + java_result = java_request.getArrayLength(instance_id); > if (java_result->error_occurred) > { > PLUGIN_ERROR("ERROR: Couldn't fetch array length\n"); > I have looked into code and have not found a reason for in-the-middle-decklaration. So this is really probably fix for hidden minor bug. J. From jvanek at redhat.com Tue Jul 22 09:30:47 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 22 Jul 2014 11:30:47 +0200 Subject: [bug][java-1.7.0-openjdk] Config property files missing in RPM In-Reply-To: <53C8AD69.6070201@gmx.de> References: <53C8AD69.6070201@gmx.de> Message-ID: <53CE2F47.9050908@redhat.com> On 07/18/2014 07:15 AM, Jacob Wisor wrote: > Hello! > > Recently, I have been forced to downgrade the latest version of the java-1.7.0-openjdk package. I > have noticed that some touched property files configuring the JRE are deleted when uninstalling or > downgrading. This is rather inconvenient for admins. > Following files should be included with the %config directive into the %files section of the RPM > spec file. > > jre/lib/calendars.properties > jre/lib/logging.properties > jre/lib/images/cursors/cursors.properties > jre/lib/content-types.properties > jre/lib/management/jmxremote.access > jre/lib/management/management.properties > jre/lib/flavormap.properties > jre/lib/net.properties > jre/lib/psfont.properties.ja > jre/lib/psfontj2d.properties > jre/lib/tz.properties > jre/lib/swing.properties > jre/lib/sound.properties > > The jre/lib/swing.properties file is a %ghost file. There may be other %ghost files which are Unluckily life is not as easy as config/ghost in this case;( > %config files too, so please check. > > It my be of use to let some of the files above link to their system wide counterparts in /etc/java. > > Jacob > Oh dear oh dear. If you look into spec file: http://pkgs.fedoraproject.org/cgit/java-1.7.0-openjdk.git/tree/java-1.7.0-openjdk.spec?h=f20#n961 You can see, that the java RPMS are copying those files during update. Lasttime I have teste dit, it was working fine both update and downgrade. But As you are mntioning also callendars and logging, then somethig have to go wrong. ANyway I should add above files tho the list of copied files Also I should add check for rpmnew/rpmsave files in cleanup. J. From ptisnovs at icedtea.classpath.org Tue Jul 22 09:52:58 2014 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 22 Jul 2014 09:52:58 +0000 Subject: /hg/gfx-test: Added proper links to JavaDoc (continuing). Message-ID: changeset 591abd34c460 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=591abd34c460 author: Pavel Tisnovsky date: Tue Jul 22 11:54:00 2014 +0200 Added proper links to JavaDoc (continuing). diffstat: ChangeLog | 5 ++ src/org/gfxtest/testsuites/BitBltBasicTests.java | 56 ++++++++++++------------ 2 files changed, 33 insertions(+), 28 deletions(-) diffs (267 lines): diff -r e16f2b0cc220 -r 591abd34c460 ChangeLog --- a/ChangeLog Mon Jul 21 12:16:53 2014 +0200 +++ b/ChangeLog Tue Jul 22 11:54:00 2014 +0200 @@ -1,3 +1,8 @@ +2014-07-22 Pavel Tisnovsky + + * src/org/gfxtest/testsuites/BitBltBasicTests.java: + Added proper links to JavaDoc (continuing). + 2014-07-21 Pavel Tisnovsky * src/org/gfxtest/testsuites/CAGOperationsOnTwoConcentricCircles.java: diff -r e16f2b0cc220 -r 591abd34c460 src/org/gfxtest/testsuites/BitBltBasicTests.java --- a/src/org/gfxtest/testsuites/BitBltBasicTests.java Mon Jul 21 12:16:53 2014 +0200 +++ b/src/org/gfxtest/testsuites/BitBltBasicTests.java Tue Jul 22 11:54:00 2014 +0200 @@ -2550,7 +2550,7 @@ } /** - * Test basic BitBlt operation for black and white dots pattern buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for black and white dots pattern buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2565,7 +2565,7 @@ } /** - * Test basic BitBlt operation for black and white dots pattern buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for black and white dots pattern buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2580,7 +2580,7 @@ } /** - * Test basic BitBlt operation for black and white dots pattern buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for black and white dots pattern buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2595,7 +2595,7 @@ } /** - * Test basic BitBlt operation for black and white dots pattern buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for black and white dots pattern buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -2610,7 +2610,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2625,7 +2625,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2640,7 +2640,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -2656,7 +2656,7 @@ /** * Test basic BitBlt operation for color dots pattern buffered image - * with type TYPE_BYTE_BINARY. + * with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2672,7 +2672,7 @@ /** * Test basic BitBlt operation for color dots pattern buffered image - * with type TYPE_BYTE_INDEXED. + * with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -2687,7 +2687,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2702,7 +2702,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2717,7 +2717,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2732,7 +2732,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2747,7 +2747,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -2762,7 +2762,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_USHORT_555_RGB. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_USHORT_555_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2777,7 +2777,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_USHORT_565_RGB. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_USHORT_565_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2792,7 +2792,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_USHORT_GRAY. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_USHORT_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2807,7 +2807,7 @@ } /** - * Test basic BitBlt operation for color dots pattern buffered image with type TYPE_CUSTOM. + * Test basic BitBlt operation for color dots pattern buffered image with type {@link BufferedImage#TYPE_CUSTOM}. * * @param image * image used as a destination for BitBlt-type operations @@ -2822,7 +2822,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_3BYTE_BGR. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_3BYTE_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2837,7 +2837,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_4BYTE_ABGR. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2852,7 +2852,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_4BYTE_ABGR_PRE. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_4BYTE_ABGR_PRE}. * * @param image * image used as a destination for BitBlt-type operations @@ -2868,7 +2868,7 @@ /** * Test basic BitBlt operation for horizontal grayscale gradient buffered image - * with type TYPE_BYTE_BINARY. + * with type {@link BufferedImage#TYPE_BYTE_BINARY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2883,7 +2883,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_BYTE_INDEXED. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_BYTE_INDEXED}. * * @param image * image used as a destination for BitBlt-type operations @@ -2898,7 +2898,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_BYTE_GRAY. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_BYTE_GRAY}. * * @param image * image used as a destination for BitBlt-type operations @@ -2913,7 +2913,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_INT_BGR. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_INT_BGR}. * * @param image * image used as a destination for BitBlt-type operations @@ -2928,7 +2928,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_INT_RGB. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_INT_RGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2943,7 +2943,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_INT_ARGB. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_INT_ARGB}. * * @param image * image used as a destination for BitBlt-type operations @@ -2958,7 +2958,7 @@ } /** - * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type TYPE_INT_ARGB_PRE. + * Test basic BitBlt operation for horizontal grayscale gradient buffered image with type {@link BufferedImage#TYPE_INT_ARGB_PRE}. * * @param image * image used as a destination for BitBlt-type operations From bugzilla-daemon at icedtea.classpath.org Tue Jul 22 12:44:55 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 22 Jul 2014 12:44:55 +0000 Subject: [Bug 1879] Security Approval Panel hangs on Closing Browser In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1879 Deepak Bhole changed: What |Removed |Added ---------------------------------------------------------------------------- Assignee|dbhole at redhat.com |ldracz at redhat.com -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From omajid at redhat.com Tue Jul 22 14:12:24 2014 From: omajid at redhat.com (Omair Majid) Date: Tue, 22 Jul 2014 10:12:24 -0400 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53CE2D43.9010109@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> Message-ID: <20140722141223.GA2801@redhat.com> Hi, * Jiri Vanek [2014-07-22 05:23]: > On 07/21/2014 04:07 PM, Andrew Azores wrote: > >This patch addresses the issues covered in [0]. I'm not so familiar with the C++ side and my C++ is > >much much rustier than my Java, so this patch may be shockingly rough for its size ;) Patch looks mostly okay to me. As Jiri says, though, it does not address all issues in the bug you linked. > 1. Defect type: RESOURCE_LEAK > 10. > icedtea-web-1.5/plugin/icedteanp/IcedTeaPluginUtils.cc:1154:leaked_handle ? > Handle variable "plugin_file_log_fd" going out of scope leaks the handle. Meh, I can live with this. This log file is opened on startup and used as long as the plugin process is live. So its lifetime is approximately the lifetime of the entire process. The OS will clean up everything when the process exits anyway. > 1. Defect type: CLANG_WARNING > 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaScriptablePluginObject.cc:750:9:warning > ? Dereference of undefined pointer value > 2. Defect type: CLANG_WARNING > 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaScriptablePluginObject.cc:728:13:warning > ? Value stored to 'java_result' is never read > 3. Defect type: CLANG_WARNING > 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaNPPlugin.cc:377:12:warning ? > Value stored to 'startup_error' during its initialization is never read >From what I can tell, these three should be addressed by the patch already. These are duplicates, I believe. > >diff --git a/plugin/icedteanp/IcedTeaParseProperties.cc b/plugin/icedteanp/IcedTeaParseProperties.cc > >--- a/plugin/icedteanp/IcedTeaParseProperties.cc > >+++ b/plugin/icedteanp/IcedTeaParseProperties.cc > >@@ -133,10 +133,14 @@ string get_log_dir(){ > > string r1= string(getenv ("XDG_CONFIG_HOME"))+"/icedtea-web"; > > string r2 = r1+"/"+default_itw_log_dir_name; > > if (!IcedTeaPluginUtilities::file_exists(r1)){ > >- g_mkdir(r1.c_str(), 755); > >+ if (!g_mkdir(r1.c_str(), 755)) { > >+ PLUGIN_ERROR("Failed to create directory %s\n", r1.c_str()); > >+ } > > } > > if (!IcedTeaPluginUtilities::file_exists(r2)){ > >- g_mkdir(r2.c_str(), 755); > >+ if (!g_mkdir(r2.c_str(), 755)) { > >+ PLUGIN_ERROR("Failed to create directory %s\n", r2.c_str()); > >+ } > > } > > return r2; PLUGIN_ERROR just logs errors, right? It seems like this code still returns the unusable path `r2` in case of an error. Maybe an invalid path should be indicated explicitly? > >@@ -144,10 +148,14 @@ string get_log_dir(){ > > string r1 = string(mypasswd->pw_dir)+"/.config/icedtea-web"; > > string r2 = r1+"/"+default_itw_log_dir_name; > > if (!IcedTeaPluginUtilities::file_exists(r1)){ > >- g_mkdir(r1.c_str(), 755); > >+ if (!g_mkdir(r1.c_str(), 755)) { > >+ PLUGIN_ERROR("Failed to create directory %s\n", r1.c_str()); > >+ } > > } > > if (!IcedTeaPluginUtilities::file_exists(r2)){ > >- g_mkdir(r2.c_str(), 755); > >+ if (!g_mkdir(r2.c_str(), 755)) { > >+ PLUGIN_ERROR("Failed to create directory %s\n", r2.c_str()); > >+ } > > } Same issue here. 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 Tue Jul 22 14:55:51 2014 From: omajid at redhat.com (Omair Majid) Date: Tue, 22 Jul 2014 10:55:51 -0400 Subject: [icedtea-web] RFC: Fix missing return value in non-void function Message-ID: <20140722145551.GB2801@redhat.com> Hi, I was pointed to this patch on IRC. It adds a missing return value to a non-void function in icedteanp code. It also fixes up indentation to be a bit more sane. It looks okay to me. Shall I go ahead and push? Thanks, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 -------------- next part -------------- diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2014-07-22 Fridrich Strba + + * plugin/icedteanp/IcedTeaPluginUtils.cc (flush_pre_init_messages): + Return NULL explicitly. + 2014-07-14 Andrew Azores PolicyEditor mnemonics and accelerators overhaul diff --git a/plugin/icedteanp/IcedTeaPluginUtils.cc b/plugin/icedteanp/IcedTeaPluginUtils.cc --- a/plugin/icedteanp/IcedTeaPluginUtils.cc +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc @@ -60,25 +60,25 @@ static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< PluginThreadCall* >(); void *flush_pre_init_messages(void* data) { -while (true){ - struct timespec ts; + while (true){ + struct timespec ts; ts.tv_sec = 1; ts.tv_nsec = 0; - nanosleep(&ts ,0); - if (jvm_up) { - while (!pre_jvm_message.empty()) { - pthread_mutex_lock(&debug_pipe_lock); - std::string message = pre_jvm_message.front(); - pre_jvm_message.pop(); - pthread_mutex_unlock(&debug_pipe_lock); - plugin_send_message_to_appletviewer_console(message.c_str()); - + nanosleep(&ts ,0); + if (jvm_up) { + while (!pre_jvm_message.empty()) { + pthread_mutex_lock(&debug_pipe_lock); + std::string message = pre_jvm_message.front(); + pre_jvm_message.pop(); + pthread_mutex_unlock(&debug_pipe_lock); + plugin_send_message_to_appletviewer_console(message.c_str()); + } + flush_plugin_send_message_to_appletviewer_console(); } - flush_plugin_send_message_to_appletviewer_console(); } - + return NULL; } -} + void push_pre_init_messages(char * ldm){ pthread_mutex_lock(&debug_pipe_lock); pre_jvm_message.push(std::string(ldm)); From jvanek at redhat.com Tue Jul 22 15:02:30 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 22 Jul 2014 17:02:30 +0200 Subject: [icedtea-web] RFC: Fix missing return value in non-void function In-Reply-To: <20140722145551.GB2801@redhat.com> References: <20140722145551.GB2801@redhat.com> Message-ID: <53CE7D06.7030601@redhat.com> On 07/22/2014 04:55 PM, Omair Majid wrote: > Hi, > > I was pointed to this patch on IRC. It adds a missing return value to a > non-void function in icedteanp code. It also fixes up indentation to be > a bit more sane. > > It looks okay to me. Shall I go ahead and push? > > Yes. Thank you. Also please backport to 1.5 unless you have strong objections. J. From aazores at redhat.com Tue Jul 22 15:09:24 2014 From: aazores at redhat.com (Andrew Azores) Date: Tue, 22 Jul 2014 11:09:24 -0400 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53CE2D43.9010109@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> Message-ID: <53CE7EA4.8080906@redhat.com> On 07/22/2014 05:22 AM, Jiri Vanek wrote: > On 07/21/2014 04:07 PM, Andrew Azores wrote: >> Hi, >> >> This patch addresses the issues covered in [0]. I'm not so familiar >> with the C++ side and my C++ is >> much much rustier than my Java, so this patch may be shockingly rough >> for its size ;) > > > not at all. Moreover good work! > > From globals cope I'm missing the fix for > > Defect type: CHECKED_RETURN > 7. > icedtea-web-1.5/plugin/icedteanp/IcedTeaParseProperties.cc:328:unchecked_value > ? No check of the return value of > "read_deploy_property_value(std::string("deployment.security.level", > std::allocator()), a3)". This one didn't seem like it really needed to be fixed, it's in "test_main" and the actual useful result is stored in 'a3' anyway. The return value is just a boolean if the read was successful. > > > 1. Defect type: RESOURCE_LEAK > 10. > icedtea-web-1.5/plugin/icedteanp/IcedTeaPluginUtils.cc:1154:leaked_handle > ? Handle variable "plugin_file_log_fd" going out of scope leaks the > handle. Does this one matter? I added a close() anyway but like Omair says it seems like it will be cleaned up anyway. But it's better to explicitly clean it I suppose. > > and family of > > 1. Defect type: CLANG_WARNING > 1. > icedtea-web-1.5/plugin/icedteanp/IcedTeaScriptablePluginObject.cc:750:9:warning > ? Dereference of undefined pointer value > Expand > 2. Defect type: CLANG_WARNING > 1. > icedtea-web-1.5/plugin/icedteanp/IcedTeaScriptablePluginObject.cc:728:13:warning > ? Value stored to 'java_result' is never read > Expand Those were just duplicates due to java_result being redeclared, so they're taken care of with that fix. > 3. Defect type: CLANG_WARNING > 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaNPPlugin.cc:377:12:warning > ? Value stored to 'startup_error' during its initialization is never read > > This one is addressed since now the startup_error may be returned (see below). > > Anyway they can be handled in another changest (I can run custom > covescan for you once this is pushed to see) > > Some nits inline: >> >> [0] https://bugzilla.redhat.com/show_bug.cgi?id=1121549 >> >> Thanks, >> >> -- >> Andrew A >> >> >> rh1121549-fixes.patch >> >> >> diff --git a/plugin/icedteanp/IcedTeaNPPlugin.cc >> b/plugin/icedteanp/IcedTeaNPPlugin.cc >> --- a/plugin/icedteanp/IcedTeaNPPlugin.cc >> +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc >> @@ -375,6 +375,10 @@ ITNP_New (NPMIMEType pluginType, NPP ins >> >> // start the jvm if needed >> NPError startup_error = start_jvm_if_needed(); >> + if (startup_error != NPERR_NO_ERROR) { >> + PLUGIN_ERROR ("Failed to start JVM\n"); >> + return startup_error; >> + } > > Cant this exit when it should not? Can it? Looking through start_jvm_if_needed, all the cases I've seen that return other than NPERR_NO_ERROR look like conditions where we would fail to start, but I could very well be wrong about that. >> >> // Initialize data->instance_id. >> // >> @@ -2027,7 +2031,7 @@ NP_Initialize (NPNetscapeFuncs* browserT >> NPError np_error = initialize_data_directory(); >> if (np_error != NPERR_NO_ERROR) >> { >> - PLUGIN_ERROR("Unable create data directory %s\n"); >> + PLUGIN_ERROR("Unable to create data directory %s\n", >> data_directory.c_str()); >> return np_error; >> } > > can go in. >> >> diff --git a/plugin/icedteanp/IcedTeaParseProperties.cc >> b/plugin/icedteanp/IcedTeaParseProperties.cc >> --- a/plugin/icedteanp/IcedTeaParseProperties.cc >> +++ b/plugin/icedteanp/IcedTeaParseProperties.cc >> @@ -133,10 +133,14 @@ string get_log_dir(){ >> string r1= string(getenv >> ("XDG_CONFIG_HOME"))+"/icedtea-web"; >> string r2 = r1+"/"+default_itw_log_dir_name; >> if (!IcedTeaPluginUtilities::file_exists(r1)){ >> - g_mkdir(r1.c_str(), 755); >> + if (!g_mkdir(r1.c_str(), 755)) { >> + PLUGIN_ERROR("Failed to create directory %s\n", >> r1.c_str()); >> + } >> } >> if (!IcedTeaPluginUtilities::file_exists(r2)){ >> - g_mkdir(r2.c_str(), 755); >> + if (!g_mkdir(r2.c_str(), 755)) { >> + PLUGIN_ERROR("Failed to create directory %s\n", >> r2.c_str()); >> + } >> } >> return r2; >> } >> @@ -144,10 +148,14 @@ string get_log_dir(){ >> string r1 = string(mypasswd->pw_dir)+"/.config/icedtea-web"; >> string r2 = r1+"/"+default_itw_log_dir_name; >> if (!IcedTeaPluginUtilities::file_exists(r1)){ >> - g_mkdir(r1.c_str(), 755); >> + if (!g_mkdir(r1.c_str(), 755)) { >> + PLUGIN_ERROR("Failed to create directory %s\n", >> r1.c_str()); >> + } >> } >> if (!IcedTeaPluginUtilities::file_exists(r2)){ >> - g_mkdir(r2.c_str(), 755); >> + if (!g_mkdir(r2.c_str(), 755)) { >> + PLUGIN_ERROR("Failed to create directory %s\n", >> r2.c_str()); >> + } >> } >> return r2; > > > For those 4 mkdirs - if this directory already exists then the mkdir > should not be called at all (maybe some check for its write ability?? > moreover 100% for different changeset) > Anyway. THis check is included. So I woud liek to add > (!IcedTeaPluginUtilities::file_exists(r1){} if > (!isWriteableDirectory(){"warning to user} > > As thsoe are called only when and it do not exists, then more serious > warring with possible workarounds like check permissions on parents, > set XDG_CONFIG* for first hunk and.. not sure what for second :) or > similar and warning like ITW will not work., SHould be printed. > So all of this in a separate changeset right? Can't most of this work be done just by checking errno after mkdir fails? > >> } >> diff --git a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >> b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >> --- a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >> +++ b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >> @@ -704,7 +704,7 @@ IcedTeaScriptableJavaObject::setProperty >> browser_functions.intfromidentifier(name_id) >= 0) // else if array >> and requesting index >> { >> >> - JavaResultData* java_result = >> java_request.getArrayLength(instance_id); >> + java_result = java_request.getArrayLength(instance_id); >> if (java_result->error_occurred) >> { >> PLUGIN_ERROR("ERROR: Couldn't fetch array length\n"); >> > > > I have looked into code and have not found a reason for > in-the-middle-decklaration. So this is really probably fix for hidden > minor bug. > > > J. Yea, I couldn't find a reason for it to. Seems like it was probably just an accident. Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: rh1121549-fixes-2.patch Type: text/x-patch Size: 3789 bytes Desc: not available URL: From aazores at redhat.com Tue Jul 22 15:12:27 2014 From: aazores at redhat.com (Andrew Azores) Date: Tue, 22 Jul 2014 11:12:27 -0400 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <20140722141223.GA2801@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <20140722141223.GA2801@redhat.com> Message-ID: <53CE7F5B.2010704@redhat.com> On 07/22/2014 10:12 AM, Omair Majid wrote: > Hi, > > * Jiri Vanek [2014-07-22 05:23]: >> On 07/21/2014 04:07 PM, Andrew Azores wrote: >>> This patch addresses the issues covered in [0]. I'm not so familiar with the C++ side and my C++ is >>> much much rustier than my Java, so this patch may be shockingly rough for its size ;) > Patch looks mostly okay to me. As Jiri says, though, it does not address > all issues in the bug you linked. > >> 1. Defect type: RESOURCE_LEAK >> 10. >> icedtea-web-1.5/plugin/icedteanp/IcedTeaPluginUtils.cc:1154:leaked_handle ? >> Handle variable "plugin_file_log_fd" going out of scope leaks the handle. > Meh, I can live with this. This log file is opened on startup and used as > long as the plugin process is live. So its lifetime is approximately > the lifetime of the entire process. The OS will clean up everything when > the process exits anyway. > >> 1. Defect type: CLANG_WARNING >> 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaScriptablePluginObject.cc:750:9:warning >> ? Dereference of undefined pointer value >> 2. Defect type: CLANG_WARNING >> 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaScriptablePluginObject.cc:728:13:warning >> ? Value stored to 'java_result' is never read >> 3. Defect type: CLANG_WARNING >> 1. icedtea-web-1.5/plugin/icedteanp/IcedTeaNPPlugin.cc:377:12:warning ? >> Value stored to 'startup_error' during its initialization is never read > From what I can tell, these three should be addressed by the patch > already. These are duplicates, I believe. > >>> diff --git a/plugin/icedteanp/IcedTeaParseProperties.cc b/plugin/icedteanp/IcedTeaParseProperties.cc >>> --- a/plugin/icedteanp/IcedTeaParseProperties.cc >>> +++ b/plugin/icedteanp/IcedTeaParseProperties.cc >>> @@ -133,10 +133,14 @@ string get_log_dir(){ >>> string r1= string(getenv ("XDG_CONFIG_HOME"))+"/icedtea-web"; >>> string r2 = r1+"/"+default_itw_log_dir_name; >>> if (!IcedTeaPluginUtilities::file_exists(r1)){ >>> - g_mkdir(r1.c_str(), 755); >>> + if (!g_mkdir(r1.c_str(), 755)) { >>> + PLUGIN_ERROR("Failed to create directory %s\n", r1.c_str()); >>> + } >>> } >>> if (!IcedTeaPluginUtilities::file_exists(r2)){ >>> - g_mkdir(r2.c_str(), 755); >>> + if (!g_mkdir(r2.c_str(), 755)) { >>> + PLUGIN_ERROR("Failed to create directory %s\n", r2.c_str()); >>> + } >>> } >>> return r2; > PLUGIN_ERROR just logs errors, right? It seems like this code still > returns the unusable path `r2` in case of an error. Maybe an invalid > path should be indicated explicitly? > >>> @@ -144,10 +148,14 @@ string get_log_dir(){ >>> string r1 = string(mypasswd->pw_dir)+"/.config/icedtea-web"; >>> string r2 = r1+"/"+default_itw_log_dir_name; >>> if (!IcedTeaPluginUtilities::file_exists(r1)){ >>> - g_mkdir(r1.c_str(), 755); >>> + if (!g_mkdir(r1.c_str(), 755)) { >>> + PLUGIN_ERROR("Failed to create directory %s\n", r1.c_str()); >>> + } >>> } >>> if (!IcedTeaPluginUtilities::file_exists(r2)){ >>> - g_mkdir(r2.c_str(), 755); >>> + if (!g_mkdir(r2.c_str(), 755)) { >>> + PLUGIN_ERROR("Failed to create directory %s\n", r2.c_str()); >>> + } >>> } > Same issue here. > > Thanks, > Omair > I think really this method and its call site(s) just needs a bunch of refactoring. It's called "get_log_dir" so simply returning the location of the log directory makes sense, but why should it even be trying to create it? Maybe that belongs somewhere else eg the call site(s)? And either way this should probably be split into more than one method to reduce the duplicate code. Thanks, -- Andrew A From omajid at icedtea.classpath.org Tue Jul 22 15:27:30 2014 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 22 Jul 2014 15:27:30 +0000 Subject: /hg/icedtea-web: Fix missing return value in non-void function Message-ID: changeset 65fef87606cd in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=65fef87606cd author: Fridrich Strba date: Tue Jul 22 11:20:03 2014 -0400 Fix missing return value in non-void function 2014-07-22 Fridrich Strba * plugin/icedteanp/IcedTeaPluginUtils.cc (flush_pre_init_messages): Return NULL explicitly. diffstat: ChangeLog | 5 +++++ plugin/icedteanp/IcedTeaPluginUtils.cc | 28 ++++++++++++++-------------- 2 files changed, 19 insertions(+), 14 deletions(-) diffs (55 lines): diff -r a2d1b4b606bf -r 65fef87606cd ChangeLog --- a/ChangeLog Mon Jul 14 10:06:27 2014 -0400 +++ b/ChangeLog Tue Jul 22 11:20:03 2014 -0400 @@ -1,3 +1,8 @@ +2014-07-22 Fridrich Strba + + * plugin/icedteanp/IcedTeaPluginUtils.cc (flush_pre_init_messages): + Return NULL explicitly. + 2014-07-14 Andrew Azores PolicyEditor mnemonics and accelerators overhaul diff -r a2d1b4b606bf -r 65fef87606cd plugin/icedteanp/IcedTeaPluginUtils.cc --- a/plugin/icedteanp/IcedTeaPluginUtils.cc Mon Jul 14 10:06:27 2014 -0400 +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc Tue Jul 22 11:20:03 2014 -0400 @@ -60,25 +60,25 @@ static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< PluginThreadCall* >(); void *flush_pre_init_messages(void* data) { -while (true){ - struct timespec ts; + while (true){ + struct timespec ts; ts.tv_sec = 1; ts.tv_nsec = 0; - nanosleep(&ts ,0); - if (jvm_up) { - while (!pre_jvm_message.empty()) { - pthread_mutex_lock(&debug_pipe_lock); - std::string message = pre_jvm_message.front(); - pre_jvm_message.pop(); - pthread_mutex_unlock(&debug_pipe_lock); - plugin_send_message_to_appletviewer_console(message.c_str()); - + nanosleep(&ts ,0); + if (jvm_up) { + while (!pre_jvm_message.empty()) { + pthread_mutex_lock(&debug_pipe_lock); + std::string message = pre_jvm_message.front(); + pre_jvm_message.pop(); + pthread_mutex_unlock(&debug_pipe_lock); + plugin_send_message_to_appletviewer_console(message.c_str()); + } + flush_plugin_send_message_to_appletviewer_console(); } - flush_plugin_send_message_to_appletviewer_console(); } - + return NULL; } -} + void push_pre_init_messages(char * ldm){ pthread_mutex_lock(&debug_pipe_lock); pre_jvm_message.push(std::string(ldm)); From omajid at icedtea.classpath.org Tue Jul 22 15:49:31 2014 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Tue, 22 Jul 2014 15:49:31 +0000 Subject: /hg/release/icedtea-web-1.5: Fix missing return value in non-voi... Message-ID: changeset bfa9387111aa in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=bfa9387111aa author: Fridrich Strba date: Tue Jul 22 11:44:53 2014 -0400 Fix missing return value in non-void function 2014-07-22 Fridrich Strba * plugin/icedteanp/IcedTeaPluginUtils.cc (flush_pre_init_messages): Return NULL explicitly. diffstat: ChangeLog | 5 +++++ plugin/icedteanp/IcedTeaPluginUtils.cc | 28 ++++++++++++++-------------- 2 files changed, 19 insertions(+), 14 deletions(-) diffs (55 lines): diff -r 6f92839c15df -r bfa9387111aa ChangeLog --- a/ChangeLog Thu Jul 03 16:40:55 2014 +0200 +++ b/ChangeLog Tue Jul 22 11:44:53 2014 -0400 @@ -1,3 +1,8 @@ +2014-07-22 Fridrich Strba + + * plugin/icedteanp/IcedTeaPluginUtils.cc (flush_pre_init_messages): + Return NULL explicitly. + 2014-07-03 Jiri Vanek * tests/netx/unit/net/sourceforge/jnlp/resources/MessagesPropertiesTest.java diff -r 6f92839c15df -r bfa9387111aa plugin/icedteanp/IcedTeaPluginUtils.cc --- a/plugin/icedteanp/IcedTeaPluginUtils.cc Thu Jul 03 16:40:55 2014 +0200 +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc Tue Jul 22 11:44:53 2014 -0400 @@ -60,25 +60,25 @@ static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< PluginThreadCall* >(); void *flush_pre_init_messages(void* data) { -while (true){ - struct timespec ts; + while (true){ + struct timespec ts; ts.tv_sec = 1; ts.tv_nsec = 0; - nanosleep(&ts ,0); - if (jvm_up) { - while (!pre_jvm_message.empty()) { - pthread_mutex_lock(&debug_pipe_lock); - std::string message = pre_jvm_message.front(); - pre_jvm_message.pop(); - pthread_mutex_unlock(&debug_pipe_lock); - plugin_send_message_to_appletviewer_console(message.c_str()); - + nanosleep(&ts ,0); + if (jvm_up) { + while (!pre_jvm_message.empty()) { + pthread_mutex_lock(&debug_pipe_lock); + std::string message = pre_jvm_message.front(); + pre_jvm_message.pop(); + pthread_mutex_unlock(&debug_pipe_lock); + plugin_send_message_to_appletviewer_console(message.c_str()); + } + flush_plugin_send_message_to_appletviewer_console(); } - flush_plugin_send_message_to_appletviewer_console(); } - + return NULL; } -} + void push_pre_init_messages(char * ldm){ pthread_mutex_lock(&debug_pipe_lock); pre_jvm_message.push(std::string(ldm)); From bugzilla-daemon at icedtea.classpath.org Tue Jul 22 17:35:12 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 22 Jul 2014 17:35:12 +0000 Subject: [Bug 1743] Intermittant deadlock in PluginRequestProcessor In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1743 Andrew Azores 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: From andrew at icedtea.classpath.org Wed Jul 23 02:21:52 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 23 Jul 2014 02:21:52 +0000 Subject: /hg/release/icedtea7-2.4: 5 new changesets Message-ID: changeset cacc6f6b51c0 in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=cacc6f6b51c0 author: Andrew John Hughes date: Tue Jul 22 20:53:01 2014 +0100 Update to 2.4.8 final. PR1781: NSS PKCS11 provider fails to handle multipart AES encryption RH905128: [CRASH] OpenJDK-1.7.0 while using NSS security provider and kerberos S8029755, CVE-2014-4209: Enhance subject class S8030763: Validate global memory allocation S8031340, CVE-2014-4264: Better TLS/EC management S8031346, CVE-2014-4244: Enhance RSA key handling S8031540: Introduce document horizon S8032536: JVM resolves wrong method in some unusual cases S8033055: Issues in 2d S8033301, CVE-2014-4266: Build more informative InfoBuilder S8034267: Probabilistic native crash S8034272: Do not cram data into CRAM arrays S8034985, CVE-2014-2483: Better form for Lambda Forms S8035004, CVE-2014-4252: Provider provides less service S8035009, CVE-2014-4218: Make Proxy representations consistent S8035119, CVE-2014-4219: Fix exceptions to bytecode verification S8035699, CVE-2014-4268: File choosers should be choosier S8035788. CVE-2014-4221: Provide more consistency for lookups S8035793, CVE-2014-4223: Maximum arity maxed out S8036571: (process) Process process arguments carefully S8036800: Attribute OOM to correct part of code S8037046: Validate libraries to be loaded S8037076, CVE-2014-2490: Check constant pool constants S8037157: Verify call S8037162, CVE-2014-4263: More robust DH exchanges S8037167, CVE-2014-4216: Better method signature resolution S8039520, CVE-2014-4262: More atomicity of atomic updates S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException S8013611: Modal dialog fails to obtain keyboard focus S8013809: deadlock in SSLSocketImpl between between write and close S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale S8019990: IM candidate window appears on the South-East corner of the display. S8023990: Regression: postscript size increase from 6u18 S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently S8028285: RMI Thread can no longer call out to AWT S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package S8033278: Missed access checks for Lookup.unreflect* after 8032585 S8035613: With active Securitymanager JAXBContext.newInstance fails S8036786: Update jdk7 testlibrary to match jdk8 S8037012: (tz) Support tzdata2014a S8038306: (tz) Support tzdata2014b S8038392: Generating prelink cache breaks JAVA 'jinfo' utility normal behavior S8042264: 7u65 l10n resource file translation update 1 S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 S8042590: Running form URL throws NPE S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader S8043012: (tz) Support tzdata2014c 2014-07-22 Andrew John Hughes * Makefile.am: (CORBA_CHANGESET): Update to icedtea-2.4.8 tag. (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. * NEWS: Updated. * configure.ac: Bump to 2.4.8. * hotspot.map: Update to icedtea-2.4.8 tag. * patches/boot/ecj-diamond.patch: Regenerated. changeset 2278e3fd9584 in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=2278e3fd9584 author: Andrew John Hughes date: Wed Jul 23 01:22:44 2014 +0100 PR1833, RH1022017: Report elliptic curves supported by NSS, not the SunEC library 2014-06-10 Andrew John Hughes PR1833, RH1022017: Report elliptic curves supported by NSS, not the SunEC library * Makefile.am: (ICEDTEA_PATCHES): Add new patch when PKCS11+NSS is enabled, so that the NSS set of curves are announced via SSL. * NEWS: Updated. * patches/rh1022017.patch: Reduce number of curves announced over SSL to just those supported by NSS. changeset 834085a998a4 in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=834085a998a4 author: Andrew John Hughes date: Wed Jul 23 01:23:41 2014 +0100 Re-enable systemtap_gc patch. 2014-07-22 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Re-enable systemtap_gc patch. changeset 0d2bd9082dff in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=0d2bd9082dff author: Andrew John Hughes date: Wed Jul 23 01:29:38 2014 +0100 PR1830: Drop version requirement for LCMS 2 2014-06-10 Andrew John Hughes PR1830: Drop version requirement for LCMS 2 * INSTALL: Document lcms2 requirement. * NEWS: Updated. * acinclude.m4: (IT_CHECK_FOR_LCMS): Drop 2.5 requirement. changeset bbcd7fc7d5c3 in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=bbcd7fc7d5c3 author: Andrew John Hughes date: Wed Jul 23 03:20:14 2014 +0100 Bump aarch64 port to latest tip and add security patches. AArch64 C2 instruct for smull Add a constructor as a conversion from Register - RegSet. Use it. Add RegSet::operator+=. Add support for a few simple intrinsics Add support for builtin crc32 instructions Add support for CRC32 intrinsic Add support for Neon implementation of CRC32 All address constants are 48 bits in size. C1: Fix offset overflow when profiling. Common frame handling for C1/C2 which correctly handle all frame sizes Correct costs for operations with shifts. Correct OptoAssembly for prologs and epilogs. Delete useless instruction. Don't use any form of _call_VM_leaf when we're calling a stub. Fast string comparison Fast String.equals() Fix a tonne of bogus comments. Fix biased locking and enable as default Fix instruction size from 8 to 4 Fix opto assembly for shifts. Fix register misuse in verify_method_data_pointer Fix register usage in generate_verify_oop(). Implement various locked memory operations. Improve C1 performance improvements in ic_cache checks Improve code generation for pop(), as suggested by Edward Nevill. Improvements to safepoint polling Make code entry alignment 64 for C2 Minor optimisation for divide by 2 New cost model for instruction selection. Offsets in lookupswitch instructions should be signed. Optimise addressing of card table byte map base Optimise C2 entry point verification Optimise long divide by 2 Performance improvement and ease of use changes pulled from upstream Preserve callee save FP registers around call to java code Remove obsolete C1 patching code. Remove special-case handling of division arguments. AArch64 doesn't need it. Remove unnecessary memory barriers around CAS operations Restore sp from sender sp, r13 in crc32 code Restrict default ReservedCodeCacheSize to 128M Rewrite CAS operations to be more conservative Save intermediate state before removing C1 patching code. Tidy up register usage in push/pop instructions. Tidy up stack frame handling. Use 2- and 3-instruction immediate form of movoop and mov_metadata in C2-generated code. Use an explicit set of registers rather than a bitmap for psh and pop operations. Use explicit barrier instructions in C1. Use gcc __clear_cache instead of doing it ourselves 2014-07-16 Andrew John Hughes * patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch, * patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch: Removed, as applied upstream. * Makefile.am: (ICEDTEA_PATCHES): Updated. * NEWS: Likewise. * hotspot.map: Bump aarch64 port to latest tip. * patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch, * patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch, * patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch, * patches/hotspot/aarch64/20140715-8036800-attribute_oom_to_right_code.patch, * patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch, * patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch, * patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch, * patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch: July 2014 security patches for AArch64 HotSpot. diffstat: ChangeLog | 65 + INSTALL | 1 + Makefile.am | 41 +- NEWS | 104 + acinclude.m4 | 4 +- configure.ac | 2 +- hotspot.map | 4 +- patches/boot/ecj-diamond.patch | 1143 ++++----- patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch | 22 - patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch | 32 - patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch | 233 ++ patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch | 77 + patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch | 119 + patches/hotspot/aarch64/20140715-8036800-attribute_oom_to_right_code.patch | 40 + patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch | 37 + patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch | 25 + patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch | 67 + patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch | 48 + patches/rh1022017.patch | 44 + 19 files changed, 1453 insertions(+), 655 deletions(-) diffs (truncated from 4173 to 500 lines): diff -r cfa8ae50fd2d -r bbcd7fc7d5c3 ChangeLog --- a/ChangeLog Thu Apr 17 17:23:20 2014 +0100 +++ b/ChangeLog Wed Jul 23 03:20:14 2014 +0100 @@ -1,3 +1,68 @@ +2014-07-16 Andrew John Hughes + + * patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch, + * patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch: + Removed, as applied upstream. + * Makefile.am: + (ICEDTEA_PATCHES): Updated. + * NEWS: Likewise. + * hotspot.map: Bump aarch64 port to latest tip. + * patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch, + * patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch, + * patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch, + * patches/hotspot/aarch64/20140715-8036800-attribute_oom_to_right_code.patch, + * patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch, + * patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch, + * patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch, + * patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch: + July 2014 security patches for AArch64 HotSpot. + +2014-06-10 Andrew John Hughes + + PR1830: Drop version requirement for LCMS 2 + * INSTALL: Document lcms2 requirement. + * NEWS: Updated. + * acinclude.m4: + (IT_CHECK_FOR_LCMS): Drop 2.5 requirement. + +2014-07-22 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Re-enable systemtap_gc patch. + +2014-06-10 Andrew John Hughes + + PR1833, RH1022017: Report elliptic curves + supported by NSS, not the SunEC library + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch when + PKCS11+NSS is enabled, so that the NSS set + of curves are announced via SSL. + * NEWS: Updated. + * patches/rh1022017.patch: + Reduce number of curves announced over SSL + to just those supported by NSS. + +2014-07-22 Andrew John Hughes + + * Makefile.am: + (CORBA_CHANGESET): Update to icedtea-2.4.8 tag. + (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. + * NEWS: Updated. + * configure.ac: Bump to 2.4.8. + * hotspot.map: Update to icedtea-2.4.8 tag. + * patches/boot/ecj-diamond.patch: Regenerated. + 2014-04-17 Andrew John Hughes * configure.ac: Bump to 2.4.8pre01. diff -r cfa8ae50fd2d -r bbcd7fc7d5c3 INSTALL --- a/INSTALL Thu Apr 17 17:23:20 2014 +0100 +++ b/INSTALL Wed Jul 23 03:20:14 2014 +0100 @@ -30,6 +30,7 @@ libpng-devel libjpeg-devel >= 6b zlib-devel +lcms2-devel (for --enable-system-lcms) rhino (can be disabled using --without-rhino) libffi (for --enable-zero or on archs other than x86/x86_64/sparc) pulseaudio-libs-devel >= 0.9.11 (for --enable-pulse-java) diff -r cfa8ae50fd2d -r bbcd7fc7d5c3 Makefile.am --- a/Makefile.am Thu Apr 17 17:23:20 2014 +0100 +++ b/Makefile.am Wed Jul 23 03:20:14 2014 +0100 @@ -4,19 +4,19 @@ BUILD_VERSION = b14 COMBINED_VERSION = $(JDK_UPDATE_VERSION)-$(BUILD_VERSION) -CORBA_CHANGESET = 179bc370340d -JAXP_CHANGESET = 481d5d80aada -JAXWS_CHANGESET = 2cc5b85692ba -JDK_CHANGESET = 344829ae761e -LANGTOOLS_CHANGESET = 200ea1a5797e -OPENJDK_CHANGESET = f0fab6df83bb +CORBA_CHANGESET = 58b31c5bf14e +JAXP_CHANGESET = 95d394340fda +JAXWS_CHANGESET = bce4362b2996 +JDK_CHANGESET = 22d79652f370 +LANGTOOLS_CHANGESET = 43cdaf529543 +OPENJDK_CHANGESET = 2b38d8f0e43f -CORBA_SHA256SUM = a33c40fcf5476c72ec4538d3d940eef4e7cfc64683bf25a64a7d331e2d894519 -JAXP_SHA256SUM = ff826a59c8cc53e373b2e6efe41a1949daf1395db5ed3a30e1e115a2d0585b2c -JAXWS_SHA256SUM = 44d90a5a7e4457119b216a07642da39c03d8b2e2828114a8cdfd8929d7eb24bc -JDK_SHA256SUM = 4b8e215495fd57385598ea7b03af6290e19d5a3ed42b03a29b53b666f31bd9bb -LANGTOOLS_SHA256SUM = 9baba9050787585556eed19f24852b69a1ef6dbe211fcb7952b104e0835e789d -OPENJDK_SHA256SUM = 555276d65d155e4182e4e35bd3ec173d198205143dcc5a0640e4fb74d0137f99 +CORBA_SHA256SUM = d42baf4a2d8529e0c7bafd9e0cce4a8f7463e06f4ab0736fb2c97411a5933560 +JAXP_SHA256SUM = 5b52e6c45bcf439d77e207f188c55a0b906c7d10078551bb606d278822dbdc5d +JAXWS_SHA256SUM = f612dbff32c60afff28d4d75b90246b355b13521020bdb6ea2020c78d08cefba +JDK_SHA256SUM = 6659f1b95120f88eec03beaabc7fe2df409522902b7a64689cfb82a959510e49 +LANGTOOLS_SHA256SUM = 3f69ad8add8036854cf5846689410b99a44b2dbd0d2e625316bdd895c3e7f853 +OPENJDK_SHA256SUM = 0911ac258e606dbe20206d5e0d37e997b804f90e8269762242d333b07e7932b4 CACAO_VERSION = e215e36be9fc CACAO_SHA256SUM = 4966514c72ee7ed108b882d9b6e65c3adf8a8f9c2dccb029f971b3c8cb4870ab @@ -289,18 +289,25 @@ endif if ENABLE_SYSTEMTAP -#ICEDTEA_PATCHES += \ -# patches/hotspot/$(HSBUILD)/systemtap_gc.patch +ICEDTEA_PATCHES += \ + patches/hotspot/$(HSBUILD)/systemtap_gc.patch endif if ENABLE_NSS -ICEDTEA_PATCHES += patches/nss-config.patch +ICEDTEA_PATCHES += patches/nss-config.patch \ + patches/rh1022017.patch endif if WITH_ALT_HSBUILD ICEDTEA_PATCHES += patches/hotspot/aarch64/werror.patch \ - patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch \ - patches/hotspot/aarch64/20140415-8034926-attribute_classes_properly.patch + patches/hotspot/aarch64/20140715-8030763-validate_global_memory_allocation.patch \ + patches/hotspot/aarch64/20140715-8032536-jvm_resolves_wrong_method.patch \ + patches/hotspot/aarch64/20140715-8036800-attribute_oom_to_right_code.patch \ + patches/hotspot/aarch64/20140715-8035119-fix_exceptions_to_bytecode_verification.patch \ + patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch \ + patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch \ + patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch \ + patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch endif ICEDTEA_PATCHES += $(DISTRIBUTION_PATCHES) diff -r cfa8ae50fd2d -r bbcd7fc7d5c3 NEWS --- a/NEWS Thu Apr 17 17:23:20 2014 +0100 +++ b/NEWS Wed Jul 23 03:20:14 2014 +0100 @@ -14,34 +14,138 @@ New in release 2.4.8 (2014-07-XX): +* Security fixes + - S8029755, CVE-2014-4209: Enhance subject class + - S8030763: Validate global memory allocation + - S8031340, CVE-2014-4264: Better TLS/EC management + - S8031346, CVE-2014-4244: Enhance RSA key handling + - S8031540: Introduce document horizon + - S8032536: JVM resolves wrong method in some unusual cases + - S8033055: Issues in 2d + - S8033301, CVE-2014-4266: Build more informative InfoBuilder + - S8034267: Probabilistic native crash + - S8034272: Do not cram data into CRAM arrays + - S8034985, CVE-2014-2483: Better form for Lambda Forms + - S8035004, CVE-2014-4252: Provider provides less service + - S8035009, CVE-2014-4218: Make Proxy representations consistent + - S8035119, CVE-2014-4219: Fix exceptions to bytecode verification + - S8035699, CVE-2014-4268: File choosers should be choosier + - S8035788. CVE-2014-4221: Provide more consistency for lookups + - S8035793, CVE-2014-4223: Maximum arity maxed out + - S8036571: (process) Process process arguments carefully + - S8036800: Attribute OOM to correct part of code + - S8037046: Validate libraries to be loaded + - S8037076, CVE-2014-2490: Check constant pool constants + - S8037157: Verify call + - S8037162, CVE-2014-4263: More robust DH exchanges + - S8037167, CVE-2014-4216: Better method signature resolution + - S8039520, CVE-2014-4262: More atomicity of atomic updates * Backports - S5049299: (process) Use posix_spawn, not fork, on S10 to avoid swap exhaustion - S6571600: JNI use results in UnsatisfiedLinkError looking for libmawt.so - S7131153: GetDC called way too many times - causes bad performance. - S7190349: [macosx] Text (Label) is incorrectly drawn with a rotated g2d + - S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException + - S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException - S8008118: (process) Possible null pointer dereference in jdk/src/solaris/native/java/lang/UNIXProcess_md.c + - S8013611: Modal dialog fails to obtain keyboard focus + - S8013809: deadlock in SSLSocketImpl between between write and close + - S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale - S8014460: Need to check for non-empty EXT_LIBS_PATH before using it - S8019853: Break logging and AWT circular dependency + - S8019990: IM candidate window appears on the South-East corner of the display. - S8020191: System.getProperty("os.name") returns "Windows NT (unknown)" on Windows 8.1 - S8022452: Hotspot needs to know about Windows 8.1 and Windows Server 2012 R2 + - S8023990: Regression: postscript size increase from 6u18 + - S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError + - S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping - S8024830: SEGV in org.apache.lucene.codecs.compressing.CompressingTermVectorsReader.get - S8025588: [macosx] Frozen AppKit thread in 7u40 - S8026404: Logging in Applet can trigger ACE: access denied ("java.lang.RuntimePermission" "modifyThreadGroup") - S8026705: [TEST_BUG] java/beans/Introspector/TestTypeResolver.java failed - S8027196: Increment minor version of HSx for 7u55 and initialize the build number + - S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently + - S8028285: RMI Thread can no longer call out to AWT + - S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending - S8030655: Regression: 14_01 Security fix 8024306 causes test failures - S8030813: Signed applet fails to load when CRLs are stored in an LDAP directory - S8030822: (tz) Support tzdata2013i - S8031050: (thread) Change Thread initialization so that thread name is set before invoking SecurityManager + - S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component - S8031462: Fonts with morx tables are broken with latest ICU fixes + - S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package - S8032740: Need to create SE Embedded Source Bundles in 7 Release + - S8033278: Missed access checks for Lookup.unreflect* after 8032585 - S8034772: JDK-8028795 brought a specification change to 7u55 release and caused JCK7 signature test failure - S8035283: Second phase of branch shortening doesn't account for loop alignment + - S8035613: With active Securitymanager JAXBContext.newInstance fails - S8035618: Four api/org_omg/CORBA TCK tests fail under plugin only - S8036147: Increment hsx 24.55 build to b02 for 7u55-b11 + - S8036786: Update jdk7 testlibrary to match jdk8 - S8036837: Increment hsx 24.55 build to b03 for 7u55-b12 + - S8037012: (tz) Support tzdata2014a + - S8038306: (tz) Support tzdata2014b + - S8038392: Generating prelink cache breaks JAVA 'jinfo' utility normal behavior + - S8042264: 7u65 l10n resource file translation update 1 + - S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 + - S8042590: Running form URL throws NPE + - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader + - S8043012: (tz) Support tzdata2014c * Bug fixes - Fix accidental reversion of PR1188 for armel + - PR1781: NSS PKCS11 provider fails to handle multipart AES encryption + - PR1830: Drop version requirement for LCMS 2 + - PR1833, RH1022017: Report elliptic curves supported by NSS, not the SunEC library + - RH905128: [CRASH] OpenJDK-1.7.0 while using NSS security provider and kerberos +* AArch64 port + - AArch64 C2 instruct for smull + - Add a constructor as a conversion from Register - RegSet. Use it. + - Add RegSet::operator+=. + - Add support for a few simple intrinsics + - Add support for builtin crc32 instructions + - Add support for CRC32 intrinsic + - Add support for Neon implementation of CRC32 + - All address constants are 48 bits in size. + - C1: Fix offset overflow when profiling. + - Common frame handling for C1/C2 which correctly handle all frame sizes + - Correct costs for operations with shifts. + - Correct OptoAssembly for prologs and epilogs. + - Delete useless instruction. + - Don't use any form of _call_VM_leaf when we're calling a stub. + - Fast string comparison + - Fast String.equals() + - Fix a tonne of bogus comments. + - Fix biased locking and enable as default + - Fix instruction size from 8 to 4 + - Fix opto assembly for shifts. + - Fix register misuse in verify_method_data_pointer + - Fix register usage in generate_verify_oop(). + - Implement various locked memory operations. + - Improve C1 performance improvements in ic_cache checks + - Improve code generation for pop(), as suggested by Edward Nevill. + - Improvements to safepoint polling + - Make code entry alignment 64 for C2 + - Minor optimisation for divide by 2 + - New cost model for instruction selection. + - Offsets in lookupswitch instructions should be signed. + - Optimise addressing of card table byte map base + - Optimise C2 entry point verification + - Optimise long divide by 2 + - Performance improvement and ease of use changes pulled from upstream + - Preserve callee save FP registers around call to java code + - Remove obsolete C1 patching code. + - Remove special-case handling of division arguments. AArch64 doesn't need it. + - Remove unnecessary memory barriers around CAS operations + - Restore sp from sender sp, r13 in crc32 code + - Restrict default ReservedCodeCacheSize to 128M + - Rewrite CAS operations to be more conservative + - Save intermediate state before removing C1 patching code. + - Tidy up register usage in push/pop instructions. + - Tidy up stack frame handling. + - Use 2- and 3-instruction immediate form of movoop and mov_metadata in C2-generated code. + - Use an explicit set of registers rather than a bitmap for psh and pop operations. + - Use explicit barrier instructions in C1. + - Use gcc __clear_cache instead of doing it ourselves New in release 2.4.7 (2014-04-15): diff -r cfa8ae50fd2d -r bbcd7fc7d5c3 acinclude.m4 --- a/acinclude.m4 Thu Apr 17 17:23:20 2014 +0100 +++ b/acinclude.m4 Wed Jul 23 03:20:14 2014 +0100 @@ -1970,10 +1970,10 @@ AC_MSG_RESULT(${ENABLE_SYSTEM_LCMS}) if test x"${ENABLE_SYSTEM_LCMS}" = "xyes"; then dnl Check for LCMS2 headers and libraries. - PKG_CHECK_MODULES(LCMS2, lcms2 >= 2.5,[LCMS2_FOUND=yes],[LCMS2_FOUND=no]) + PKG_CHECK_MODULES(LCMS2, lcms2,[LCMS2_FOUND=yes],[LCMS2_FOUND=no]) if test "x${LCMS2_FOUND}" = xno then - AC_MSG_ERROR([Could not find LCMS >= 2.5; install it or build with --disable-system-lcms to use the in-tree copy.]) + AC_MSG_ERROR([Could not find LCMS 2; install it or build with --disable-system-lcms to use the in-tree copy.]) fi AC_SUBST(LCMS2_CFLAGS) AC_SUBST(LCMS2_LIBS) diff -r cfa8ae50fd2d -r bbcd7fc7d5c3 configure.ac --- a/configure.ac Thu Apr 17 17:23:20 2014 +0100 +++ b/configure.ac Wed Jul 23 03:20:14 2014 +0100 @@ -1,4 +1,4 @@ -AC_INIT([icedtea], [2.4.8pre01], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea], [2.4.8], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) diff -r cfa8ae50fd2d -r bbcd7fc7d5c3 hotspot.map --- a/hotspot.map Thu Apr 17 17:23:20 2014 +0100 +++ b/hotspot.map Wed Jul 23 03:20:14 2014 +0100 @@ -1,3 +1,3 @@ # version url changeset sha256sum -default http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot ee5d9f6749da d5bd060c0bbe69c0207f822bc9dcded1e58e0661a772a678b88bdb742ae0ee76 -aarch64 http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot f50993b6c38d 64c2d0bfa71d6eecf18ab28fd64d5bd79af096f77548d80de7953c306fd9c22c +default http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot 6f93cec20d27 4b62772cbd751d6a060e05caee842ec510fc5e210ac23b9a1c0a1418979ab655 +aarch64 http://hg.openjdk.java.net/aarch64-port/jdk7u/hotspot 3a1207542eed f8f003e80ef625665e0f94071495595b6da27f834a536d6ce5b74b83ad67a743 diff -r cfa8ae50fd2d -r bbcd7fc7d5c3 patches/boot/ecj-diamond.patch --- a/patches/boot/ecj-diamond.patch Thu Apr 17 17:23:20 2014 +0100 +++ b/patches/boot/ecj-diamond.patch Wed Jul 23 03:20:14 2014 +0100 @@ -1,6 +1,6 @@ diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java ---- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2013-02-14 00:52:55.429120087 +0000 -+++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2014-04-11 14:05:59.912903126 +0100 +--- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2014-06-07 14:28:56.000000000 +0100 ++++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/encoding/CachedCodeBase.java 2014-07-22 19:40:14.949858737 +0100 @@ -58,7 +58,7 @@ private CorbaConnection conn; @@ -11,8 +11,8 @@ public static synchronized void cleanCache( ORB orb ) { synchronized (iorMapLock) { diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java ---- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2013-07-01 17:10:34.678170415 +0100 -+++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2014-04-11 14:05:59.912903126 +0100 +--- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2014-06-07 14:28:56.000000000 +0100 ++++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orb/ORBImpl.java 2014-07-22 19:40:14.953858790 +0100 @@ -1315,7 +1315,7 @@ protected void shutdownServants(boolean wait_for_completion) { Set oaset; @@ -23,8 +23,8 @@ for (ObjectAdapterFactory oaf : oaset) diff -Nru openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java ---- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2013-02-14 00:52:55.513121458 +0000 -+++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2014-04-11 14:05:59.920903239 +0100 +--- openjdk-boot.orig/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2014-06-07 14:28:56.000000000 +0100 ++++ openjdk-boot/corba/src/share/classes/com/sun/corba/se/impl/orbutil/threadpool/ThreadPoolImpl.java 2014-07-22 19:40:14.957858846 +0100 @@ -108,7 +108,7 @@ private ThreadGroup threadGroup; @@ -44,8 +44,8 @@ for (WorkerThread wt : copy) { diff -Nru openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java ---- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2014-04-11 13:58:34.354542618 +0100 -+++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2014-04-11 14:05:59.924903296 +0100 +--- openjdk-boot.orig/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2014-07-22 19:04:13.094571718 +0100 ++++ openjdk-boot/jaxp/src/com/sun/org/apache/xml/internal/serializer/Encodings.java 2014-07-22 19:40:14.961858906 +0100 @@ -297,8 +297,8 @@ // private final static class EncodingInfos { @@ -67,8 +67,8 @@ final String javaName = (String) keys.nextElement(); final String[] mimes = parseMimeTypes(props.getProperty(javaName)); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java openjdk-boot/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2014-01-15 03:22:51.681704342 +0000 -+++ openjdk-boot/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2014-04-11 14:05:59.928903352 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2014-03-06 06:31:11.000000000 +0000 ++++ openjdk-boot/jdk/src/share/classes/com/sun/beans/decoder/DocumentHandler.java 2014-07-22 19:40:14.961858906 +0100 @@ -63,9 +63,10 @@ */ public final class DocumentHandler extends DefaultHandler { @@ -84,8 +84,8 @@ private Reference loader; private ExceptionListener listener; diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/TypeResolver.java openjdk-boot/jdk/src/share/classes/com/sun/beans/TypeResolver.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2013-10-09 22:53:59.609920014 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2014-04-11 14:05:59.928903352 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2014-03-06 06:31:11.000000000 +0000 ++++ openjdk-boot/jdk/src/share/classes/com/sun/beans/TypeResolver.java 2014-07-22 19:40:14.965858964 +0100 @@ -46,7 +46,7 @@ */ public final class TypeResolver { @@ -105,8 +105,8 @@ CACHE.put(actual, map); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2013-10-09 22:53:59.921924849 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2014-04-11 14:05:59.932903410 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2014-03-06 06:31:11.000000000 +0000 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Attribute.java 2014-07-22 19:40:14.969859022 +0100 @@ -104,9 +104,9 @@ return this.def.compareTo(that.def); } @@ -178,8 +178,8 @@ for (int i = 0; i < layout.length(); i++) { if (layout.charAt(i++) != '[') diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2014-04-11 13:58:34.374542906 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2014-04-11 14:05:59.940903523 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2014-07-22 19:04:13.122572124 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/BandStructure.java 2014-07-22 19:40:14.973859080 +0100 @@ -257,7 +257,7 @@ assert(basicCodings[_meta_default] == null); assert(basicCodings[_meta_canon_min] != null); @@ -242,8 +242,8 @@ return true; } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2014-04-11 13:58:34.266541349 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2014-04-11 14:05:59.944903580 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2014-07-22 19:04:12.974569981 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java 2014-07-22 19:40:14.973859080 +0100 @@ -466,7 +466,7 @@ void readInnerClasses(Class cls) throws IOException { @@ -254,8 +254,8 @@ InnerClass ic = new InnerClass(readClassRef(), diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2013-10-09 22:53:59.929924973 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2014-04-11 14:05:59.948903636 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2014-03-06 06:31:11.000000000 +0000 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/CodingChooser.java 2014-07-22 19:40:14.977859138 +0100 @@ -743,9 +743,9 @@ // Steps 1/2/3 are interdependent, and may be iterated. // Steps 4 and 5 may be decided independently afterward. @@ -292,8 +292,8 @@ if (popset.add(values[i])) popvals.add(values[i]); } diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2013-10-09 22:53:59.929924973 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2014-04-11 14:05:59.944903580 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2014-03-06 06:31:11.000000000 +0000 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Coding.java 2014-07-22 19:40:14.981859195 +0100 @@ -402,7 +402,7 @@ private static Map codeMap; @@ -304,8 +304,8 @@ Coding x1 = codeMap.get(x0); if (x1 == null) codeMap.put(x0, x1 = x0); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2013-10-09 22:53:59.929924973 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2014-04-11 14:05:59.956903749 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2014-03-06 06:31:11.000000000 +0000 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ConstantPool.java 2014-07-22 19:40:14.985859253 +0100 @@ -919,7 +919,7 @@ public static Index[] partition(Index ix, int[] keys) { @@ -334,8 +334,8 @@ Entry e = work.previous(); work.remove(); // pop stack diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2014-04-11 13:58:34.374542906 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2014-04-11 14:05:59.956903749 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2014-07-22 19:04:13.122572124 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java 2014-07-22 19:40:14.985859253 +0100 @@ -61,7 +61,7 @@ ResourceBundle.getBundle("com.sun.java.util.jar.pack.DriverResource"); @@ -373,8 +373,8 @@ for (String optline : options.split("\n")) { String[] words = optline.split("\\p{Space}+"); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2013-10-09 22:53:59.933925034 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2014-04-11 14:05:59.960903806 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2014-03-06 06:31:11.000000000 +0000 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/FixedList.java 2014-07-22 19:40:14.989859312 +0100 @@ -45,7 +45,7 @@ private final ArrayList flist; @@ -385,8 +385,8 @@ for (int i = 0 ; i < capacity ; i++) { flist.add(null); diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2014-04-11 13:58:34.270541406 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2014-04-11 14:05:59.964903862 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2014-07-22 19:04:12.978570038 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java 2014-07-22 19:40:14.993859369 +0100 @@ -112,7 +112,7 @@ public static final Attribute.Layout attrSourceFileSpecial; public static final Map attrDefs; @@ -542,8 +542,8 @@ // Add to the end of ths list: if (!fileSet.contains(cls.file)) diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java ---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2014-04-11 13:58:34.374542906 +0100 -+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2014-04-11 14:05:59.968903920 +0100 +--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2014-07-22 19:04:13.122572124 +0100 ++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/PackageReader.java 2014-07-22 19:40:14.993859369 +0100 @@ -686,7 +686,7 @@ From bugzilla-daemon at icedtea.classpath.org Wed Jul 23 02:22:01 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 23 Jul 2014 02:22:01 +0000 Subject: [Bug 1781] [IcedTea7] NSS PKCS11 provider fails to handle multipart AES encryption In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1781 --- Comment #5 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.4?cmd=changeset;node=cacc6f6b51c0 author: Andrew John Hughes date: Tue Jul 22 20:53:01 2014 +0100 Update to 2.4.8 final. PR1781: NSS PKCS11 provider fails to handle multipart AES encryption RH905128: [CRASH] OpenJDK-1.7.0 while using NSS security provider and kerberos S8029755, CVE-2014-4209: Enhance subject class S8030763: Validate global memory allocation S8031340, CVE-2014-4264: Better TLS/EC management S8031346, CVE-2014-4244: Enhance RSA key handling S8031540: Introduce document horizon S8032536: JVM resolves wrong method in some unusual cases S8033055: Issues in 2d S8033301, CVE-2014-4266: Build more informative InfoBuilder S8034267: Probabilistic native crash S8034272: Do not cram data into CRAM arrays S8034985, CVE-2014-2483: Better form for Lambda Forms S8035004, CVE-2014-4252: Provider provides less service S8035009, CVE-2014-4218: Make Proxy representations consistent S8035119, CVE-2014-4219: Fix exceptions to bytecode verification S8035699, CVE-2014-4268: File choosers should be choosier S8035788. CVE-2014-4221: Provide more consistency for lookups S8035793, CVE-2014-4223: Maximum arity maxed out S8036571: (process) Process process arguments carefully S8036800: Attribute OOM to correct part of code S8037046: Validate libraries to be loaded S8037076, CVE-2014-2490: Check constant pool constants S8037157: Verify call S8037162, CVE-2014-4263: More robust DH exchanges S8037167, CVE-2014-4216: Better method signature resolution S8039520, CVE-2014-4262: More atomicity of atomic updates S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException S8013611: Modal dialog fails to obtain keyboard focus S8013809: deadlock in SSLSocketImpl between between write and close S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale S8019990: IM candidate window appears on the South-East corner of the display. S8023990: Regression: postscript size increase from 6u18 S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently S8028285: RMI Thread can no longer call out to AWT S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package S8033278: Missed access checks for Lookup.unreflect* after 8032585 S8035613: With active Securitymanager JAXBContext.newInstance fails S8036786: Update jdk7 testlibrary to match jdk8 S8037012: (tz) Support tzdata2014a S8038306: (tz) Support tzdata2014b S8038392: Generating prelink cache breaks JAVA 'jinfo' utility normal behavior S8042264: 7u65 l10n resource file translation update 1 S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 S8042590: Running form URL throws NPE S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader S8043012: (tz) Support tzdata2014c 2014-07-22 Andrew John Hughes * Makefile.am: (CORBA_CHANGESET): Update to icedtea-2.4.8 tag. (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. * NEWS: Updated. * configure.ac: Bump to 2.4.8. * hotspot.map: Update to icedtea-2.4.8 tag. * patches/boot/ecj-diamond.patch: Regenerated. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 23 02:22:17 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 23 Jul 2014 02:22:17 +0000 Subject: [Bug 1833] [IcedTea7] Report elliptic curves supported by NSS, not the SunEC library In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1833 --- Comment #3 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.4?cmd=changeset;node=2278e3fd9584 author: Andrew John Hughes date: Wed Jul 23 01:22:44 2014 +0100 PR1833, RH1022017: Report elliptic curves supported by NSS, not the SunEC library 2014-06-10 Andrew John Hughes PR1833, RH1022017: Report elliptic curves supported by NSS, not the SunEC library * Makefile.am: (ICEDTEA_PATCHES): Add new patch when PKCS11+NSS is enabled, so that the NSS set of curves are announced via SSL. * NEWS: Updated. * patches/rh1022017.patch: Reduce number of curves announced over SSL to just those supported by NSS. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 23 02:22:24 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 23 Jul 2014 02:22:24 +0000 Subject: [Bug 1830] [IcedTea7] Drop version requirement for LCMS 2 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1830 --- Comment #3 from hg commits --- details: http://icedtea.classpath.org//hg/release/icedtea7-2.4?cmd=changeset;node=0d2bd9082dff author: Andrew John Hughes date: Wed Jul 23 01:29:38 2014 +0100 PR1830: Drop version requirement for LCMS 2 2014-06-10 Andrew John Hughes PR1830: Drop version requirement for LCMS 2 * INSTALL: Document lcms2 requirement. * NEWS: Updated. * acinclude.m4: (IT_CHECK_FOR_LCMS): Drop 2.5 requirement. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at icedtea.classpath.org Wed Jul 23 06:02:21 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 23 Jul 2014 06:02:21 +0000 Subject: /hg/release/icedtea7-2.4: S8024648: 7141246 & 8016131 break Zero... Message-ID: changeset cd83b8ee0d6c in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=cd83b8ee0d6c author: Andrew John Hughes date: Wed Jul 23 07:02:05 2014 +0100 S8024648: 7141246 & 8016131 break Zero port (AArch64 only) 2014-07-22 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patch for AArch64. * NEWS: Updated. * patches/hotspot/aarch64/8024648-zero_build_fix.patch: Fix Zero on AArch64. diffstat: ChangeLog | 8 + Makefile.am | 3 +- NEWS | 1 + patches/hotspot/aarch64/8024648-zero_build_fix.patch | 179 +++++++++++++++++++ 4 files changed, 190 insertions(+), 1 deletions(-) diffs (222 lines): diff -r bbcd7fc7d5c3 -r cd83b8ee0d6c ChangeLog --- a/ChangeLog Wed Jul 23 03:20:14 2014 +0100 +++ b/ChangeLog Wed Jul 23 07:02:05 2014 +0100 @@ -1,3 +1,11 @@ +2014-07-22 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch for AArch64. + * NEWS: Updated. + * patches/hotspot/aarch64/8024648-zero_build_fix.patch: + Fix Zero on AArch64. + 2014-07-16 Andrew John Hughes * patches/hotspot/aarch64/20140415-8029858-enhance_array_copies.patch, diff -r bbcd7fc7d5c3 -r cd83b8ee0d6c Makefile.am --- a/Makefile.am Wed Jul 23 03:20:14 2014 +0100 +++ b/Makefile.am Wed Jul 23 07:02:05 2014 +0100 @@ -307,7 +307,8 @@ patches/hotspot/aarch64/20140715-8037076-check_constant_pool_constants.patch \ patches/hotspot/aarch64/20140715-8037157-verify_init_call.patch \ patches/hotspot/aarch64/20140715-8043454-8037157_test_case_fix.patch \ - patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch + patches/hotspot/aarch64/20140715-8037167-better_method_signature_resolution.patch \ + patches/hotspot/aarch64/8024648-zero_build_fix.patch endif ICEDTEA_PATCHES += $(DISTRIBUTION_PATCHES) diff -r bbcd7fc7d5c3 -r cd83b8ee0d6c NEWS --- a/NEWS Wed Jul 23 03:20:14 2014 +0100 +++ b/NEWS Wed Jul 23 07:02:05 2014 +0100 @@ -59,6 +59,7 @@ - S8023990: Regression: postscript size increase from 6u18 - S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError - S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping + - S8024648: 7141246 & 8016131 break Zero port (AArch64 only) - S8024830: SEGV in org.apache.lucene.codecs.compressing.CompressingTermVectorsReader.get - S8025588: [macosx] Frozen AppKit thread in 7u40 - S8026404: Logging in Applet can trigger ACE: access denied ("java.lang.RuntimePermission" "modifyThreadGroup") diff -r bbcd7fc7d5c3 -r cd83b8ee0d6c patches/hotspot/aarch64/8024648-zero_build_fix.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/aarch64/8024648-zero_build_fix.patch Wed Jul 23 07:02:05 2014 +0100 @@ -0,0 +1,179 @@ +diff -Nru openjdk.orig/hotspot/make/bsd/makefiles/buildtree.make openjdk/hotspot/make/bsd/makefiles/buildtree.make +--- openjdk.orig/hotspot/make/bsd/makefiles/buildtree.make 2014-07-08 13:29:51.000000000 +0100 ++++ openjdk/hotspot/make/bsd/makefiles/buildtree.make 2014-07-23 05:29:28.168607403 +0100 +@@ -1,5 +1,6 @@ + # + # Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. ++# Copyright (c) 2013 Red Hat, Inc. + # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + # + # This code is free software; you can redistribute it and/or modify it +@@ -58,8 +59,8 @@ + OS_VENDOR:=$(shell uname -s) + + -include $(SPEC) +-include $(GAMMADIR)/make/scm.make + include $(GAMMADIR)/make/defs.make ++include $(GAMMADIR)/make/scm.make + include $(GAMMADIR)/make/altsrc.make + + +@@ -222,6 +223,7 @@ + echo "HOTSPOT_BUILD_USER = $(HOTSPOT_BUILD_USER)"; \ + echo "HOTSPOT_VM_DISTRO = $(HOTSPOT_VM_DISTRO)"; \ + echo "OPENJDK = $(OPENJDK)"; \ ++ echo "ZERO_BUILD = $(ZERO_BUILD)"; \ + echo "$(LP64_SETTING/$(DATA_MODE))"; \ + echo; \ + echo "# Used for platform dispatching"; \ +diff -Nru openjdk.orig/hotspot/make/bsd/makefiles/gcc.make openjdk/hotspot/make/bsd/makefiles/gcc.make +--- openjdk.orig/hotspot/make/bsd/makefiles/gcc.make 2014-07-08 13:29:51.000000000 +0100 ++++ openjdk/hotspot/make/bsd/makefiles/gcc.make 2014-07-23 05:28:27.707724844 +0100 +@@ -1,5 +1,6 @@ + # + # Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. ++# Copyright (c) 2013 Red Hat, Inc. + # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + # + # This code is free software; you can redistribute it and/or modify it +@@ -178,10 +179,10 @@ + VM_PICFLAG/AOUT = + VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO)) + +-ifeq ($(JVM_VARIANT_ZERO), true) ++ifeq ($(TYPE),ZERO) + CFLAGS += $(LIBFFI_CFLAGS) + endif +-ifeq ($(JVM_VARIANT_ZEROSHARK), true) ++ifeq ($(TYPE),SHARK) + CFLAGS += $(LIBFFI_CFLAGS) + CFLAGS += $(LLVM_CFLAGS) + endif +diff -Nru openjdk.orig/hotspot/make/bsd/makefiles/vm.make openjdk/hotspot/make/bsd/makefiles/vm.make +--- openjdk.orig/hotspot/make/bsd/makefiles/vm.make 2014-07-08 13:29:51.000000000 +0100 ++++ openjdk/hotspot/make/bsd/makefiles/vm.make 2014-07-23 05:30:59.193936303 +0100 +@@ -1,5 +1,6 @@ + # + # Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. ++# Copyright (c) 2013 Red Hat, Inc. + # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + # + # This code is free software; you can redistribute it and/or modify it +@@ -42,7 +43,9 @@ + -include $(DEP_DIR)/*.d + + # read machine-specific adjustments (%%% should do this via buildtree.make?) +-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) ++ifeq ($(TYPE),ZERO) ++ include $(MAKEFILES_DIR)/zeroshark.make ++else ifeq ($(TYPE),SHARK) + include $(MAKEFILES_DIR)/zeroshark.make + else + include $(MAKEFILES_DIR)/$(BUILDARCH).make +@@ -289,10 +292,10 @@ + + LIBS_VM += $(LIBS) + endif +-ifeq ($(JVM_VARIANT_ZERO), true) ++ifeq ($(TYPE),ZERO) + LIBS_VM += $(LIBFFI_LIBS) + endif +-ifeq ($(JVM_VARIANT_ZEROSHARK), true) ++ifeq ($(TYPE),SHARK) + LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS) + LFLAGS_VM += $(LLVM_LDFLAGS) + endif +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/buildtree.make openjdk/hotspot/make/linux/makefiles/buildtree.make +--- openjdk.orig/hotspot/make/linux/makefiles/buildtree.make 2014-07-08 13:29:51.000000000 +0100 ++++ openjdk/hotspot/make/linux/makefiles/buildtree.make 2014-07-23 05:30:42.833697440 +0100 +@@ -1,5 +1,6 @@ + # + # Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. ++# Copyright (c) 2013 Red Hat, Inc. + # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + # + # This code is free software; you can redistribute it and/or modify it +@@ -55,8 +56,8 @@ + # having to read the dependency files for the vm. + + -include $(SPEC) +-include $(GAMMADIR)/make/scm.make + include $(GAMMADIR)/make/defs.make ++include $(GAMMADIR)/make/scm.make + include $(GAMMADIR)/make/altsrc.make + + +@@ -219,6 +220,7 @@ + echo "HOTSPOT_BUILD_USER = $(HOTSPOT_BUILD_USER)"; \ + echo "HOTSPOT_VM_DISTRO = $(HOTSPOT_VM_DISTRO)"; \ + echo "OPENJDK = $(OPENJDK)"; \ ++ echo "ZERO_BUILD = $(ZERO_BUILD)"; \ + echo "$(LP64_SETTING/$(DATA_MODE))"; \ + echo; \ + echo "# Used for platform dispatching"; \ +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make +--- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2014-07-23 05:26:57.726411553 +0100 ++++ openjdk/hotspot/make/linux/makefiles/gcc.make 2014-07-23 05:29:47.312886877 +0100 +@@ -1,5 +1,6 @@ + # + # Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. ++# Copyright (c) 2013 Red Hat, Inc. + # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + # + # This code is free software; you can redistribute it and/or modify it +@@ -138,10 +139,10 @@ + VM_PICFLAG/AOUT = + VM_PICFLAG = $(VM_PICFLAG/$(LINK_INTO)) + +-ifeq ($(JVM_VARIANT_ZERO), true) ++ifeq ($(TYPE),ZERO) + CFLAGS += $(LIBFFI_CFLAGS) + endif +-ifeq ($(JVM_VARIANT_ZEROSHARK), true) ++ifeq ($(TYPE),SHARK) + CFLAGS += $(LIBFFI_CFLAGS) + CFLAGS += $(LLVM_CFLAGS) + endif +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 2014-07-08 13:29:51.000000000 +0100 ++++ openjdk/hotspot/make/linux/makefiles/vm.make 2014-07-23 05:29:59.673067321 +0100 +@@ -1,5 +1,6 @@ + # + # Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. ++# Copyright (c) 2013 Red Hat, Inc. + # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + # + # This code is free software; you can redistribute it and/or modify it +@@ -42,7 +43,9 @@ + -include $(DEP_DIR)/*.d + + # read machine-specific adjustments (%%% should do this via buildtree.make?) +-ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) ++ifeq ($(TYPE),ZERO) ++ include $(MAKEFILES_DIR)/zeroshark.make ++else ifeq ($(TYPE),SHARK) + include $(MAKEFILES_DIR)/zeroshark.make + else + include $(MAKEFILES_DIR)/$(BUILDARCH).make +@@ -300,7 +303,7 @@ + vm.def: $(Res_Files) $(Obj_Files) + sh $(GAMMADIR)/make/linux/makefiles/build_vm_def.sh *.o > $@ + +-ifeq ($(JVM_VARIANT_ZEROSHARK), true) ++ifeq ($(TYPE),SHARK) + STATIC_CXX = false + else + ifeq ($(ZERO_LIBARCH), ppc64) +@@ -332,10 +335,10 @@ + + LIBS_VM += $(LIBS) + endif +-ifeq ($(JVM_VARIANT_ZERO), true) ++ifeq ($(TYPE),ZERO) + LIBS_VM += $(LIBFFI_LIBS) + endif +-ifeq ($(JVM_VARIANT_ZEROSHARK), true) ++ifeq ($(TYPE),SHARK) + LIBS_VM += $(LIBFFI_LIBS) $(LLVM_LIBS) + LFLAGS_VM += $(LLVM_LDFLAGS) + endif From ebourg at apache.org Wed Jul 23 11:59:24 2014 From: ebourg at apache.org (Emmanuel Bourg) Date: Wed, 23 Jul 2014 13:59:24 +0200 Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: <20140718212106.GA21559@carrie.the212.com> References: <20140718212106.GA21559@carrie.the212.com> Message-ID: <53CFA39C.2020607@apache.org> Hi Andrew, Is IcedTea-Sound compatible with all versions of OpenJDK, or do you plan to maintain several branches for different JDKs? Emmanuel Bourg Le 18/07/2014 23:21, Andrew Hughes a ?crit : > We are pleased to announce the inaugural release of IcedTea-Sound. At > present, IcedTea-Sound contains the PulseAudio provider which was > removed from IcedTea itself from 2.5.0 onwards. More providers may be > included in the future. > > If you find an issue with the release, please report it to our bug > database (http://icedtea.classpath.org/bugzilla) under the > IcedTea-Sound product and the appropriate component. Development > discussion takes place on the distro-pkg-dev at openjdk.java.net mailing > list (as with IcedTea) and patches are always welcome. > > Full details of the release can be found below. > > What's New? > =========== > New in release 1.0.0 (2014-07-18): > > * PR1741: Break PulseAudio provider out into IcedTea-Sound > * PR1840: Replace Makefile.am references to PULSE_JAVA with ICEDTEA_SOUND > * PR1842: Linker does not check that symbols can be resolved for libpulse-java.so > * PR1876: The following shared libraries lack a SONAME: /usr/lib64/libicedtea-sound.so > > The tarballs can be downloaded from: > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz > > We provide both gzip and xz tarballs, so that those who are able to > make use of the smaller tarball produced by xz may do so. > > The tarballs are accompanied by digital signatures available at: > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz.sig > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz.sig > > These are 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 > > SHA256 checksums: > > 0d09bc9656f9125642f70bb322f8ec92ec0ae28fdd295e83c4ce3c7576e79bd3 icedtea-sound-1.0.0.tar.gz > cb47dec753e4853ba8021a3b532631c2b751450d0d9d580c3ddce99fe8b4c7a9 icedtea-sound-1.0.0.tar.gz.sig > 29511d271cbb5259eac5dd48867e27d61ce4ce15026dc105277dbf1238333dbb icedtea-sound-1.0.0.tar.xz > c16cb29502d6edb16fb611b3d1ffbda199919f56afc8691a7dceee08b009b528 icedtea-sound-1.0.0.tar.xz.sig > > The checksums can be downloaded from: > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.sha256 > > The following people helped with this release: > > * Andrew Hughes (all bug fixes, release management) > > We would also like to thank the bug reporters and testers! > > To get started: > > $ tar xzf icedtea-sound-1.0.0.tar.gz > > or: > > $ tar x -I xz -f icedtea-sound-1.0.0.tar.xz > > then: > > $ mkdir its-build > $ cd its-build > $ ../icedtea-sound-1.0.0/configure --prefix=${install_location} > $ make > $ make install > > where ${install_location} should be replaced by the prefix where you > wish to install IcedTea-Sound (default is /usr/local). Depending on > the prefix selected, the 'make install' step may need root privileges. > > Full build requirements and instructions are available in the INSTALL file. > > Happy hacking! > From gnu.andrew at redhat.com Wed Jul 23 14:58:06 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 23 Jul 2014 10:58:06 -0400 (EDT) Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: <53CFA39C.2020607@apache.org> References: <20140718212106.GA21559@carrie.the212.com> <53CFA39C.2020607@apache.org> Message-ID: <129070421.14356674.1406127486023.JavaMail.zimbra@redhat.com> ----- Original Message ----- > Hi Andrew, > > Is IcedTea-Sound compatible with all versions of OpenJDK, or do you plan > to maintain several branches for different JDKs? > > Emmanuel Bourg > > > Le 18/07/2014 23:21, Andrew Hughes a ?crit : > > We are pleased to announce the inaugural release of IcedTea-Sound. At > > present, IcedTea-Sound contains the PulseAudio provider which was > > removed from IcedTea itself from 2.5.0 onwards. More providers may be > > included in the future. > > > > If you find an issue with the release, please report it to our bug > > database (http://icedtea.classpath.org/bugzilla) under the > > IcedTea-Sound product and the appropriate component. Development > > discussion takes place on the distro-pkg-dev at openjdk.java.net mailing > > list (as with IcedTea) and patches are always welcome. > > > > Full details of the release can be found below. > > > > What's New? > > =========== > > New in release 1.0.0 (2014-07-18): > > > > * PR1741: Break PulseAudio provider out into IcedTea-Sound > > * PR1840: Replace Makefile.am references to PULSE_JAVA with ICEDTEA_SOUND > > * PR1842: Linker does not check that symbols can be resolved for > > libpulse-java.so > > * PR1876: The following shared libraries lack a SONAME: > > /usr/lib64/libicedtea-sound.so > > > > The tarballs can be downloaded from: > > > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz > > > > We provide both gzip and xz tarballs, so that those who are able to > > make use of the smaller tarball produced by xz may do so. > > > > The tarballs are accompanied by digital signatures available at: > > > > * > > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz.sig > > * > > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz.sig > > > > These are 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 > > > > SHA256 checksums: > > > > 0d09bc9656f9125642f70bb322f8ec92ec0ae28fdd295e83c4ce3c7576e79bd3 > > icedtea-sound-1.0.0.tar.gz > > cb47dec753e4853ba8021a3b532631c2b751450d0d9d580c3ddce99fe8b4c7a9 > > icedtea-sound-1.0.0.tar.gz.sig > > 29511d271cbb5259eac5dd48867e27d61ce4ce15026dc105277dbf1238333dbb > > icedtea-sound-1.0.0.tar.xz > > c16cb29502d6edb16fb611b3d1ffbda199919f56afc8691a7dceee08b009b528 > > icedtea-sound-1.0.0.tar.xz.sig > > > > The checksums can be downloaded from: > > > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.sha256 > > > > The following people helped with this release: > > > > * Andrew Hughes (all bug fixes, release management) > > > > We would also like to thank the bug reporters and testers! > > > > To get started: > > > > $ tar xzf icedtea-sound-1.0.0.tar.gz > > > > or: > > > > $ tar x -I xz -f icedtea-sound-1.0.0.tar.xz > > > > then: > > > > $ mkdir its-build > > $ cd its-build > > $ ../icedtea-sound-1.0.0/configure --prefix=${install_location} > > $ make > > $ make install > > > > where ${install_location} should be replaced by the prefix where you > > wish to install IcedTea-Sound (default is /usr/local). Depending on > > the prefix selected, the 'make install' step may need root privileges. > > > > Full build requirements and instructions are available in the INSTALL file. > > > > Happy hacking! > > > > The intention of splitting it out was so that multiple copies weren't being maintained across every release of IcedTea. It should work with any JDK in theory. -- 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 member.fsf.org Wed Jul 23 18:32:54 2014 From: gnu_andrew at member.fsf.org (Andrew Hughes) Date: Wed, 23 Jul 2014 19:32:54 +0100 Subject: [SECURITY] IcedTea 2.4.8 for OpenJDK 7 Released Message-ID: <20140723183254.GA22099@carrie.the212.com> 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, the ability to build against system libraries and support for alternative virtual machines and architectures beyond those supported by OpenJDK. This release updates our OpenJDK 7 support in the 2.4.x series with the July 2014 security fixes. Please note that this will be the *FINAL* release in the 2.4.x series. Users are encouraged to upgrade to the 2.5.x series as soon as possible. There will NOT be a 2.4.x update for the October 2014 security fixes. If you find an issue with the release, 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 release can be found below. What's New? =========== New in release 2.4.8 (2014-07-23): * Security fixes - S8029755, CVE-2014-4209: Enhance subject class - S8030763: Validate global memory allocation - S8031340, CVE-2014-4264: Better TLS/EC management - S8031346, CVE-2014-4244: Enhance RSA key handling - S8031540: Introduce document horizon - S8032536: JVM resolves wrong method in some unusual cases - S8033055: Issues in 2d - S8033301, CVE-2014-4266: Build more informative InfoBuilder - S8034267: Probabilistic native crash - S8034272: Do not cram data into CRAM arrays - S8034985, CVE-2014-2483: Better form for Lambda Forms - S8035004, CVE-2014-4252: Provider provides less service - S8035009, CVE-2014-4218: Make Proxy representations consistent - S8035119, CVE-2014-4219: Fix exceptions to bytecode verification - S8035699, CVE-2014-4268: File choosers should be choosier - S8035788. CVE-2014-4221: Provide more consistency for lookups - S8035793, CVE-2014-4223: Maximum arity maxed out - S8036571: (process) Process process arguments carefully - S8036800: Attribute OOM to correct part of code - S8037046: Validate libraries to be loaded - S8037076, CVE-2014-2490: Check constant pool constants - S8037157: Verify call - S8037162, CVE-2014-4263: More robust DH exchanges - S8037167, CVE-2014-4216: Better method signature resolution - S8039520, CVE-2014-4262: More atomicity of atomic updates * Backports - S5049299: (process) Use posix_spawn, not fork, on S10 to avoid swap exhaustion - S6571600: JNI use results in UnsatisfiedLinkError looking for libmawt.so - S7131153: GetDC called way too many times - causes bad performance. - S7190349: [macosx] Text (Label) is incorrectly drawn with a rotated g2d - S8001108: an attempt to use "" as a method name should elicit NoSuchMethodException - S8001109: arity mismatch on a call to spreader method handle should elicit IllegalArgumentException - S8008118: (process) Possible null pointer dereference in jdk/src/solaris/native/java/lang/UNIXProcess_md.c - S8013611: Modal dialog fails to obtain keyboard focus - S8013809: deadlock in SSLSocketImpl between between write and close - S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale - S8014460: Need to check for non-empty EXT_LIBS_PATH before using it - S8019853: Break logging and AWT circular dependency - S8019990: IM candidate window appears on the South-East corner of the display. - S8020191: System.getProperty("os.name") returns "Windows NT (unknown)" on Windows 8.1 - S8022452: Hotspot needs to know about Windows 8.1 and Windows Server 2012 R2 - S8023990: Regression: postscript size increase from 6u18 - S8024283: 10 nashorn tests fail with similar stack trace InternalError with cause being NoClassDefFoundError - S8024616: JSR292: lazily initialize core NamedFunctions used for bootstrapping - S8024648: 7141246 & 8016131 break Zero port (AArch64 only) - S8024830: SEGV in org.apache.lucene.codecs.compressing.CompressingTermVectorsReader.get - S8025588: [macosx] Frozen AppKit thread in 7u40 - S8026404: Logging in Applet can trigger ACE: access denied ("java.lang.RuntimePermission" "modifyThreadGroup") - S8026705: [TEST_BUG] java/beans/Introspector/TestTypeResolver.java failed - S8027196: Increment minor version of HSx for 7u55 and initialize the build number - S8027212: java/nio/channels/Selector/SelectAfterRead.java fails intermittently - S8028285: RMI Thread can no longer call out to AWT - S8029177: [Parfait] warnings from b117 for jdk.src.share.native.com.sun.java.util.jar: JNI exception pending - S8030655: Regression: 14_01 Security fix 8024306 causes test failures - S8030813: Signed applet fails to load when CRLs are stored in an LDAP directory - S8030822: (tz) Support tzdata2013i - S8031050: (thread) Change Thread initialization so that thread name is set before invoking SecurityManager - S8031075: [Regression] focus disappears with shift+tab on dialog having one focus component - S8031462: Fonts with morx tables are broken with latest ICU fixes - S8032585: JSR292: IllegalAccessError when attempting to invoke protected method from different package - S8032740: Need to create SE Embedded Source Bundles in 7 Release - S8033278: Missed access checks for Lookup.unreflect* after 8032585 - S8034772: JDK-8028795 brought a specification change to 7u55 release and caused JCK7 signature test failure - S8035283: Second phase of branch shortening doesn't account for loop alignment - S8035613: With active Securitymanager JAXBContext.newInstance fails - S8035618: Four api/org_omg/CORBA TCK tests fail under plugin only - S8036147: Increment hsx 24.55 build to b02 for 7u55-b11 - S8036786: Update jdk7 testlibrary to match jdk8 - S8036837: Increment hsx 24.55 build to b03 for 7u55-b12 - S8037012: (tz) Support tzdata2014a - S8038306: (tz) Support tzdata2014b - S8038392: Generating prelink cache breaks JAVA 'jinfo' utility normal behavior - S8042264: 7u65 l10n resource file translation update 1 - S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 - S8042590: Running form URL throws NPE - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader - S8043012: (tz) Support tzdata2014c * Bug fixes - Fix accidental reversion of PR1188 for armel - PR1781: NSS PKCS11 provider fails to handle multipart AES encryption - PR1830: Drop version requirement for LCMS 2 - PR1833, RH1022017: Report elliptic curves supported by NSS, not the SunEC library - RH905128: [CRASH] OpenJDK-1.7.0 while using NSS security provider and kerberos * AArch64 port - AArch64 C2 instruct for smull - Add a constructor as a conversion from Register - RegSet. Use it. - Add RegSet::operator+=. - Add support for a few simple intrinsics - Add support for builtin crc32 instructions - Add support for CRC32 intrinsic - Add support for Neon implementation of CRC32 - All address constants are 48 bits in size. - C1: Fix offset overflow when profiling. - Common frame handling for C1/C2 which correctly handle all frame sizes - Correct costs for operations with shifts. - Correct OptoAssembly for prologs and epilogs. - Delete useless instruction. - Don't use any form of _call_VM_leaf when we're calling a stub. - Fast string comparison - Fast String.equals() - Fix a tonne of bogus comments. - Fix biased locking and enable as default - Fix instruction size from 8 to 4 - Fix opto assembly for shifts. - Fix register misuse in verify_method_data_pointer - Fix register usage in generate_verify_oop(). - Implement various locked memory operations. - Improve C1 performance improvements in ic_cache checks - Improve code generation for pop(), as suggested by Edward Nevill. - Improvements to safepoint polling - Make code entry alignment 64 for C2 - Minor optimisation for divide by 2 - New cost model for instruction selection. - Offsets in lookupswitch instructions should be signed. - Optimise addressing of card table byte map base - Optimise C2 entry point verification - Optimise long divide by 2 - Performance improvement and ease of use changes pulled from upstream - Preserve callee save FP registers around call to java code - Remove obsolete C1 patching code. - Remove special-case handling of division arguments. AArch64 doesn't need it. - Remove unnecessary memory barriers around CAS operations - Restore sp from sender sp, r13 in crc32 code - Restrict default ReservedCodeCacheSize to 128M - Rewrite CAS operations to be more conservative - Save intermediate state before removing C1 patching code. - Tidy up register usage in push/pop instructions. - Tidy up stack frame handling. - Use 2- and 3-instruction immediate form of movoop and mov_metadata in C2-generated code. - Use an explicit set of registers rather than a bitmap for psh and pop operations. - Use explicit barrier instructions in C1. - Use gcc __clear_cache instead of doing it ourselves The tarballs can be downloaded from: http://icedtea.classpath.org/download/source/icedtea-2.4.8.tar.gz http://icedtea.classpath.org/download/source/icedtea-2.4.8.tar.xz We provide both gzip and xz tarballs, so that those who are able to make use of the smaller tarball produced by xz may do so. The tarballs are accompanied by digital signatures available at: http://icedtea.classpath.org/download/source/icedtea-2.4.8.tar.gz.sig http://icedtea.classpath.org/download/source/icedtea-2.4.8.tar.xz.sig These are 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 SHA256 checksums: 5bb6ece0ca8f2022056a2e455330c5324d1c110b278dbf5af5e9d48babebcd40 icedtea-2.4.8.tar.gz 59b280c9d342db45c3f810bfdf002806f14faabac1c7fd5c6d2c28cecd13f9d2 icedtea-2.4.8.tar.gz.sig 3fa64e2e92b08fb69eaec72a85ee3322efb1cfacc65e15b5b7fdef4abbdd17a2 icedtea-2.4.8.tar.xz 60c060fa3e438f338128f616f7b8d23ff15d5642e8d1547bb7e026121e7affc8 icedtea-2.4.8.tar.xz.sig The checksums can be downloaded from: http://icedtea.classpath.org/download/source/icedtea-2.4.8.sha256 The following people helped with these releases: * Andrew Hughes (all backports & bug fixes, release management) We would also like to thank the bug reporters and testers! To get started: $ tar xzf icedtea-2.4.8.tar.gz or: $ tar x -I xz -f icedtea-2.4.8.tar.xz then: $ mkdir icedtea-build $ cd icedtea-build $ ../icedtea-2.4.8/configure $ make Full build requirements and instructions are available in the INSTALL file. Happy hacking! -- Andrew :) 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: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: From andrew at icedtea.classpath.org Wed Jul 23 18:51:16 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 23 Jul 2014 18:51:16 +0000 Subject: /hg/release/icedtea7-2.4: 2 new changesets Message-ID: changeset c04ac627df95 in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=c04ac627df95 author: Andrew John Hughes date: Wed Jul 23 07:14:00 2014 +0100 Prepare for 2.4.8 release. 2014-07-23 Andrew John Hughes * NEWS: Set release date. changeset 1555e748de3c in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=1555e748de3c author: Andrew John Hughes date: Wed Jul 23 19:24:19 2014 +0100 Added tag icedtea-2.4.8 for changeset c04ac627df95 diffstat: .hgtags | 1 + ChangeLog | 4 ++++ NEWS | 2 +- 3 files changed, 6 insertions(+), 1 deletions(-) diffs (31 lines): diff -r cd83b8ee0d6c -r 1555e748de3c .hgtags --- a/.hgtags Wed Jul 23 07:02:05 2014 +0100 +++ b/.hgtags Wed Jul 23 19:24:19 2014 +0100 @@ -43,3 +43,4 @@ 4bfa1c865fdd3d385c3bdf7a7c8611f80d42029d icedtea-2.4.5 7207e8b9dc7f2a1673b02e410e75927fa49651fa icedtea-2.4.6 4bd27fce09c46e37a7256f5fb6a0699ab0c62df2 icedtea-2.4.7 +c04ac627df95008ea039ca6e23460cf878973c17 icedtea-2.4.8 diff -r cd83b8ee0d6c -r 1555e748de3c ChangeLog --- a/ChangeLog Wed Jul 23 07:02:05 2014 +0100 +++ b/ChangeLog Wed Jul 23 19:24:19 2014 +0100 @@ -1,3 +1,7 @@ +2014-07-23 Andrew John Hughes + + * NEWS: Set release date. + 2014-07-22 Andrew John Hughes * Makefile.am: diff -r cd83b8ee0d6c -r 1555e748de3c NEWS --- a/NEWS Wed Jul 23 07:02:05 2014 +0100 +++ b/NEWS Wed Jul 23 19:24:19 2014 +0100 @@ -12,7 +12,7 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 2.4.8 (2014-07-XX): +New in release 2.4.8 (2014-07-23): * Security fixes - S8029755, CVE-2014-4209: Enhance subject class From bugzilla-daemon at icedtea.classpath.org Wed Jul 23 22:51:38 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 23 Jul 2014 22:51:38 +0000 Subject: [Bug 1882] New: Dangerous interplay between GC, JIT and JVM resulting in JVM crash Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1882 Bug ID: 1882 Summary: Dangerous interplay between GC, JIT and JVM resulting in JVM crash Product: IcedTea Version: 7-hg Hardware: arm OS: Linux Status: NEW Severity: blocker Priority: P5 Component: Zero Assignee: gnu.andrew at redhat.com Reporter: william at autoletics.com CC: unassigned at icedtea.classpath.org # Internal Error (os_linux_zero.cpp:285), pid=21482, tid=1251472496 # fatal error: caught unhandled signal 4 # # JRE version: 7.0_25-b30 # Java VM: OpenJDK Zero VM (23.7-b01 mixed mode linux-arm ) # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (os_linux_zero.cpp:270), pid=23439, tid=1212884080 # fatal error: caught unhandled signal 4 # # JRE version: 6.0_24-b24 # Java VM: OpenJDK Zero VM (20.0-b12 mixed mode linux-arm ) I would greatly appreciate any suggestions and possible follow-ups regarding an reproducible issue with the above releases running in an embedded context. There seems to be a very dangerous interplay going on between the GC, JVM and the JIT(?). If an application continues to perform, repeatedly, any sort of allocation it will eventually result in the JVM crashing sometimes with a signal 4 or signal 11. This is not a memory leak because I can crash the JVM with even the simplest of code paths such as: getClass().getResourceAsStream(FILE_NAME); Strangely enough if all that is created repeatedly is an Object[] array of a fixed size then it takes far longer for this to occur, sometimes long enough that I can't be sure it will (ever) happen and so I terminate the process. It would appear that I need just the smallest of object, code and stack motion to occur for this problem to rear itself, such as the line above. The only sensible workaround I've discovered is to turn off the JIT by passing -Xint on the command line. The problem seems to completely disappear with this JVM option. This brings up an even stranger observation and that is if I run multiple JVM's on the same machine with all except one spinning on some non-allocating operation such as System.nanoTime() the one JVM that is performing repeated object allocation will cause the other JVM's to crash as it crashes. The spinning JVMs will crash with signal 4 and the allocating one will crash with signal 11. This is not only reproducible but it all happens in an instant of the first crashing. Now if I run the cpu spinning JVMs with the -Xint flag but leave the allocating JVM without this flag then *ONLY* the allocating JVM will crash. I can even run other allocating JVM's alongside each other as long as I add the -Xint flag. Any JVM that does not have this flag will crash and cause other JVM's without this flag to crash. The non-sensible workaround was to call System.gc() after each loop of the test case but even there if I skipped an iteration the JVM would crash. Of course this is not at all feasible to do with any sort of application beyond HelloWorld but it does hopefully hint at sometime. Please note that I am not running the original application code that resulted in this issuing being reported but the simplest of test case code I created to confirm an issue. I could speculate that the reason -Xint resolves the matter is that it slows down the JVM sufficiently to allow GC to catch up but then that does not explain how a JVM can cause other JVMs to crash, near simultaneously, that are *NOT* making allocation calls and do not have -Xint on the command line. All JVM's seem to spin along happily as long as there is no allocation on the call stack. Once there some degree of allocation and minor gc collections the system trips up. It is like there is some uncontrolled movement (race condition) in the heap/stack memory that is not being coordinated (or controlled) with the JIT and/or that it triggers a fatal call path between hotspot and zero and this is in some shared memory space of sorts hence the spreading to other JVMs. During some of test runs a NullPointerException was thrown and reported just before the JVM crashed. But it happened in different places and some of these were within the JDK classes at locations that would be impossible for a null value to be presented after being guarded further up in the call stack with a null check. I also ran tests with an bytecode instrumentation agent and also got the occasional NullPointerException reported within the agent code, again at locations it was impossible for the reference to be a null value. Here are some samples of the top of the stacks reported in various error logs. ---------------------------------------------------------------------------- Stack: [0x48333000,0x484b3000], sp=0x483f4884, free space=774k Java frames: 0x484b1a6c: stack_word[1] = 0x433cdeb8 0x484b1a70: stack_word[0] = 0x433ce8b0 0x484b1a74: istate->_thread = 0x000a4bf8 0x484b1a78: istate->_bcp = 0x43a17ee6 (bci 22) 0x484b1a7c: istate->_locals = 0x484b1ac8 0x484b1a80: istate->_constants = 0x43a90768 0x484b1a84: istate->_method = java.lang.Class.getResourceAsStream(Ljava/lang/String;)Ljava/io/InputStream; 0x484b1a88: istate->_mdx = 0x43a7f348 0x484b1a8c: istate->_stack = 0x484b1a68 0x484b1a90: istate->_msg = 0x00000000 0x484b1a94: istate->_result = 0x484b1a58 0x484b1a98: (istate->_result) = 0x00000000 0x484b1a9c: (istate->_result) = 0x484b1a60 0x484b1aa0: istate->_prev_link = 0x484b1a60 0x484b1aa4: istate->_oop_temp = 0x00000000 0x484b1aa8: istate->_stack_base = 0x484b1a74 0x484b1aac: istate->_stack_limit = 0x484b1a68 0x484b1ab0: istate->_monitor_base = 0x484b1a74 0x484b1ab4: istate->_self_link = 0x484b1a74 0x484b1ab8: frame_type = INTERPRETER_FRAME 0x484b1abc: next_frame = 0x484b1b14 ---------------------------------------------------------------------------- Stack: [0x47cbb000,0x47d3a000], sp=0x47d38254, free space=500k JavaThread 0x001f05f0 (nid = 4159) was being processed Java frames: 0x48b605d0: stack_word[4] = 0x00bcc1f2 0x48b605d4: stack_word[3] = 0x00000009 0x48b605d8: stack_word[2] = 0x00000066 0x48b605dc: stack_word[1] = 0x435eb950 0x48b605e0: stack_word[0] = 0x4357f8d0 0x48b605e4: istate->_thread = 0x001f05f0 0x48b605e8: istate->_bcp = 0x43d1e4f7 (bci 383) 0x48b605ec: istate->_locals = 0x48b60644 0x48b605f0: istate->_constants = 0x43d21008 0x48b605f4: istate->_method = com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.scanName()Ljava/lang/String; 0x48b605f8: istate->_mdx = 0x48b60648 0x48b605fc: istate->_stack = 0x48b605dc 0x48b60600: istate->_msg = 0x00000000 0x48b60604: istate->_result = 0x43d31569 0x48b60608: (istate->_result) = 0x48b60650 0x48b6060c: (istate->_result) = 0x43d32778 0x48b60610: istate->_prev_link = 0x43d31590 0x48b60614: istate->_oop_temp = 0x00000000 0x48b60618: istate->_stack_base = 0x48b605e4 0x48b6061c: istate->_stack_limit = 0x48b605cc 0x48b60620: istate->_monitor_base = 0x48b605e4 0x48b60624: istate->_self_link = 0x48b605e4 0x48b60628: frame_type = INTERPRETER_FRAME 0x48b6062c: next_frame = 0x48b60690 ---------------------------------------------------------------------------- Stack: [0x48be9000,0x48d69000], sp=0x48caa804, free space=774k Java frames: 0x48d67814: stack_word[3] = 0x018bd428 0x48d67818: stack_word[2] = 0x00000000 0x48d6781c: stack_word[1] = 0x000fad80 0x48d67820: stack_word[0] = 0x435c5c50 0x48d67824: monitor[0]->_lock = 0x00000003 0x48d67828: monitor[0]->_obj = 0x439434c0 0x48d6782c: istate->_thread = 0x0013a798 0x48d67830: istate->_bcp = 0x443f2c5c (bci 68) 0x48d67834: istate->_locals = 0x48d67890 0x48d67838: istate->_constants = 0x443f5078 0x48d6783c: istate->_method = java.util.zip.ZipFile.getEntry(Ljava/lang/String;)Ljava/util/zip/ZipEntry; 0x48d67840: istate->_mdx = 0x00000003 0x48d67844: istate->_stack = 0x48d6781c 0x48d67848: istate->_msg = 0x00000000 0x48d6784c: istate->_result = 0x443d9330 0x48d67850: (istate->_result) = 0x48d67898 0x48d67854: (istate->_result) = 0x443db800 0x48d67858: istate->_prev_link = 0x443d9360 0x48d6785c: istate->_oop_temp = 0x00000000 0x48d67860: istate->_stack_base = 0x48d67824 0x48d67864: istate->_stack_limit = 0x48d67810 0x48d67868: istate->_monitor_base = 0x48d6782c 0x48d6786c: istate->_self_link = 0x48d6782c 0x48d67870: frame_type = INTERPRETER_FRAME 0x48d67874: next_frame = 0x48d678dc What do you think are the next steps? How is the interplay between the various components and subsystems of the OpenJDK JVM impacted by the -Xint flag being added other than "it disables native compilation". Also if when I pass -shark to the JVM and it reports that it is unsupported does that mean the JIT is not actually included in the distribution on this device? -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 23 23:01:44 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 23 Jul 2014 23:01:44 +0000 Subject: [Bug 1882] Dangerous interplay between GC, JIT and JVM resulting in JVM crash In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1882 --- Comment #1 from William Louth --- Created attachment 1128 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1128&action=edit IcedTea 1.6 error log -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 23 23:05:06 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 23 Jul 2014 23:05:06 +0000 Subject: [Bug 1882] Dangerous interplay between GC, JIT and JVM resulting in JVM crash In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1882 --- Comment #2 from William Louth --- Created attachment 1129 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1129&action=edit IcedTea 1.7 error log -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at icedtea.classpath.org Thu Jul 24 03:59:10 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 24 Jul 2014 03:59:10 +0000 Subject: /hg/release/icedtea7-2.4: Close off branch. Message-ID: changeset 77e853407ef2 in /hg/release/icedtea7-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-2.4?cmd=changeset;node=77e853407ef2 author: Andrew John Hughes date: Thu Jul 24 04:58:40 2014 +0100 Close off branch. 2014-07-23 Andrew John Hughes * configure.ac: Bump to 2.4.9pre00. * NEWS: Add 2.4.9 section. diffstat: ChangeLog | 5 +++++ NEWS | 2 ++ configure.ac | 2 +- 3 files changed, 8 insertions(+), 1 deletions(-) diffs (33 lines): diff -r 1555e748de3c -r 77e853407ef2 ChangeLog --- a/ChangeLog Wed Jul 23 19:24:19 2014 +0100 +++ b/ChangeLog Thu Jul 24 04:58:40 2014 +0100 @@ -1,3 +1,8 @@ +2014-07-23 Andrew John Hughes + + * configure.ac: Bump to 2.4.9pre00. + * NEWS: Add 2.4.9 section. + 2014-07-23 Andrew John Hughes * NEWS: Set release date. diff -r 1555e748de3c -r 77e853407ef2 NEWS --- a/NEWS Wed Jul 23 19:24:19 2014 +0100 +++ b/NEWS Thu Jul 24 04:58:40 2014 +0100 @@ -12,6 +12,8 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY +New in release 2.4.9 (20XX-XX-XX): + New in release 2.4.8 (2014-07-23): * Security fixes diff -r 1555e748de3c -r 77e853407ef2 configure.ac --- a/configure.ac Wed Jul 23 19:24:19 2014 +0100 +++ b/configure.ac Thu Jul 24 04:58:40 2014 +0100 @@ -1,4 +1,4 @@ -AC_INIT([icedtea], [2.4.8], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea], [2.4.9pre00], [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 Thu Jul 24 04:00:56 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 24 Jul 2014 04:00:56 +0000 Subject: /hg/release/icedtea7-2.5: Start 2.5.2 release cycle. Message-ID: changeset d4db76b42c27 in /hg/release/icedtea7-2.5 details: http://icedtea.classpath.org/hg/release/icedtea7-2.5?cmd=changeset;node=d4db76b42c27 author: Andrew John Hughes date: Thu Jul 24 05:00:41 2014 +0100 Start 2.5.2 release cycle. 2014-07-23 Andrew John Hughes * configure.ac: Set to 2.5.2pre00. * NEWS: Add release section for 2.5.2. diffstat: ChangeLog | 5 +++++ NEWS | 2 ++ configure.ac | 2 +- 3 files changed, 8 insertions(+), 1 deletions(-) diffs (33 lines): diff -r d90f34b6a990 -r d4db76b42c27 ChangeLog --- a/ChangeLog Wed Jul 16 10:44:54 2014 +0100 +++ b/ChangeLog Thu Jul 24 05:00:41 2014 +0100 @@ -1,3 +1,8 @@ +2014-07-23 Andrew John Hughes + + * configure.ac: Set to 2.5.2pre00. + * NEWS: Add release section for 2.5.2. + 2014-07-16 Andrew John Hughes * NEWS: Set release date for 2.5.1. diff -r d90f34b6a990 -r d4db76b42c27 NEWS --- a/NEWS Wed Jul 16 10:44:54 2014 +0100 +++ b/NEWS Thu Jul 24 05:00:41 2014 +0100 @@ -12,6 +12,8 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY +New in release 2.5.2 (2014-10-XX): + New in release 2.5.1 (2014-07-16): * Security fixes diff -r d90f34b6a990 -r d4db76b42c27 configure.ac --- a/configure.ac Wed Jul 16 10:44:54 2014 +0100 +++ b/configure.ac Thu Jul 24 05:00:41 2014 +0100 @@ -1,4 +1,4 @@ -AC_INIT([icedtea], [2.5.1], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea], [2.5.2pre00], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AM_MAINTAINER_MODE([enable]) AC_CONFIG_FILES([Makefile]) From andrew at icedtea.classpath.org Thu Jul 24 04:03:54 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 24 Jul 2014 04:03:54 +0000 Subject: /hg/icedtea6: Add 1.13.4 release notes. Message-ID: changeset 755d4509b7d6 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=755d4509b7d6 author: Andrew John Hughes date: Thu Jul 24 05:03:40 2014 +0100 Add 1.13.4 release notes. 2014-07-23 Andrew John Hughes * NEWS: Add 1.13.4 release notes. diffstat: ChangeLog | 4 ++++ NEWS | 44 ++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 46 insertions(+), 2 deletions(-) diffs (69 lines): diff -r 93a1398d268f -r 755d4509b7d6 ChangeLog --- a/ChangeLog Mon Jun 02 14:48:27 2014 +0100 +++ b/ChangeLog Thu Jul 24 05:03:40 2014 +0100 @@ -1,3 +1,7 @@ +2014-07-23 Andrew John Hughes + + * NEWS: Add 1.13.4 release notes. + 2014-05-28 Andrew John Hughes * Makefile.am: diff -r 93a1398d268f -r 755d4509b7d6 NEWS --- a/NEWS Mon Jun 02 14:48:27 2014 +0100 +++ b/NEWS Thu Jul 24 05:03:40 2014 +0100 @@ -19,12 +19,52 @@ - S6727719: Performance of TextLayout.getBounds() - S6745225: Memory leak while drawing Attributed String - S6904962: GlyphVector.getVisualBounds should not be affected by leading or trailing white space. - - S7027300, RH1098399: Unsynchronized HashMap access causes endless loop - S7151089: PS NUMA: NUMA allocator should not attempt to free pages when using SHM large pages - - S7183251: Netbeans editor renders text wrong on JDK 7u6 build - S8013057: Detect mmap() commit failures in Linux and Solaris os::commit_memory() impls and call vm_exit_out_of_memory() - S8026887: Make issues due to failed large pages allocations easier to debug +New in release 1.13.4 (2014-07-15): + +* Security fixes + - S8029755, CVE-2014-4209: Enhance subject class + - S8030763: Validate global memory allocation + - S8031346, CVE-2014-4244: Enhance RSA key handling + - S8031540: Introduce document horizon + - S8032536: JVM resolves wrong method in some unusual cases + - S8033055: Issues in 2d + - S8033301, CVE-2014-4266: Build more informative InfoBuilder + - S8034267: Probabilistic native crash + - S8034272: Do not cram data into CRAM arrays + - S8035004, CVE-2014-4252: Provider provides less service + - S8035009, CVE-2014-4218: Make Proxy representations consistent + - S8035119, CVE-2014-4219: Fix exceptions to bytecode verification + - S8035699, CVE-2014-4268: File choosers should be choosier + - S8036571: (process) Process process arguments carefully + - S8036800: Attribute OOM to correct part of code + - S8037046: Validate libraries to be loaded + - S8037157: Verify call + - S8037076, CVE-2014-2490: Check constant pool constants + - S8037162, CVE-2014-4263: More robust DH exchanges + - S8037167, CVE-2014-4216: Better method signature resolution + - S8039520, CVE-2014-4262: More atomicity of atomic updates +* Import of OpenJDK6 b32 + - OJ32: OpenJDK6-b31 isn't compatible with Windows platform + - OJ33: Update copyright headers introduced by the fix for OPENJDK6-32 + - OJ34: OpenJDK6-b31 backport of JDK-6638712 to openjdk6 + - OJ35: backport of JDK-6650759 to openjdk6 + - OJ36: Fix a mistake in backport of 8035119 + - S8013611: Modal dialog fails to obtain keyboard focus + - S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale + - S8028111: XML readers share the same entity expansion counter + - S8028285: RMI Thread can no longer call out to AWT + - S8029038: Revise fix for XML readers share the same entity expansion counter + - S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 + - S8042590: Running form URL throws NPE + - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader +* Backports + - S7027300, RH1098399: Unsynchronized HashMap access causes endless loop + - S7183251: Netbeans editor renders text wrong on JDK 7u6 build + New in release 1.13.3 (2014-04-15): * Security fixes From jvanek at redhat.com Thu Jul 24 14:14:32 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 24 Jul 2014 16:14:32 +0200 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53CE7EA4.8080906@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> Message-ID: <53D114C8.1080407@redhat.com> ... >> 1. Defect type: RESOURCE_LEAK >> 10. icedtea-web-1.5/plugin/icedteanp/IcedTeaPluginUtils.cc:1154:leaked_handle ? Handle variable >> "plugin_file_log_fd" going out of scope leaks the handle. > > Does this one matter? I added a close() anyway but like Omair says it seems like it will be cleaned > up anyway. But it's better to explicitly clean it I suppose. Yes. As Omair pointed. Remove this close. > >> ... >>> } >>> return r2; >> >> >> For those 4 mkdirs - if this directory already exists then the mkdir should not be called at all >> (maybe some check for its write ability?? moreover 100% for different changeset) >> Anyway. THis check is included. So I woud liek to add >> (!IcedTeaPluginUtilities::file_exists(r1){} if (!isWriteableDirectory(){"warning to user} >> >> As thsoe are called only when and it do not exists, then more serious warring with possible >> workarounds like check permissions on parents, set XDG_CONFIG* for first hunk and.. not sure what >> for second :) or similar and warning like ITW will not work., SHould be printed. >> > > So all of this in a separate changeset right? Can't most of this work be done just by checking errno > after mkdir fails? But please, Don't forget it. Othewrwise this check will lost a bit of sense. > >> >>> } >>> diff --git a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >>> b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >>> --- a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >>> +++ b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >>> @@ -704,7 +704,7 @@ IcedTeaScriptableJavaObject::setProperty >>> browser_functions.intfromidentifier(name_id) >= 0) // else if array and requesting index >>> { >>> >>> - JavaResultData* java_result = java_request.getArrayLength(instance_id); >>> + java_result = java_request.getArrayLength(instance_id); >>> if (java_result->error_occurred) >>> { >>> PLUGIN_ERROR("ERROR: Couldn't fetch array length\n"); >>> >> >> >> I have looked into code and have not found a reason for in-the-middle-decklaration. So this is >> really probably fix for hidden minor bug. >> >> >> J. > > Yea, I couldn't find a reason for it to. Seems like it was probably just an accident. > After removal of close, ok for head and 1.5 from my side. Please verify with omair. He had his issues. J. From jvanek at redhat.com Thu Jul 24 15:43:51 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 24 Jul 2014 17:43:51 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C54F95.3010703@redhat.com> <53C5551E.20300@gmx.de> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> Message-ID: <53D129B7.5070009@redhat.com> I'm happy with this patch with one execption. I would actually like the part catch(unsupportedencodinge){ tostring(witoutEncoding) } to return. BUt log the exception :) Also this should be sanitized, that the exception is thrown only once (all follwing toString will use no-encoding) Pleasestick the new path togeher with tests. With some luck next iteration will be last (Unless jacob/Omair complains to strongly:) J. From andrew at icedtea.classpath.org Thu Jul 24 16:28:41 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 24 Jul 2014 16:28:41 +0000 Subject: /hg/icedtea7: PR1847: Synchronise javac.in with IcedTea6 Message-ID: changeset e39193e994c8 in /hg/icedtea7 details: http://icedtea.classpath.org/hg/icedtea7?cmd=changeset;node=e39193e994c8 author: Andrew John Hughes date: Thu Jul 24 17:28:25 2014 +0100 PR1847: Synchronise javac.in with IcedTea6 2014-06-13 Andrew John Hughes PR1847: Synchronise javac.in with IcedTea6 * NEWS: Updated. 2013-05-15 Andrew John Hughes * javac.in: Handle -Xbootclasspath/p, -Xbootclasspath and -Xbootclasspath/a by prepending, setting or appending its value to the bootclasspath option used to ecj, respectively. 2012-05-09 Andrew John Hughes * javac.in: Split out '-J' prefixed options and pass them to the VM rather than ecj. Filter out '-J-Xbootclasspath/p:', which makes no sense as there's nothing to prepend, and confuses the VM. 2012-11-28 Andrew John Hughes * javac.in: Add final else block which exits with an error. diffstat: ChangeLog | 26 ++++++++++++++++++++++++++ NEWS | 2 ++ javac.in | 54 +++++++++++++++++++++++++++++++++++++++++------------- 3 files changed, 69 insertions(+), 13 deletions(-) diffs (151 lines): diff -r 3e8a142adaf7 -r e39193e994c8 ChangeLog --- a/ChangeLog Wed Jun 25 13:28:41 2014 -0400 +++ b/ChangeLog Thu Jul 24 17:28:25 2014 +0100 @@ -1,5 +1,31 @@ 2014-06-13 Andrew John Hughes + PR1847: Synchronise javac.in with IcedTea6 + * NEWS: Updated. + +2013-05-15 Andrew John Hughes + + * javac.in: Handle -Xbootclasspath/p, -Xbootclasspath + and -Xbootclasspath/a by prepending, setting or appending + its value to the bootclasspath option used to ecj, + respectively. + +2012-05-09 Andrew John Hughes + + * javac.in: + Split out '-J' prefixed options and pass them + to the VM rather than ecj. Filter out + '-J-Xbootclasspath/p:', which makes no sense + as there's nothing to prepend, and confuses + the VM. + +2012-11-28 Andrew John Hughes + + * javac.in: + Add final else block which exits with an error. + +2014-06-25 Andrew John Hughes + * NEWS: Add release notes for 2.5.0 and remove duplicates. diff -r 3e8a142adaf7 -r e39193e994c8 NEWS --- a/NEWS Wed Jun 25 13:28:41 2014 -0400 +++ b/NEWS Thu Jul 24 17:28:25 2014 +0100 @@ -78,6 +78,8 @@ - S8038481: CMM Testing: Min/MaxHeapFreeRatio flags should be manageable through the API - S8038640: new hotspot build - hs24.80-b06 - S8038785: hot workaround fix for a crash in C2 compiler at Node::rematerialize +* Bug fixes + - PR1847: Synchronise javac.in with IcedTea6 New in release 2.5.0 (2014-06-13): diff -r 3e8a142adaf7 -r e39193e994c8 javac.in --- a/javac.in Wed Jun 25 13:28:41 2014 -0400 +++ b/javac.in Thu Jul 24 17:28:25 2014 +0100 @@ -1,7 +1,7 @@ #!/usr/bin/perl -w use strict; use constant NO_DUP_ARGS => qw(-source -target -d -encoding); -use constant STRIP_ARGS_1 => qw(-Werror -implicit:none); +use constant STRIP_ARGS_1 => qw(-Werror -implicit:none -J-Xbootclasspath/p:); use constant STRIP_ARGS_2 => qw(-Xmaxwarns); my ($ECJ_WARNINGS, $JAVAC_WARNINGS); @@ -18,19 +18,32 @@ } my @bcoption; -my @bcoptions = grep {$_ =~ '^-Xbootclasspath/p:' } @ARGV; +my @bcoptionsp = grep {$_ =~ '^-Xbootclasspath/p:' } @ARGV; +my @bcoptions = grep {$_ =~ '^-Xbootclasspath:' } @ARGV; +my @bcoptionsa = grep {$_ =~ '^-Xbootclasspath/a:' } @ARGV; +my $bcp = $bcoptionsp[0]; my $bc = $bcoptions[0]; +my $bca = $bcoptionsa[0]; my $systembc = glob '@abs_top_builddir@/bootstrap/jdk1.6.0/jre/lib/rt.jar'; +if ($bcp) +{ + $bcp =~ s/^[^:]*://; + $systembc = join ":", $bcp, $systembc; +} if ($bc) { $bc =~ s/^[^:]*://; - $systembc = join ":", $bc, $systembc; + $systembc = $bc; +} +if ($bca) +{ + $bca =~ s/^[^:]*://; + $systembc = join ":", $systembc, $bca; } push @bcoption, '-bootclasspath', $systembc unless grep {$_ eq '-bootclasspath'} @ARGV; my @ecj_parms = ($ECJ_WARNINGS, @bcoption); -my @javac_parms = ($JAVAC_WARNINGS, '-Xprefer:source', - '-XDignore.symbol.file=true', '-J-Xmx1024m'); +my @javac_parms = ($JAVAC_WARNINGS, '-Xprefer:source', '-XDignore.symbol.file=true'); # Work around ecj's inability to handle duplicate command-line # options and unknown javac options. @@ -59,31 +72,46 @@ splice @new_args, $_, 2 for @indices; } - return @new_args; + return \@new_args; +} + +sub split_vm_args +{ + my @new_args = @{$_[0]}; + + my @vm_args = map { substr $_, 2 } grep $_ =~ /^-J/, @new_args; + my @javac_args = grep $_ !~ /^-J/, @new_args; + + return (\@vm_args, \@javac_args); } if ( -e "@abs_top_builddir@/native-ecj" ) { - my @ecj_args = gen_ecj_opts( \@ARGV ); - exec '@abs_top_builddir@/native-ecj', @ecj_parms, @ecj_args ; + my $ecj_args = gen_ecj_opts( \@ARGV ); + exec '@abs_top_builddir@/native-ecj', @ecj_parms, @$ecj_args ; } elsif ( -e "@JAVAC@" ) { if ("@USING_ECJ@" eq "yes") { - my @ecj_args = gen_ecj_opts( \@ARGV ); - exec '@JAVAC@', @ecj_parms, @ecj_args ; + my $ecj_args = gen_ecj_opts( \@ARGV ); + exec '@JAVAC@', @ecj_parms, @$ecj_args ; } else { exec '@JAVAC@', @javac_parms, @ARGV ; } } -else +elsif ( -e "@ECJ_JAR@" ) { - my @ecj_args = gen_ecj_opts( \@ARGV ); + my ($vm_args, $javac_args) = split_vm_args (gen_ecj_opts( \@ARGV )); my @CLASSPATH = ('@ECJ_JAR@'); push @CLASSPATH, split /:/, $ENV{"CLASSPATH"} if exists $ENV{"CLASSPATH"}; $ENV{"CLASSPATH"} = join ':', @CLASSPATH; - exec '@JAVA@', 'org.eclipse.jdt.internal.compiler.batch.Main', @ecj_parms, @ecj_args; + exec '@JAVA@', @$vm_args, 'org.eclipse.jdt.internal.compiler.batch.Main', @ecj_parms, @$javac_args; } +else +{ + print STDERR "No Java compiler to run"; + exit -1; +} From bugzilla-daemon at icedtea.classpath.org Thu Jul 24 16:28:50 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 24 Jul 2014 16:28:50 +0000 Subject: [Bug 1847] [IcedTea7] Synchronise javac.in with IcedTea6 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1847 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7?cmd=changeset;node=e39193e994c8 author: Andrew John Hughes date: Thu Jul 24 17:28:25 2014 +0100 PR1847: Synchronise javac.in with IcedTea6 2014-06-13 Andrew John Hughes PR1847: Synchronise javac.in with IcedTea6 * NEWS: Updated. 2013-05-15 Andrew John Hughes * javac.in: Handle -Xbootclasspath/p, -Xbootclasspath and -Xbootclasspath/a by prepending, setting or appending its value to the bootclasspath option used to ecj, respectively. 2012-05-09 Andrew John Hughes * javac.in: Split out '-J' prefixed options and pass them to the VM rather than ecj. Filter out '-J-Xbootclasspath/p:', which makes no sense as there's nothing to prepend, and confuses the VM. 2012-11-28 Andrew John Hughes * javac.in: Add final else block which exits with an error. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Thu Jul 24 17:30:40 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 24 Jul 2014 17:30:40 +0000 Subject: [Bug 1847] [IcedTea7] Synchronise javac.in with IcedTea6 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1847 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: From bugzilla-daemon at icedtea.classpath.org Thu Jul 24 17:30:41 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 24 Jul 2014 17:30:41 +0000 Subject: [Bug 1698] [TRACKER] IcedTea 2.6.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1698 Bug 1698 depends on bug 1847, which changed state. Bug 1847 Summary: [IcedTea7] Synchronise javac.in with IcedTea6 http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1847 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: From bugzilla-daemon at icedtea.classpath.org Thu Jul 24 17:30:42 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 24 Jul 2014 17:30:42 +0000 Subject: [Bug 1846] [IcedTea7] Build fails when using IcedTea7 as bootstrap JDK with native ecj In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1846 Bug 1846 depends on bug 1847, which changed state. Bug 1847 Summary: [IcedTea7] Synchronise javac.in with IcedTea6 http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1847 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: From aazores at redhat.com Fri Jul 25 13:20:53 2014 From: aazores at redhat.com (Andrew Azores) Date: Fri, 25 Jul 2014 09:20:53 -0400 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53D114C8.1080407@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> <53D114C8.1080407@redhat.com> Message-ID: <53D259B5.9090402@redhat.com> On 07/24/2014 10:14 AM, Jiri Vanek wrote: > ... >>> 1. Defect type: RESOURCE_LEAK >>> 10. >>> icedtea-web-1.5/plugin/icedteanp/IcedTeaPluginUtils.cc:1154:leaked_handle >>> ? Handle variable >>> "plugin_file_log_fd" going out of scope leaks the handle. >> >> Does this one matter? I added a close() anyway but like Omair says it >> seems like it will be cleaned >> up anyway. But it's better to explicitly clean it I suppose. > > Yes. As Omair pointed. Remove this close. Removed. >> >>> > ... >>>> } >>>> return r2; >>> >>> >>> For those 4 mkdirs - if this directory already exists then the mkdir >>> should not be called at all >>> (maybe some check for its write ability?? moreover 100% for different >>> changeset) >>> Anyway. THis check is included. So I woud liek to add >>> (!IcedTeaPluginUtilities::file_exists(r1){} if >>> (!isWriteableDirectory(){"warning to user} >>> >>> As thsoe are called only when and it do not exists, then more >>> serious warring with possible >>> workarounds like check permissions on parents, set XDG_CONFIG* for >>> first hunk and.. not sure what >>> for second :) or similar and warning like ITW will not work., SHould >>> be printed. >>> >> >> So all of this in a separate changeset right? Can't most of this work >> be done just by checking errno >> after mkdir fails? > > But please, Don't forget it. Othewrwise this check will lost a bit of > sense. Updated the patch a bit. >> >>> >>>> } >>>> diff --git a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >>>> b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >>>> --- a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >>>> +++ b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc >>>> @@ -704,7 +704,7 @@ IcedTeaScriptableJavaObject::setProperty >>>> browser_functions.intfromidentifier(name_id) >= 0) // else if array >>>> and requesting index >>>> { >>>> >>>> - JavaResultData* java_result = >>>> java_request.getArrayLength(instance_id); >>>> + java_result = java_request.getArrayLength(instance_id); >>>> if (java_result->error_occurred) >>>> { >>>> PLUGIN_ERROR("ERROR: Couldn't fetch array length\n"); >>>> >>> >>> >>> I have looked into code and have not found a reason for >>> in-the-middle-decklaration. So this is >>> really probably fix for hidden minor bug. >>> >>> >>> J. >> >> Yea, I couldn't find a reason for it to. Seems like it was probably >> just an accident. >> > > > After removal of close, ok for head and 1.5 from my side. Please verify > with omair. He had his issues. > > > J. > Pinging Omair. Thanks, -- Andrew Azores -------------- next part -------------- A non-text attachment was scrubbed... Name: rh1121549-fixes-5.patch Type: text/x-patch Size: 4518 bytes Desc: not available URL: From jkang at redhat.com Fri Jul 25 14:15:53 2014 From: jkang at redhat.com (Jie Kang) Date: Fri, 25 Jul 2014 10:15:53 -0400 (EDT) Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53D129B7.5070009@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> <53D129B7.5070009@redhat.com> Message-ID: <153158101.12910900.1406297753220.JavaMail.zimbra@redhat.com> Hello, > > I'm happy with this patch with one execption. > I would actually like the part > > catch(unsupportedencodinge){ > tostring(witoutEncoding) > } > > to return. BUt log the exception :) The newest iteration actually no longer needs this :D Jacob and Omair caught the mistakes there so thanks to them! I attached the newest one again just for easy reference. > > Also this should be sanitized, that the exception is thrown only once (all > follwing toString will > use no-encoding) > > Pleasestick the new path togeher with tests. With some luck next iteration > will be last (Unless > jacob/Omair complains to strongly:) Should the backport to 1.5 include the tests as well? > > J. > Regards! -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: console-1858-5.patch Type: text/x-patch Size: 6124 bytes Desc: not available URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 25 16:05:50 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 25 Jul 2014 16:05:50 +0000 Subject: [Bug 1883] New: [IcedTea7] Fallback on dlopen rather than throwing an exception when searching for libpcsclite Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1883 Bug ID: 1883 Summary: [IcedTea7] Fallback on dlopen rather than throwing an exception when searching for libpcsclite Product: IcedTea Version: 7-hg Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org PlatformPCSC.java throws an exception if it can't find libpcsclite.so on one of three hardcoded paths. This causes it not to be found on platforms where it is actually available, including those which have linked the library at compile-time and don't even need to find it. We should instead fall back on the name of the library "libpcsclite.so.1", which will then allow dlopen to do the search. https://bazaar.launchpad.net/~openjdk/openjdk/openjdk7/revision/563 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 25 16:06:50 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 25 Jul 2014 16:06:50 +0000 Subject: [Bug 1698] [TRACKER] IcedTea 2.6.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1698 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1883 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 25 16:06:50 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 25 Jul 2014 16:06:50 +0000 Subject: [Bug 1883] [IcedTea7] Fallback on dlopen rather than throwing an exception when searching for libpcsclite In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1883 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1698 Target Milestone|--- |2.6.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Fri Jul 25 19:35:46 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 25 Jul 2014 19:35:46 +0000 Subject: [Bug 1879] Security Approval Panel hangs on Closing Browser In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1879 --- Comment #1 from Lukasz Dracz --- Looking into this bug and trying to reproduce this I have found that: -All the dialogs I have managed to find for icedtea-web continue to exist after firefox is closed, and the firefox process exists while the dialog does, and is gone when the dialog goes away However: -After an action is selected on the dialog such as the x button, close, yes, etc. the firefox proccess ends once the dialog disappears Except for this specific dialog (there may be others but from what I've tested all the others seem to behave correctly) Now for this dialog I have found that: -Pressing x button,run or close will have the firefox process remain. Results in the following stack trace: netx: Initialization Error: Could not initialize applet. (Fatal: Launch Error: Canceled on user request. ) net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize applet. For more information click "more information button". at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:746) at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:675) at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:908) Caused by: net.sourceforge.jnlp.LaunchException: Fatal: Launch Error: Canceled on user request. at net.sourceforge.jnlp.security.JNLPAppVerifier.checkTrustWithUser(JNLPAppVerifier.java:134) at net.sourceforge.jnlp.tools.JarCertVerifier.checkTrustWithUser(JarCertVerifier.java:602) at net.sourceforge.jnlp.runtime.JNLPClassLoader.checkTrustWithUser(JNLPClassLoader.java:1047) at net.sourceforge.jnlp.runtime.JNLPClassLoader.initializeResources(JNLPClassLoader.java:695) at net.sourceforge.jnlp.runtime.JNLPClassLoader.(JNLPClassLoader.java:277) at net.sourceforge.jnlp.runtime.JNLPClassLoader.createInstance(JNLPClassLoader.java:351) at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:418) at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:394) at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:711) ... 2 more -Pressing sandbox another dialog appears onto which pressing proceed does close the firefox process. -Pressing sandbox and then pressing cancel or x button on the new dialog does not end the firefox process either. Results in the following stacktrace: netx: Initialization Error: Could not initialize applet. (The application uses non-codebase resources, which do match its Application-Library-Allowable-Codebase Attribute, but was blocked from running by the user.) net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize applet. For more information click "more information button". at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:746) at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:675) at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:908) Caused by: net.sourceforge.jnlp.LaunchException: The application uses non-codebase resources, which do match its Application-Library-Allowable-Codebase Attribute, but was blocked from running by the user. at net.sourceforge.jnlp.runtime.ManifestAttributesChecker.checkApplicationLibraryAllowableCodebaseAttribute(ManifestAttributesChecker.java:330) at net.sourceforge.jnlp.runtime.ManifestAttributesChecker.checkAll(ManifestAttributesChecker.java:82) at net.sourceforge.jnlp.runtime.JNLPClassLoader.(JNLPClassLoader.java:288) at net.sourceforge.jnlp.runtime.JNLPClassLoader.createInstance(JNLPClassLoader.java:351) at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:418) at net.sourceforge.jnlp.runtime.JNLPClassLoader.getInstance(JNLPClassLoader.java:394) at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:711) ... 2 more Just reporting my findings for now and I will look further into 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: From guillaume at alaux.net Sun Jul 27 09:57:02 2014 From: guillaume at alaux.net (Guillaume Alaux) Date: Sun, 27 Jul 2014 11:57:02 +0200 Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: <20140718212106.GA21559@carrie.the212.com> References: <20140718212106.GA21559@carrie.the212.com> Message-ID: On 18 July 2014 23:21, Andrew Hughes wrote: > We are pleased to announce the inaugural release of IcedTea-Sound. At > present, IcedTea-Sound contains the PulseAudio provider which was > removed from IcedTea itself from 2.5.0 onwards. More providers may be > included in the future. > > If you find an issue with the release, please report it to our bug > database (http://icedtea.classpath.org/bugzilla) under the > IcedTea-Sound product and the appropriate component. Development > discussion takes place on the distro-pkg-dev at openjdk.java.net mailing > list (as with IcedTea) and patches are always welcome. > > Full details of the release can be found below. > > What's New? > =========== > New in release 1.0.0 (2014-07-18): > > * PR1741: Break PulseAudio provider out into IcedTea-Sound > * PR1840: Replace Makefile.am references to PULSE_JAVA with ICEDTEA_SOUND > * PR1842: Linker does not check that symbols can be resolved for libpulse-java.so > * PR1876: The following shared libraries lack a SONAME: /usr/lib64/libicedtea-sound.so > > The tarballs can be downloaded from: > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz > > We provide both gzip and xz tarballs, so that those who are able to > make use of the smaller tarball produced by xz may do so. > > The tarballs are accompanied by digital signatures available at: > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz.sig > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz.sig > > These are 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 > > SHA256 checksums: > > 0d09bc9656f9125642f70bb322f8ec92ec0ae28fdd295e83c4ce3c7576e79bd3 icedtea-sound-1.0.0.tar.gz > cb47dec753e4853ba8021a3b532631c2b751450d0d9d580c3ddce99fe8b4c7a9 icedtea-sound-1.0.0.tar.gz.sig > 29511d271cbb5259eac5dd48867e27d61ce4ce15026dc105277dbf1238333dbb icedtea-sound-1.0.0.tar.xz > c16cb29502d6edb16fb611b3d1ffbda199919f56afc8691a7dceee08b009b528 icedtea-sound-1.0.0.tar.xz.sig > > The checksums can be downloaded from: > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.sha256 > > The following people helped with this release: > > * Andrew Hughes (all bug fixes, release management) > > We would also like to thank the bug reporters and testers! > > To get started: > > $ tar xzf icedtea-sound-1.0.0.tar.gz > > or: > > $ tar x -I xz -f icedtea-sound-1.0.0.tar.xz > > then: > > $ mkdir its-build > $ cd its-build > $ ../icedtea-sound-1.0.0/configure --prefix=${install_location} > $ make > $ make install > > where ${install_location} should be replaced by the prefix where you > wish to install IcedTea-Sound (default is /usr/local). Depending on > the prefix selected, the 'make install' step may need root privileges. > > Full build requirements and instructions are available in the INSTALL file. > > 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 Hello Andrew, I can't quite get the relation between icedtea-sound and an OpenJDK built with Icedtea. It seems I don't need icedtea-sound for my Java app to play sound: I tried tuxguitar [0] and this Oracle test app [1] that are able to play sound even though I have an OpenJDK + Icedtea 2.5.1 but **no** icedtea-sound installed. Complete version: java version "1.7.0_65" OpenJDK Runtime Environment (IcedTea 2.5.1) (Arch Linux build 7.u65_2.5.1-5-x86_64) OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode) Could you please let me know what I am missing here? [0] http://sourceforge.net/projects/tuxguitar/ [1] http://www.oracle.com/technetwork/java/index-139508.html Thanks, Guillaume From bugzilla-daemon at icedtea.classpath.org Mon Jul 28 00:58:04 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 28 Jul 2014 00:58:04 +0000 Subject: [Bug 1884] New: ProjectLibre just did close and nothing else. I didn't saw another problem or a strange behavior. Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1884 Bug ID: 1884 Summary: ProjectLibre just did close and nothing else. I didn't saw another problem or a strange behavior. Product: IcedTea Version: 6-hg Hardware: x86_64 OS: Linux Status: NEW Severity: minor Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: brenillos at hotmail.com CC: unassigned at icedtea.classpath.org Created attachment 1131 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1131&action=edit After execute ProjectLibre, the log appers and LP closes immediatly. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Mon Jul 28 01:00:43 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 28 Jul 2014 01:00:43 +0000 Subject: [Bug 1884] ProjectLibre just did close and nothing else. I didn't saw another problem or a strange behavior. In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1884 leunamme changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P5 |P2 --- Comment #1 from leunamme --- I'm not english native, so, sorry if my english sounds like a robot. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Mon Jul 28 14:29:45 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Mon, 28 Jul 2014 16:29:45 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <153158101.12910900.1406297753220.JavaMail.zimbra@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> <53D129B7.5070009@redhat.com> <153158101.12910900.1406297753220.JavaMail.zimbra@redhat.com> Message-ID: <53D65E59.308@redhat.com> On 07/25/2014 04:15 PM, Jie Kang wrote: > Hello, > >> >> I'm happy with this patch with one execption. >> I would actually like the part >> >> catch(unsupportedencodinge){ >> tostring(witoutEncoding) >> } >> >> to return. BUt log the exception :) > > > The newest iteration actually no longer needs this :D Jacob and Omair caught the mistakes there so thanks to them! > > I attached the newest one again just for easy reference. > >> >> Also this should be sanitized, that the exception is thrown only once (all >> follwing toString will >> use no-encoding) >> >> Pleasestick the new path togeher with tests. With some luck next iteration >> will be last (Unless >> jacob/Omair complains to strongly:) > > > Should the backport to 1.5 include the tests as well? > > >> >> J. >> > > > Regards! > Assuming it works ( :-) ) (well console worked for me, and seemd to be flushed correctly.. but I was unable to verify the bug fix... :( ) Ok to head and 1.5 J. From aazores at redhat.com Mon Jul 28 14:48:32 2014 From: aazores at redhat.com (Andrew Azores) Date: Mon, 28 Jul 2014 10:48:32 -0400 Subject: [rfc][icedtea-web] Java Console Pane Size Fix In-Reply-To: <1466272232.6770745.1405108572692.JavaMail.zimbra@redhat.com> References: <1466272232.6770745.1405108572692.JavaMail.zimbra@redhat.com> Message-ID: <53D662C0.2090405@redhat.com> On 07/11/2014 03:56 PM, Jie Kang wrote: > Hello, > > This patch addresses the bug: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1859 > > Previously on smaller resolutions (e.g. 1024x768), the panel for "Show Details" was not fully visible. The patch places the panel in a JScrollPane so the user can scroll to see all the available options. > > The naming and structure follows the previously written code. > > > Regards, > Looks OK to me. Thanks, -- Andrew A From jvanek at redhat.com Mon Jul 28 15:14:15 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Mon, 28 Jul 2014 17:14:15 +0200 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53D259B5.9090402@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> <53D114C8.1080407@redhat.com> <53D259B5.9090402@redhat.com> Message-ID: <53D668C7.3060901@redhat.com> > diff --git a/plugin/icedteanp/IcedTeaPluginUtils.cc b/plugin/icedteanp/IcedTeaPluginUtils.cc > --- a/plugin/icedteanp/IcedTeaPluginUtils.cc > +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc > @@ -59,6 +59,19 @@ > /* Plugin async call queue */ > static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< PluginThreadCall* >(); > > +int > +IcedTeaPluginUtilities::createLogDirectory(std::string dir) > +{ > + if (!IcedTeaPluginUtilities::file_exists(dir)) > + { > + if (!g_mkdir(dir.c_str(), 755)) > + { > + return errno; > + } > + } > + return 0; > +} > + ... > + int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); > + if (!parentErr){ > + PLUGIN_ERROR("FATAL: Failed to create IcedTea-Web config directory %s: %s\n", r1.c_str(), strerror(parentErr)); > + return NULL; } When you are her, you should also verify (if it exists then) whether it is directory or file. If File, return failure. I would discourage you from returning errno. I would say Print error messages here, and return true/false. true/false is the only indicator you need if you need to decide wheter continue or not. And I would suggest continue at all cost, but print out a warning that it probably will nto work. So I would go with: bool IcedTeaPluginUtilities::createLogDirectory(std::string dir) { if (!file_exists(dir) ) { if (!g_mkdir(dir.c_str(), 755)) int x=errno echo "warning, creation of $dir failed. Itw need this direcotry to work. You can expect failre later. reason: "error_toString(x) //always save errorn return false; } } else { if (!is_dir(dir)){ echo "warning, cannot create $dir becasue there is already an file" return false } } return true; //feel free to add some debug only outputs here like exists, continuing, is dir, continuing... } int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); // warnings have been printed // no need to die, trying to continue Also.. :-/ .. your patch kills ITW at my machine [unknown user][ITW-C-PLUGIN][MESSAGE_DEBUG][Mon Jul 28 16:11:03 CEST 2014][/home/jvanek/hg/icedtea-web/plugin/icedteanp/IcedTeaParseProperties.cc:141] ITNPP Thread# 139757752895360, gthread 0x7f1bd2614120: FATAL: Failed to create IcedTea-Web config directory /home/jvanek/.config/icedtea-web: Success and firefox dies. Please run your code on soem usecases before posting. Well the /home/jvanek/.config/icedtea-web do exist at my pc - so somethig is wrong :) My reason to try continuing is simple - There may be cases, when .confing/itw may be some special device - well nearly impossible, but still possible. Another note - sinc you created new method - please unittest it in cpp-unit-tests. And positive note at the end. I run covescan on your patch and not sure what to read - http://cov01.lab.eng.brq.redhat.com/covscanhub/task/13258/ :)) J. From jkang at icedtea.classpath.org Mon Jul 28 14:50:26 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Mon, 28 Jul 2014 14:50:26 +0000 Subject: /hg/icedtea-web: Fixed ControlPanel UI for lower resolutions. Message-ID: changeset fcfceec90e2d in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=fcfceec90e2d author: Jie Kang date: Mon Jul 28 10:50:03 2014 -0400 Fixed ControlPanel UI for lower resolutions. 2014-07-28 Jie Kang Fix to Control Panel UI for lower resolutions. Addresses bug PR1856 where part of the dialog is hidden and unaccessible on lower resolutions such as 800 x 600. * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java diffstat: ChangeLog | 8 + netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java | 3 +- netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java | 193 +++++---- 3 files changed, 119 insertions(+), 85 deletions(-) diffs (349 lines): diff -r 65fef87606cd -r fcfceec90e2d ChangeLog --- a/ChangeLog Tue Jul 22 11:20:03 2014 -0400 +++ b/ChangeLog Mon Jul 28 10:50:03 2014 -0400 @@ -1,3 +1,11 @@ +2014-07-28 Jie Kang + + Fix to Control Panel UI for lower resolutions. Addresses bug + PR1856 where part of the dialog is hidden and unaccessible + on lower resolutions such as 800 x 600. + * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java + * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java + 2014-07-22 Fridrich Strba * plugin/icedteanp/IcedTeaPluginUtils.cc (flush_pre_init_messages): diff -r 65fef87606cd -r fcfceec90e2d netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java --- a/netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java Tue Jul 22 11:20:03 2014 -0400 +++ b/netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java Mon Jul 28 10:50:03 2014 -0400 @@ -120,7 +120,6 @@ add(buttonPanel, BorderLayout.PAGE_END); setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); pack(); - setMinimumSize(getPreferredSize()); } private JPanel createTopPanel() { @@ -304,7 +303,7 @@ } }); JScrollPane settingsListScrollPane = new JScrollPane(settingsList); - settingsListScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + settingsListScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); final JPanel settingsDetailPanel = new JPanel(); settingsDetailPanel.setLayout(new BorderLayout()); diff -r 65fef87606cd -r fcfceec90e2d netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Tue Jul 22 11:20:03 2014 -0400 +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Mon Jul 28 10:50:03 2014 -0400 @@ -53,15 +53,25 @@ import java.util.regex.Pattern; import javax.swing.DefaultCellEditor; +import javax.swing.DefaultComboBoxModel; +import javax.swing.DefaultListCellRenderer; +import javax.swing.GroupLayout; +import javax.swing.JButton; +import javax.swing.JCheckBox; import javax.swing.JComboBox; import javax.swing.JDialog; import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JList; import javax.swing.JOptionPane; import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTabbedPane; import javax.swing.JTable; import javax.swing.JTextField; +import javax.swing.LayoutStyle; +import javax.swing.ListCellRenderer; import javax.swing.RowFilter; -import javax.swing.RowFilter.Entry; import javax.swing.RowSorter.SortKey; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; @@ -83,31 +93,31 @@ 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.util.ScreenFinder; import net.sourceforge.jnlp.util.logging.OutputController; -import net.sourceforge.jnlp.util.ScreenFinder; -public class UnsignedAppletsTrustingListPanel extends javax.swing.JPanel { +public class UnsignedAppletsTrustingListPanel extends JPanel { - private javax.swing.JButton helpButton; - private javax.swing.JButton deleteButton; - private javax.swing.JButton addRowButton; - private javax.swing.JButton validateTableButton; - private javax.swing.JButton testUrlButton; - private javax.swing.JButton invertSelectionButton; - private javax.swing.JButton moveRowUpButton; - private javax.swing.JButton moveRowDownButton; - private javax.swing.JCheckBox askBeforeActionCheckBox; - 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; - private javax.swing.JTabbedPane mainTabPanel; - private javax.swing.JTable userTable; - private javax.swing.JScrollPane globalTableScrollPane; - private javax.swing.JTable globalTable; + private JButton helpButton; + private JButton deleteButton; + private JButton addRowButton; + private JButton validateTableButton; + private JButton testUrlButton; + private JButton invertSelectionButton; + private JButton moveRowUpButton; + private JButton moveRowDownButton; + private JCheckBox askBeforeActionCheckBox; + private JCheckBox filterRegexesCheckBox; + private JComboBox mainPolicyComboBox; + private JComboBox deleteTypeComboBox; + private JComboBox viewFilter; + private JLabel globalBehaviourLabel; + private JLabel securityLevelLabel; + private JScrollPane userTableScrollPane; + private JTabbedPane mainTabPanel; + private JTable userTable; + private JScrollPane globalTableScrollPane; + private JTable globalTable; private final UnsignedAppletActionStorageExtendedImpl customBackEnd; private final UnsignedAppletActionStorageExtendedImpl globalBackEnd; private final UnsignedAppletActionTableModel customModel; @@ -115,7 +125,7 @@ private final ByPermanencyFilter customFilter; private final ByPermanencyFilter globalFilter; private final DeploymentConfiguration conf; - private javax.swing.JTable currentTable; + private JTable currentTable; private UnsignedAppletActionTableModel currentModel; private String lastDoc; private String lastCode; @@ -135,7 +145,6 @@ public void run() { try { JFrame f = new JFrame(); - f.setSize(700, 300); f.setLayout(new BorderLayout()); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); DeploymentConfiguration cc = new DeploymentConfiguration(); @@ -143,6 +152,7 @@ File ff1 = new File(defaultFile1); File ff2 = new File(defaultFile2); f.add(new UnsignedAppletsTrustingListPanel(ff2, ff1, cc)); + f.pack(); f.setVisible(true); } catch (Exception ex) { OutputController.getLogger().log(OutputController.Level.ERROR_ALL, ex); @@ -245,13 +255,28 @@ model.clear(); } + ListCellRenderer comboRendererWithToolTips = new DefaultListCellRenderer() { + + @Override + public final Component getListCellRendererComponent(final JList list, + final Object value, final int index, final boolean isSelected, + final boolean cellHasFocus) { + if (value != null) { + setToolTipText(value.toString()); + } + return super.getListCellRendererComponent(list, value, index, isSelected, + cellHasFocus); + } + + }; + private void initComponents() { - userTableScrollPane = new javax.swing.JScrollPane(); - globalTableScrollPane = new javax.swing.JScrollPane(); - userTable = createTbale(customModel); - globalTable = createTbale(globalModel); - helpButton = new javax.swing.JButton(); + userTableScrollPane = new JScrollPane(); + globalTableScrollPane = new JScrollPane(); + userTable = createTable(customModel); + globalTable = createTable(globalModel); + helpButton = new JButton(); mainPolicyComboBox = new JComboBox<>(new AppletSecurityLevel[] { AppletSecurityLevel.DENY_ALL, AppletSecurityLevel.DENY_UNSIGNED, @@ -259,20 +284,22 @@ AppletSecurityLevel.ALLOW_UNSIGNED }); mainPolicyComboBox.setSelectedItem(AppletSecurityLevel.getDefault()); - 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(); - validateTableButton = new javax.swing.JButton(); - askBeforeActionCheckBox = new javax.swing.JCheckBox(); - filterRegexesCheckBox = new javax.swing.JCheckBox(); - invertSelectionButton = new javax.swing.JButton(); - moveRowUpButton = new javax.swing.JButton(); - moveRowDownButton = new javax.swing.JButton(); - mainTabPanel = new javax.swing.JTabbedPane(); + mainPolicyComboBox.setRenderer(comboRendererWithToolTips); + + securityLevelLabel = new JLabel(); + globalBehaviourLabel = new JLabel(); + deleteTypeComboBox = new JComboBox<>(); + viewFilter = new JComboBox<>(); + deleteButton = new JButton(); + testUrlButton = new JButton(); + addRowButton = new JButton(); + validateTableButton = new JButton(); + askBeforeActionCheckBox = new JCheckBox(); + filterRegexesCheckBox = new JCheckBox(); + invertSelectionButton = new JButton(); + moveRowUpButton = new JButton(); + moveRowDownButton = new JButton(); + mainTabPanel = new JTabbedPane(); userTableScrollPane.setViewportView(userTable); @@ -338,15 +365,15 @@ globalBehaviourLabel.setText(Translator.R("APPEXTSECguiPanelGlobalBehaviourCaption")); - deleteTypeComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { + deleteTypeComboBox.setModel(new DefaultComboBoxModel<>(new String[] { Translator.R("APPEXTSECguiPanelDeleteMenuSelected"), Translator.R("APPEXTSECguiPanelDeleteMenuAllA"), Translator.R("APPEXTSECguiPanelDeleteMenuAllN"), Translator.R("APPEXTSECguiPanelDeleteMenuAlly"), Translator.R("APPEXTSECguiPanelDeleteMenuAlln"), Translator.R("APPEXTSECguiPanelDeleteMenuAllAll")})); - - viewFilter.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { + deleteTypeComboBox.setRenderer(comboRendererWithToolTips); + viewFilter.setModel(new DefaultComboBoxModel<>(new String[] { Translator.R("APPEXTSECguiPanelShowOnlyPermanent"), Translator.R("APPEXTSECguiPanelShowOnlyTemporal"), Translator.R("APPEXTSECguiPanelShowAll"), @@ -354,7 +381,7 @@ Translator.R("APPEXTSECguiPanelShowOnlyPermanentN"), Translator.R("APPEXTSECguiPanelShowOnlyTemporalY"), Translator.R("APPEXTSECguiPanelShowOnlyTemporalN")})); - + viewFilter.setRenderer(comboRendererWithToolTips); deleteButton.setText(Translator.R("APPEXTSECguiPanelDeleteButton")); deleteButton.setToolTipText(Translator.R("APPEXTSECguiPanelDeleteButtonToolTip")); deleteButton.addActionListener(new java.awt.event.ActionListener() { @@ -425,54 +452,54 @@ } }); - javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); + GroupLayout layout = new GroupLayout(this); this.setLayout(layout); layout.setHorizontalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup().addContainerGap() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(mainTabPanel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 583, Short.MAX_VALUE) - .addComponent(globalBehaviourLabel, javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() - .addComponent(securityLevelLabel).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGroup(GroupLayout.Alignment.TRAILING, layout.createSequentialGroup().addContainerGap() + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.TRAILING) + .addComponent(mainTabPanel, GroupLayout.Alignment.LEADING, 0, 583, Short.MAX_VALUE) + .addComponent(globalBehaviourLabel, GroupLayout.Alignment.LEADING, 0, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addComponent(securityLevelLabel, 0, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) .addComponent(mainPolicyComboBox, 0, 474, Short.MAX_VALUE)) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() - .addComponent(addRowButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(validateTableButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(testUrlButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 94, Short.MAX_VALUE) - .addComponent(moveRowDownButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(moveRowUpButton)) + .addGroup(GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addComponent(addRowButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(validateTableButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(testUrlButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 94, Short.MAX_VALUE) + .addComponent(moveRowDownButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(moveRowUpButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() - .addComponent(deleteButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(deleteTypeComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(invertSelectionButton)) + .addComponent(deleteButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(deleteTypeComboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(invertSelectionButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(layout.createSequentialGroup() - .addComponent(askBeforeActionCheckBox).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .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())); + .addComponent(askBeforeActionCheckBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(filterRegexesCheckBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 93, Short.MAX_VALUE) + .addComponent(viewFilter, 0, GroupLayout.PREFERRED_SIZE, Short.MAX_VALUE))).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(helpButton, GroupLayout.PREFERRED_SIZE, 108, GroupLayout.PREFERRED_SIZE))).addContainerGap())); layout.setVerticalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + layout.createParallelGroup(GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup().addContainerGap() - .addComponent(globalBehaviourLabel).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(globalBehaviourLabel).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING) .addComponent(securityLevelLabel) - .addComponent(mainPolicyComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(mainPolicyComboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.TRAILING) .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING, false) .addComponent(deleteButton) .addComponent(deleteTypeComboBox) - .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(invertSelectionButton, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(askBeforeActionCheckBox) .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) + .addComponent(helpButton, GroupLayout.PREFERRED_SIZE, 53, GroupLayout.PREFERRED_SIZE)).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(mainTabPanel, GroupLayout.DEFAULT_SIZE, 161, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(addRowButton) .addComponent(validateTableButton) .addComponent(testUrlButton) @@ -698,7 +725,7 @@ moveRowDownButton.setEnabled(b); } - private JTable createTbale(final TableModel model) { + private JTable createTable(final TableModel model) { JTable jt = new JTable() { @Override public TableCellEditor getCellEditor(int row, int column) { @@ -761,7 +788,7 @@ currentTable.setModel(currentModel); { currentTable.getRowSorter().setSortKeys(l); - + } } From jkang at icedtea.classpath.org Mon Jul 28 15:36:06 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Mon, 28 Jul 2014 15:36:06 +0000 Subject: /hg/icedtea-web: Fixed ConsoleOutputPane UI for lower resolutions. Message-ID: changeset 7973c970afd8 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=7973c970afd8 author: Jie Kang date: Mon Jul 28 11:16:35 2014 -0400 Fixed ConsoleOutputPane UI for lower resolutions. 2014-07-28 Jie Kang Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug PR1859 where part of the pane is hidden and unnaccessible when clicking "Show Details". * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java diffstat: ChangeLog | 6 +++++ netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java | 13 ++++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diffs (64 lines): diff -r fcfceec90e2d -r 7973c970afd8 ChangeLog --- a/ChangeLog Mon Jul 28 10:50:03 2014 -0400 +++ b/ChangeLog Mon Jul 28 11:16:35 2014 -0400 @@ -1,3 +1,9 @@ +2014-07-28 Jie Kang + Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug + PR1859 where part of the pane is hidden and unnaccessible when + clicking "Show Details". + * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java + 2014-07-28 Jie Kang Fix to Control Panel UI for lower resolutions. Addresses bug diff -r fcfceec90e2d -r 7973c970afd8 netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java --- a/netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java Mon Jul 28 10:50:03 2014 -0400 +++ b/netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java Mon Jul 28 11:16:35 2014 -0400 @@ -87,7 +87,9 @@ public ConsoleOutputPane(final ObservableMessagesProvider dataProvider) { model = new ConsoleOutputPaneModel(dataProvider); // Create final JComponents members + jPanel2 = new JPanel(); + jpanel2scrollpane = new JScrollPane(jPanel2); showHeaders = new JCheckBox(); showUser = new JCheckBox(); sortCopyAll = new JCheckBox(); @@ -668,12 +670,12 @@ addComponent(jScrollPane1, GroupLayout.DEFAULT_SIZE, 684, Short.MAX_VALUE). addGroup(jPanel1Layout.createSequentialGroup().addGroup(jPanel1Layout.createParallelGroup(GroupLayout.Alignment.TRAILING). addComponent(showHide, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, 672, Short.MAX_VALUE). - addComponent(jPanel2, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addContainerGap())))); + addComponent(jpanel2scrollpane, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addContainerGap())))); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(GroupLayout.Alignment.LEADING). addGroup(GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup().addContainerGap(). addComponent(jScrollPane1, GroupLayout.DEFAULT_SIZE, 329, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). - addComponent(jPanel2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). + addComponent(jpanel2scrollpane, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). addComponent(showHide).addContainerGap())); final JMenuItem tab = new JMenuItem("insert \\t"); @@ -862,11 +864,11 @@ } private final void showHideActionPerformed(final ActionEvent evt) { - if (jPanel2.isVisible()) { - jPanel2.setVisible(false); + if (jpanel2scrollpane.isVisible()) { + jpanel2scrollpane.setVisible(false); showHide.setText(Translator.R("ButShowDetails")); } else { - jPanel2.setVisible(true); + jpanel2scrollpane.setVisible(true); showHide.setText(Translator.R("ButHideDetails")); } } @@ -955,6 +957,7 @@ private final JButton copyRich; private final JCheckBox highLight; private final JEditorPane jEditorPane1; + private final JScrollPane jpanel2scrollpane; private final JPanel jPanel2; private final JScrollPane jScrollPane1; private final JCheckBox mark; From fridrich.strba at suse.com Tue Jul 22 13:22:48 2014 From: fridrich.strba at suse.com (Fridrich Strba) Date: Tue, 22 Jul 2014 15:22:48 +0200 Subject: Little tiny patch for icedtea-web Message-ID: <53CE65A8.3070606@suse.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello, good people, A little tiny patch for icedtea-web fixing a lack of return in non-void function. I also re-formated that function so that it has the indentation of the surrounding. If that is a problem, I can send a one-liner too. Cheers Fridrich Strba -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iEYEARECAAYFAlPOZagACgkQu9a1imXPdA+f5ACcDpCT27cdEIPj5mlBIxi6Nlzk Sv8An11viqrXgJOt/v7865ZtLl5ufWiw =mwM0 -----END PGP SIGNATURE----- -------------- next part -------------- A non-text attachment was scrubbed... Name: no-retur-in-non-void-function.patch Type: text/x-patch Size: 1420 bytes Desc: not available URL: From jkang at icedtea.classpath.org Mon Jul 28 15:56:26 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Mon, 28 Jul 2014 15:56:26 +0000 Subject: /hg/icedtea-web: Adjusted MethodOverloadResolver to follow LiveC... Message-ID: changeset 89083ad99374 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=89083ad99374 author: Jie Kang date: Mon Jul 28 11:55:52 2014 -0400 Adjusted MethodOverloadResolver to follow LiveConnect specification when dealing with superclasses. Now takes into account class hierarchy distance. 2014-06-20 Jie Kang Made adjustments to the MethodOverloadResolver to follow LiveConnect specification when dealing with superclasses. * tests/reproducers/simple/JSToJFuncResol/testcases/JSToJFuncResolTest.java: Removed Known to Fail annotation on test case that is now fixed. * plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java Added distance calculation for comparing superclass resolutions. diffstat: ChangeLog | 10 ++ plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java | 35 +++++++++- tests/reproducers/simple/JSToJFuncResol/testcases/JSToJFuncResolTest.java | 1 - 3 files changed, 43 insertions(+), 3 deletions(-) diffs (139 lines): diff -r 7973c970afd8 -r 89083ad99374 ChangeLog --- a/ChangeLog Mon Jul 28 11:16:35 2014 -0400 +++ b/ChangeLog Mon Jul 28 11:55:52 2014 -0400 @@ -1,4 +1,14 @@ +2014-06-20 Jie Kang + + Made adjustments to the MethodOverloadResolver to follow LiveConnect + specification when dealing with superclasses. + * tests/reproducers/simple/JSToJFuncResol/testcases/JSToJFuncResolTest.java: + Removed Known to Fail annotation on test case that is now fixed. + * plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java + Added distance calculation for comparing superclass resolutions. + 2014-07-28 Jie Kang + Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug PR1859 where part of the pane is hidden and unnaccessible when clicking "Show Details". diff -r 7973c970afd8 -r 89083ad99374 plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java --- a/plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java Mon Jul 28 11:16:35 2014 -0400 +++ b/plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java Mon Jul 28 11:55:52 2014 -0400 @@ -104,11 +104,19 @@ static class WeightedCast { private int cost; + private final int distance; private Object castedObject; public WeightedCast(int cost, Object castedObject) { this.cost = cost; this.castedObject = castedObject; + this.distance = 0; + } + + public WeightedCast(int cost, Object castedObject, int distance) { + this.cost = cost; + this.castedObject = castedObject; + this.distance = distance; } public Object getCastedObject() { @@ -118,6 +126,10 @@ public int getCost() { return cost; } + + public int getDistance() { + return distance; + } } @@ -161,6 +173,7 @@ java.lang.reflect.AccessibleObject[] candidates) { int lowestCost = Integer.MAX_VALUE; + int lowestDistance = Integer.MAX_VALUE; java.lang.reflect.AccessibleObject cheapestMethod = null; Object[] cheapestArgs = null; boolean ambiguous = false; @@ -168,6 +181,7 @@ methodLoop: for (java.lang.reflect.AccessibleObject candidate : candidates) { int methodCost = 0; + int distance = 0; Class[] paramTypes = getParameterTypesFor(candidate); Object[] castedArgs = new Object[paramTypes.length]; @@ -188,6 +202,7 @@ } methodCost += weightedCast.getCost(); + distance = weightedCast.getDistance(); Object castedObj = paramTypeClass.isPrimitive() ? weightedCast.getCastedObject() @@ -201,18 +216,20 @@ PluginDebug.debug("Param " + i + " of method " + candidate + " has cost " + weightedCast.getCost() + + " distance " + weightedCast.getDistance() + " original param type " + suppliedParamClass + " casted to " + castedObjClass + " isPrimitive=" + castedObjIsPrim + " value " + castedObj); } } - if (methodCost <= lowestCost) { + if (methodCost < lowestCost || (methodCost == lowestCost && distance <= lowestDistance)) { if (methodCost < lowestCost || argumentsAreSubclassesOf(castedArgs, cheapestArgs)) { lowestCost = methodCost; cheapestArgs = castedArgs; cheapestMethod = candidate; + lowestDistance = distance; ambiguous = false; } else { ambiguous = true; @@ -333,7 +350,7 @@ // Class type to superclass type; if (paramTypeClass.isAssignableFrom(suppliedParamClass)) { - return new WeightedCast(CLASS_SUPERCLASS_COST, paramTypeClass.cast(suppliedParam)); + return new WeightedCast(CLASS_SUPERCLASS_COST, paramTypeClass.cast(suppliedParam), classDistance(suppliedParamClass, paramTypeClass)); } // Any java value to String @@ -344,6 +361,20 @@ return null; } + private static int classDistance(Class subClass, Class superClass) { + + int distance = 0; + + if (superClass.isAssignableFrom(subClass)) { + while (!subClass.equals(superClass)) { + subClass = subClass.getSuperclass(); + distance++; + } + } + + return distance; + } + private static WeightedCast getArrayToArrayCastWeightedCost(Object suppliedArray, Class paramTypeClass) { diff -r 7973c970afd8 -r 89083ad99374 tests/reproducers/simple/JSToJFuncResol/testcases/JSToJFuncResolTest.java --- a/tests/reproducers/simple/JSToJFuncResol/testcases/JSToJFuncResolTest.java Mon Jul 28 11:16:35 2014 -0400 +++ b/tests/reproducers/simple/JSToJFuncResol/testcases/JSToJFuncResolTest.java Mon Jul 28 11:55:52 2014 -0400 @@ -118,7 +118,6 @@ @Test @TestInBrowsers(testIn = { Browsers.all }) @NeedsDisplay - @KnownToFail public void AppletJSToJFuncResol_inheritedClassToParent1_Test() throws Exception { jsToJavaFuncResolTest("inheritedClassToParent1", "applet.getNewOverloadTestHelper3()", "inheritedClassToParent1(OverloadTestHelper2) with JSToJFuncResol$OverloadTestHelper3@"); } From jvanalte at redhat.com Mon Jul 28 16:31:11 2014 From: jvanalte at redhat.com (Jon VanAlten) Date: Mon, 28 Jul 2014 12:31:11 -0400 (EDT) Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: References: <20140718212106.GA21559@carrie.the212.com> Message-ID: <633196844.17722346.1406565071047.JavaMail.zimbra@redhat.com> > > I can't quite get the relation between icedtea-sound and an OpenJDK > built with Icedtea. It seems I don't need icedtea-sound for my Java > app to play sound: I tried tuxguitar [0] and this Oracle test app [1] > that are able to play sound even though I have an OpenJDK + Icedtea > 2.5.1 but **no** icedtea-sound installed. > Hello Guillaume, I am no expert in Linux sound or PulseAudio specifically, and have not recently looked at IcedTea-Sound code, so take this with a grain of salt. IcedTea-Sound is a Java library allowing for direct interaction with the PulseAudio sound system. I believe it is implemented as a provider that can be plugged in to the Java Sound system[1]. OpenJDK already comes with some kind of provider or providers, so sound works in Java without IcedTea-Sound (unless it is specifically depending on the Pulse provider from IcedTea-Sound, of course). Perhaps others can provide more detailed information. Hope this helps! cheers, jon [1] http://docs.oracle.com/javase/tutorial/sound/ From jkang at icedtea.classpath.org Mon Jul 28 16:36:36 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Mon, 28 Jul 2014 16:36:36 +0000 Subject: /hg/icedtea-web: Fixed TeeOutputStream to accept multi-byte enco... Message-ID: changeset 6a985d697bf1 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=6a985d697bf1 author: Jie Kang date: Mon Jul 28 12:36:26 2014 -0400 Fixed TeeOutputStream to accept multi-byte encodings. 2014-07-28 Jie Kang Fixed TeeOutputStream to accept multi-byte encodings. * netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java: Now uses ByteArrayOutputStream instead of StringBuffer * tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java: diffstat: ChangeLog | 14 +- netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java | 59 ++++---- tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java | 67 ++++++++++ 3 files changed, 109 insertions(+), 31 deletions(-) diffs (226 lines): diff -r 89083ad99374 -r 6a985d697bf1 ChangeLog --- a/ChangeLog Mon Jul 28 11:55:52 2014 -0400 +++ b/ChangeLog Mon Jul 28 12:36:26 2014 -0400 @@ -1,4 +1,10 @@ -2014-06-20 Jie Kang +2014-07-28 Jie Kang + Fixed TeeOutputStream to accept multi-byte encodings. + * netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java: Now uses + ByteArrayOutputStream instead of StringBuffer + * tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java: + +2014-07-28 Jie Kang Made adjustments to the MethodOverloadResolver to follow LiveConnect specification when dealing with superclasses. @@ -12,15 +18,15 @@ Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug PR1859 where part of the pane is hidden and unnaccessible when clicking "Show Details". - * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java + * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: 2014-07-28 Jie Kang Fix to Control Panel UI for lower resolutions. Addresses bug PR1856 where part of the dialog is hidden and unaccessible on lower resolutions such as 800 x 600. - * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java - * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java + * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java: + * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java: 2014-07-22 Fridrich Strba diff -r 89083ad99374 -r 6a985d697bf1 netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java --- a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java Mon Jul 28 11:55:52 2014 -0400 +++ b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java Mon Jul 28 12:36:26 2014 -0400 @@ -38,14 +38,13 @@ package net.sourceforge.jnlp.util.logging; +import java.io.ByteArrayOutputStream; +import java.io.IOException; import java.io.PrintStream; -import net.sourceforge.jnlp.util.logging.JavaConsole; -import net.sourceforge.jnlp.util.logging.OutputController; + import net.sourceforge.jnlp.util.logging.OutputController.Level; -import net.sourceforge.jnlp.util.logging.SingleStreamLogger; import net.sourceforge.jnlp.util.logging.headers.Header; import net.sourceforge.jnlp.util.logging.headers.JavaMessage; -import net.sourceforge.jnlp.util.logging.headers.MessageWithHeader; /** * Behaves like the 'tee' command, sends output to both actual std stream and a @@ -55,15 +54,15 @@ // Everthing written to TeeOutputStream is written to our log too - private final StringBuffer string = new StringBuffer(); + private final ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); private final boolean isError; + private final String lineSeparator = System.getProperty("line.separator"); public TeeOutputStream(PrintStream stdStream, boolean isError) { super(stdStream); this.isError = isError; } - @Override public void close() { flushLog(); @@ -82,32 +81,25 @@ @Override public synchronized void write(byte[] b, int off, int len) { - if (b == null) { - throw new NullPointerException(); - } else if ((off < 0) || (off > b.length) || (len < 0) - || ((off + len) > b.length) || ((off + len) < 0)) { - throw new IndexOutOfBoundsException(); - } else if (len == 0) { + if (len == 0) { return; } - for (int i = 0; i < len; i++) { - appendChar(b[off + i]); - } + appendByteArray(b, off, len); super.write(b, off, len); } @Override public synchronized void write(int b) { - appendChar(b); + appendByte(b); super.write(b); } private void flushLog() { - if (string.length() <= 0 ){ - return; + String s = byteArrayOutputStream.toString(); + if (s.length() > 0) { + log(s); + byteArrayOutputStream.reset(); } - log(string.toString()); - string.setLength(0); } @Override @@ -121,21 +113,34 @@ return isError; } - private void appendChar(int b) { - if ( b <= 0 || b == '\n'){ + private void appendByte(int b) { + byteArrayOutputStream.write(b); + String s = byteArrayOutputStream.toString(); + if (s.endsWith(lineSeparator)) { flushLog(); - } else { - string.append((char)b); + } + } + + private void appendByteArray(byte[] b, int off, int len) { + byteArrayOutputStream.write(b, off, len); + String s = new String(b, off, len); + if (s.endsWith(lineSeparator)) { + flushLog(); } } private Level getlevel() { - if (isError()){ + if (isError()) { return OutputController.Level.ERROR_ALL; } else { return OutputController.Level.MESSAGE_ALL; } } - - + + //For unit testing + protected ByteArrayOutputStream getByteArrayOutputStream() throws IOException { + ByteArrayOutputStream copy = new ByteArrayOutputStream(); + copy.write(this.byteArrayOutputStream.toByteArray()); + return copy; + } } diff -r 89083ad99374 -r 6a985d697bf1 tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java Mon Jul 28 12:36:26 2014 -0400 @@ -0,0 +1,67 @@ +package net.sourceforge.jnlp.util.logging; + +import org.junit.Before; +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.PrintStream; + +import static org.junit.Assert.assertTrue; + +public class TeeOutputStreamTest { + + private PrintStream teePrintStream; + private TeeOutputStream tos; + + + @Before + public void setup() { + teePrintStream = new PrintStream(new ByteArrayOutputStream(), true); + tos = new TeeOutputStream(teePrintStream, false); + } + @Test + public void testPrintLn() throws IOException { + String s = "Hel??????lo \n World!"; + tos.println(s); //println should be immediately flushed + assertTrue(tos.getByteArrayOutputStream().toString().isEmpty()); + } + + @Test + public void testPrint() throws IOException { + String s = "???????????????Hello!\r"; + tos.print(s); + assertTrue(tos.getByteArrayOutputStream().toString().equals(s)); + } + + @Test + public void testWriteByteArrayString() throws IOException { + String s = "He\n\n\\llo cha??o"; + tos.write(s.getBytes(), 0, s.getBytes().length); + assertTrue(tos.getByteArrayOutputStream().toString().equals(s.toString())); + } + @Test + public void testWriteByte() throws IOException { + byte b = 5; + tos.write(b); + assertTrue(byteArrayEquals(b, tos.getByteArrayOutputStream().toByteArray())); + } + + @Test + public void testFlush() throws IOException { + String s = "Hello"; + tos.print(s); + assertTrue(!tos.getByteArrayOutputStream().toString().isEmpty()); + tos.flush(); + assertTrue(tos.getByteArrayOutputStream().toString().isEmpty()); + } + + private boolean byteArrayEquals(byte b, byte[] arr) { + for (byte i : arr) { + if (b != i) { + return false; + } + } + return true; + } +} From gnu.andrew at redhat.com Mon Jul 28 18:32:25 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Mon, 28 Jul 2014 14:32:25 -0400 (EDT) Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: References: <20140718212106.GA21559@carrie.the212.com> Message-ID: <1072325279.16081698.1406572345026.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 18 July 2014 23:21, Andrew Hughes wrote: > > We are pleased to announce the inaugural release of IcedTea-Sound. At > > present, IcedTea-Sound contains the PulseAudio provider which was > > removed from IcedTea itself from 2.5.0 onwards. More providers may be > > included in the future. > > > > If you find an issue with the release, please report it to our bug > > database (http://icedtea.classpath.org/bugzilla) under the > > IcedTea-Sound product and the appropriate component. Development > > discussion takes place on the distro-pkg-dev at openjdk.java.net mailing > > list (as with IcedTea) and patches are always welcome. > > > > Full details of the release can be found below. > > > > What's New? > > =========== > > New in release 1.0.0 (2014-07-18): > > > > * PR1741: Break PulseAudio provider out into IcedTea-Sound > > * PR1840: Replace Makefile.am references to PULSE_JAVA with ICEDTEA_SOUND > > * PR1842: Linker does not check that symbols can be resolved for > > libpulse-java.so > > * PR1876: The following shared libraries lack a SONAME: > > /usr/lib64/libicedtea-sound.so > > > > The tarballs can be downloaded from: > > > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz > > > > We provide both gzip and xz tarballs, so that those who are able to > > make use of the smaller tarball produced by xz may do so. > > > > The tarballs are accompanied by digital signatures available at: > > > > * > > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz.sig > > * > > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz.sig > > > > These are 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 > > > > SHA256 checksums: > > > > 0d09bc9656f9125642f70bb322f8ec92ec0ae28fdd295e83c4ce3c7576e79bd3 > > icedtea-sound-1.0.0.tar.gz > > cb47dec753e4853ba8021a3b532631c2b751450d0d9d580c3ddce99fe8b4c7a9 > > icedtea-sound-1.0.0.tar.gz.sig > > 29511d271cbb5259eac5dd48867e27d61ce4ce15026dc105277dbf1238333dbb > > icedtea-sound-1.0.0.tar.xz > > c16cb29502d6edb16fb611b3d1ffbda199919f56afc8691a7dceee08b009b528 > > icedtea-sound-1.0.0.tar.xz.sig > > > > The checksums can be downloaded from: > > > > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.sha256 > > > > The following people helped with this release: > > > > * Andrew Hughes (all bug fixes, release management) > > > > We would also like to thank the bug reporters and testers! > > > > To get started: > > > > $ tar xzf icedtea-sound-1.0.0.tar.gz > > > > or: > > > > $ tar x -I xz -f icedtea-sound-1.0.0.tar.xz > > > > then: > > > > $ mkdir its-build > > $ cd its-build > > $ ../icedtea-sound-1.0.0/configure --prefix=${install_location} > > $ make > > $ make install > > > > where ${install_location} should be replaced by the prefix where you > > wish to install IcedTea-Sound (default is /usr/local). Depending on > > the prefix selected, the 'make install' step may need root privileges. > > > > Full build requirements and instructions are available in the INSTALL file. > > > > 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 > > Hello Andrew, > > I can't quite get the relation between icedtea-sound and an OpenJDK > built with Icedtea. It seems I don't need icedtea-sound for my Java > app to play sound: I tried tuxguitar [0] and this Oracle test app [1] > that are able to play sound even though I have an OpenJDK + Icedtea > 2.5.1 but **no** icedtea-sound installed. > > Complete version: > > java version "1.7.0_65" > OpenJDK Runtime Environment (IcedTea 2.5.1) (Arch Linux build > 7.u65_2.5.1-5-x86_64) > OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode) > > Could you please let me know what I am missing here? > > [0] http://sourceforge.net/projects/tuxguitar/ > [1] http://www.oracle.com/technetwork/java/index-139508.html > > Thanks, > > Guillaume > No, you don't. IcedTea-Sound provides additional plugins (well, plugin at the moment, but more to come in future). It's what was --enable-pulse-java in IcedTea for many years, but we've split it out so there aren't multiple copies being maintained over multiple versions of IcedTea. The PulseAudio provider in IcedTea-Sound uses PulseAudio to play sound rather than ALSA, which is what the OpenJDK plugin does. I think, even back when it was in IcedTea, it would be disabled by default, unless explicitly enabled. Hope that helps, -- 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 ldracz at redhat.com Mon Jul 28 20:25:09 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Mon, 28 Jul 2014 16:25:09 -0400 (EDT) Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> <53BC2105.2060407@gmx.de> <53BD3849.4070204@gmx.de> <53BD4F51.3040203@redhat.com> <53BD9490.20007@gmx.de> Message-ID: <602941289.13717627.1406579109400.JavaMail.zimbra@redhat.com> Hello, Here is the updated patch on the cache size spinner that addresses the bug PR1857. A JLabel is now present under the spinner to tell the user available disk size and the maximum allowable number for the cache size. The spinner also changes colour to yellow when the user goes over 0.5% of the usable disk space. It turns to red if the user makes the spinner go past the usable disk space size and changes the JLabel to display a warning. Also the cache panel was put into a scroll pane so that the "view files" button is not in the default view or when resized to smaller. Thank you, Lukasz Dracz -------------- next part -------------- A non-text attachment was scrubbed... Name: cacheSizeSpinner-7.patch Type: text/x-patch Size: 19317 bytes Desc: not available URL: From jkang at redhat.com Mon Jul 28 21:16:40 2014 From: jkang at redhat.com (Jie Kang) Date: Mon, 28 Jul 2014 17:16:40 -0400 (EDT) Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: <602941289.13717627.1406579109400.JavaMail.zimbra@redhat.com> References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> <53BC2105.2060407@gmx.de> <53BD3849.4070204@gmx.de> <53BD4F51.3040203@redhat.com> <53BD9490.20007@gmx.de> <602941289.13717627.1406579109400.JavaMail.zimbra@redhat.com> Message-ID: <1011502388.13759104.1406582200670.JavaMail.zimbra@redhat.com> > Hello, > > Here is the updated patch on the cache size spinner that addresses the bug > PR1857. A JLabel is now present under > the spinner to tell the user available disk size and the maximum allowable > number for the cache size. The spinner > also changes colour to yellow when the user goes over 0.5% of the usable disk > space. It turns to red if the user makes the spinner go past the usable disk > space size and changes the JLabel to display a warning. Also the cache panel > was put into a scroll pane so that the "view files" button is not in the > default view or when resized to smaller. Nice patch. Just a minor nit with the import statements: +import javax.swing.*; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; +import java.awt.*; Instead of importing the whole library please replace these with only the imports of specific classes that you need. > > Thank you, > Lukasz Dracz > Thanks! -- Jie Kang From aazores at redhat.com Mon Jul 28 21:53:30 2014 From: aazores at redhat.com (Andrew Azores) Date: Mon, 28 Jul 2014 17:53:30 -0400 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53D668C7.3060901@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> <53D114C8.1080407@redhat.com> <53D259B5.9090402@redhat.com> <53D668C7.3060901@redhat.com> Message-ID: <53D6C65A.4030101@redhat.com> On 07/28/2014 11:14 AM, Jiri Vanek wrote: > >> diff --git a/plugin/icedteanp/IcedTeaPluginUtils.cc >> b/plugin/icedteanp/IcedTeaPluginUtils.cc >> --- a/plugin/icedteanp/IcedTeaPluginUtils.cc >> +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc >> @@ -59,6 +59,19 @@ >> /* Plugin async call queue */ >> static std::vector< PluginThreadCall* >* >> pendingPluginThreadRequests = new std::vector< PluginThreadCall* >(); >> >> +int >> +IcedTeaPluginUtilities::createLogDirectory(std::string dir) >> +{ >> + if (!IcedTeaPluginUtilities::file_exists(dir)) >> + { >> + if (!g_mkdir(dir.c_str(), 755)) >> + { >> + return errno; >> + } >> + } >> + return 0; >> +} >> + > ... > > + int parentErr = > IcedTeaPluginUtilities::createLogDirectory(r1); > > + if (!parentErr){ > > + PLUGIN_ERROR("FATAL: Failed to create IcedTea-Web > config directory %s: %s\n", r1.c_str(), strerror(parentErr)); > > + return NULL; > } > > When you are her, you should also verify (if it exists then) whether > it is directory or file. If File, return failure. > > I would discourage you from returning errno. I would say Print error > messages here, and return true/false. > > true/false is the only indicator you need if you need to decide wheter > continue or not. > > And I would suggest continue at all cost, but print out a warning that > it probably will nto work. > > So I would go with: > > bool IcedTeaPluginUtilities::createLogDirectory(std::string dir) > { > if (!file_exists(dir) ) > { > if (!g_mkdir(dir.c_str(), 755)) > int x=errno > echo "warning, creation of $dir failed. Itw need this > direcotry to work. You can expect failre later. reason: > "error_toString(x) > //always save errorn > return false; > } > } else { > if (!is_dir(dir)){ > echo "warning, cannot create $dir becasue there is > already an file" > return false > } > } > return true; > //feel free to add some debug only outputs here like exists, > continuing, is dir, continuing... > } > int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); > // warnings have been printed > // no need to die, trying to continue > > > > > Also.. :-/ .. your patch kills ITW at my machine > > [unknown user][ITW-C-PLUGIN][MESSAGE_DEBUG][Mon Jul 28 16:11:03 CEST > 2014][/home/jvanek/hg/icedtea-web/plugin/icedteanp/IcedTeaParseProperties.cc:141] > ITNPP Thread# 139757752895360, gthread 0x7f1bd2614120: FATAL: Failed > to create IcedTea-Web config directory > /home/jvanek/.config/icedtea-web: Success > > and firefox dies. Please run your code on soem usecases before posting. > > Well the /home/jvanek/.config/icedtea-web do exist at my pc - so > somethig is wrong :) :S I could swear it worked for me, not sure what happened there. Maybe I made a change and failed to test that one before sending :/ > > > My reason to try continuing is simple - There may be cases, when > .confing/itw may be some special device - well nearly impossible, but > still possible. > > > Another note - sinc you created new method - please unittest it in > cpp-unit-tests. > > > And positive note at the end. I run covescan on your patch and not > sure what to read - > http://cov01.lab.eng.brq.redhat.com/covscanhub/task/13258/ :)) > J. > > > New patch has tests added and some style cleanup done, and works again (hopefully - seems to work fine for me and unit tests are a little reassuring). Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: rh1121549-fixes-7.patch Type: text/x-patch Size: 8730 bytes Desc: not available URL: From andrew at icedtea.classpath.org Tue Jul 29 00:20:29 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 29 Jul 2014 00:20:29 +0000 Subject: /hg/icedtea6: OJ39: Handle fonts with the non-canonical processi... Message-ID: changeset 0e26048bb9e3 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=0e26048bb9e3 author: Andrew John Hughes date: Tue Jul 29 01:20:12 2014 +0100 OJ39: Handle fonts with the non-canonical processing flag set 2014-07-28 Andrew John Hughes OJ39: Handle fonts with the non-canonical processing flag set * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * NEWS: Updated. * patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch: Sync LETypes.h and LayoutEngine.cpp with 7 versions in order to support fonts with the no canonical processing flag. diffstat: ChangeLog | 12 + Makefile.am | 3 +- NEWS | 1 + patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch | 347 ++++++++++ 4 files changed, 362 insertions(+), 1 deletions(-) diffs (394 lines): diff -r 755d4509b7d6 -r 0e26048bb9e3 ChangeLog --- a/ChangeLog Thu Jul 24 05:03:40 2014 +0100 +++ b/ChangeLog Tue Jul 29 01:20:12 2014 +0100 @@ -1,3 +1,15 @@ +2014-07-28 Andrew John Hughes + + OJ39: Handle fonts with the non-canonical + processing flag set + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * NEWS: Updated. + * patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch: + Sync LETypes.h and LayoutEngine.cpp with 7 versions + in order to support fonts with the no canonical + processing flag. + 2014-07-23 Andrew John Hughes * NEWS: Add 1.13.4 release notes. diff -r 755d4509b7d6 -r 0e26048bb9e3 Makefile.am --- a/Makefile.am Thu Jul 24 05:03:40 2014 +0100 +++ b/Makefile.am Tue Jul 29 01:20:12 2014 +0100 @@ -620,7 +620,8 @@ patches/openjdk/6904962-getvisualbounds_affected_by_white_space.patch \ patches/openjdk/6611637-npe_in_glyphlayout.patch \ patches/openjdk/6727719-performance_of_textlayout_getbounds.patch \ - patches/openjdk/6745225-memory_leak_in_attributed_string.patch + patches/openjdk/6745225-memory_leak_in_attributed_string.patch \ + patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 755d4509b7d6 -r 0e26048bb9e3 NEWS --- a/NEWS Thu Jul 24 05:03:40 2014 +0100 +++ b/NEWS Tue Jul 29 01:20:12 2014 +0100 @@ -22,6 +22,7 @@ - S7151089: PS NUMA: NUMA allocator should not attempt to free pages when using SHM large pages - S8013057: Detect mmap() commit failures in Linux and Solaris os::commit_memory() impls and call vm_exit_out_of_memory() - S8026887: Make issues due to failed large pages allocations easier to debug + - OJ39: Handle fonts with the non-canonical processing flag set New in release 1.13.4 (2014-07-15): diff -r 755d4509b7d6 -r 0e26048bb9e3 patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch Tue Jul 29 01:20:12 2014 +0100 @@ -0,0 +1,347 @@ +diff -r 1492971e2155 src/share/native/sun/font/layout/LETypes.h +--- openjdk/jdk/src/share/native/sun/font/layout/LETypes.h Wed Mar 20 13:39:56 2013 -0700 ++++ openjdk/jdk/src/share/native/sun/font/layout/LETypes.h Tue Jul 29 00:40:14 2014 +0100 +@@ -25,7 +25,7 @@ + + /* + * +- * (C) Copyright IBM Corp. 1998-2010 - All Rights Reserved ++ * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved + * + */ + +@@ -107,7 +107,7 @@ + */ + typedef int8_t le_int8; + #endif +- ++ + #ifndef HAVE_LE_UINT8 + /** + * A type used for unsigned, 8-bit integers. +@@ -231,38 +231,6 @@ + #define LE_CLIENT_SHIFT 24 + + +-#ifndef LE_ASSERT_BAD_FONT +-#define LE_ASSERT_BAD_FONT 0 +-#endif +- +-#if LE_ASSERT_BAD_FONT +-#include +-#define LE_DEBUG_BAD_FONT(x) fprintf(stderr,"%s:%d: BAD FONT: %s\n", __FILE__, __LINE__, (x)); +-#else +-#define LE_DEBUG_BAD_FONT(x) +-#endif +- +-/** +- * Max value representable by a uintptr +- */ +- +-#ifndef UINT32_MAX +-#define LE_UINT32_MAX 0xFFFFFFFFU +-#else +-#define LE_UINT32_MAX UINT32_MAX +-#endif +- +-#ifndef UINTPTR_MAX +-#define LE_UINTPTR_MAX LE_UINT32_MAX +-#else +-#define LE_UINTPTR_MAX UINTPTR_MAX +-#endif +- +-/** +- * Range check for overflow +- */ +-#define LE_RANGE_CHECK(type, count, ptrfn) (( (LE_UINTPTR_MAX / sizeof(type)) < count ) ? NULL : (ptrfn)) +- + /** + * A convenience macro to get the Glyph ID part of an LEGlyphID. + * +@@ -312,20 +280,6 @@ + */ + #define LE_SET_CLIENT(gid, client) ((gid & ~LE_CLIENT_MASK) | ((client << LE_CLIENT_SHIFT) & LE_CLIENT_MASK)) + +-/** +- * \def LE_TRACE +- * @internal +- */ +-#ifndef LE_TRACE +-# define LE_TRACE 0 +-#endif +- +-#if LE_TRACE +-# include +-# define _LETRACE printf("\n%s:%d: LE: ", __FILE__, __LINE__),printf +-#else +-# define _LETRACE 0&& +-#endif + + /** + * Used to represent 16-bit Unicode code points. +@@ -379,7 +333,54 @@ + typedef struct LEPoint LEPoint; + #endif + ++/** ++ * \def LE_TRACE ++ * @internal ++ */ ++#ifndef LE_TRACE ++# define LE_TRACE 0 ++#endif + ++#if LE_TRACE ++# include ++# define _LETRACE printf("\n%s:%d: LE: ", __FILE__, __LINE__),printf ++#else ++# define _LETRACE 0&& ++#endif ++ ++#ifndef U_HIDE_INTERNAL_API ++ ++#ifndef LE_ASSERT_BAD_FONT ++#define LE_ASSERT_BAD_FONT 0 ++#endif ++ ++#if LE_ASSERT_BAD_FONT ++#include ++#define LE_DEBUG_BAD_FONT(x) fprintf(stderr,"%s:%d: BAD FONT: %s\n", __FILE__, __LINE__, (x)); ++#else ++#define LE_DEBUG_BAD_FONT(x) ++#endif ++ ++/** ++ * Max value representable by a uintptr ++ */ ++ ++#ifndef UINT32_MAX ++#define LE_UINT32_MAX 0xFFFFFFFFU ++#else ++#define LE_UINT32_MAX UINT32_MAX ++#endif ++ ++#ifndef UINTPTR_MAX ++#define LE_UINTPTR_MAX LE_UINT32_MAX ++#else ++#define LE_UINTPTR_MAX UINTPTR_MAX ++#endif ++ ++/** ++ * Range check for overflow ++ */ ++#define LE_RANGE_CHECK(type, count, ptrfn) (( (LE_UINTPTR_MAX / sizeof(type)) < count ) ? NULL : (ptrfn)) + /** + * A convenience macro to get the length of an array. + * +@@ -401,7 +402,7 @@ + * + * @internal + */ +-#define LE_NEW_ARRAY(type, count) (type *) uprv_malloc((count) * sizeof(type)) ++#define LE_NEW_ARRAY(type, count) (type *) LE_RANGE_CHECK(type,count,uprv_malloc((count) * sizeof(type))) + + /** + * Re-allocate an array of basic types. This is used to isolate the rest of +@@ -418,7 +419,52 @@ + * @internal + */ + #define LE_DELETE_ARRAY(array) uprv_free((void *) (array)) +-#endif ++#else ++/* !LE_USE_CMEMORY - Not using ICU memory - use C std lib versions */ ++ ++#include ++#include ++ ++/** ++ * A convenience macro to get the length of an array. ++ * ++ * @internal ++ */ ++#define LE_ARRAY_SIZE(array) (sizeof array / sizeof array[0]) ++ ++/** ++ * A convenience macro for copying an array. ++ * ++ * @internal ++ */ ++#define LE_ARRAY_COPY(dst, src, count) memcpy((void *) (dst), (void *) (src), (count) * sizeof (src)[0]) ++ ++/** ++ * Allocate an array of basic types. This is used to isolate the rest of ++ * the LayoutEngine code from cmemory.h. ++ * ++ * @internal ++ */ ++#define LE_NEW_ARRAY(type, count) LE_RANGE_CHECK(type,count,(type *) malloc((count) * sizeof(type))) ++ ++/** ++ * Re-allocate an array of basic types. This is used to isolate the rest of ++ * the LayoutEngine code from cmemory.h. ++ * ++ * @internal ++ */ ++#define LE_GROW_ARRAY(array, newSize) realloc((void *) (array), (newSize) * sizeof (array)[0]) ++ ++ /** ++ * Free an array of basic types. This is used to isolate the rest of ++ * the LayoutEngine code from cmemory.h. ++ * ++ * @internal ++ */ ++#define LE_DELETE_ARRAY(array) free((void *) (array)) ++ ++#endif /* LE_USE_CMEMORY */ ++#endif /* U_HIDE_INTERNAL_API */ + + /** + * A macro to construct the four-letter tags used to +@@ -581,7 +627,7 @@ + LE_RAND_FEATURE_TAG = 0x72616E64UL, /**< 'rand' */ + LE_RLIG_FEATURE_TAG = 0x726C6967UL, /**< 'rlig' */ + LE_RPHF_FEATURE_TAG = 0x72706866UL, /**< 'rphf' */ +- LE_RKRF_FEATURE_TAG = 0x726B7266UL, /**< 'rkrf' */ ++ LE_RKRF_FEATURE_TAG = 0x726B7266UL, /**< 'rkrf' */ + LE_RTBD_FEATURE_TAG = 0x72746264UL, /**< 'rtbd' */ + LE_RTLA_FEATURE_TAG = 0x72746C61UL, /**< 'rtla' */ + LE_RUBY_FEATURE_TAG = 0x72756279UL, /**< 'ruby' */ +@@ -633,6 +679,77 @@ + }; + + /** ++ * @internal ++ */ ++enum LEFeatureENUMs { ++ LE_Kerning_FEATURE_ENUM = 0, /**< Requests Kerning. Formerly LayoutEngine::kTypoFlagKern */ ++ LE_Ligatures_FEATURE_ENUM = 1, /**< Requests Ligatures. Formerly LayoutEngine::kTypoFlagLiga */ ++ LE_NoCanon_FEATURE_ENUM = 2, /**< Requests No Canonical Processing */ ++ LE_CLIG_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_DLIG_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_HLIG_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_LIGA_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_RLIG_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SMCP_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_FRAC_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_AFRC_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_ZERO_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SWSH_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_CSWH_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SALT_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_NALT_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_RUBY_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS01_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS02_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS03_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS04_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS05_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS06_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS07_FEATURE_ENUM, /**< Feature specific enum */ ++ ++ LE_CHAR_FILTER_FEATURE_ENUM = 31, /**< Apply CharSubstitutionFilter */ ++ LE_FEATURE_ENUM_MAX = LE_CHAR_FILTER_FEATURE_ENUM ++}; ++ ++ ++/** ++ * Flags for typographic features. ++ * @internal ++ * @{ ++ */ ++#define LE_Kerning_FEATURE_FLAG (1 << LE_Kerning_FEATURE_ENUM) ++#define LE_Ligatures_FEATURE_FLAG (1 << LE_Ligatures_FEATURE_ENUM) ++#define LE_NoCanon_FEATURE_FLAG (1 << LE_NoCanon_FEATURE_ENUM) ++#define LE_CLIG_FEATURE_FLAG (1 << LE_CLIG_FEATURE_ENUM) ++#define LE_DLIG_FEATURE_FLAG (1 << LE_DLIG_FEATURE_ENUM) ++#define LE_HLIG_FEATURE_FLAG (1 << LE_HLIG_FEATURE_ENUM) ++#define LE_LIGA_FEATURE_FLAG (1 << LE_LIGA_FEATURE_ENUM) ++#define LE_RLIG_FEATURE_FLAG (1 << LE_RLIG_FEATURE_ENUM) ++#define LE_SMCP_FEATURE_FLAG (1 << LE_SMCP_FEATURE_ENUM) ++#define LE_FRAC_FEATURE_FLAG (1 << LE_FRAC_FEATURE_ENUM) ++#define LE_AFRC_FEATURE_FLAG (1 << LE_AFRC_FEATURE_ENUM) ++#define LE_ZERO_FEATURE_FLAG (1 << LE_ZERO_FEATURE_ENUM) ++#define LE_SWSH_FEATURE_FLAG (1 << LE_SWSH_FEATURE_ENUM) ++#define LE_CSWH_FEATURE_FLAG (1 << LE_CSWH_FEATURE_ENUM) ++#define LE_SALT_FEATURE_FLAG (1 << LE_SALT_FEATURE_ENUM) ++#define LE_NALT_FEATURE_FLAG (1 << LE_NALT_FEATURE_ENUM) ++#define LE_RUBY_FEATURE_FLAG (1 << LE_RUBY_FEATURE_ENUM) ++#define LE_SS01_FEATURE_FLAG (1 << LE_SS01_FEATURE_ENUM) ++#define LE_SS02_FEATURE_FLAG (1 << LE_SS02_FEATURE_ENUM) ++#define LE_SS03_FEATURE_FLAG (1 << LE_SS03_FEATURE_ENUM) ++#define LE_SS04_FEATURE_FLAG (1 << LE_SS04_FEATURE_ENUM) ++#define LE_SS05_FEATURE_FLAG (1 << LE_SS05_FEATURE_ENUM) ++#define LE_SS06_FEATURE_FLAG (1 << LE_SS06_FEATURE_ENUM) ++#define LE_SS07_FEATURE_FLAG (1 << LE_SS07_FEATURE_ENUM) ++ ++#define LE_CHAR_FILTER_FEATURE_FLAG (1 << LE_CHAR_FILTER_FEATURE_ENUM) ++/** ++ * @} ++ */ ++ ++#define LE_DEFAULT_FEATURE_FLAG (LE_Kerning_FEATURE_FLAG | LE_Ligatures_FEATURE_FLAG) /**< default features */ ++ ++/** + * Error codes returned by the LayoutEngine. + * + * @stable ICU 2.4 +@@ -674,30 +791,6 @@ + #define LE_SUCCESS(code) (U_SUCCESS((UErrorCode)code)) + #endif + +-enum LEFeatureENUMs { +- LE_Kerning_FEATURE_ENUM = 0, +- LE_Ligatures_FEATURE_ENUM = 1, +- LE_CHAR_FILTER_FEATURE_ENUM = 31, +-}; +- +- +-/** +- * Flags for typographic features. +- * @internal +- * @{ +- */ +-#define LE_Kerning_FEATURE_FLAG (1 << LE_Kerning_FEATURE_ENUM) +-#define LE_Ligatures_FEATURE_FLAG (1 << LE_Ligatures_FEATURE_ENUM) +- +-#define LE_CHAR_FILTER_FEATURE_ENUM 31 +- +-#define LE_CHAR_FILTER_FEATURE_FLAG (1 << LE_CHAR_FILTER_FEATURE_ENUM) +-/** +- * @} +- */ +- +-#define LE_DEFAULT_FEATURE_FLAG (LE_Kerning_FEATURE_FLAG | LE_Ligatures_FEATURE_FLAG) /**< default features */ +- + /** + * A convenience macro to test for the failure of a LayoutEngine call. + * +@@ -709,5 +802,3 @@ + + U_NAMESPACE_END + #endif +- +- +diff -r 1492971e2155 src/share/native/sun/font/layout/LayoutEngine.cpp +--- openjdk/jdk/src/share/native/sun/font/layout/LayoutEngine.cpp Wed Mar 20 13:39:56 2013 -0700 ++++ openjdk/jdk/src/share/native/sun/font/layout/LayoutEngine.cpp Tue Jul 29 00:40:14 2014 +0100 +@@ -32,8 +32,8 @@ + + #include "LETypes.h" + #include "LEScripts.h" ++#include "LELanguages.h" + #include "LESwaps.h" +-#include "LELanguages.h" + + #include "LayoutEngine.h" + #include "ArabicLayoutEngine.h" +@@ -252,6 +252,10 @@ + return 0; + } + ++ if ((fTypoFlags & LE_NoCanon_FEATURE_FLAG) == 0) { // no canonical processing ++ return count; ++ } ++ + LEReferenceTo canonGSUBTable(LETableReference::kStaticData, + (GlyphSubstitutionTableHeader *) CanonShaping::glyphSubstitutionTable, + CanonShaping::glyphSubstitutionTableLen); From bugzilla-daemon at icedtea.classpath.org Tue Jul 29 05:46:24 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 29 Jul 2014 05:46:24 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 christian.maierhofer at iaik.tugraz.at changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |WORKSFORME --- Comment #8 from christian.maierhofer at iaik.tugraz.at --- Updating the jdk to version 1.7.0.65-2.5.1.3.fc20 fixed the problem for me. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From helpcrypto at gmail.com Tue Jul 29 07:12:43 2014 From: helpcrypto at gmail.com (helpcrypto helpcrypto) Date: Tue, 29 Jul 2014 09:12:43 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53D65E59.308@redhat.com> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> <53D129B7.5070009@redhat.com> <153158101.12910900.1406297753220.JavaMail.zimbra@redhat.com> <53D65E59.308@redhat.com> Message-ID: As bug informer, I could test if it works (if you tell me how) BTW: have anyone considered doing a "is my bug fixed" FAQ where it explains how to download source, patch, compile and test? Should i fill this suggestion as a bug? Regards (and thanks) On Mon, Jul 28, 2014 at 4:29 PM, Jiri Vanek wrote: > On 07/25/2014 04:15 PM, Jie Kang wrote: > >> Hello, >> >> >>> I'm happy with this patch with one execption. >>> I would actually like the part >>> >>> catch(unsupportedencodinge){ >>> tostring(witoutEncoding) >>> } >>> >>> to return. BUt log the exception :) >>> >> >> >> The newest iteration actually no longer needs this :D Jacob and Omair >> caught the mistakes there so thanks to them! >> >> I attached the newest one again just for easy reference. >> >> >>> Also this should be sanitized, that the exception is thrown only once >>> (all >>> follwing toString will >>> use no-encoding) >>> >>> Pleasestick the new path togeher with tests. With some luck next >>> iteration >>> will be last (Unless >>> jacob/Omair complains to strongly:) >>> >> >> >> Should the backport to 1.5 include the tests as well? >> >> >> >>> J. >>> >>> >> >> Regards! >> >> Assuming it works ( :-) ) (well console worked for me, and seemd to be > flushed correctly.. but I was unable to verify the bug fix... :( ) > > Ok to head and 1.5 > > J. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From helpcrypto at gmail.com Tue Jul 29 07:15:00 2014 From: helpcrypto at gmail.com (helpcrypto helpcrypto) Date: Tue, 29 Jul 2014 09:15:00 +0200 Subject: [rfc][icedtea-web] Java Console Pane Size Fix In-Reply-To: <53D662C0.2090405@redhat.com> References: <1466272232.6770745.1405108572692.JavaMail.zimbra@redhat.com> <53D662C0.2090405@redhat.com> Message-ID: Thanks for fixing those 3 bugs, jie! -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Tue Jul 29 07:47:41 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 29 Jul 2014 09:47:41 +0200 Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <164353370.8446351.1405449544150.JavaMail.zimbra@redhat.com> <205299332.8871636.1405520836883.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> <53D129B7.5070009@redhat.com> <153158101.12910900.1406297753220.JavaMail.zimbra@redhat.com> <53D65E59.308@redhat.com> Message-ID: <53D7519D.60303@redhat.com> On 07/29/2014 09:12 AM, helpcrypto helpcrypto wrote: > As bug informer, I could test if it works (if you tell me how) > > BTW: have anyone considered doing a "is my bug fixed" FAQ where it explains how to download source, > patch, compile and test? Should i fill this suggestion as a bug? > This depends on your skills(on various fields) and prerequisites. Basicaly you have only two(and half) choices - to clone and build fixed branch (now only head afaik, but those should go to 1.5 anyway) - here you must know how to clone and build and - what is most important :) - that you know that you are using correct itw at teh end of process:) - to rebuild your distribution package by supplying new sources - well.. created from cloned branch with fix (make dist)- This may sound complex but is actually the most simple way if you understand a bit of packaging. You just repalce sopurces and bump version. The pacaking engine will do the rest and you then simply install package. itw team may help with RPM but knowledge base for other distros may be lower. - the last one is to get the patch - from http://icedtea.classpath.org/hg/icedtea-web (or http://icedtea.classpath.org/hg/release/icedtea-web-1.5 ) or from distro-pkg-dev eemail-list. And patch packages. But this may go wrong, as patch may depend on another patch. All the building helps are at http://icedtea.classpath.org/wiki/IcedTea-Web Feel free to go for it :) Personally I would recommend you first option. Thank you for attempting to verify fix before release! J. From jvanek at redhat.com Tue Jul 29 07:53:44 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Tue, 29 Jul 2014 09:53:44 +0200 Subject: Little tiny patch for icedtea-web In-Reply-To: <53CE65A8.3070606@suse.com> References: <53CE65A8.3070606@suse.com> Message-ID: <53D75308.2020900@redhat.com> Hi! Patch looks ok. If you will send me me changelog I will push for you. If you will not I will push anyway in some time :) I will push this both to head and 1.5, unless you have different requirements. J. On 07/22/2014 03:22 PM, Fridrich Strba wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Hello, good people, > > A little tiny patch for icedtea-web fixing a lack of return in > non-void function. I also re-formated that function so that it has the > indentation of the surrounding. If that is a problem, I can send a > one-liner too. > > Cheers > > Fridrich Strba > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v2.0.22 (GNU/Linux) > > iEYEARECAAYFAlPOZagACgkQu9a1imXPdA+f5ACcDpCT27cdEIPj5mlBIxi6Nlzk > Sv8An11viqrXgJOt/v7865ZtLl5ufWiw > =mwM0 > -----END PGP SIGNATURE----- > > > no-retur-in-non-void-function.patch > > > --- a/plugin/icedteanp/IcedTeaPluginUtils.cc Mon Jul 14 10:06:27 2014 -0400 > +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc Tue Jul 22 14:33:19 2014 +0200 > @@ -60,25 +60,25 @@ > static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< PluginThreadCall* >(); > > void*flush_pre_init_messages(void* data) { > -while (true){ > - struct timespec ts; > + while (true){ > + struct timespec ts; > ts.tv_sec = 1; > ts.tv_nsec = 0; > - nanosleep(&ts ,0); > - if (jvm_up) { > - while (!pre_jvm_message.empty()) { > - pthread_mutex_lock(&debug_pipe_lock); > - std::string message = pre_jvm_message.front(); > - pre_jvm_message.pop(); > - pthread_mutex_unlock(&debug_pipe_lock); > - plugin_send_message_to_appletviewer_console(message.c_str()); > - > + nanosleep(&ts ,0); > + if (jvm_up) { > + while (!pre_jvm_message.empty()) { > + pthread_mutex_lock(&debug_pipe_lock); > + std::string message = pre_jvm_message.front(); > + pre_jvm_message.pop(); > + pthread_mutex_unlock(&debug_pipe_lock); > + plugin_send_message_to_appletviewer_console(message.c_str()); > + } > + flush_plugin_send_message_to_appletviewer_console(); > } > - flush_plugin_send_message_to_appletviewer_console(); > } > - > + return NULL; > } > -} > + > void push_pre_init_messages(char * ldm){ > pthread_mutex_lock(&debug_pipe_lock); > pre_jvm_message.push(std::string(ldm)); > From chris.lee at cern.ch Tue Jul 29 11:50:00 2014 From: chris.lee at cern.ch (Chris Lee) Date: Tue, 29 Jul 2014 13:50:00 +0200 Subject: javaws CLI with Icedtea-web In-Reply-To: <53B2CC4F.3080501@redhat.com> References: <23C2F298-0602-457E-BA71-362A10334854@cern.ch> <53B16DF5.7000206@redhat.com> <972ECB76-39B1-4604-856D-6D19F2315007@cern.ch> <53B180E1.1070106@gmx.de> <5225D11B-6CB0-4AB0-ACA2-7E9032A8EF6B@cern.ch> <53B29C50.7010405@redhat.com> <53B2CC4F.3080501@redhat.com> Message-ID: Hi Jiri Sorry to take so long to get back to you, got stuck with some other work again. We tried to apply the patch to version 1.4.1 which is what we have in our repos. We have checked that the md5 checksum is the same as the one from http://icedtea.wildebeest.org/download/source/ Unfortunately we get the following errors when trying to apply the patch $ patch -p1 --dry-run < /BUILD/chlee/rpmbuild/SOURCES/icedtea_web_CLI.patch patching file netx/net/sourceforge/jnlp/Launcher.java Hunk #1 succeeded at 314 (offset -7 lines). patching file netx/net/sourceforge/jnlp/PropertyDesc.java patching file netx/net/sourceforge/jnlp/runtime/Boot.java Hunk #1 FAILED at 33. Hunk #2 succeeded at 136 with fuzz 2 (offset -2 lines). 1 out of 2 hunks FAILED -- saving rejects to file netx/net/sourceforge/jnlp/runtime/Boot.java.rej Cheers Chris On Jul 1, 2014, at 4:57 PM, Jiri Vanek wrote: > On 07/01/2014 01:32 PM, Jiri Vanek wrote: >> On 06/30/2014 05:41 PM, Chris Lee wrote: >>> Hi Jacob, >>> On Jun 30, 2014, at 5:23 PM, Jacob Wisor wrote: >>> >>>> On 06/30/2014 04:39 PM, Chris Lee wrote: >>>>> Hi Jiri >>>>> >>>>> Thanks so much >>>>> >>>>> To explain as well, what I am trying to do is use a specific proxy server and port for a >>>>> specific website. >>>>> I had thought that a link to the CLI might be the quickest if I can get it working, If there is >>>>> an easier way to configure, then I am open to suggestions. >>>> >>>> Try using Java's network configuration properties like http.proxyHost, http.proxyPort, >>>> https.proxyHost, https.proxyPort, ftp.proxyHost, ftp.proxyPort, gopher.proxyHost, >>>> gopher.proxyPort, socksProxyHost, socksProxyPort with the -J-D switch. For more information have >>>> a look into >>>> /lib/net.properties. >>> Assuming that they can/should be applied in the same manner as the properties from before, but I >>> appear to be having the same issue where it is not being applied. >>> >>> ie: >>> [chlee at pc-atlas-cr-35 .icedtea]$ javaws -verbose -J-Dhttp.proxy.Host=atlasgw-exp.cern.ch >>> -J-Dhttp.proxyPort=3128 http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >>> Loading User level properties from: /atlas-home/1/chlee/.icedtea/deployment.properties >>> Starting security dialog thread >>> Using firefox's profiles file: /atlas-home/1/chlee/.mozilla/firefox/profiles.ini >>> Found preferences file: /atlas-home/1/chlee/.mozilla/firefox/4mi0hwbe.default/prefs.js >>> Read 77 entries from Firefox's preferences >>> JNLP file location: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >>> call privileged method: getCodeBase >>> result: null >>> Status: CONNECT STARTED +(CONNECT STARTED) @ /dipbrowser/launch.jnlp >>> Status: CONNECT DOWNLOAD STARTED +(DOWNLOAD) @ /dipbrowser/launch.jnlp >>> Status: CONNECTING DOWNLOAD STARTED +(CONNECTING) -(CONNECT) @ /dipbrowser/launch.jnlp >>> All possible urls for location=http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >>> state=CONNECTING DOWNLOAD STARTED : [http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp, >>> http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp] >>> Selecting proxy for: http://dipbrowser.web.cern.ch/dipbrowser/launch.jnlp >>> Browser proxy option "4" (Automatic) not supported yet. >>> Browser selected proxies: [DIRECT] >>> Selected proxies: [DIRECT] >>> Selecting proxy for: socket://dipbrowser.web.cern.ch:80 >>> Browser proxy option "4" (Automatic) not supported yet. >>> Browser selected proxies: [DIRECT] >>> Selected proxies: [DIRECT] >>>> >>>>>> 1.4.1 is outdated. If you need for some reason to stay with 1.4, please update to 1.4.2, >>>>>> however - please swap to 1.5. It was released few month ago, is stable, and a a lot of fixes >>>>>> was fixed here. >>>>> >>>>> This installation is for the ATLAS experiment at CERN. For security reason, we are usually >>>>> compelled to use what is available in the SLC repos, which unfortunately for me right now is 1.4.1 >>>> >>>> If security is key to you, you shouldn't probably be using IcedTea-Web yet. Instead, resort to >>>> Oracle's Java Web Start implementation. This product is feature and specification complete, in >>>> contrast to IcedTea-Web. Java Web Start has most probably received far more security fixes and >>>> screening than IcedTea-Web. Personally, at the current stage of IcedTea-Web I would advise any >>>> enterprise or security aware user not to use IcedTea-Web. >>> I believe we had a number of issues with the Oracles Javaws. somethings like the latest updates >>> forced us to keep things current all the time, and while we are in production runs, things can be >>> locked down for months at a time or we could lose data taking at our experiment. >>> Right now this is me testing to see if I can get this to work >>> >> Chris, Just to completeness, may you try the -Xnofork together with your Experiments? >> >> Anyway it sounds like bug. I will look into it. >> > > Well this is bug. As it is done in ITW, the proxy* settings are loaded from configurations before the value of -property is merged. > > But it do not explain why even the -J-Ddeployment.blah is not working. //me must find what specification says > > Looking inisde > > as it was: > the ITW properties are loaded form file > + they are mixed into system properties > proxy is selected > launcher object is created > "-property" argument's values are merged into JNLPresources > and later ... I'mnot sure if they are even later merged into properties > > It is clear that original NETX wanted to keep the -property's params as isolated per jnlpfile > > > After attached patch > the ITW properties are loaded form file > + they are mixed into system properties > "-property" argument's values are merged into ITW properties (so not into system properties) > proxy is selected > launcher object is created > "-property" argument's values are still merged into JNLPresources > > So now the config singleton have the -property(s) shared. Also set on jnlpconfig value will not change the value in per-jnlpresource > > > I believe that this can be correct as > - javaws have always isolated JVM > - applets, with shared JVM, have always same -property(s) set via itwsettings (command-line args) > > Well my fix can probably go into 1.4 and 1.5, but for head the properties should be revisited one more times. Maybe also -D and -J-D should be handled differently. > Are actually -J working with forked JVM? By check on code.. not > > The patch contains small refactoring to not duplicate code. The test is attached likewise. > > > Chis, are you able to build patched RPMs? > > J. > > > > > From jkang at redhat.com Tue Jul 29 12:52:03 2014 From: jkang at redhat.com (Jie Kang) Date: Tue, 29 Jul 2014 08:52:03 -0400 (EDT) Subject: [rfc][icedtea-web] Java Console Pane Size Fix In-Reply-To: References: <1466272232.6770745.1405108572692.JavaMail.zimbra@redhat.com> <53D662C0.2090405@redhat.com> Message-ID: <1470531384.13939325.1406638323941.JavaMail.zimbra@redhat.com> ----- Original Message ----- > Thanks for fixing those 3 bugs, jie! No worries but I am still working to backport them to 1.5 :D And thanks for the bug reports! > Regards, -- Jie Kang From jkang at redhat.com Tue Jul 29 12:55:30 2014 From: jkang at redhat.com (Jie Kang) Date: Tue, 29 Jul 2014 08:55:30 -0400 (EDT) Subject: [rfc][icedtea-web] Console Output Encoding Fix In-Reply-To: <53D73BDC.3010709@gmx.de> References: <1509908557.8267095.1405433442092.JavaMail.zimbra@redhat.com> <53C698CD.2020706@gmx.de> <709395740.8954311.1405526968162.JavaMail.zimbra@redhat.com> <53C6AC6F.8060009@gmx.de> <1746171685.9029641.1405534003579.JavaMail.zimbra@redhat.com> <53D129B7.5070009@redhat.com> <153158101.12910900.1406297753220.JavaMail.zimbra@redhat.com> <53D73BDC.3010709@gmx.de> Message-ID: <623626596.13940811.1406638530468.JavaMail.zimbra@redhat.com> Hello, > On 07/25/2014 04:15 PM, Jie Kang wrote: > > + //For unit testing > > + protected ByteArrayOutputStream getByteArrayOutputStream() throws > > IOException { > > + ByteArrayOutputStream copy = new ByteArrayOutputStream(); > > + copy.write(this.byteArrayOutputStream.toByteArray()); > > + return copy; > > + } > > Well, I am still unhappy with this approach. Why can't we use reflection to I am unhappy as well which is why I asked for suggestions :D > access TeeOutputStream.byteArrayOutputStream in the test? Tests usually run > with > no SecurityManager set or with AllPermissions granted so there should be no > problem. To be completely honest I have no actual work experience with reflection. I will look into this. Thanks for the suggestion. > > Jacob > -- Jie Kang From ldracz at redhat.com Tue Jul 29 13:41:04 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Tue, 29 Jul 2014 09:41:04 -0400 (EDT) Subject: [rfc][icedtea-web][itweb-settings] Improve Icedtea-Web cache disk space In-Reply-To: <1011502388.13759104.1406582200670.JavaMail.zimbra@redhat.com> References: <319590383.4051363.1404829211485.JavaMail.zimbra@redhat.com> <53BD3849.4070204@gmx.de> <53BD4F51.3040203@redhat.com> <53BD9490.20007@gmx.de> <602941289.13717627.1406579109400.JavaMail.zimbra@redhat.com> <1011502388.13759104.1406582200670.JavaMail.zimbra@redhat.com> Message-ID: <1847138427.13964125.1406641264068.JavaMail.zimbra@redhat.com> Hello, > Nice patch. Just a minor nit with the import statements: > > +import javax.swing.*; > +import javax.swing.event.ChangeEvent; > +import javax.swing.event.ChangeListener; > +import java.awt.*; > > Instead of importing the whole library please replace these with only the > imports of specific classes that you need. > Ah yes, sorry about that my IDE autoformats oddly, I have changed it back to the way it was, the imports that are removed are unused imports. > Jie Kang Thank you, Lukasz Dracz -------------- next part -------------- A non-text attachment was scrubbed... Name: cacheSizeSpinner-9.patch Type: text/x-patch Size: 19000 bytes Desc: not available URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 10:05:17 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 10:05:17 +0000 Subject: [Bug 1885] New: hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1885 Bug ID: 1885 Summary: hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log Product: VisualVM Harness Version: unspecified Hardware: x86 OS: Linux Status: NEW Severity: enhancement Priority: P5 Component: VisualVM Assignee: unassigned at icedtea.classpath.org Reporter: glass_jack at yahoo.fr fatal error detected by the Java Runtime Environment. SIGSEGV(0xb) at pc=0xb361cddd, pid=3082,tid=2982148928 JRE version:OpenJDK Runtime Environment (7.0_55-b14) (build 1.7.0_55-b14) Java VM: Open JDK Client VM (24.51_b03 mixed mode, sharing linux_86) Problematic frame: v BufferBlob:jni_fast_getLongField Failed to write core dump.Core dumps have been disabled.To enable core dumping try "ulimit -c unmimited" before starting Java again -- You are receiving this mail because: You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 10:35:38 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 10:35:38 +0000 Subject: [Bug 1885] hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1885 --- Comment #1 from jacques glass --- " The crash happened outside the Java Virtual Machine in native code. See problematic frame for where to report the bug" Comments from my files -- You are receiving this mail because: You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guillaume at alaux.net Wed Jul 30 11:57:45 2014 From: guillaume at alaux.net (Guillaume Alaux) Date: Wed, 30 Jul 2014 13:57:45 +0200 Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: <1072325279.16081698.1406572345026.JavaMail.zimbra@redhat.com> References: <20140718212106.GA21559@carrie.the212.com> <1072325279.16081698.1406572345026.JavaMail.zimbra@redhat.com> Message-ID: On 28 July 2014 20:32, Andrew Hughes wrote: > ----- Original Message ----- >> On 18 July 2014 23:21, Andrew Hughes wrote: >> > We are pleased to announce the inaugural release of IcedTea-Sound. At >> > present, IcedTea-Sound contains the PulseAudio provider which was >> > removed from IcedTea itself from 2.5.0 onwards. More providers may be >> > included in the future. >> > >> > If you find an issue with the release, please report it to our bug >> > database (http://icedtea.classpath.org/bugzilla) under the >> > IcedTea-Sound product and the appropriate component. Development >> > discussion takes place on the distro-pkg-dev at openjdk.java.net mailing >> > list (as with IcedTea) and patches are always welcome. >> > >> > Full details of the release can be found below. >> > >> > What's New? >> > =========== >> > New in release 1.0.0 (2014-07-18): >> > >> > * PR1741: Break PulseAudio provider out into IcedTea-Sound >> > * PR1840: Replace Makefile.am references to PULSE_JAVA with ICEDTEA_SOUND >> > * PR1842: Linker does not check that symbols can be resolved for >> > libpulse-java.so >> > * PR1876: The following shared libraries lack a SONAME: >> > /usr/lib64/libicedtea-sound.so >> > >> > The tarballs can be downloaded from: >> > >> > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz >> > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz >> > >> > We provide both gzip and xz tarballs, so that those who are able to >> > make use of the smaller tarball produced by xz may do so. >> > >> > The tarballs are accompanied by digital signatures available at: >> > >> > * >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz.sig >> > * >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz.sig >> > >> > These are 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 >> > >> > SHA256 checksums: >> > >> > 0d09bc9656f9125642f70bb322f8ec92ec0ae28fdd295e83c4ce3c7576e79bd3 >> > icedtea-sound-1.0.0.tar.gz >> > cb47dec753e4853ba8021a3b532631c2b751450d0d9d580c3ddce99fe8b4c7a9 >> > icedtea-sound-1.0.0.tar.gz.sig >> > 29511d271cbb5259eac5dd48867e27d61ce4ce15026dc105277dbf1238333dbb >> > icedtea-sound-1.0.0.tar.xz >> > c16cb29502d6edb16fb611b3d1ffbda199919f56afc8691a7dceee08b009b528 >> > icedtea-sound-1.0.0.tar.xz.sig >> > >> > The checksums can be downloaded from: >> > >> > * http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.sha256 >> > >> > The following people helped with this release: >> > >> > * Andrew Hughes (all bug fixes, release management) >> > >> > We would also like to thank the bug reporters and testers! >> > >> > To get started: >> > >> > $ tar xzf icedtea-sound-1.0.0.tar.gz >> > >> > or: >> > >> > $ tar x -I xz -f icedtea-sound-1.0.0.tar.xz >> > >> > then: >> > >> > $ mkdir its-build >> > $ cd its-build >> > $ ../icedtea-sound-1.0.0/configure --prefix=${install_location} >> > $ make >> > $ make install >> > >> > where ${install_location} should be replaced by the prefix where you >> > wish to install IcedTea-Sound (default is /usr/local). Depending on >> > the prefix selected, the 'make install' step may need root privileges. >> > >> > Full build requirements and instructions are available in the INSTALL file. >> > >> > 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 >> >> Hello Andrew, >> >> I can't quite get the relation between icedtea-sound and an OpenJDK >> built with Icedtea. It seems I don't need icedtea-sound for my Java >> app to play sound: I tried tuxguitar [0] and this Oracle test app [1] >> that are able to play sound even though I have an OpenJDK + Icedtea >> 2.5.1 but **no** icedtea-sound installed. >> >> Complete version: >> >> java version "1.7.0_65" >> OpenJDK Runtime Environment (IcedTea 2.5.1) (Arch Linux build >> 7.u65_2.5.1-5-x86_64) >> OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode) >> >> Could you please let me know what I am missing here? >> >> [0] http://sourceforge.net/projects/tuxguitar/ >> [1] http://www.oracle.com/technetwork/java/index-139508.html >> >> Thanks, >> >> Guillaume >> > > No, you don't. IcedTea-Sound provides additional plugins (well, plugin > at the moment, but more to come in future). It's what was --enable-pulse-java > in IcedTea for many years, but we've split it out so there aren't multiple > copies being maintained over multiple versions of IcedTea. > > The PulseAudio provider in IcedTea-Sound uses PulseAudio to play > sound rather than ALSA, which is what the OpenJDK plugin does. I think, > even back when it was in IcedTea, it would be disabled by default, unless > explicitly enabled. > > Hope that helps, > -- > 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 > Hello Jon, Hello Andrew, Thanks for this clarification. So if I understand correctly, icedtea-sound is available ? for instance ? to applications that would explicitly want to use Pulseaudio (or, in the future, any other sound provider ? la Pulseaudio). I am still a bit puzzled by why OpenJDK does not use it (totally na?ve question here)? Is it because it would create a dependency on pulseaudio rather than Alsa? Or maybe there is already a way to make OpenJDK+IcedTea use IcedTea-Sound? Guillaume From jvanek at redhat.com Wed Jul 30 13:01:19 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 15:01:19 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53A99B9B.4040303@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> Message-ID: <53D8EC9F.2050007@redhat.com> ...snip... >> >> As you mentioned - the signed, but with permissions:sandbox app can not be run with all permissions. >> So skip all attrributes, except permissions one >> >> The sandbox one should be checked: >> signed: permissions:all-permissions - all permissions >> unsigned: permissions:all-permissions - sandbox >> unsigned: permissions:sandbox - sandbox >> signed: permissions:sandbox - sandbox >> signed: permissions missing - all permissions >> unsigned: permissions missing - sandbox >> >> On low permissions, no asking. >> >> For other then low permissions user should be asked for each except >> signed: permissions:all-permissions >> unsigned: permissions:sandbox >> cases. >> >> But the dialogue can be done as separate changeset (with custom-permissions button:) >> >> >> >>> New tests are also on the way and with the new tests will come the fixed version of the previously >>> sent test, which will make be a signed reproducer rather than custom. >>> >> >> J. >> > > Okay, I wasn't sure what you had meant. It didn't seem right to skip them all but I thought maybe > you had something else in mind to implement to fix it. So here's another attempt. > > Setting deployment.manifest.attributes.check to false causes all checks to be skipped, except for > the Permissions attribute, which is always checked regardless. Using Low Extended Applet Security > causes the ALACA and Permissions checks to not generate dialogs and assumes that it's OK to run the > applet(s). In the case of the Permissions attribute, it will still auto sandbox if necessary. Is > this what you wanted? > > Thanks, > > -- > Andrew A > I have not applied and not tested the patch. It looks good in design and code. assuming the: + // If the attribute is not specified in the manifest, prompt the user. Oracle's spec says that the + // attribute is required, but this breaks a lot of existing applets. Therefore, when on the highest + // security level, we refuse to run these applets. On the standard security level, we ask. And on the + // lowest security level, we simply proceed without asking. really works, I'm ok with this to go to head . I also think it should go to 1.5 but I left final decision to you. (ok for 1.5 from my side) > > pr1769-6.patch > > > diff --git a/ChangeLog b/ChangeLog > --- a/ChangeLog > +++ b/ChangeLog > @@ -1,3 +1,43 @@ > +2014-06-24 Andrew Azores > + > + Fixed support for signed applets which specify the Permissions attribute > + as "sandbox" in their manifests. These applets are now properly run > + sandboxed automatically, rather than requiring the user to click the > + "Sandbox" run button. > + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java > + (JNLPClassLoader): manifest attributes checking and security settings > + moved inside initializeResources > + (initializePermissions): renamed (initializeReadJarPermissions). Redundant > + null-check removed > + (initializeResources): do not set entries in jarLocationSecurityMap until > + after prompting the user on whether to run the applet as well as > + performing manifest attribute checks. A new Collection (validJars) is used > + to hold available and valid JARs between discovering the JARs and applying > + any security settings to the them > + (initializeManifestAttributesChecker): new method > + (getJnlpFileCodebase): new method, extracted from initializeResources > + (SecurityDelegateImpl.setRunInSandbox): throw exception if already forced > + to run in sandbox, rather than if already prompted > + * netx/net/sourceforge/jnlp/runtime/ManifestAttributesChecker.java > + (isLowSecurity): new method > + (checkAll): Extended Applet Security on Low disables all manifest checks > + except for Permissions > + (checkPermissionsAttribute): do not skip checking if Extended Applet > + Security is Low. Remove try/catch on setRunInSandbox call as this is now > + supported. > + (checkApplicationLibraryAllowableCodebaseAttribute): do not display dialog > + prompts on low security, allow the applet to run without prompt I think the tests are not included in this patch. Please adjust the changelog to current state. > + * tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/testcases/SignedAppletManifestSpecifiesSandboxTests.java: > + new test case > + * tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/resources/SignedAppletManifestSpecifiesSandbox.html: > + same > + * tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/MANIFEST.MF: > + same > + * tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/Makefile: > + same > + * tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/SignedAppletManifestSpecifiesSandbox.java: > + same > + ...snip... Thank you very much, J. From omajid at redhat.com Wed Jul 30 13:03:52 2014 From: omajid at redhat.com (Omair Majid) Date: Wed, 30 Jul 2014 09:03:52 -0400 Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: References: <20140718212106.GA21559@carrie.the212.com> <1072325279.16081698.1406572345026.JavaMail.zimbra@redhat.com> Message-ID: <20140730130352.GA2079@redhat.com> * Guillaume Alaux [2014-07-30 08:01]: > So if I understand correctly, icedtea-sound is available ? for > instance ? to applications that would explicitly want to use > Pulseaudio (or, in the future, any other sound provider ? la > Pulseaudio). Yes. > I am still a bit puzzled by why OpenJDK does not use it (totally na?ve > question here)? Is it because it would create a dependency on > pulseaudio rather than Alsa? Or maybe there is already a way to make > OpenJDK+IcedTea use IcedTea-Sound? I think the biggest reason OpenJDK does not use it is that it's not really needed, even in distributions that fully support PulseAudio. The PulseAudio devs implemented a clever thing, you see. The included support for hooking the ALSA userspace API back into PulseAudio. So, in a distribution that supports PulseAudio, things are set up so data flows in the following way (this is a simplified diagram): OpenJDK -> ALSA userspace API -> PulseAudio daemon -> ALSA kernel API So, OpenJDK (or IcedTea or really any program) that uses the ALSA userspace API can continue using that and (almost transparently) get full support for PulseAudio and all the features that provides, without needing to have any special code to support PulseAudio explicitly. What IcedTea-Sound does is to provide another audio provider in OpenJDK/IcedTea that does this instead: OpenJDK -> PulseAudio API -> PulseAudio daemon -> ALSA kernel API This is basically using the PulseAudio-specific API to do something in a PulseAudio-specific way. Theoretically, it can probably be more efficient as well as provide features that are simply not available using the ALSA userspace API (like using the API to play a sound on a remote machine over the network). But for most OpenJDK/IcedTea users, this is not really needed. So, why did we write this code? At the time we started working on this OpenJDK wouldn't use PulseAudio, due to a few bugs/quirks about how it used the ALSA API, like [1]. This was identified much later; once those were fixed, OpenJDK worked (more or less) without any issues with PulseAudio. Hope that clears things up. Cheers, Omair [1] https://bugs.openjdk.java.net/browse/JDK-6832063 -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From omajid at redhat.com Wed Jul 30 13:16:48 2014 From: omajid at redhat.com (Omair Majid) Date: Wed, 30 Jul 2014 09:16:48 -0400 Subject: Little tiny patch for icedtea-web In-Reply-To: <53D75308.2020900@redhat.com> References: <53CE65A8.3070606@suse.com> <53D75308.2020900@redhat.com> Message-ID: <20140730131648.GB2079@redhat.com> Hi Jiri, * Jiri Vanek [2014-07-29 03:57]: > Patch looks ok. If you will send me me changelog I will push for you. > If you will not I will push anyway in some time :) This message got held up in the moderation queue (or something like that). Fridrich pinged me on IRC that it wasn't showing up and I re-posted it: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-July/028635.html > I will push this both to head and 1.5, unless you have different requirements. This was already pushed: http://icedtea.classpath.org/hg/icedtea-web/rev/65fef87606cd http://icedtea.classpath.org/hg/release/icedtea-web-1.5/rev/bfa9387111aa Cheers, Omair -- PGP Key: 66484681 (http://pgp.mit.edu/) Fingerprint = F072 555B 0A17 3957 4E95 0056 F286 F14F 6648 4681 From jvanek at redhat.com Wed Jul 30 13:37:23 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 15:37:23 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D8EC9F.2050007@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> Message-ID: <53D8F513.5070506@redhat.com> On 07/30/2014 03:01 PM, Jiri Vanek wrote: > ...snip... >>> >>> As you mentioned - the signed, but with permissions:sandbox app can not be run with all permissions. >>> So skip all attrributes, except permissions one >>> >>> The sandbox one should be checked: >>> signed: permissions:all-permissions - all permissions >>> unsigned: permissions:all-permissions - sandbox >>> unsigned: permissions:sandbox - sandbox >>> signed: permissions:sandbox - sandbox >>> signed: permissions missing - all permissions >>> unsigned: permissions missing - sandbox >>> >>> On low permissions, no asking. >>> >>> For other then low permissions user should be asked for each except >>> signed: permissions:all-permissions >>> unsigned: permissions:sandbox >>> cases. >>> >>> But the dialogue can be done as separate changeset (with custom-permissions button:) >>> >>> >>> >>>> New tests are also on the way and with the new tests will come the fixed version of the previously >>>> sent test, which will make be a signed reproducer rather than custom. >>>> >>> >>> J. >>> >> >> Okay, I wasn't sure what you had meant. It didn't seem right to skip them all but I thought maybe >> you had something else in mind to implement to fix it. So here's another attempt. >> >> Setting deployment.manifest.attributes.check to false causes all checks to be skipped, except for >> the Permissions attribute, which is always checked regardless. Using Low Extended Applet Security >> causes the ALACA and Permissions checks to not generate dialogs and assumes that it's OK to run the >> applet(s). In the case of the Permissions attribute, it will still auto sandbox if necessary. Is >> this what you wanted? >> >> Thanks, >> >> -- >> Andrew A >> > > I have not applied and not tested the patch. > > It looks good in design and code. > > > assuming the: > + // If the attribute is not specified in the manifest, prompt the user. Oracle's spec says > that the > + // attribute is required, but this breaks a lot of existing applets. Therefore, when on the > highest > + // security level, we refuse to run these applets. On the standard security level, we ask. > And on the > + // lowest security level, we simply proceed without asking. > > really works, I'm ok with this to go to head . I also think it should go to 1.5 but I left final > decision to you. (ok for 1.5 from my side) > > > >> >> pr1769-6.patch >> >> >> diff --git a/ChangeLog b/ChangeLog >> --- a/ChangeLog >> +++ b/ChangeLog >> @@ -1,3 +1,43 @@ >> +2014-06-24 Andrew Azores >> + >> + Fixed support for signed applets which specify the Permissions attribute >> + as "sandbox" in their manifests. These applets are now properly run >> + sandboxed automatically, rather than requiring the user to click the >> + "Sandbox" run button. >> + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java >> + (JNLPClassLoader): manifest attributes checking and security settings >> + moved inside initializeResources >> + (initializePermissions): renamed (initializeReadJarPermissions). Redundant >> + null-check removed >> + (initializeResources): do not set entries in jarLocationSecurityMap until >> + after prompting the user on whether to run the applet as well as >> + performing manifest attribute checks. A new Collection (validJars) is used >> + to hold available and valid JARs between discovering the JARs and applying >> + any security settings to the them >> + (initializeManifestAttributesChecker): new method >> + (getJnlpFileCodebase): new method, extracted from initializeResources >> + (SecurityDelegateImpl.setRunInSandbox): throw exception if already forced >> + to run in sandbox, rather than if already prompted >> + * netx/net/sourceforge/jnlp/runtime/ManifestAttributesChecker.java >> + (isLowSecurity): new method >> + (checkAll): Extended Applet Security on Low disables all manifest checks >> + except for Permissions >> + (checkPermissionsAttribute): do not skip checking if Extended Applet >> + Security is Low. Remove try/catch on setRunInSandbox call as this is now >> + supported. >> + (checkApplicationLibraryAllowableCodebaseAttribute): do not display dialog >> + prompts on low security, allow the applet to run without prompt > > I think the tests are not included in this patch. Please adjust the changelog to current state. > >> + * >> tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/testcases/SignedAppletManifestSpecifiesSandboxTests.java: >> >> + new test case >> + * >> tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/resources/SignedAppletManifestSpecifiesSandbox.html: >> >> + same >> + * tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/MANIFEST.MF: >> + same >> + * tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/Makefile: >> + same >> + * >> tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/SignedAppletManifestSpecifiesSandbox.java: >> >> + same >> + > ...snip... > > Thank you very much, > J. > ouch it broken some unittests Please double check and fix. From andrew at icedtea.classpath.org Wed Jul 30 13:41:49 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 30 Jul 2014 13:41:49 +0000 Subject: /hg/icedtea6: Update to b32. Message-ID: changeset faaea522af93 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=faaea522af93 author: Andrew John Hughes date: Wed Jul 30 14:41:18 2014 +0100 Update to b32. 2014-07-30 Andrew John Hughes * patches/jtreg-T6638712-fix.patch, * patches/jtreg-T6650759m-fix.patch, * patches/openjdk/6638712-wildcard_types.patch, * patches/openjdk/6650759-missing_inference.patch: Remove upstreamed patches. * Makefile.am: (OPENJDK_DATE): Update to b32 release date. (OPENJDK_SHA256SUM): Set to hash of new b32 tarball. (OPENJDK_VERSION): Set to b32. (ICEDTEA_PATCHES): Drop removed patches. * patches/openjdk/6636370-appcontext_simplification.patch: Regenerated. * patches/openjdk/6729772-opt_cleanup.patch, * patches/openjdk/6799141-split_out_versions.patch, * patches/openjdk/6816311-compiler_name.patch, * patches/windows-awt.patch: Remove Windows fragments added upstream. * patches/openjdk/8013057-detect_mmap_commit_failures.patch: Remove redundant copyright header change. diffstat: ChangeLog | 22 + Makefile.am | 10 +- patches/jtreg-T6638712-fix.patch | 30 - patches/jtreg-T6650759m-fix.patch | 6 - patches/openjdk/6636370-appcontext_simplification.patch | 73 +- patches/openjdk/6638712-wildcard_types.patch | 563 -------- patches/openjdk/6650759-missing_inference.patch | 884 -------------- patches/openjdk/6729772-opt_cleanup.patch | 399 ++---- patches/openjdk/6799141-split_out_versions.patch | 96 +- patches/openjdk/6816311-compiler_name.patch | 265 +--- patches/openjdk/8013057-detect_mmap_commit_failures.patch | 189 +- patches/windows-awt.patch | 78 +- 12 files changed, 349 insertions(+), 2266 deletions(-) diffs (truncated from 3400 to 500 lines): diff -r 0e26048bb9e3 -r faaea522af93 ChangeLog --- a/ChangeLog Tue Jul 29 01:20:12 2014 +0100 +++ b/ChangeLog Wed Jul 30 14:41:18 2014 +0100 @@ -1,3 +1,25 @@ +2014-07-30 Andrew John Hughes + + * patches/jtreg-T6638712-fix.patch, + * patches/jtreg-T6650759m-fix.patch, + * patches/openjdk/6638712-wildcard_types.patch, + * patches/openjdk/6650759-missing_inference.patch: + Remove upstreamed patches. + * Makefile.am: + (OPENJDK_DATE): Update to b32 release date. + (OPENJDK_SHA256SUM): Set to hash of new b32 tarball. + (OPENJDK_VERSION): Set to b32. + (ICEDTEA_PATCHES): Drop removed patches. + * patches/openjdk/6636370-appcontext_simplification.patch: + Regenerated. + * patches/openjdk/6729772-opt_cleanup.patch, + * patches/openjdk/6799141-split_out_versions.patch, + * patches/openjdk/6816311-compiler_name.patch, + * patches/windows-awt.patch: + Remove Windows fragments added upstream. + * patches/openjdk/8013057-detect_mmap_commit_failures.patch: + Remove redundant copyright header change. + 2014-07-28 Andrew John Hughes OJ39: Handle fonts with the non-canonical diff -r 0e26048bb9e3 -r faaea522af93 Makefile.am --- a/Makefile.am Tue Jul 29 01:20:12 2014 +0100 +++ b/Makefile.am Wed Jul 30 14:41:18 2014 +0100 @@ -1,8 +1,8 @@ # Dependencies -OPENJDK_DATE = 15_apr_2014 -OPENJDK_SHA256SUM = 362d9bf20e91393b52dd0513896d39831cf320c49bd4bf1e28124f21569b72eb -OPENJDK_VERSION = b31 +OPENJDK_DATE = 15_jul_2014 +OPENJDK_SHA256SUM = 1a7404f38b3fa7cbb25d4273c0d94885912badd3343c5184c3b0947437501256 +OPENJDK_VERSION = b32 OPENJDK_URL = https://java.net/downloads/openjdk6/ CACAO_VERSION = 68fe50ac34ec @@ -374,12 +374,8 @@ patches/ipv4-mapped-ipv6-addresses.patch \ patches/jtreg-OpenGLContextInit.patch \ patches/openjdk/6510892-httpserver_test.patch \ - patches/openjdk/6638712-wildcard_types.patch \ - patches/openjdk/6650759-missing_inference.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/rendering-engine-tests.patch \ patches/openjdk/6800846-printing-quality.patch \ diff -r 0e26048bb9e3 -r faaea522af93 patches/jtreg-T6638712-fix.patch --- a/patches/jtreg-T6638712-fix.patch Tue Jul 29 01:20:12 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out 2010-11-30 15:27:57.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712a.java:39:41: compiler.err.invalid.inferred.types: T, (- compiler.misc.inferred.do.not.conform.to.params: java.lang.Iterable>, java.util.List>) -+T6638712a.java:16:41: compiler.err.invalid.inferred.types: T, (- compiler.misc.inferred.do.not.conform.to.params: java.lang.Iterable>, java.util.List>) - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-11-30 15:27:58.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712b.java:37:21: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: T, T, java.lang.String)), T, java.lang.String -+T6638712b.java:14:21: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: T, T, java.lang.String)), T, java.lang.String - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out 2010-11-30 15:27:59.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712c.java:39:9: compiler.err.cant.apply.symbol: sort(T[],java.util.Comparator), T6638712c, , java.lang.Enum[],java.util.Comparator>, null -+T6638712c.java:16:9: compiler.err.cant.apply.symbol: sort(T[],java.util.Comparator), T6638712c, , java.lang.Enum[],java.util.Comparator>, null - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out 2010-11-30 15:28:01.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712d.java:39:9: compiler.err.cant.apply.symbol: m(U,java.util.List>), T6638712d, , int,java.util.List>, null -+T6638712d.java:16:9: compiler.err.cant.apply.symbol: m(U,java.util.List>), T6638712d, , int,java.util.List>, null - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-11-30 15:28:02.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712e.java:40:27: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: X, T6638712e.Foo, T6638712e.Foo)), T6638712e.Foo, T6638712e.Foo -+T6638712e.java:17:27: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: X, T6638712e.Foo, T6638712e.Foo)), T6638712e.Foo, T6638712e.Foo - 1 error diff -r 0e26048bb9e3 -r faaea522af93 patches/jtreg-T6650759m-fix.patch --- a/patches/jtreg-T6650759m-fix.patch Tue Jul 29 01:20:12 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ ---- openjdk-old/langtools/test/tools/javac/generics/inference/6650759/T6650759m.out 2010-12-03 16:08:35.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6650759/T6650759m.out 2010-12-03 16:12:08.000000000 +0100 -@@ -1,2 +1,2 @@ --T6650759m.java:43:36: compiler.err.prob.found.req: (compiler.misc.incompatible.types), java.util.List, java.util.List -+T6650759m.java:43:36: compiler.err.prob.found.req: (- compiler.misc.incompatible.types), java.util.List, java.util.List - 1 error diff -r 0e26048bb9e3 -r faaea522af93 patches/openjdk/6636370-appcontext_simplification.patch --- a/patches/openjdk/6636370-appcontext_simplification.patch Tue Jul 29 01:20:12 2014 +0100 +++ b/patches/openjdk/6636370-appcontext_simplification.patch Wed Jul 30 14:41:18 2014 +0100 @@ -1,6 +1,6 @@ diff -Nru openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java openjdk/jdk/src/share/classes/sun/awt/AppContext.java ---- openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java 2013-08-05 16:49:37.120128300 +0100 -+++ openjdk/jdk/src/share/classes/sun/awt/AppContext.java 2013-08-05 17:02:51.304664462 +0100 +--- openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java 2014-07-30 05:35:13.829679786 +0100 ++++ openjdk/jdk/src/share/classes/sun/awt/AppContext.java 2014-07-30 05:41:13.086698718 +0100 @@ -151,7 +151,7 @@ contained in another AppContext. It is implicitly created for standalone apps only (i.e. not applets) @@ -71,58 +71,17 @@ // Special case: we implicitly create the main app context // if no contexts have been created yet. This covers standalone apps -@@ -308,28 +297,29 @@ - } - } +@@ -338,8 +327,7 @@ + } -- AppContext context = threadGroup2appContext.get(threadGroup); -- while (context == null) { -- threadGroup = threadGroup.getParent(); -- if (threadGroup == null) { -- return null; -+ AppContext context = threadGroup2appContext.get(threadGroup); -+ while (context == null) { -+ threadGroup = threadGroup.getParent(); -+ if (threadGroup == null) { -+ return null; -+ } -+ context = threadGroup2appContext.get(threadGroup); -+ } -+ -+ // In case we did anything in the above while loop, we add -+ // all the intermediate ThreadGroups to threadGroup2appContext -+ // so we won't spin again. -+ for (ThreadGroup tg = currentThreadGroup; tg != threadGroup; tg = tg.getParent()) { -+ threadGroup2appContext.put(tg, context); -+ } -+ -+ // Now we're done, so we cache the latest key/value pair. -+ threadAppContext.set(context); -+ -+ -+ return context; - } -- context = threadGroup2appContext.get(threadGroup); -- } -- // In case we did anything in the above while loop, we add -- // all the intermediate ThreadGroups to threadGroup2appContext -- // so we won't spin again. -- for (ThreadGroup tg = currentThreadGroup; tg != threadGroup; tg = tg.getParent()) { -- threadGroup2appContext.put(tg, context); -- } -- -- // Now we're done, so we cache the latest key/value pair. + // Now we're done, so we cache the latest key/value pair. - mostRecentThreadAppContext = - new MostRecentThreadAppContext(currentThread, context); -- -- return context; -- } -- }); -+ }); - } ++ threadAppContext.set(context); - return appContext; -@@ -473,7 +463,7 @@ + return context; + } +@@ -487,7 +475,7 @@ // Threads in the ThreadGroup to exit. long startTime = System.currentTimeMillis(); @@ -131,7 +90,7 @@ while ((this.threadGroup.activeCount() > 0) && (System.currentTimeMillis() < endTime)) { try { -@@ -488,7 +478,7 @@ +@@ -502,7 +490,7 @@ // Threads in the ThreadGroup to die. startTime = System.currentTimeMillis(); @@ -140,7 +99,7 @@ while ((this.threadGroup.activeCount() > 0) && (System.currentTimeMillis() < endTime)) { try { -@@ -507,10 +497,7 @@ +@@ -521,10 +509,7 @@ } threadGroup2appContext.remove(this.threadGroup); @@ -152,15 +111,7 @@ // Finally, we destroy the ThreadGroup entirely. try { -@@ -693,6 +680,7 @@ - * Returns a string representation of this AppContext. - * @since 1.2 - */ -+ @Override - public String toString() { - return getClass().getName() + "[threadGroup=" + threadGroup.getName() + "]"; - } -@@ -842,15 +830,6 @@ +@@ -856,15 +842,6 @@ } } diff -r 0e26048bb9e3 -r faaea522af93 patches/openjdk/6638712-wildcard_types.patch --- a/patches/openjdk/6638712-wildcard_types.patch Tue Jul 29 01:20:12 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,563 +0,0 @@ -# HG changeset patch -# User mcimadamore -# Date 1284137253 -3600 -# Node ID c5fe15e03287286fa8e668798409c4d7493ee834 -# Parent 27f03394a69d018c1c2badadee65ea39c7274606 -6638712: Inference with wildcard types causes selection of inapplicable method -Summary: Added global sanity check in order to make sure that return type inference does not violate bounds constraints -Reviewed-by: jjg - -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/code/Type.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java Fri Sep 10 17:47:33 2010 +0100 -@@ -1061,6 +1061,21 @@ - return qtype.isErroneous(); - } - -+ /** -+ * Replaces this ForAll's typevars with a set of concrete Java types -+ * and returns the instantiated generic type. Subclasses might override -+ * in order to check that the list of types is a valid instantiation -+ * of the ForAll's typevars. -+ * -+ * @param actuals list of actual types -+ * @param types types instance -+ * @return qtype where all occurrences of tvars are replaced -+ * by types in actuals -+ */ -+ public Type inst(List actuals, Types types) { -+ return types.subst(qtype, tvars, actuals); -+ } -+ - public Type map(Mapping f) { - return f.apply(qtype); - } -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/code/Types.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java Fri Sep 10 17:47:33 2010 +0100 -@@ -331,6 +331,14 @@ - if (s.tag >= firstPartialTag) - return isSuperType(s, t); - -+ if (s.isCompound()) { -+ for (Type s2 : interfaces(s).prepend(supertype(s))) { -+ if (!isSubtype(t, s2, capture)) -+ return false; -+ } -+ return true; -+ } -+ - Type lower = lowerBound(s); - if (s != lower) - return isSubtype(capture ? capture(t) : t, lower, false); -@@ -2766,6 +2774,14 @@ - /** - * Capture conversion as specified by JLS 3rd Ed. - */ -+ -+ public List capture(List ts) { -+ List buf = List.nil(); -+ for (Type t : ts) { -+ buf = buf.prepend(capture(t)); -+ } -+ return buf.reverse(); -+ } - public Type capture(Type t) { - if (t.tag != CLASS) - return t; -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Check.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java Fri Sep 10 17:47:33 2010 +0100 -@@ -383,6 +383,10 @@ - JCDiagnostic.fragment("incompatible.types" + (d!=null ? ".1" : ""), d), - t, pt); - } -+ } catch (Infer.InvalidInstanceException ex) { -+ JCDiagnostic d = ex.getDiagnostic(); -+ log.error(pos, "invalid.inferred.types", t.tvars, d); -+ return syms.errType; - } - } - } -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Infer.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java Fri Sep 10 17:47:33 2010 +0100 -@@ -29,6 +29,7 @@ - import com.sun.tools.javac.util.List; - import com.sun.tools.javac.code.*; - import com.sun.tools.javac.code.Type.*; -+import com.sun.tools.javac.code.Symbol.*; - - import static com.sun.tools.javac.code.Flags.*; - import static com.sun.tools.javac.code.Kinds.*; -@@ -50,6 +51,7 @@ - - Symtab syms; - Types types; -+ Resolve rs; - - public static Infer instance(Context context) { - Infer instance = context.get(inferKey); -@@ -62,43 +64,51 @@ - context.put(inferKey, this); - syms = Symtab.instance(context); - types = Types.instance(context); -+ rs = Resolve.instance(context); - } - -- public static class NoInstanceException extends RuntimeException { -+ public static class InferenceException extends RuntimeException { - private static final long serialVersionUID = 0; - -- boolean isAmbiguous; // exist several incomparable best instances? -- - JCDiagnostic diagnostic; - -- NoInstanceException(boolean isAmbiguous) { -+ InferenceException() { - this.diagnostic = null; -- this.isAmbiguous = isAmbiguous; - } -- NoInstanceException setMessage(String key) { -- this.diagnostic = JCDiagnostic.fragment(key); -+ InferenceException setMessage(String key, Object... args) { -+ this.diagnostic = JCDiagnostic.fragment(key, args); - return this; - } -- NoInstanceException setMessage(String key, Object arg1) { -- this.diagnostic = JCDiagnostic.fragment(key, arg1); -- return this; -- } -- NoInstanceException setMessage(String key, Object arg1, Object arg2) { -- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2); -- return this; -- } -- NoInstanceException setMessage(String key, Object arg1, Object arg2, Object arg3) { -- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2, arg3); -- return this; -- } -+ - public JCDiagnostic getDiagnostic() { - return diagnostic; - } - } -+ -+ public static class NoInstanceException extends InferenceException { -+ private static final long serialVersionUID = 1; -+ -+ boolean isAmbiguous; // exist several incomparable best instances? -+ -+ NoInstanceException(boolean isAmbiguous) { -+ super(); -+ this.isAmbiguous = isAmbiguous; -+ } -+ } -+ -+ public static class InvalidInstanceException extends InferenceException { -+ private static final long serialVersionUID = 2; -+ -+ InvalidInstanceException() { -+ super(); -+ } -+ } -+ - private final NoInstanceException ambiguousNoInstanceException = - new NoInstanceException(true); - private final NoInstanceException unambiguousNoInstanceException = - new NoInstanceException(false); -+ private final InvalidInstanceException invalidInstanceException = new InvalidInstanceException(); - - /*************************************************************************** - * Auxiliary type values and classes -@@ -247,7 +257,7 @@ - */ - public Type instantiateExpr(ForAll that, - Type to, -- Warner warn) throws NoInstanceException { -+ Warner warn) throws InferenceException { - List undetvars = Type.map(that.tvars, fromTypeVarFun); - for (List l = undetvars; l.nonEmpty(); l = l.tail) { - UndetVar v = (UndetVar) l.head; -@@ -273,8 +283,7 @@ - List targs = Type.map(undetvars, getInstFun); - targs = types.subst(targs, that.tvars, targs); - checkWithinBounds(that.tvars, targs, warn); -- -- return getInstFun.apply(qtype1); -+ return that.inst(targs, types); - } - - /** Instantiate method type `mt' by finding instantiations of -@@ -282,36 +291,42 @@ - */ - public Type instantiateMethod(List tvars, - MethodType mt, -- List argtypes, -- boolean allowBoxing, -- boolean useVarargs, -- Warner warn) throws NoInstanceException { -+ final List argtypes, -+ final boolean allowBoxing, -+ final boolean useVarargs, -+ final Warner warn) throws InferenceException { - //-System.err.println("instantiateMethod(" + tvars + ", " + mt + ", " + argtypes + ")"); //DEBUG - List undetvars = Type.map(tvars, fromTypeVarFun); - List formals = mt.argtypes; -- -+ //need to capture exactly once - otherwise subsequent -+ //applicability checks might fail -+ final List capturedArgs = types.capture(argtypes); -+ List actuals = capturedArgs; -+ List actualsNoCapture = argtypes; - // instantiate all polymorphic argument types and - // set up lower bounds constraints for undetvars - Type varargsFormal = useVarargs ? formals.last() : null; -- while (argtypes.nonEmpty() && formals.head != varargsFormal) { -- Type ft = formals.head; -- Type at = argtypes.head.baseType(); -- if (at.tag == FORALL) -- at = instantiateArg((ForAll) at, ft, tvars, warn); -- Type sft = types.subst(ft, tvars, undetvars); -+ while (actuals.nonEmpty() && formals.head != varargsFormal) { -+ Type formal = formals.head; -+ Type actual = actuals.head.baseType(); -+ Type actualNoCapture = actualsNoCapture.head.baseType(); -+ if (actual.tag == FORALL) -+ actual = instantiateArg((ForAll)actual, formal, tvars, warn); -+ Type undetFormal = types.subst(formal, tvars, undetvars); - boolean works = allowBoxing -- ? types.isConvertible(at, sft, warn) -- : types.isSubtypeUnchecked(at, sft, warn); -+ ? types.isConvertible(actual, undetFormal, warn) -+ : types.isSubtypeUnchecked(actual, undetFormal, warn); - if (!works) { - throw unambiguousNoInstanceException - .setMessage("no.conforming.assignment.exists", -- tvars, at, ft); -+ tvars, actualNoCapture, formal); - } - formals = formals.tail; -- argtypes = argtypes.tail; -+ actuals = actuals.tail; -+ actualsNoCapture = actualsNoCapture.tail; - } - if (formals.head != varargsFormal || // not enough args -- !useVarargs && argtypes.nonEmpty()) { // too many args -+ !useVarargs && actuals.nonEmpty()) { // too many args - // argument lists differ in length - throw unambiguousNoInstanceException - .setMessage("arg.length.mismatch"); -@@ -319,20 +334,21 @@ - - // for varargs arguments as well - if (useVarargs) { -- Type elt = types.elemtype(varargsFormal); -- Type sft = types.subst(elt, tvars, undetvars); -- while (argtypes.nonEmpty()) { -- Type ft = sft; -- Type at = argtypes.head.baseType(); -- if (at.tag == FORALL) -- at = instantiateArg((ForAll) at, ft, tvars, warn); -- boolean works = types.isConvertible(at, sft, warn); -+ Type elemType = types.elemtype(varargsFormal); -+ Type elemUndet = types.subst(elemType, tvars, undetvars); -+ while (actuals.nonEmpty()) { -+ Type actual = actuals.head.baseType(); -+ Type actualNoCapture = actualsNoCapture.head.baseType(); -+ if (actual.tag == FORALL) -+ actual = instantiateArg((ForAll)actual, elemType, tvars, warn); -+ boolean works = types.isConvertible(actual, elemUndet, warn); - if (!works) { - throw unambiguousNoInstanceException - .setMessage("no.conforming.assignment.exists", -- tvars, at, ft); -+ tvars, actualNoCapture, elemType); - } -- argtypes = argtypes.tail; -+ actuals = actuals.tail; -+ actualsNoCapture = actualsNoCapture.tail; - } - } - -@@ -363,16 +379,38 @@ From jvanek at redhat.com Wed Jul 30 13:47:27 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 15:47:27 +0200 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53D6C65A.4030101@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> <53D114C8.1080407@redhat.com> <53D259B5.9090402@redhat.com> <53D668C7.3060901@redhat.com> <53D6C65A.4030101@redhat.com> Message-ID: <53D8F76F.1020604@redhat.com> On 07/28/2014 11:53 PM, Andrew Azores wrote: > On 07/28/2014 11:14 AM, Jiri Vanek wrote: >> >>> diff --git a/plugin/icedteanp/IcedTeaPluginUtils.cc b/plugin/icedteanp/IcedTeaPluginUtils.cc >>> --- a/plugin/icedteanp/IcedTeaPluginUtils.cc >>> +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc >>> @@ -59,6 +59,19 @@ >>> /* Plugin async call queue */ >>> static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< >>> PluginThreadCall* >(); >>> >>> +int >>> +IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>> +{ >>> + if (!IcedTeaPluginUtilities::file_exists(dir)) >>> + { >>> + if (!g_mkdir(dir.c_str(), 755)) >>> + { >>> + return errno; >>> + } >>> + } >>> + return 0; >>> +} >>> + >> ... >> > + int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); >> > + if (!parentErr){ >> > + PLUGIN_ERROR("FATAL: Failed to create IcedTea-Web config directory %s: %s\n", >> r1.c_str(), strerror(parentErr)); >> > + return NULL; >> } >> >> When you are her, you should also verify (if it exists then) whether it is directory or file. If >> File, return failure. >> >> I would discourage you from returning errno. I would say Print error messages here, and return >> true/false. >> >> true/false is the only indicator you need if you need to decide wheter continue or not. >> >> And I would suggest continue at all cost, but print out a warning that it probably will nto work. >> >> So I would go with: >> >> bool IcedTeaPluginUtilities::createLogDirectory(std::string dir) >> { >> if (!file_exists(dir) ) >> { >> if (!g_mkdir(dir.c_str(), 755)) >> int x=errno >> echo "warning, creation of $dir failed. Itw need this direcotry to work. You can >> expect failre later. reason: "error_toString(x) >> //always save errorn >> return false; >> } >> } else { >> if (!is_dir(dir)){ >> echo "warning, cannot create $dir becasue there is already an file" >> return false >> } >> } >> return true; >> //feel free to add some debug only outputs here like exists, continuing, is dir, continuing... >> } >> int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); >> // warnings have been printed >> // no need to die, trying to continue >> >> >> >> >> Also.. :-/ .. your patch kills ITW at my machine >> >> [unknown user][ITW-C-PLUGIN][MESSAGE_DEBUG][Mon Jul 28 16:11:03 CEST >> 2014][/home/jvanek/hg/icedtea-web/plugin/icedteanp/IcedTeaParseProperties.cc:141] ITNPP Thread# >> 139757752895360, gthread 0x7f1bd2614120: FATAL: Failed to create IcedTea-Web config directory >> /home/jvanek/.config/icedtea-web: Success >> >> and firefox dies. Please run your code on soem usecases before posting. >> >> Well the /home/jvanek/.config/icedtea-web do exist at my pc - so somethig is wrong :) > > :S I could swear it worked for me, not sure what happened there. Maybe I made a change and failed to > test that one before sending :/ > >> >> >> My reason to try continuing is simple - There may be cases, when .confing/itw may be some special >> device - well nearly impossible, but still possible. >> >> >> Another note - sinc you created new method - please unittest it in cpp-unit-tests. >> >> >> And positive note at the end. I run covescan on your patch and not sure what to read - >> http://cov01.lab.eng.brq.redhat.com/covscanhub/task/13258/ :)) >> J. >> >> >> > > New patch has tests added and some style cleanup done, and works again (hopefully - seems to work > fine for me and unit tests are a little reassuring). > > Thanks, > Is this output of test expected? (yes, the code is doing it :) , but should not be :) ) Passed: is_directory WARNING: Needed to create directory /tmp/fileSGg0Vp but there is already a file of the same name at this location. WARNING: Failed to create new directory /tmp/filecvV1sH/test. Reason: Permission denied Passed: create_log_dir I mean the warnings. I thing they are disturbing the output and should not be here. I think there are exampels in ccp tests, how to redirect the output. May you try them? Except this I'm moreover happy with patch. One nit you called it "create_log_dir" I would go with generic "create_dir" If the redirect of output and renaming will be smooth, ok for head. For 1.5 - I'm for a bit less invasive patch. One of the earlier versions was more suitable. I would Discourage you from any behaviour changes (like new error/warning messages). Please reconsider benefits and post 1.5 patch separately. (unless it is completely same as this one) tyvm! J. From gnu.andrew at redhat.com Wed Jul 30 13:54:06 2014 From: gnu.andrew at redhat.com (Andrew Hughes) Date: Wed, 30 Jul 2014 09:54:06 -0400 (EDT) Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: References: <20140718212106.GA21559@carrie.the212.com> <1072325279.16081698.1406572345026.JavaMail.zimbra@redhat.com> Message-ID: <905479344.16983895.1406728446450.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 28 July 2014 20:32, Andrew Hughes wrote: > > ----- Original Message ----- > >> On 18 July 2014 23:21, Andrew Hughes wrote: > >> > We are pleased to announce the inaugural release of IcedTea-Sound. At > >> > present, IcedTea-Sound contains the PulseAudio provider which was > >> > removed from IcedTea itself from 2.5.0 onwards. More providers may be > >> > included in the future. > >> > > >> > If you find an issue with the release, please report it to our bug > >> > database (http://icedtea.classpath.org/bugzilla) under the > >> > IcedTea-Sound product and the appropriate component. Development > >> > discussion takes place on the distro-pkg-dev at openjdk.java.net mailing > >> > list (as with IcedTea) and patches are always welcome. > >> > > >> > Full details of the release can be found below. > >> > > >> > What's New? > >> > =========== > >> > New in release 1.0.0 (2014-07-18): > >> > > >> > * PR1741: Break PulseAudio provider out into IcedTea-Sound > >> > * PR1840: Replace Makefile.am references to PULSE_JAVA with > >> > ICEDTEA_SOUND > >> > * PR1842: Linker does not check that symbols can be resolved for > >> > libpulse-java.so > >> > * PR1876: The following shared libraries lack a SONAME: > >> > /usr/lib64/libicedtea-sound.so > >> > > >> > The tarballs can be downloaded from: > >> > > >> > * > >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz > >> > * > >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz > >> > > >> > We provide both gzip and xz tarballs, so that those who are able to > >> > make use of the smaller tarball produced by xz may do so. > >> > > >> > The tarballs are accompanied by digital signatures available at: > >> > > >> > * > >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz.sig > >> > * > >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz.sig > >> > > >> > These are 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 > >> > > >> > SHA256 checksums: > >> > > >> > 0d09bc9656f9125642f70bb322f8ec92ec0ae28fdd295e83c4ce3c7576e79bd3 > >> > icedtea-sound-1.0.0.tar.gz > >> > cb47dec753e4853ba8021a3b532631c2b751450d0d9d580c3ddce99fe8b4c7a9 > >> > icedtea-sound-1.0.0.tar.gz.sig > >> > 29511d271cbb5259eac5dd48867e27d61ce4ce15026dc105277dbf1238333dbb > >> > icedtea-sound-1.0.0.tar.xz > >> > c16cb29502d6edb16fb611b3d1ffbda199919f56afc8691a7dceee08b009b528 > >> > icedtea-sound-1.0.0.tar.xz.sig > >> > > >> > The checksums can be downloaded from: > >> > > >> > * > >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.sha256 > >> > > >> > The following people helped with this release: > >> > > >> > * Andrew Hughes (all bug fixes, release management) > >> > > >> > We would also like to thank the bug reporters and testers! > >> > > >> > To get started: > >> > > >> > $ tar xzf icedtea-sound-1.0.0.tar.gz > >> > > >> > or: > >> > > >> > $ tar x -I xz -f icedtea-sound-1.0.0.tar.xz > >> > > >> > then: > >> > > >> > $ mkdir its-build > >> > $ cd its-build > >> > $ ../icedtea-sound-1.0.0/configure --prefix=${install_location} > >> > $ make > >> > $ make install > >> > > >> > where ${install_location} should be replaced by the prefix where you > >> > wish to install IcedTea-Sound (default is /usr/local). Depending on > >> > the prefix selected, the 'make install' step may need root privileges. > >> > > >> > Full build requirements and instructions are available in the INSTALL > >> > file. > >> > > >> > 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 > >> > >> Hello Andrew, > >> > >> I can't quite get the relation between icedtea-sound and an OpenJDK > >> built with Icedtea. It seems I don't need icedtea-sound for my Java > >> app to play sound: I tried tuxguitar [0] and this Oracle test app [1] > >> that are able to play sound even though I have an OpenJDK + Icedtea > >> 2.5.1 but **no** icedtea-sound installed. > >> > >> Complete version: > >> > >> java version "1.7.0_65" > >> OpenJDK Runtime Environment (IcedTea 2.5.1) (Arch Linux build > >> 7.u65_2.5.1-5-x86_64) > >> OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode) > >> > >> Could you please let me know what I am missing here? > >> > >> [0] http://sourceforge.net/projects/tuxguitar/ > >> [1] http://www.oracle.com/technetwork/java/index-139508.html > >> > >> Thanks, > >> > >> Guillaume > >> > > > > No, you don't. IcedTea-Sound provides additional plugins (well, plugin > > at the moment, but more to come in future). It's what was > > --enable-pulse-java > > in IcedTea for many years, but we've split it out so there aren't multiple > > copies being maintained over multiple versions of IcedTea. > > > > The PulseAudio provider in IcedTea-Sound uses PulseAudio to play > > sound rather than ALSA, which is what the OpenJDK plugin does. I think, > > even back when it was in IcedTea, it would be disabled by default, unless > > explicitly enabled. > > > > Hope that helps, > > -- > > 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 > > > > Hello Jon, Hello Andrew, > > Thanks for this clarification. > > So if I understand correctly, icedtea-sound is available ? for > instance ? to applications that would explicitly want to use > Pulseaudio (or, in the future, any other sound provider ? la > Pulseaudio). Yes, it's additional support on top of OpenJDK. For example, in future, it may also include support for additional file formats beyond what OpenJDK provides. > > I am still a bit puzzled by why OpenJDK does not use it (totally na?ve > question here)? Is it because it would create a dependency on > pulseaudio rather than Alsa? Or maybe there is already a way to make > OpenJDK+IcedTea use IcedTea-Sound? > I don't really follow. If you have IcedTea-Sound installed and on your classpath, it will be used: $ cat TestSoundProviders.java import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Mixer; public class TestSoundProviders { public static void main(String[] args) { Mixer.Info[] mixers = AudioSystem.getMixerInfo(); for (Mixer.Info mixerInfo : mixers) { System.err.println(mixerInfo.getName()); } } } $ java TestSoundProviders Intel [default] Intel [plughw:0,0] Intel [plughw:0,1] HDMI [plughw:1,3] Port Intel [hw:0] Port HDMI [hw:1] $ java -cp /usr/share/icedtea-sound/icedtea-sound.jar:. TestSoundProviders PulseAudio Mixer Intel [default] Intel [plughw:0,0] Intel [plughw:0,1] HDMI [plughw:1,3] Port Intel [hw:0] Port HDMI [hw:1] -- 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 Jul 30 13:55:12 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 13:55:12 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|WORKSFORME |--- --- Comment #9 from Andrew John Hughes --- Leave this open. It is not fixed in all branches yet. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From guillaume at alaux.net Wed Jul 30 14:23:20 2014 From: guillaume at alaux.net (Guillaume Alaux) Date: Wed, 30 Jul 2014 16:23:20 +0200 Subject: IcedTea-Sound 1.0.0 Released! In-Reply-To: <905479344.16983895.1406728446450.JavaMail.zimbra@redhat.com> References: <20140718212106.GA21559@carrie.the212.com> <1072325279.16081698.1406572345026.JavaMail.zimbra@redhat.com> <905479344.16983895.1406728446450.JavaMail.zimbra@redhat.com> Message-ID: On 30 July 2014 15:54, Andrew Hughes wrote: > ----- Original Message ----- >> On 28 July 2014 20:32, Andrew Hughes wrote: >> > ----- Original Message ----- >> >> On 18 July 2014 23:21, Andrew Hughes wrote: >> >> > We are pleased to announce the inaugural release of IcedTea-Sound. At >> >> > present, IcedTea-Sound contains the PulseAudio provider which was >> >> > removed from IcedTea itself from 2.5.0 onwards. More providers may be >> >> > included in the future. >> >> > >> >> > If you find an issue with the release, please report it to our bug >> >> > database (http://icedtea.classpath.org/bugzilla) under the >> >> > IcedTea-Sound product and the appropriate component. Development >> >> > discussion takes place on the distro-pkg-dev at openjdk.java.net mailing >> >> > list (as with IcedTea) and patches are always welcome. >> >> > >> >> > Full details of the release can be found below. >> >> > >> >> > What's New? >> >> > =========== >> >> > New in release 1.0.0 (2014-07-18): >> >> > >> >> > * PR1741: Break PulseAudio provider out into IcedTea-Sound >> >> > * PR1840: Replace Makefile.am references to PULSE_JAVA with >> >> > ICEDTEA_SOUND >> >> > * PR1842: Linker does not check that symbols can be resolved for >> >> > libpulse-java.so >> >> > * PR1876: The following shared libraries lack a SONAME: >> >> > /usr/lib64/libicedtea-sound.so >> >> > >> >> > The tarballs can be downloaded from: >> >> > >> >> > * >> >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz >> >> > * >> >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz >> >> > >> >> > We provide both gzip and xz tarballs, so that those who are able to >> >> > make use of the smaller tarball produced by xz may do so. >> >> > >> >> > The tarballs are accompanied by digital signatures available at: >> >> > >> >> > * >> >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.gz.sig >> >> > * >> >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.tar.xz.sig >> >> > >> >> > These are 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 >> >> > >> >> > SHA256 checksums: >> >> > >> >> > 0d09bc9656f9125642f70bb322f8ec92ec0ae28fdd295e83c4ce3c7576e79bd3 >> >> > icedtea-sound-1.0.0.tar.gz >> >> > cb47dec753e4853ba8021a3b532631c2b751450d0d9d580c3ddce99fe8b4c7a9 >> >> > icedtea-sound-1.0.0.tar.gz.sig >> >> > 29511d271cbb5259eac5dd48867e27d61ce4ce15026dc105277dbf1238333dbb >> >> > icedtea-sound-1.0.0.tar.xz >> >> > c16cb29502d6edb16fb611b3d1ffbda199919f56afc8691a7dceee08b009b528 >> >> > icedtea-sound-1.0.0.tar.xz.sig >> >> > >> >> > The checksums can be downloaded from: >> >> > >> >> > * >> >> > http://icedtea.classpath.org/download/source/icedtea-sound-1.0.0.sha256 >> >> > >> >> > The following people helped with this release: >> >> > >> >> > * Andrew Hughes (all bug fixes, release management) >> >> > >> >> > We would also like to thank the bug reporters and testers! >> >> > >> >> > To get started: >> >> > >> >> > $ tar xzf icedtea-sound-1.0.0.tar.gz >> >> > >> >> > or: >> >> > >> >> > $ tar x -I xz -f icedtea-sound-1.0.0.tar.xz >> >> > >> >> > then: >> >> > >> >> > $ mkdir its-build >> >> > $ cd its-build >> >> > $ ../icedtea-sound-1.0.0/configure --prefix=${install_location} >> >> > $ make >> >> > $ make install >> >> > >> >> > where ${install_location} should be replaced by the prefix where you >> >> > wish to install IcedTea-Sound (default is /usr/local). Depending on >> >> > the prefix selected, the 'make install' step may need root privileges. >> >> > >> >> > Full build requirements and instructions are available in the INSTALL >> >> > file. >> >> > >> >> > 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 >> >> >> >> Hello Andrew, >> >> >> >> I can't quite get the relation between icedtea-sound and an OpenJDK >> >> built with Icedtea. It seems I don't need icedtea-sound for my Java >> >> app to play sound: I tried tuxguitar [0] and this Oracle test app [1] >> >> that are able to play sound even though I have an OpenJDK + Icedtea >> >> 2.5.1 but **no** icedtea-sound installed. >> >> >> >> Complete version: >> >> >> >> java version "1.7.0_65" >> >> OpenJDK Runtime Environment (IcedTea 2.5.1) (Arch Linux build >> >> 7.u65_2.5.1-5-x86_64) >> >> OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode) >> >> >> >> Could you please let me know what I am missing here? >> >> >> >> [0] http://sourceforge.net/projects/tuxguitar/ >> >> [1] http://www.oracle.com/technetwork/java/index-139508.html >> >> >> >> Thanks, >> >> >> >> Guillaume >> >> >> > >> > No, you don't. IcedTea-Sound provides additional plugins (well, plugin >> > at the moment, but more to come in future). It's what was >> > --enable-pulse-java >> > in IcedTea for many years, but we've split it out so there aren't multiple >> > copies being maintained over multiple versions of IcedTea. >> > >> > The PulseAudio provider in IcedTea-Sound uses PulseAudio to play >> > sound rather than ALSA, which is what the OpenJDK plugin does. I think, >> > even back when it was in IcedTea, it would be disabled by default, unless >> > explicitly enabled. >> > >> > Hope that helps, >> > -- >> > 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 >> > >> >> Hello Jon, Hello Andrew, >> >> Thanks for this clarification. >> >> So if I understand correctly, icedtea-sound is available ? for >> instance ? to applications that would explicitly want to use >> Pulseaudio (or, in the future, any other sound provider ? la >> Pulseaudio). > > Yes, it's additional support on top of OpenJDK. For example, in future, it > may also include support for additional file formats beyond what OpenJDK provides. > >> >> I am still a bit puzzled by why OpenJDK does not use it (totally na?ve >> question here)? Is it because it would create a dependency on >> pulseaudio rather than Alsa? Or maybe there is already a way to make >> OpenJDK+IcedTea use IcedTea-Sound? >> > > I don't really follow. If you have IcedTea-Sound installed and on your classpath, > it will be used: > > $ cat TestSoundProviders.java > import javax.sound.sampled.AudioSystem; > import javax.sound.sampled.Mixer; > > public class TestSoundProviders > { > public static void main(String[] args) > { > Mixer.Info[] mixers = AudioSystem.getMixerInfo(); > for (Mixer.Info mixerInfo : mixers) > { > System.err.println(mixerInfo.getName()); > } > } > } > > $ java TestSoundProviders > Intel [default] > Intel [plughw:0,0] > Intel [plughw:0,1] > HDMI [plughw:1,3] > Port Intel [hw:0] > Port HDMI [hw:1] > > $ java -cp /usr/share/icedtea-sound/icedtea-sound.jar:. TestSoundProviders > PulseAudio Mixer > Intel [default] > Intel [plughw:0,0] > Intel [plughw:0,1] > HDMI [plughw:1,3] > Port Intel [hw:0] > Port HDMI [hw:1] > > -- > 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 > Excellent! Thanks both for these explanations. > I don't really follow. If you have IcedTea-Sound installed and on your classpath, > it will be used: [?] This is the part I missed! Ok, so it definitely makes sense for me to include it in official repos for Arch Linux. Thanks again, Guillaume From aazores at redhat.com Wed Jul 30 14:47:18 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 30 Jul 2014 10:47:18 -0400 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D8F513.5070506@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> Message-ID: <53D90576.1010602@redhat.com> On 07/30/2014 09:37 AM, Jiri Vanek wrote: > On 07/30/2014 03:01 PM, Jiri Vanek wrote: >> ...snip... >>>> >>>> As you mentioned - the signed, but with permissions:sandbox app can >>>> not be run with all permissions. >>>> So skip all attrributes, except permissions one >>>> >>>> The sandbox one should be checked: >>>> signed: permissions:all-permissions - all permissions >>>> unsigned: permissions:all-permissions - sandbox >>>> unsigned: permissions:sandbox - sandbox >>>> signed: permissions:sandbox - sandbox >>>> signed: permissions missing - all permissions >>>> unsigned: permissions missing - sandbox >>>> >>>> On low permissions, no asking. >>>> >>>> For other then low permissions user should be asked for each except >>>> signed: permissions:all-permissions >>>> unsigned: permissions:sandbox >>>> cases. >>>> >>>> But the dialogue can be done as separate changeset (with >>>> custom-permissions button:) >>>> >>>> >>>> >>>>> New tests are also on the way and with the new tests will come the >>>>> fixed version of the previously >>>>> sent test, which will make be a signed reproducer rather than custom. >>>>> >>>> >>>> J. >>>> >>> >>> Okay, I wasn't sure what you had meant. It didn't seem right to skip >>> them all but I thought maybe >>> you had something else in mind to implement to fix it. So here's >>> another attempt. >>> >>> Setting deployment.manifest.attributes.check to false causes all >>> checks to be skipped, except for >>> the Permissions attribute, which is always checked regardless. Using >>> Low Extended Applet Security >>> causes the ALACA and Permissions checks to not generate dialogs and >>> assumes that it's OK to run the >>> applet(s). In the case of the Permissions attribute, it will still >>> auto sandbox if necessary. Is >>> this what you wanted? >>> >>> Thanks, >>> >>> -- >>> Andrew A >>> >> >> I have not applied and not tested the patch. >> >> It looks good in design and code. >> >> >> assuming the: >> + // If the attribute is not specified in the manifest, prompt >> the user. Oracle's spec says >> that the >> + // attribute is required, but this breaks a lot of existing >> applets. Therefore, when on the >> highest >> + // security level, we refuse to run these applets. On the >> standard security level, we ask. >> And on the >> + // lowest security level, we simply proceed without asking. >> >> really works, I'm ok with this to go to head . I also think it should >> go to 1.5 but I left final >> decision to you. (ok for 1.5 from my side) >> >> >> >>> >>> pr1769-6.patch >>> >>> >>> diff --git a/ChangeLog b/ChangeLog >>> --- a/ChangeLog >>> +++ b/ChangeLog >>> @@ -1,3 +1,43 @@ >>> +2014-06-24 Andrew Azores >>> + >>> + Fixed support for signed applets which specify the Permissions >>> attribute >>> + as "sandbox" in their manifests. These applets are now properly >>> run >>> + sandboxed automatically, rather than requiring the user to >>> click the >>> + "Sandbox" run button. >>> + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java >>> + (JNLPClassLoader): manifest attributes checking and security >>> settings >>> + moved inside initializeResources >>> + (initializePermissions): renamed >>> (initializeReadJarPermissions). Redundant >>> + null-check removed >>> + (initializeResources): do not set entries in >>> jarLocationSecurityMap until >>> + after prompting the user on whether to run the applet as well as >>> + performing manifest attribute checks. A new Collection >>> (validJars) is used >>> + to hold available and valid JARs between discovering the JARs >>> and applying >>> + any security settings to the them >>> + (initializeManifestAttributesChecker): new method >>> + (getJnlpFileCodebase): new method, extracted from >>> initializeResources >>> + (SecurityDelegateImpl.setRunInSandbox): throw exception if >>> already forced >>> + to run in sandbox, rather than if already prompted >>> + * netx/net/sourceforge/jnlp/runtime/ManifestAttributesChecker.java >>> + (isLowSecurity): new method >>> + (checkAll): Extended Applet Security on Low disables all >>> manifest checks >>> + except for Permissions >>> + (checkPermissionsAttribute): do not skip checking if Extended >>> Applet >>> + Security is Low. Remove try/catch on setRunInSandbox call as >>> this is now >>> + supported. >>> + (checkApplicationLibraryAllowableCodebaseAttribute): do not >>> display dialog >>> + prompts on low security, allow the applet to run without prompt >> >> I think the tests are not included in this patch. Please adjust the >> changelog to current state. >> >>> + * >>> tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/testcases/SignedAppletManifestSpecifiesSandboxTests.java: >>> >>> >>> + new test case >>> + * >>> tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/resources/SignedAppletManifestSpecifiesSandbox.html: >>> >>> >>> + same >>> + * >>> tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/MANIFEST.MF: >>> + same >>> + * >>> tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/Makefile: >>> + same >>> + * >>> tests/reproducers/custom/SignedAppletManifestSpecifiesSandbox/srcs/SignedAppletManifestSpecifiesSandbox.java: >>> >>> >>> + same >>> + >> ...snip... >> >> Thank you very much, >> J. >> > > ouch it broken some unittests > > Please double check and fix. > Nice catch! The Dummy JNLP classes were actually broken and the test was expecting a result that we've defined to not be allowable - I'm not sure how this was passing before the patch but to me that sounds like a bug. The only change here from -6 is changing the test to have an allowable Permissions manifest attribute, and making the Dummies initialize the required field properly. Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: pr1769-7.patch Type: text/x-patch Size: 22078 bytes Desc: not available URL: From jvanek at redhat.com Wed Jul 30 14:52:41 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 16:52:41 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D90576.1010602@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> Message-ID: <53D906B9.2090802@redhat.com> > diff --git a/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFile.java b/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFile.java > --- a/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFile.java > +++ b/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFile.java > @@ -58,6 +58,9 @@ public class DummyJNLPFile extends JNLPF > } > } > > + { > + this.security = new SecurityDesc(this, SecurityDesc.SANDBOX_PERMISSIONS, null); > + } > > @Override > public ResourcesDesc getResources() { > @@ -68,10 +71,5 @@ public class DummyJNLPFile extends JNLPF > public URL getCodeBase() { > return CODEBASE_URL; > } > - > - @Override > - public SecurityDesc getSecurity() { > - return new SecurityDesc(this, SecurityDesc.SANDBOX_PERMISSIONS, null); > - } > > } > diff --git a/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java b/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java > --- a/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java > +++ b/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java > @@ -38,6 +38,7 @@ public class DummyJNLPFileWithJar extend > > } > info = new ArrayList(); > + this.security = new SecurityDesc(this, SecurityDesc.SANDBOX_PERMISSIONS, null); > } > > public URL getJarLocation() { > @@ -87,11 +88,6 @@ public class DummyJNLPFileWithJar extend > return codeBase; > } > > - @Override > - public SecurityDesc getSecurity() { > - return new SecurityDesc(this, SecurityDesc.SANDBOX_PERMISSIONS, null); > - } > - > public void setInfo(List info) { > this.info = info; > } > those looks ok to me. However: > diff --git a/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java > --- a/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java > +++ b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java > @@ -129,7 +129,7 @@ public class JNLPFileTest extends NoStdO > /* > * "sandbox" or "all-permissions" > */ > - manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); > + manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "all-permissions"); Why this change??? It should not be here... > manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); > manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); > > @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO > Assert.assertEquals("*.comhttps://*.cz", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); > Assert.assertEquals("*.netftp://*uu.co.uk", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); > Assert.assertEquals("*.com *.net *.cz *.co.uk", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); > - Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); > + Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); So this one, > Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); > Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); > > @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO > Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new URL("ftp://aa.bb.net"))); > Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new URL("https://x.net"))); > Assert.assertEquals(false, jnlpFile.getManifestsAttributes().getCodebase().matches(new URL("http://aa.bb/com"))); > - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, jnlpFile.getManifestsAttributes().isSandboxForced()); > + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, jnlpFile.getManifestsAttributes().isSandboxForced()); and this one. Why so? > Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, jnlpFile.getManifestsAttributes().isTrustedLibrary()); > Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, jnlpFile.getManifestsAttributes().isTrustedOnly()); > From aazores at redhat.com Wed Jul 30 15:02:43 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 30 Jul 2014 11:02:43 -0400 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D906B9.2090802@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> Message-ID: <53D90913.7000703@redhat.com> On 07/30/2014 10:52 AM, Jiri Vanek wrote: > > diff --git > a/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFile.java > b/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFile.java > > --- > a/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFile.java > > +++ > b/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFile.java > > @@ -58,6 +58,9 @@ public class DummyJNLPFile extends JNLPF > > } > > } > > > > + { > > + this.security = new SecurityDesc(this, > SecurityDesc.SANDBOX_PERMISSIONS, null); > > + } > > > > @Override > > public ResourcesDesc getResources() { > > @@ -68,10 +71,5 @@ public class DummyJNLPFile extends JNLPF > > public URL getCodeBase() { > > return CODEBASE_URL; > > } > > - > > - @Override > > - public SecurityDesc getSecurity() { > > - return new SecurityDesc(this, > SecurityDesc.SANDBOX_PERMISSIONS, null); > > - } > > > > } > > diff --git > a/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java > b/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java > > > --- > a/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java > > +++ > b/tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java > > @@ -38,6 +38,7 @@ public class DummyJNLPFileWithJar extend > > > > } > > info = new ArrayList(); > > + this.security = new SecurityDesc(this, > SecurityDesc.SANDBOX_PERMISSIONS, null); > > } > > > > public URL getJarLocation() { > > @@ -87,11 +88,6 @@ public class DummyJNLPFileWithJar extend > > return codeBase; > > } > > > > - @Override > > - public SecurityDesc getSecurity() { > > - return new SecurityDesc(this, > SecurityDesc.SANDBOX_PERMISSIONS, null); > > - } > > - > > public void setInfo(List info) { > > this.info = info; > > } > > > > those looks ok to me. However: > >> diff --git >> a/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >> b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >> --- a/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >> +++ b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >> @@ -129,7 +129,7 @@ public class JNLPFileTest extends NoStdO >> /* >> * "sandbox" or "all-permissions" >> */ >> - manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); >> + manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), >> "all-permissions"); > > Why this change??? It should not be here... > >> manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); >> manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); >> >> @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO >> Assert.assertEquals("*.comhttps://*.cz", >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); >> Assert.assertEquals("*.netftp://*uu.co.uk", >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); >> Assert.assertEquals("*.com *.net *.cz *.co.uk", >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); >> - >> Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >> + >> Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); > > So this one, >> Assert.assertEquals("false", >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); >> Assert.assertEquals("false", >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); >> >> @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO >> Assert.assertEquals(true, >> jnlpFile.getManifestsAttributes().getCodebase().matches(new >> URL("ftp://aa.bb.net"))); >> Assert.assertEquals(true, >> jnlpFile.getManifestsAttributes().getCodebase().matches(new >> URL("https://x.net"))); >> Assert.assertEquals(false, >> jnlpFile.getManifestsAttributes().getCodebase().matches(new >> URL("http://aa.bb/com"))); >> - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >> jnlpFile.getManifestsAttributes().isSandboxForced()); >> + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >> jnlpFile.getManifestsAttributes().isSandboxForced()); > > and this one. Why so? >> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >> jnlpFile.getManifestsAttributes().isTrustedLibrary()); >> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >> jnlpFile.getManifestsAttributes().isTrustedOnly()); >> > > The JNLPClassLoader is determining the applet to be signed, and the ManifestAttributesChecker does not allow for JNLP applets to have a mismatch between their signing state and the permissions level they request (I believe this is in the spec for the Permissions attribute). Is the applet not actually signed? I looked into how the JARs are being created and couldn't see if they're signed one way or the other. Thanks, -- Andrew A From andrew at icedtea.classpath.org Wed Jul 30 15:17:51 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 30 Jul 2014 15:17:51 +0000 Subject: /hg/icedtea6-hg: 8 new changesets Message-ID: changeset 29d6e0e0c2d2 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=29d6e0e0c2d2 author: Jiri Vanek date: Fri May 09 13:28:18 2014 +0200 Makefile.am: (add-nss-debug.stamp): fixed ECJ_BUILD_OUTPUT_DIR to DEBUG_BUILD_OUTPUT_DIR. changeset 1da0a61f16a1 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=1da0a61f16a1 author: Andrew John Hughes date: Fri May 23 02:08:32 2014 +0100 S7027300, RH1098399: Unsynchronized HashMap access causes endless loop 2014-05-22 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * NEWS: Updated. * patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch: Backport fix to replace HashMap usage with ConcurrentHashMap, avoiding deadlock. changeset 93a1398d268f in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=93a1398d268f author: Andrew John Hughes date: Mon Jun 02 14:48:27 2014 +0100 S6611637: NullPointerException in sun.font.GlyphLayout$EngineRecord.init S6727719: Performance of TextLayout.getBounds() S6745225: Memory leak while drawing Attributed String S6904962: GlyphVector.getVisualBounds should not be affected by leading or trailing white space. S7183251: Netbeans editor renders text wrong on JDK 7u6 build 2014-05-28 Andrew John Hughes * Makefile.am: (ICEDTEA_PATCHES): Add new patches. * NEWS: Updated. * patches/openjdk/6611637-npe_in_glyphlayout.patch, * patches/openjdk/6727719-performance_of_textlayout_getbounds.patch, * patches/openjdk/6745225-memory_leak_in_attributed_string.patch, * patches/openjdk/6904962-getvisualbounds_affected_by_white_space.patch, * patches/openjdk/7183251-netbeans_renders_text_wrong.patch: Backport text layout fixes. changeset 755d4509b7d6 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=755d4509b7d6 author: Andrew John Hughes date: Thu Jul 24 05:03:40 2014 +0100 Add 1.13.4 release notes. 2014-07-23 Andrew John Hughes * NEWS: Add 1.13.4 release notes. changeset 0e26048bb9e3 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=0e26048bb9e3 author: Andrew John Hughes date: Tue Jul 29 01:20:12 2014 +0100 OJ39: Handle fonts with the non-canonical processing flag set 2014-07-28 Andrew John Hughes OJ39: Handle fonts with the non-canonical processing flag set * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * NEWS: Updated. * patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch: Sync LETypes.h and LayoutEngine.cpp with 7 versions in order to support fonts with the no canonical processing flag. changeset faaea522af93 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=faaea522af93 author: Andrew John Hughes date: Wed Jul 30 14:41:18 2014 +0100 Update to b32. 2014-07-30 Andrew John Hughes * patches/jtreg-T6638712-fix.patch, * patches/jtreg-T6650759m-fix.patch, * patches/openjdk/6638712-wildcard_types.patch, * patches/openjdk/6650759-missing_inference.patch: Remove upstreamed patches. * Makefile.am: (OPENJDK_DATE): Update to b32 release date. (OPENJDK_SHA256SUM): Set to hash of new b32 tarball. (OPENJDK_VERSION): Set to b32. (ICEDTEA_PATCHES): Drop removed patches. * patches/openjdk/6636370-appcontext_simplification.patch: Regenerated. * patches/openjdk/6729772-opt_cleanup.patch, * patches/openjdk/6799141-split_out_versions.patch, * patches/openjdk/6816311-compiler_name.patch, * patches/windows-awt.patch: Remove Windows fragments added upstream. * patches/openjdk/8013057-detect_mmap_commit_failures.patch: Remove redundant copyright header change. changeset 5094b84a8a5c in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=5094b84a8a5c author: Andrew John Hughes date: Wed Jul 30 14:57:43 2014 +0100 Bump to next version, b33. 2014-07-30 Andrew John Hughes * Makefile.am: (OPENJDK_VERSION): Bump to next release, b33. changeset f2308ef26cf8 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=f2308ef26cf8 author: Andrew John Hughes date: Wed Jul 30 16:17:30 2014 +0100 Drop upstreamed patch. 2014-07-30 Andrew John Hughes * patches/openjdk/8010213-set_socketoptions_windows.patch: Remove upstreamed patch. * Makefile.am: (ICEDTEA_PATCHES): Drop upstreamed patch. diffstat: ChangeLog | 76 + Makefile.am | 22 +- NEWS | 47 + patches/jtreg-T6638712-fix.patch | 30 - patches/jtreg-T6650759m-fix.patch | 6 - patches/openjdk/6611637-npe_in_glyphlayout.patch | 21 + patches/openjdk/6636370-appcontext_simplification.patch | 73 +- patches/openjdk/6638712-wildcard_types.patch | 563 ------ patches/openjdk/6650759-missing_inference.patch | 884 ---------- patches/openjdk/6727719-performance_of_textlayout_getbounds.patch | 36 + patches/openjdk/6729772-opt_cleanup.patch | 399 +--- patches/openjdk/6745225-memory_leak_in_attributed_string.patch | 160 + patches/openjdk/6799141-split_out_versions.patch | 96 +- patches/openjdk/6816311-compiler_name.patch | 265 +-- patches/openjdk/6904962-getvisualbounds_affected_by_white_space.patch | 129 + patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch | 33 + patches/openjdk/7183251-netbeans_renders_text_wrong.patch | 24 + patches/openjdk/8010213-set_socketoptions_windows.patch | 29 - patches/openjdk/8013057-detect_mmap_commit_failures.patch | 189 +- patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch | 347 +++ patches/windows-awt.patch | 78 +- 21 files changed, 1209 insertions(+), 2298 deletions(-) diffs (truncated from 4358 to 500 lines): diff -r c0295bae714c -r f2308ef26cf8 ChangeLog --- a/ChangeLog Thu Apr 17 02:40:37 2014 +0100 +++ b/ChangeLog Wed Jul 30 16:17:30 2014 +0100 @@ -1,3 +1,79 @@ +2014-07-30 Andrew John Hughes + + * patches/openjdk/8010213-set_socketoptions_windows.patch: + Remove upstreamed patch. + * Makefile.am: + (ICEDTEA_PATCHES): Drop upstreamed patch. + +2014-07-30 Andrew John Hughes + + * Makefile.am: + (OPENJDK_VERSION): Bump to next release, b33. + +2014-07-30 Andrew John Hughes + + * patches/jtreg-T6638712-fix.patch, + * patches/jtreg-T6650759m-fix.patch, + * patches/openjdk/6638712-wildcard_types.patch, + * patches/openjdk/6650759-missing_inference.patch: + Remove upstreamed patches. + * Makefile.am: + (OPENJDK_DATE): Update to b32 release date. + (OPENJDK_SHA256SUM): Set to hash of new b32 tarball. + (OPENJDK_VERSION): Set to b32. + (ICEDTEA_PATCHES): Drop removed patches. + * patches/openjdk/6636370-appcontext_simplification.patch: + Regenerated. + * patches/openjdk/6729772-opt_cleanup.patch, + * patches/openjdk/6799141-split_out_versions.patch, + * patches/openjdk/6816311-compiler_name.patch, + * patches/windows-awt.patch: + Remove Windows fragments added upstream. + * patches/openjdk/8013057-detect_mmap_commit_failures.patch: + Remove redundant copyright header change. + +2014-07-28 Andrew John Hughes + + OJ39: Handle fonts with the non-canonical + processing flag set + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * NEWS: Updated. + * patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch: + Sync LETypes.h and LayoutEngine.cpp with 7 versions + in order to support fonts with the no canonical + processing flag. + +2014-07-23 Andrew John Hughes + + * NEWS: Add 1.13.4 release notes. + +2014-05-28 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patches. + * NEWS: Updated. + * patches/openjdk/6611637-npe_in_glyphlayout.patch, + * patches/openjdk/6727719-performance_of_textlayout_getbounds.patch, + * patches/openjdk/6745225-memory_leak_in_attributed_string.patch, + * patches/openjdk/6904962-getvisualbounds_affected_by_white_space.patch, + * patches/openjdk/7183251-netbeans_renders_text_wrong.patch: + Backport text layout fixes. + +2014-05-22 Andrew John Hughes + + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * NEWS: Updated. + * patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch: + Backport fix to replace HashMap usage with ConcurrentHashMap, + avoiding deadlock. + +2014-05-09 Jiri Vanek + + * Makefile.am: (add-nss-debug.stamp): fixed ECJ_BUILD_OUTPUT_DIR + to DEBUG_BUILD_OUTPUT_DIR. + 2014-04-16 Andrew John Hughes * NEWS: diff -r c0295bae714c -r f2308ef26cf8 Makefile.am --- a/Makefile.am Thu Apr 17 02:40:37 2014 +0100 +++ b/Makefile.am Wed Jul 30 16:17:30 2014 +0100 @@ -1,8 +1,8 @@ # Dependencies -OPENJDK_DATE = 15_apr_2014 -OPENJDK_SHA256SUM = 362d9bf20e91393b52dd0513896d39831cf320c49bd4bf1e28124f21569b72eb -OPENJDK_VERSION = b31 +OPENJDK_DATE = 15_jul_2014 +OPENJDK_SHA256SUM = 1a7404f38b3fa7cbb25d4273c0d94885912badd3343c5184c3b0947437501256 +OPENJDK_VERSION = b33 OPENJDK_URL = https://java.net/downloads/openjdk6/ CACAO_VERSION = 68fe50ac34ec @@ -374,12 +374,8 @@ patches/ipv4-mapped-ipv6-addresses.patch \ patches/jtreg-OpenGLContextInit.patch \ patches/openjdk/6510892-httpserver_test.patch \ - patches/openjdk/6638712-wildcard_types.patch \ - patches/openjdk/6650759-missing_inference.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/rendering-engine-tests.patch \ patches/openjdk/6800846-printing-quality.patch \ @@ -500,7 +496,6 @@ patches/openjdk/8009165-inappropriate_method_in_reflectutil.patch \ patches/openjdk/8009217-fix_test_compile.patch \ patches/openjdk/8009610-blacklist_malware_certificate.patch \ - patches/openjdk/8010213-set_socketoptions_windows.patch \ patches/openjdk/8010714-xml_dsig_retrievalmethod.patch \ patches/openjdk/8011154-awt_regression.patch \ patches/openjdk/8011313-OCSP_timeout_wrong_value.patch \ @@ -614,7 +609,14 @@ patches/shark-drop_compile_method_arg_following_7083786.patch \ patches/openjdk/7151089-numa_should_not_free_shm_large_pages.patch \ patches/openjdk/8013057-detect_mmap_commit_failures.patch \ - patches/openjdk/8026887-make_large_page_allocations_easier_to_debug.patch + patches/openjdk/8026887-make_large_page_allocations_easier_to_debug.patch \ + patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch \ + patches/openjdk/7183251-netbeans_renders_text_wrong.patch \ + patches/openjdk/6904962-getvisualbounds_affected_by_white_space.patch \ + patches/openjdk/6611637-npe_in_glyphlayout.patch \ + patches/openjdk/6727719-performance_of_textlayout_getbounds.patch \ + patches/openjdk/6745225-memory_leak_in_attributed_string.patch \ + patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch if WITH_RHINO ICEDTEA_PATCHES += \ @@ -1918,7 +1920,7 @@ rm -f stamps/add-nss-debug.stamp.tmp touch stamps/add-nss-debug.stamp.tmp all_patches_ok=yes; \ - for dir in $(ECJ_BUILD_OUTPUT_DIR)/{j2sdk-image/jre,j2re-image} ; \ + for dir in $(DEBUG_BUILD_OUTPUT_DIR)/{j2sdk-image/jre,j2re-image} ; \ do \ pushd $$dir ; \ cp -v $$dir/lib/security/java.security{,.old} ; \ diff -r c0295bae714c -r f2308ef26cf8 NEWS --- a/NEWS Thu Apr 17 02:40:37 2014 +0100 +++ b/NEWS Wed Jul 30 16:17:30 2014 +0100 @@ -15,9 +15,56 @@ New in release 1.14.0 (201X-XX-XX): * Backports + - S6611637: NullPointerException in sun.font.GlyphLayout$EngineRecord.init + - S6727719: Performance of TextLayout.getBounds() + - S6745225: Memory leak while drawing Attributed String + - S6904962: GlyphVector.getVisualBounds should not be affected by leading or trailing white space. - S7151089: PS NUMA: NUMA allocator should not attempt to free pages when using SHM large pages - S8013057: Detect mmap() commit failures in Linux and Solaris os::commit_memory() impls and call vm_exit_out_of_memory() - S8026887: Make issues due to failed large pages allocations easier to debug + - OJ39: Handle fonts with the non-canonical processing flag set + +New in release 1.13.4 (2014-07-15): + +* Security fixes + - S8029755, CVE-2014-4209: Enhance subject class + - S8030763: Validate global memory allocation + - S8031346, CVE-2014-4244: Enhance RSA key handling + - S8031540: Introduce document horizon + - S8032536: JVM resolves wrong method in some unusual cases + - S8033055: Issues in 2d + - S8033301, CVE-2014-4266: Build more informative InfoBuilder + - S8034267: Probabilistic native crash + - S8034272: Do not cram data into CRAM arrays + - S8035004, CVE-2014-4252: Provider provides less service + - S8035009, CVE-2014-4218: Make Proxy representations consistent + - S8035119, CVE-2014-4219: Fix exceptions to bytecode verification + - S8035699, CVE-2014-4268: File choosers should be choosier + - S8036571: (process) Process process arguments carefully + - S8036800: Attribute OOM to correct part of code + - S8037046: Validate libraries to be loaded + - S8037157: Verify call + - S8037076, CVE-2014-2490: Check constant pool constants + - S8037162, CVE-2014-4263: More robust DH exchanges + - S8037167, CVE-2014-4216: Better method signature resolution + - S8039520, CVE-2014-4262: More atomicity of atomic updates +* Import of OpenJDK6 b32 + - OJ32: OpenJDK6-b31 isn't compatible with Windows platform + - OJ33: Update copyright headers introduced by the fix for OPENJDK6-32 + - OJ34: OpenJDK6-b31 backport of JDK-6638712 to openjdk6 + - OJ35: backport of JDK-6650759 to openjdk6 + - OJ36: Fix a mistake in backport of 8035119 + - S8013611: Modal dialog fails to obtain keyboard focus + - S8013836: getFirstDayOfWeek reports wrong day for pt-BR locale + - S8028111: XML readers share the same entity expansion counter + - S8028285: RMI Thread can no longer call out to AWT + - S8029038: Revise fix for XML readers share the same entity expansion counter + - S8042582: Test java/awt/KeyboardFocusmanager/ChangeKFMTest/ChangeKFMTest.html fails on Windows x64 + - S8042590: Running form URL throws NPE + - S8042789: org.omg.CORBA.ORBSingletonClass loading no longer uses context class loader +* Backports + - S7027300, RH1098399: Unsynchronized HashMap access causes endless loop + - S7183251: Netbeans editor renders text wrong on JDK 7u6 build New in release 1.13.3 (2014-04-15): diff -r c0295bae714c -r f2308ef26cf8 patches/jtreg-T6638712-fix.patch --- a/patches/jtreg-T6638712-fix.patch Thu Apr 17 02:40:37 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out 2010-11-30 15:27:57.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712a.java:39:41: compiler.err.invalid.inferred.types: T, (- compiler.misc.inferred.do.not.conform.to.params: java.lang.Iterable>, java.util.List>) -+T6638712a.java:16:41: compiler.err.invalid.inferred.types: T, (- compiler.misc.inferred.do.not.conform.to.params: java.lang.Iterable>, java.util.List>) - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-11-30 15:27:58.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712b.java:37:21: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: T, T, java.lang.String)), T, java.lang.String -+T6638712b.java:14:21: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: T, T, java.lang.String)), T, java.lang.String - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out 2010-11-30 15:27:59.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712c.java:39:9: compiler.err.cant.apply.symbol: sort(T[],java.util.Comparator), T6638712c, , java.lang.Enum[],java.util.Comparator>, null -+T6638712c.java:16:9: compiler.err.cant.apply.symbol: sort(T[],java.util.Comparator), T6638712c, , java.lang.Enum[],java.util.Comparator>, null - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out 2010-11-30 15:28:01.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712d.java:39:9: compiler.err.cant.apply.symbol: m(U,java.util.List>), T6638712d, , int,java.util.List>, null -+T6638712d.java:16:9: compiler.err.cant.apply.symbol: m(U,java.util.List>), T6638712d, , int,java.util.List>, null - 1 error ---- openjdk-old/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-11-30 14:44:29.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-11-30 15:28:02.000000000 +0100 -@@ -1,2 +1,2 @@ --T6638712e.java:40:27: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: X, T6638712e.Foo, T6638712e.Foo)), T6638712e.Foo, T6638712e.Foo -+T6638712e.java:17:27: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: X, T6638712e.Foo, T6638712e.Foo)), T6638712e.Foo, T6638712e.Foo - 1 error diff -r c0295bae714c -r f2308ef26cf8 patches/jtreg-T6650759m-fix.patch --- a/patches/jtreg-T6650759m-fix.patch Thu Apr 17 02:40:37 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,6 +0,0 @@ ---- openjdk-old/langtools/test/tools/javac/generics/inference/6650759/T6650759m.out 2010-12-03 16:08:35.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6650759/T6650759m.out 2010-12-03 16:12:08.000000000 +0100 -@@ -1,2 +1,2 @@ --T6650759m.java:43:36: compiler.err.prob.found.req: (compiler.misc.incompatible.types), java.util.List, java.util.List -+T6650759m.java:43:36: compiler.err.prob.found.req: (- compiler.misc.incompatible.types), java.util.List, java.util.List - 1 error diff -r c0295bae714c -r f2308ef26cf8 patches/openjdk/6611637-npe_in_glyphlayout.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6611637-npe_in_glyphlayout.patch Wed Jul 30 16:17:30 2014 +0100 @@ -0,0 +1,21 @@ +# HG changeset patch +# User prr +# Date 1211221532 25200 +# Mon May 19 11:25:32 2008 -0700 +# Node ID 075152aa892eda98de7530b761bb347e44a58ba6 +# Parent bf2c66511d1bf7c2a4d04b3f8bda635466abae44 +6611637: NullPointerException in sun.font.GlyphLayout$EngineRecord.init +Reviewed-by: tdv, jgodinez + +diff -r bf2c66511d1b -r 075152aa892e src/share/classes/sun/font/GlyphLayout.java +--- openjdk/jdk/src/share/classes/sun/font/GlyphLayout.java Fri May 16 03:10:58 2008 +0400 ++++ openjdk/jdk/src/share/classes/sun/font/GlyphLayout.java Mon May 19 11:25:32 2008 -0700 +@@ -85,7 +85,7 @@ + private GVData _gvdata; + + // cached glyph layout data for reuse +- private static GlyphLayout cache; // reusable ++ private static volatile GlyphLayout cache; // reusable + + private LayoutEngineFactory _lef; // set when get is called, unset when done is called + private TextRecord _textRecord; // the text we're working on, used by iterators diff -r c0295bae714c -r f2308ef26cf8 patches/openjdk/6636370-appcontext_simplification.patch --- a/patches/openjdk/6636370-appcontext_simplification.patch Thu Apr 17 02:40:37 2014 +0100 +++ b/patches/openjdk/6636370-appcontext_simplification.patch Wed Jul 30 16:17:30 2014 +0100 @@ -1,6 +1,6 @@ diff -Nru openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java openjdk/jdk/src/share/classes/sun/awt/AppContext.java ---- openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java 2013-08-05 16:49:37.120128300 +0100 -+++ openjdk/jdk/src/share/classes/sun/awt/AppContext.java 2013-08-05 17:02:51.304664462 +0100 +--- openjdk.orig/jdk/src/share/classes/sun/awt/AppContext.java 2014-07-30 05:35:13.829679786 +0100 ++++ openjdk/jdk/src/share/classes/sun/awt/AppContext.java 2014-07-30 05:41:13.086698718 +0100 @@ -151,7 +151,7 @@ contained in another AppContext. It is implicitly created for standalone apps only (i.e. not applets) @@ -71,58 +71,17 @@ // Special case: we implicitly create the main app context // if no contexts have been created yet. This covers standalone apps -@@ -308,28 +297,29 @@ - } - } +@@ -338,8 +327,7 @@ + } -- AppContext context = threadGroup2appContext.get(threadGroup); -- while (context == null) { -- threadGroup = threadGroup.getParent(); -- if (threadGroup == null) { -- return null; -+ AppContext context = threadGroup2appContext.get(threadGroup); -+ while (context == null) { -+ threadGroup = threadGroup.getParent(); -+ if (threadGroup == null) { -+ return null; -+ } -+ context = threadGroup2appContext.get(threadGroup); -+ } -+ -+ // In case we did anything in the above while loop, we add -+ // all the intermediate ThreadGroups to threadGroup2appContext -+ // so we won't spin again. -+ for (ThreadGroup tg = currentThreadGroup; tg != threadGroup; tg = tg.getParent()) { -+ threadGroup2appContext.put(tg, context); -+ } -+ -+ // Now we're done, so we cache the latest key/value pair. -+ threadAppContext.set(context); -+ -+ -+ return context; - } -- context = threadGroup2appContext.get(threadGroup); -- } -- // In case we did anything in the above while loop, we add -- // all the intermediate ThreadGroups to threadGroup2appContext -- // so we won't spin again. -- for (ThreadGroup tg = currentThreadGroup; tg != threadGroup; tg = tg.getParent()) { -- threadGroup2appContext.put(tg, context); -- } -- -- // Now we're done, so we cache the latest key/value pair. + // Now we're done, so we cache the latest key/value pair. - mostRecentThreadAppContext = - new MostRecentThreadAppContext(currentThread, context); -- -- return context; -- } -- }); -+ }); - } ++ threadAppContext.set(context); - return appContext; -@@ -473,7 +463,7 @@ + return context; + } +@@ -487,7 +475,7 @@ // Threads in the ThreadGroup to exit. long startTime = System.currentTimeMillis(); @@ -131,7 +90,7 @@ while ((this.threadGroup.activeCount() > 0) && (System.currentTimeMillis() < endTime)) { try { -@@ -488,7 +478,7 @@ +@@ -502,7 +490,7 @@ // Threads in the ThreadGroup to die. startTime = System.currentTimeMillis(); @@ -140,7 +99,7 @@ while ((this.threadGroup.activeCount() > 0) && (System.currentTimeMillis() < endTime)) { try { -@@ -507,10 +497,7 @@ +@@ -521,10 +509,7 @@ } threadGroup2appContext.remove(this.threadGroup); @@ -152,15 +111,7 @@ // Finally, we destroy the ThreadGroup entirely. try { -@@ -693,6 +680,7 @@ - * Returns a string representation of this AppContext. - * @since 1.2 - */ -+ @Override - public String toString() { - return getClass().getName() + "[threadGroup=" + threadGroup.getName() + "]"; - } -@@ -842,15 +830,6 @@ +@@ -856,15 +842,6 @@ } } diff -r c0295bae714c -r f2308ef26cf8 patches/openjdk/6638712-wildcard_types.patch --- a/patches/openjdk/6638712-wildcard_types.patch Thu Apr 17 02:40:37 2014 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,563 +0,0 @@ -# HG changeset patch -# User mcimadamore -# Date 1284137253 -3600 -# Node ID c5fe15e03287286fa8e668798409c4d7493ee834 -# Parent 27f03394a69d018c1c2badadee65ea39c7274606 -6638712: Inference with wildcard types causes selection of inapplicable method -Summary: Added global sanity check in order to make sure that return type inference does not violate bounds constraints -Reviewed-by: jjg - -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/code/Type.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java Fri Sep 10 17:47:33 2010 +0100 -@@ -1061,6 +1061,21 @@ - return qtype.isErroneous(); - } - -+ /** -+ * Replaces this ForAll's typevars with a set of concrete Java types -+ * and returns the instantiated generic type. Subclasses might override -+ * in order to check that the list of types is a valid instantiation -+ * of the ForAll's typevars. -+ * -+ * @param actuals list of actual types -+ * @param types types instance -+ * @return qtype where all occurrences of tvars are replaced -+ * by types in actuals -+ */ -+ public Type inst(List actuals, Types types) { -+ return types.subst(qtype, tvars, actuals); -+ } -+ - public Type map(Mapping f) { - return f.apply(qtype); - } -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/code/Types.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java Fri Sep 10 17:47:33 2010 +0100 -@@ -331,6 +331,14 @@ - if (s.tag >= firstPartialTag) - return isSuperType(s, t); - -+ if (s.isCompound()) { -+ for (Type s2 : interfaces(s).prepend(supertype(s))) { -+ if (!isSubtype(t, s2, capture)) -+ return false; -+ } -+ return true; -+ } -+ - Type lower = lowerBound(s); - if (s != lower) - return isSubtype(capture ? capture(t) : t, lower, false); -@@ -2766,6 +2774,14 @@ - /** - * Capture conversion as specified by JLS 3rd Ed. - */ -+ -+ public List capture(List ts) { -+ List buf = List.nil(); -+ for (Type t : ts) { -+ buf = buf.prepend(capture(t)); -+ } -+ return buf.reverse(); -+ } - public Type capture(Type t) { - if (t.tag != CLASS) - return t; -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Check.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java Fri Sep 10 17:47:33 2010 +0100 -@@ -383,6 +383,10 @@ - JCDiagnostic.fragment("incompatible.types" + (d!=null ? ".1" : ""), d), - t, pt); - } -+ } catch (Infer.InvalidInstanceException ex) { -+ JCDiagnostic d = ex.getDiagnostic(); -+ log.error(pos, "invalid.inferred.types", t.tvars, d); -+ return syms.errType; - } - } - } -diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Infer.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java Wed Jun 23 16:44:15 2010 -0700 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java Fri Sep 10 17:47:33 2010 +0100 -@@ -29,6 +29,7 @@ - import com.sun.tools.javac.util.List; - import com.sun.tools.javac.code.*; - import com.sun.tools.javac.code.Type.*; -+import com.sun.tools.javac.code.Symbol.*; - - import static com.sun.tools.javac.code.Flags.*; - import static com.sun.tools.javac.code.Kinds.*; -@@ -50,6 +51,7 @@ - - Symtab syms; - Types types; -+ Resolve rs; - - public static Infer instance(Context context) { - Infer instance = context.get(inferKey); -@@ -62,43 +64,51 @@ - context.put(inferKey, this); - syms = Symtab.instance(context); - types = Types.instance(context); -+ rs = Resolve.instance(context); - } - -- public static class NoInstanceException extends RuntimeException { -+ public static class InferenceException extends RuntimeException { - private static final long serialVersionUID = 0; From jvanek at redhat.com Wed Jul 30 15:20:12 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 17:20:12 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D90913.7000703@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> Message-ID: <53D90D2C.2030000@redhat.com> >>> +++ b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >>> @@ -129,7 +129,7 @@ public class JNLPFileTest extends NoStdO >>> /* >>> * "sandbox" or "all-permissions" >>> */ >>> - manifest6.getMainAttributes().put(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); >>> + manifest6.getMainAttributes().put(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "all-permissions"); >> >> Why this change??? It should not be here... >> >>> manifest6.getMainAttributes().put(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); >>> manifest6.getMainAttributes().put(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); >>> >>> @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO >>> Assert.assertEquals("*.comhttps://*.cz", >>> jnlpFile.getManifestsAttributes().getAttribute(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); >>> Assert.assertEquals("*.netftp://*uu.co.uk", >>> jnlpFile.getManifestsAttributes().getAttribute(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); >>> Assert.assertEquals("*.com *.net *.cz *.co.uk", >>> jnlpFile.getManifestsAttributes().getAttribute(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); >>> - Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >>> jnlpFile.getManifestsAttributes().getAttribute(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>> + Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), >>> jnlpFile.getManifestsAttributes().getAttribute(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >> >> So this one, >>> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); >>> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); >>> >>> @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO >>> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>> URL("ftp://aa.bb.net"))); >>> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>> URL("https://x.net"))); >>> Assert.assertEquals(false, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>> URL("http://aa.bb/com"))); >>> - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>> + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>> jnlpFile.getManifestsAttributes().isSandboxForced()); >> >> and this one. Why so? >>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>> jnlpFile.getManifestsAttributes().isTrustedLibrary()); >>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>> jnlpFile.getManifestsAttributes().isTrustedOnly()); >>> >> >> > > The JNLPClassLoader is determining the applet to be signed, and the ManifestAttributesChecker does > not allow for JNLP applets to have a mismatch between their signing state and the permissions level > they request (I believe this is in the spec for the Permissions attribute). Is the applet not > actually signed? I looked into how the JARs are being created and couldn't see if they're signed one > way or the other. > Well thats the issue. The testing "applet" (its dummyjnlp) is not signed. So this change sholdnot be needed. Something different msut be wrong. J. From aazores at redhat.com Wed Jul 30 15:29:51 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 30 Jul 2014 11:29:51 -0400 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D90D2C.2030000@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> <53D90D2C.2030000@redhat.com> Message-ID: <53D90F6F.9070401@redhat.com> On 07/30/2014 11:20 AM, Jiri Vanek wrote: > >>>> +++ b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >>>> @@ -129,7 +129,7 @@ public class JNLPFileTest extends NoStdO >>>> /* >>>> * "sandbox" or "all-permissions" >>>> */ >>>> - manifest6.getMainAttributes().put(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); >>>> + manifest6.getMainAttributes().put(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), >>>> "all-permissions"); >>> >>> Why this change??? It should not be here... >>> >>>> manifest6.getMainAttributes().put(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), >>>> "false"); >>>> manifest6.getMainAttributes().put(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); >>>> >>>> @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO >>>> Assert.assertEquals("*.comhttps://*.cz", >>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); >>>> Assert.assertEquals("*.netftp://*uu.co.uk", >>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); >>>> Assert.assertEquals("*.com *.net *.cz *.co.uk", >>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); >>>> - >>>> Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>> + >>>> Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), >>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>> >>> So this one, >>>> Assert.assertEquals("false", >>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); >>>> Assert.assertEquals("false", >>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); >>>> >>>> @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO >>>> Assert.assertEquals(true, >>>> jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>> URL("ftp://aa.bb.net"))); >>>> Assert.assertEquals(true, >>>> jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>> URL("https://x.net"))); >>>> Assert.assertEquals(false, >>>> jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>> URL("http://aa.bb/com"))); >>>> - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>> + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>> >>> and this one. Why so? >>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>> jnlpFile.getManifestsAttributes().isTrustedLibrary()); >>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>> jnlpFile.getManifestsAttributes().isTrustedOnly()); >>>> >>> >>> >> >> The JNLPClassLoader is determining the applet to be signed, and the >> ManifestAttributesChecker does >> not allow for JNLP applets to have a mismatch between their signing >> state and the permissions level >> they request (I believe this is in the spec for the Permissions >> attribute). Is the applet not >> actually signed? I looked into how the JARs are being created and >> couldn't see if they're signed one >> way or the other. >> > > Well thats the issue. The testing "applet" (its dummyjnlp) is not > signed. So this change sholdnot be needed. Something different msut be > wrong. > > > J. > The classloader's JarCertVerifier 'jcv' is returning true for 'jcv.isFullySigned()' on all of these tests, even without the patch applied. It falls into the 'isTriviallySigned' case. If this needs to be fixed then I think it's perhaps out of scope of this patch, no? Thanks, -- Andrew A From aazores at redhat.com Wed Jul 30 15:58:20 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 30 Jul 2014 11:58:20 -0400 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53D8F76F.1020604@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> <53D114C8.1080407@redhat.com> <53D259B5.9090402@redhat.com> <53D668C7.3060901@redhat.com> <53D6C65A.4030101@redhat.com> <53D8F76F.1020604@redhat.com> Message-ID: <53D9161C.7010105@redhat.com> On 07/30/2014 09:47 AM, Jiri Vanek wrote: > On 07/28/2014 11:53 PM, Andrew Azores wrote: >> On 07/28/2014 11:14 AM, Jiri Vanek wrote: >>> >>>> diff --git a/plugin/icedteanp/IcedTeaPluginUtils.cc >>>> b/plugin/icedteanp/IcedTeaPluginUtils.cc >>>> --- a/plugin/icedteanp/IcedTeaPluginUtils.cc >>>> +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc >>>> @@ -59,6 +59,19 @@ >>>> /* Plugin async call queue */ >>>> static std::vector< PluginThreadCall* >* >>>> pendingPluginThreadRequests = new std::vector< >>>> PluginThreadCall* >(); >>>> >>>> +int >>>> +IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>>> +{ >>>> + if (!IcedTeaPluginUtilities::file_exists(dir)) >>>> + { >>>> + if (!g_mkdir(dir.c_str(), 755)) >>>> + { >>>> + return errno; >>>> + } >>>> + } >>>> + return 0; >>>> +} >>>> + >>> ... >>> > + int parentErr = >>> IcedTeaPluginUtilities::createLogDirectory(r1); >>> > + if (!parentErr){ >>> > + PLUGIN_ERROR("FATAL: Failed to create IcedTea-Web >>> config directory %s: %s\n", >>> r1.c_str(), strerror(parentErr)); >>> > + return NULL; >>> } >>> >>> When you are her, you should also verify (if it exists then) whether >>> it is directory or file. If >>> File, return failure. >>> >>> I would discourage you from returning errno. I would say Print >>> error messages here, and return >>> true/false. >>> >>> true/false is the only indicator you need if you need to decide >>> wheter continue or not. >>> >>> And I would suggest continue at all cost, but print out a warning >>> that it probably will nto work. >>> >>> So I would go with: >>> >>> bool IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>> { >>> if (!file_exists(dir) ) >>> { >>> if (!g_mkdir(dir.c_str(), 755)) >>> int x=errno >>> echo "warning, creation of $dir failed. Itw need this >>> direcotry to work. You can >>> expect failre later. reason: "error_toString(x) >>> //always save errorn >>> return false; >>> } >>> } else { >>> if (!is_dir(dir)){ >>> echo "warning, cannot create $dir becasue there is >>> already an file" >>> return false >>> } >>> } >>> return true; >>> //feel free to add some debug only outputs here like exists, >>> continuing, is dir, continuing... >>> } >>> int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); >>> // warnings have been printed >>> // no need to die, trying to continue >>> >>> >>> >>> >>> Also.. :-/ .. your patch kills ITW at my machine >>> >>> [unknown user][ITW-C-PLUGIN][MESSAGE_DEBUG][Mon Jul 28 16:11:03 CEST >>> 2014][/home/jvanek/hg/icedtea-web/plugin/icedteanp/IcedTeaParseProperties.cc:141] >>> ITNPP Thread# >>> 139757752895360, gthread 0x7f1bd2614120: FATAL: Failed to create >>> IcedTea-Web config directory >>> /home/jvanek/.config/icedtea-web: Success >>> >>> and firefox dies. Please run your code on soem usecases before >>> posting. >>> >>> Well the /home/jvanek/.config/icedtea-web do exist at my pc - so >>> somethig is wrong :) >> >> :S I could swear it worked for me, not sure what happened there. >> Maybe I made a change and failed to >> test that one before sending :/ >> >>> >>> >>> My reason to try continuing is simple - There may be cases, when >>> .confing/itw may be some special >>> device - well nearly impossible, but still possible. >>> >>> >>> Another note - sinc you created new method - please unittest it in >>> cpp-unit-tests. >>> >>> >>> And positive note at the end. I run covescan on your patch and not >>> sure what to read - >>> http://cov01.lab.eng.brq.redhat.com/covscanhub/task/13258/ :)) >>> J. >>> >>> >>> >> >> New patch has tests added and some style cleanup done, and works >> again (hopefully - seems to work >> fine for me and unit tests are a little reassuring). >> >> Thanks, >> > > Is this output of test expected? (yes, the code is doing it :) , but > should not be :) ) > Passed: is_directory > WARNING: Needed to create directory /tmp/fileSGg0Vp but there is > already a file of the same name at this location. > WARNING: Failed to create new directory /tmp/filecvV1sH/test. Reason: > Permission denied > Passed: create_log_dir > > > I mean the warnings. I thing they are disturbing the output and should > not be here. > > I think there are exampels in ccp tests, how to redirect the output. > May you try them? > > Except this I'm moreover happy with patch. > > One nit > > you called it "create_log_dir" I would go with generic "create_dir" > If the redirect of output and renaming will be smooth, ok for head. > > > For 1.5 - I'm for a bit less invasive patch. One of the earlier > versions was more suitable. I would Discourage you from any behaviour > changes (like new error/warning messages). Please reconsider benefits > and post 1.5 patch separately. (unless it is completely same as this > one) > > tyvm! > > J. > Okay, I'll post again for the 1.5 patch. In the meantime here's the hopefully final patch for HEAD for approval. It's the same as last time but basically with s/create_log_dir/create_dir/g and the warning output squelched during the tests. Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: rh1121549-fixes-8.patch Type: text/x-patch Size: 9004 bytes Desc: not available URL: From jvanek at redhat.com Wed Jul 30 16:00:49 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 18:00:49 +0200 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53D9161C.7010105@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> <53D114C8.1080407@redhat.com> <53D259B5.9090402@redhat.com> <53D668C7.3060901@redhat.com> <53D6C65A.4030101@redhat.com> <53D8F76F.1020604@redhat.com> <53D9161C.7010105@redhat.com> Message-ID: <53D916B1.5010306@redhat.com> On 07/30/2014 05:58 PM, Andrew Azores wrote: > On 07/30/2014 09:47 AM, Jiri Vanek wrote: >> On 07/28/2014 11:53 PM, Andrew Azores wrote: >>> On 07/28/2014 11:14 AM, Jiri Vanek wrote: >>>> >>>>> diff --git a/plugin/icedteanp/IcedTeaPluginUtils.cc b/plugin/icedteanp/IcedTeaPluginUtils.cc >>>>> --- a/plugin/icedteanp/IcedTeaPluginUtils.cc >>>>> +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc >>>>> @@ -59,6 +59,19 @@ >>>>> /* Plugin async call queue */ >>>>> static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< >>>>> PluginThreadCall* >(); >>>>> >>>>> +int >>>>> +IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>>>> +{ >>>>> + if (!IcedTeaPluginUtilities::file_exists(dir)) >>>>> + { >>>>> + if (!g_mkdir(dir.c_str(), 755)) >>>>> + { >>>>> + return errno; >>>>> + } >>>>> + } >>>>> + return 0; >>>>> +} >>>>> + >>>> ... >>>> > + int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); >>>> > + if (!parentErr){ >>>> > + PLUGIN_ERROR("FATAL: Failed to create IcedTea-Web config directory %s: %s\n", >>>> r1.c_str(), strerror(parentErr)); >>>> > + return NULL; >>>> } >>>> >>>> When you are her, you should also verify (if it exists then) whether it is directory or file. If >>>> File, return failure. >>>> >>>> I would discourage you from returning errno. I would say Print error messages here, and return >>>> true/false. >>>> >>>> true/false is the only indicator you need if you need to decide wheter continue or not. >>>> >>>> And I would suggest continue at all cost, but print out a warning that it probably will nto work. >>>> >>>> So I would go with: >>>> >>>> bool IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>>> { >>>> if (!file_exists(dir) ) >>>> { >>>> if (!g_mkdir(dir.c_str(), 755)) >>>> int x=errno >>>> echo "warning, creation of $dir failed. Itw need this direcotry to work. You can >>>> expect failre later. reason: "error_toString(x) >>>> //always save errorn >>>> return false; >>>> } >>>> } else { >>>> if (!is_dir(dir)){ >>>> echo "warning, cannot create $dir becasue there is already an file" >>>> return false >>>> } >>>> } >>>> return true; >>>> //feel free to add some debug only outputs here like exists, continuing, is dir, continuing... >>>> } >>>> int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); >>>> // warnings have been printed >>>> // no need to die, trying to continue >>>> >>>> >>>> >>>> >>>> Also.. :-/ .. your patch kills ITW at my machine >>>> >>>> [unknown user][ITW-C-PLUGIN][MESSAGE_DEBUG][Mon Jul 28 16:11:03 CEST >>>> 2014][/home/jvanek/hg/icedtea-web/plugin/icedteanp/IcedTeaParseProperties.cc:141] ITNPP Thread# >>>> 139757752895360, gthread 0x7f1bd2614120: FATAL: Failed to create IcedTea-Web config directory >>>> /home/jvanek/.config/icedtea-web: Success >>>> >>>> and firefox dies. Please run your code on soem usecases before posting. >>>> >>>> Well the /home/jvanek/.config/icedtea-web do exist at my pc - so somethig is wrong :) >>> >>> :S I could swear it worked for me, not sure what happened there. Maybe I made a change and failed to >>> test that one before sending :/ >>> >>>> >>>> >>>> My reason to try continuing is simple - There may be cases, when .confing/itw may be some special >>>> device - well nearly impossible, but still possible. >>>> >>>> >>>> Another note - sinc you created new method - please unittest it in cpp-unit-tests. >>>> >>>> >>>> And positive note at the end. I run covescan on your patch and not sure what to read - >>>> http://cov01.lab.eng.brq.redhat.com/covscanhub/task/13258/ :)) >>>> J. >>>> >>>> >>>> >>> >>> New patch has tests added and some style cleanup done, and works again (hopefully - seems to work >>> fine for me and unit tests are a little reassuring). >>> >>> Thanks, >>> >> >> Is this output of test expected? (yes, the code is doing it :) , but should not be :) ) >> Passed: is_directory >> WARNING: Needed to create directory /tmp/fileSGg0Vp but there is already a file of the same name >> at this location. >> WARNING: Failed to create new directory /tmp/filecvV1sH/test. Reason: Permission denied >> Passed: create_log_dir >> >> >> I mean the warnings. I thing they are disturbing the output and should not be here. >> >> I think there are exampels in ccp tests, how to redirect the output. May you try them? >> >> Except this I'm moreover happy with patch. >> >> One nit >> >> you called it "create_log_dir" I would go with generic "create_dir" If the redirect of output and >> renaming will be smooth, ok for head. >> >> >> For 1.5 - I'm for a bit less invasive patch. One of the earlier versions was more suitable. I >> would Discourage you from any behaviour changes (like new error/warning messages). Please >> reconsider benefits and post 1.5 patch separately. (unless it is completely same as this one) >> >> tyvm! >> >> J. >> > > Okay, I'll post again for the 1.5 patch. In the meantime here's the hopefully final patch for HEAD > for approval. It's the same as last time but basically with s/create_log_dir/create_dir/g and the > warning output squelched during the tests. > Thank you very much for patience. Go on and proceed as designed. J. From aazores at icedtea.classpath.org Wed Jul 30 16:11:29 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:11:29 +0000 Subject: /hg/icedtea-web: Fixes for coverity issues discovered in RH1121549 Message-ID: changeset 5672bb76595d in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=5672bb76595d author: Andrew Azores date: Wed Jul 30 12:11:20 2014 -0400 Fixes for coverity issues discovered in RH1121549 2014-07-30 Andrew Azores Fixes for coverity issues discovered in RH1121549 * plugin/icedteanp/IcedTeaNPPlugin.cc (ITNP_New): print error message and return error if JVM fails to start. (NP_Initialize): fix missing argument to PLUGIN_ERROR when unable to create data directory * plugin/icedteanp/IcedTeaParseProperties.cc (get_log_dir): refactored to reduce duplicate code, use IcedTeaPluginUtils.create_dir, and enhanced warning messages * plugin/icedteanp/IcedTeaPluginUtils.cc (create_dir, is_directory): new functions * plugin/icedteanp/IcedTeaPluginUtils.h: same * plugin/icedteanp/IcedTeaScriptablePluginObject.cc (setProperty): do not erroneously redeclare java_result * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc: (is_directory, create_dir) new tests. (file_exists) added assertion that directories satisfy file_exists diffstat: ChangeLog | 19 ++++++ plugin/icedteanp/IcedTeaNPPlugin.cc | 6 +- plugin/icedteanp/IcedTeaParseProperties.cc | 39 +++++-------- plugin/icedteanp/IcedTeaPluginUtils.cc | 38 +++++++++++++ plugin/icedteanp/IcedTeaPluginUtils.h | 3 + plugin/icedteanp/IcedTeaScriptablePluginObject.cc | 2 +- tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc | 66 +++++++++++++++++++++++ 7 files changed, 147 insertions(+), 26 deletions(-) diffs (276 lines): diff -r 6a985d697bf1 -r 5672bb76595d ChangeLog --- a/ChangeLog Mon Jul 28 12:36:26 2014 -0400 +++ b/ChangeLog Wed Jul 30 12:11:20 2014 -0400 @@ -1,3 +1,22 @@ +2014-07-30 Andrew Azores + + Fixes for coverity issues discovered in RH1121549 + * plugin/icedteanp/IcedTeaNPPlugin.cc (ITNP_New): print error message and + return error if JVM fails to start. + (NP_Initialize): fix missing argument to PLUGIN_ERROR when unable to + create data directory + * plugin/icedteanp/IcedTeaParseProperties.cc (get_log_dir): refactored to + reduce duplicate code, use IcedTeaPluginUtils.create_dir, and enhanced + warning messages + * plugin/icedteanp/IcedTeaPluginUtils.cc (create_dir, is_directory): new + functions + * plugin/icedteanp/IcedTeaPluginUtils.h: same + * plugin/icedteanp/IcedTeaScriptablePluginObject.cc (setProperty): do not + erroneously redeclare java_result + * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc: (is_directory, + create_dir) new tests. (file_exists) added assertion that directories + satisfy file_exists + 2014-07-28 Jie Kang Fixed TeeOutputStream to accept multi-byte encodings. * netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java: Now uses diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaNPPlugin.cc --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Mon Jul 28 12:36:26 2014 -0400 +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Wed Jul 30 12:11:20 2014 -0400 @@ -375,6 +375,10 @@ // start the jvm if needed NPError startup_error = start_jvm_if_needed(); + if (startup_error != NPERR_NO_ERROR) { + PLUGIN_ERROR ("Failed to start JVM\n"); + return startup_error; + } // Initialize data->instance_id. // @@ -2027,7 +2031,7 @@ NPError np_error = initialize_data_directory(); if (np_error != NPERR_NO_ERROR) { - PLUGIN_ERROR("Unable create data directory %s\n"); + PLUGIN_ERROR("Unable to create data directory %s\n", data_directory.c_str()); return np_error; } diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaParseProperties.cc --- a/plugin/icedteanp/IcedTeaParseProperties.cc Mon Jul 28 12:36:26 2014 -0400 +++ b/plugin/icedteanp/IcedTeaParseProperties.cc Wed Jul 30 12:11:20 2014 -0400 @@ -123,39 +123,30 @@ return string(mypasswd->pw_dir)+"/.config/icedtea-web/"+default_file_ITW_deploy_props_name; } -string get_log_dir(){ +string get_log_dir(){ string value; if (!read_deploy_property_value("deployment.user.logdir", value)) { - int myuid = getuid(); - struct passwd *mypasswd = getpwuid(myuid); - // try pre 1.5 file location + string config_dir; if (getenv ("XDG_CONFIG_HOME") != NULL){ - string r1= string(getenv ("XDG_CONFIG_HOME"))+"/icedtea-web"; - string r2 = r1+"/"+default_itw_log_dir_name; - if (!IcedTeaPluginUtilities::file_exists(r1)){ - g_mkdir(r1.c_str(), 755); - } - if (!IcedTeaPluginUtilities::file_exists(r2)){ - g_mkdir(r2.c_str(), 755); - } - return r2; + config_dir = string(getenv("XDG_CONFIG_HOME")); + } else { + int myuid = getuid(); + struct passwd *mypasswd = getpwuid(myuid); + config_dir = string(mypasswd->pw_dir) + "/.config"; } - //if not then use default - string r1 = string(mypasswd->pw_dir)+"/.config/icedtea-web"; - string r2 = r1+"/"+default_itw_log_dir_name; - if (!IcedTeaPluginUtilities::file_exists(r1)){ - g_mkdir(r1.c_str(), 755); + string itw_dir = config_dir+"/icedtea-web"; + string log_dir = itw_dir+"/"+default_itw_log_dir_name; + bool created_config = IcedTeaPluginUtilities::create_dir(itw_dir); + bool created_log = IcedTeaPluginUtilities::create_dir(log_dir); + if (!created_config || !created_log){ + PLUGIN_ERROR("IcedTea-Web log directory creation failed. IcedTea-Web may fail to work!"); } - if (!IcedTeaPluginUtilities::file_exists(r2)){ - g_mkdir(r2.c_str(), 755); - } - return r2; + return log_dir; } return value; } - -string main_properties_file(){ +string main_properties_file(){ return "/etc/.java/deployment/"+default_file_ITW_deploy_props_name; } diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaPluginUtils.cc --- a/plugin/icedteanp/IcedTeaPluginUtils.cc Mon Jul 28 12:36:26 2014 -0400 +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc Wed Jul 30 12:11:20 2014 -0400 @@ -59,6 +59,33 @@ /* Plugin async call queue */ static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< PluginThreadCall* >(); +bool +IcedTeaPluginUtilities::create_dir(std::string dir) +{ + if (file_exists(dir)) + { + if (!is_directory(dir)) + { + PLUGIN_ERROR("WARNING: Needed to create directory %s but there is already a file of the same name at this location.\n", dir.c_str()); + return false; + } + PLUGIN_DEBUG("Directory %s already exists\n", dir.c_str()); + } else + { + PLUGIN_DEBUG("Directory %s does not yet exist\n", dir.c_str()); + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 + bool created_directory = (g_mkdir(dir.c_str(), PERMISSIONS_MASK) == 0); + int err = errno; + if (!created_directory) + { + PLUGIN_ERROR("WARNING: Failed to create new directory %s. Reason: %s\n", dir.c_str(), strerror(err)); + return false; + } + PLUGIN_DEBUG("Directory %s created\n", dir.c_str()); + } + return true; +} + void *flush_pre_init_messages(void* data) { while (true){ struct timespec ts; @@ -1136,6 +1163,17 @@ return infile.good(); } +bool IcedTeaPluginUtilities::is_directory(std::string filename) +{ + if (!file_exists) + { + return false; + } + struct stat buf; + stat(filename.c_str(), &buf); + return S_ISDIR(buf.st_mode); +} + void IcedTeaPluginUtilities::initFileLog(){ if (plugin_file_log != NULL ) { //reusing diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaPluginUtils.h --- a/plugin/icedteanp/IcedTeaPluginUtils.h Mon Jul 28 12:36:26 2014 -0400 +++ b/plugin/icedteanp/IcedTeaPluginUtils.h Wed Jul 30 12:11:20 2014 -0400 @@ -49,6 +49,7 @@ #include #include #include +#include #include #include @@ -430,12 +431,14 @@ /*cutting whitespaces from end and start of string*/ static void trim(std::string& str); static bool file_exists(std::string filename); + static bool is_directory(std::string filename); //file-loggers helpers static std::string generateLogFileName(); static void initFileLog(); static void printDebugStatus(); static std::string getTmpPath(); static std::string getRuntimePath(); + static bool create_dir(std::string); }; /* diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaScriptablePluginObject.cc --- a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc Mon Jul 28 12:36:26 2014 -0400 +++ b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc Wed Jul 30 12:11:20 2014 -0400 @@ -704,7 +704,7 @@ browser_functions.intfromidentifier(name_id) >= 0) // else if array and requesting index { - JavaResultData* java_result = java_request.getArrayLength(instance_id); + java_result = java_request.getArrayLength(instance_id); if (java_result->error_occurred) { PLUGIN_ERROR("ERROR: Couldn't fetch array length\n"); diff -r 6a985d697bf1 -r 5672bb76595d tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc --- a/tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc Mon Jul 28 12:36:26 2014 -0400 +++ b/tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc Wed Jul 30 12:11:20 2014 -0400 @@ -135,6 +135,72 @@ remove(f1.c_str()); bool b = IcedTeaPluginUtilities::file_exists(f1); CHECK_EQUAL(b, false); + + std::string dir = tmpnam(NULL); + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 + bool created_dir = g_mkdir(dir.c_str(), PERMISSIONS_MASK); + CHECK_EQUAL(created_dir, false); + CHECK_EQUAL(IcedTeaPluginUtilities::file_exists(dir), true); +} + + +TEST(is_directory) { + std::string n = tmpnam(NULL); + bool no_file = IcedTeaPluginUtilities::is_directory(n); + CHECK_EQUAL(no_file, false); + + std::string f = temporary_file("dummy content"); + bool is_directory = IcedTeaPluginUtilities::is_directory(f); + CHECK_EQUAL(is_directory, false); + + std::string d = tmpnam(NULL); + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 + bool created_test_dir = g_mkdir(d.c_str(), PERMISSIONS_MASK); + CHECK_EQUAL(created_test_dir, false); + bool is_directory2 = IcedTeaPluginUtilities::is_directory(d); + CHECK_EQUAL(is_directory2, true); +} + + +TEST(create_dir) { + FILE* old1 = stdout; + FILE* old2 = stderr; + char* buf1 = " "; + char* buf2 = " "; + stdout = fmemopen (buf1, strlen (buf1), "rw"); + stderr = fmemopen (buf2, strlen (buf2), "rw"); + + std::string f1 = tmpnam(NULL); + bool res1 = IcedTeaPluginUtilities::create_dir(f1); + CHECK_EQUAL(res1, true); + CHECK_EQUAL(IcedTeaPluginUtilities::is_directory(f1), true); + + std::string f2 = temporary_file("dummy content"); + bool res2 = IcedTeaPluginUtilities::create_dir(f2); + CHECK_EQUAL(res2, false); + CHECK_EQUAL(IcedTeaPluginUtilities::is_directory(f2), false); + + std::string f3 = tmpnam(NULL); + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 + bool created_test_dir = g_mkdir(f3.c_str(), PERMISSIONS_MASK); + CHECK_EQUAL(created_test_dir, false); + bool res3 = IcedTeaPluginUtilities::create_dir(f3); + CHECK_EQUAL(res3, true); + CHECK_EQUAL(IcedTeaPluginUtilities::is_directory(f3), true); + + std::string f4 = tmpnam(NULL); + const int READONLY_PERMISSIONS_MASK = S_IRUSR | S_IRGRP | S_IROTH; // 0444 + bool created_test_dir2 = g_mkdir(f4.c_str(), READONLY_PERMISSIONS_MASK); + CHECK_EQUAL(created_test_dir2, false); + std::string subdir = f4 + "/test"; + bool res4 = IcedTeaPluginUtilities::create_dir(subdir); + CHECK_EQUAL(res4, false); + CHECK_EQUAL(IcedTeaPluginUtilities::is_directory(subdir), false); + + fclose(stdout); + fclose(stderr); + stdout = old1; + stderr = old2; } From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:17:55 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:17:55 +0000 Subject: [Bug 1886] New: [IcedTea6] IcedTea does not checksum supplied tarballs Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1886 Bug ID: 1886 Summary: [IcedTea6] IcedTea does not checksum supplied tarballs Product: IcedTea Version: 6-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org IcedTea 1.x does not checksum supplied tarballs as it does in 2.x and 3.x. This can lead to build issues later or releases being shipped where the required tarball does not match the checksum. We should add options to all three versions to allow the user to opt out of checksumming, but it should be on by default to avoid simple mistakes. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jkang at icedtea.classpath.org Wed Jul 30 16:20:35 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:20:35 +0000 Subject: /hg/icedtea-web: Fixed formatting in ChangeLog entries Message-ID: changeset 7db064780e97 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=7db064780e97 author: Jie Kang date: Wed Jul 30 12:20:29 2014 -0400 Fixed formatting in ChangeLog entries diffstat: ChangeLog | 39 ++++++++++++++++++++------------------- 1 files changed, 20 insertions(+), 19 deletions(-) diffs (58 lines): diff -r 5672bb76595d -r 7db064780e97 ChangeLog --- a/ChangeLog Wed Jul 30 12:11:20 2014 -0400 +++ b/ChangeLog Wed Jul 30 12:20:29 2014 -0400 @@ -18,34 +18,35 @@ satisfy file_exists 2014-07-28 Jie Kang - Fixed TeeOutputStream to accept multi-byte encodings. - * netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java: Now uses - ByteArrayOutputStream instead of StringBuffer - * tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java: + + Fixed TeeOutputStream to accept multi-byte encodings. + * netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java: Now uses + ByteArrayOutputStream instead of StringBuffer + * tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java: 2014-07-28 Jie Kang - Made adjustments to the MethodOverloadResolver to follow LiveConnect - specification when dealing with superclasses. - * tests/reproducers/simple/JSToJFuncResol/testcases/JSToJFuncResolTest.java: - Removed Known to Fail annotation on test case that is now fixed. - * plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java - Added distance calculation for comparing superclass resolutions. + Made adjustments to the MethodOverloadResolver to follow LiveConnect + specification when dealing with superclasses. + * tests/reproducers/simple/JSToJFuncResol/testcases/JSToJFuncResolTest.java: + Removed Known to Fail annotation on test case that is now fixed. + * plugin/icedteanp/java/sun/applet/MethodOverloadResolver.java + Added distance calculation for comparing superclass resolutions. 2014-07-28 Jie Kang - Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug - PR1859 where part of the pane is hidden and unnaccessible when - clicking "Show Details". - * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: + Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug + PR1859 where part of the pane is hidden and unnaccessible when + clicking "Show Details". + * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: 2014-07-28 Jie Kang - Fix to Control Panel UI for lower resolutions. Addresses bug - PR1856 where part of the dialog is hidden and unaccessible - on lower resolutions such as 800 x 600. - * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java: - * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java: + Fix to Control Panel UI for lower resolutions. Addresses bug + PR1856 where part of the dialog is hidden and unaccessible + on lower resolutions such as 800 x 600. + * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java: + * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java: 2014-07-22 Fridrich Strba From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:24:12 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:24:12 +0000 Subject: [Bug 1503] [TRACKER] IcedTea6 1.14 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1503 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1886 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:24:12 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:24:12 +0000 Subject: [Bug 1886] [IcedTea6] IcedTea does not checksum supplied tarballs In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1886 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1503 Target Milestone|--- |6-1.14.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Wed Jul 30 16:24:36 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 18:24:36 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D90F6F.9070401@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> <53D90D2C.2030000@redhat.com> <53D90F6F.9070401@redhat.com> Message-ID: <53D91C44.4090906@redhat.com> On 07/30/2014 05:29 PM, Andrew Azores wrote: > On 07/30/2014 11:20 AM, Jiri Vanek wrote: >> >>>>> +++ b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >>>>> @@ -129,7 +129,7 @@ public class JNLPFileTest extends NoStdO >>>>> /* >>>>> * "sandbox" or "all-permissions" >>>>> */ >>>>> - manifest6.getMainAttributes().put(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); >>>>> + manifest6.getMainAttributes().put(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "all-permissions"); >>>> >>>> Why this change??? It should not be here... >>>> >>>>> manifest6.getMainAttributes().put(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); >>>>> manifest6.getMainAttributes().put(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); >>>>> >>>>> @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO >>>>> Assert.assertEquals("*.comhttps://*.cz", >>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); >>>>> Assert.assertEquals("*.netftp://*uu.co.uk", >>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); >>>>> Assert.assertEquals("*.com *.net *.cz *.co.uk", >>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); >>>>> - Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>>> + Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), >>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>> >>>> So this one, >>>>> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); >>>>> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); >>>>> >>>>> @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO >>>>> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>> URL("ftp://aa.bb.net"))); >>>>> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>> URL("https://x.net"))); >>>>> Assert.assertEquals(false, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>> URL("http://aa.bb/com"))); >>>>> - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >>>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>>> + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>> >>>> and this one. Why so? >>>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>> jnlpFile.getManifestsAttributes().isTrustedLibrary()); >>>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>> jnlpFile.getManifestsAttributes().isTrustedOnly()); >>>>> >>>> >>>> >>> >>> The JNLPClassLoader is determining the applet to be signed, and the ManifestAttributesChecker does >>> not allow for JNLP applets to have a mismatch between their signing state and the permissions level >>> they request (I believe this is in the spec for the Permissions attribute). Is the applet not >>> actually signed? I looked into how the JARs are being created and couldn't see if they're signed one >>> way or the other. >>> >> >> Well thats the issue. The testing "applet" (its dummyjnlp) is not signed. So this change sholdnot >> be needed. Something different msut be wrong. >> >> >> J. >> > > The classloader's JarCertVerifier 'jcv' is returning true for 'jcv.isFullySigned()' on all of these > tests, even without the patch applied. It falls into the 'isTriviallySigned' case. If this needs to > be fixed then I think it's perhaps out of scope of this patch, no? > > Thanks, > ufff.. not so sure. Well the issue is here: public boolean isTriviallySigned() { return getTotalJarEntries(jarSignableEntries) <= 0 && certs.size() <= 0; } I'm not sure if it is case of DummyJnlp only or if it hides something more serious. It seems to me that once there are no jars, and no certificates, then it is considered signed (like class only applet?/??) If I'm correct that this return is terribly wrong. Not sure if your current patch made it more visible, made new hole, or just pointed to something rotten already inside... J. From jvanek at redhat.com Wed Jul 30 16:25:40 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 18:25:40 +0200 Subject: /hg/icedtea-web: Fixes for coverity issues discovered in RH1121549 In-Reply-To: References: Message-ID: <53D91C84.8010002@redhat.com> and NEWS?!?!? On 07/30/2014 06:11 PM, aazores at icedtea.classpath.org wrote: > changeset 5672bb76595d in /hg/icedtea-web > details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=5672bb76595d > author: Andrew Azores > date: Wed Jul 30 12:11:20 2014 -0400 > > Fixes for coverity issues discovered in RH1121549 > > 2014-07-30 Andrew Azores > > Fixes for coverity issues discovered in RH1121549 > * plugin/icedteanp/IcedTeaNPPlugin.cc (ITNP_New): print error message and > return error if JVM fails to start. > (NP_Initialize): fix missing argument to PLUGIN_ERROR when unable to > create data directory > * plugin/icedteanp/IcedTeaParseProperties.cc (get_log_dir): refactored to > reduce duplicate code, use IcedTeaPluginUtils.create_dir, and enhanced > warning messages > * plugin/icedteanp/IcedTeaPluginUtils.cc (create_dir, is_directory): new > functions > * plugin/icedteanp/IcedTeaPluginUtils.h: same > * plugin/icedteanp/IcedTeaScriptablePluginObject.cc (setProperty): do not > erroneously redeclare java_result > * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc: (is_directory, > create_dir) new tests. (file_exists) added assertion that directories > satisfy file_exists > > > diffstat: > > ChangeLog | 19 ++++++ > plugin/icedteanp/IcedTeaNPPlugin.cc | 6 +- > plugin/icedteanp/IcedTeaParseProperties.cc | 39 +++++-------- > plugin/icedteanp/IcedTeaPluginUtils.cc | 38 +++++++++++++ > plugin/icedteanp/IcedTeaPluginUtils.h | 3 + > plugin/icedteanp/IcedTeaScriptablePluginObject.cc | 2 +- > tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc | 66 +++++++++++++++++++++++ > 7 files changed, 147 insertions(+), 26 deletions(-) > > diffs (276 lines): > > diff -r 6a985d697bf1 -r 5672bb76595d ChangeLog > --- a/ChangeLog Mon Jul 28 12:36:26 2014 -0400 > +++ b/ChangeLog Wed Jul 30 12:11:20 2014 -0400 > @@ -1,3 +1,22 @@ > +2014-07-30 Andrew Azores > + > + Fixes for coverity issues discovered in RH1121549 > + * plugin/icedteanp/IcedTeaNPPlugin.cc (ITNP_New): print error message and > + return error if JVM fails to start. > + (NP_Initialize): fix missing argument to PLUGIN_ERROR when unable to > + create data directory > + * plugin/icedteanp/IcedTeaParseProperties.cc (get_log_dir): refactored to > + reduce duplicate code, use IcedTeaPluginUtils.create_dir, and enhanced > + warning messages > + * plugin/icedteanp/IcedTeaPluginUtils.cc (create_dir, is_directory): new > + functions > + * plugin/icedteanp/IcedTeaPluginUtils.h: same > + * plugin/icedteanp/IcedTeaScriptablePluginObject.cc (setProperty): do not > + erroneously redeclare java_result > + * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc: (is_directory, > + create_dir) new tests. (file_exists) added assertion that directories > + satisfy file_exists > + > 2014-07-28 Jie Kang > Fixed TeeOutputStream to accept multi-byte encodings. > * netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java: Now uses > diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaNPPlugin.cc > --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Mon Jul 28 12:36:26 2014 -0400 > +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Wed Jul 30 12:11:20 2014 -0400 > @@ -375,6 +375,10 @@ > > // start the jvm if needed > NPError startup_error = start_jvm_if_needed(); > + if (startup_error != NPERR_NO_ERROR) { > + PLUGIN_ERROR ("Failed to start JVM\n"); > + return startup_error; > + } > > // Initialize data->instance_id. > // > @@ -2027,7 +2031,7 @@ > NPError np_error = initialize_data_directory(); > if (np_error != NPERR_NO_ERROR) > { > - PLUGIN_ERROR("Unable create data directory %s\n"); > + PLUGIN_ERROR("Unable to create data directory %s\n", data_directory.c_str()); > return np_error; > } > > diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaParseProperties.cc > --- a/plugin/icedteanp/IcedTeaParseProperties.cc Mon Jul 28 12:36:26 2014 -0400 > +++ b/plugin/icedteanp/IcedTeaParseProperties.cc Wed Jul 30 12:11:20 2014 -0400 > @@ -123,39 +123,30 @@ > return string(mypasswd->pw_dir)+"/.config/icedtea-web/"+default_file_ITW_deploy_props_name; > } > > -string get_log_dir(){ > +string get_log_dir(){ > string value; > if (!read_deploy_property_value("deployment.user.logdir", value)) { > - int myuid = getuid(); > - struct passwd *mypasswd = getpwuid(myuid); > - // try pre 1.5 file location > + string config_dir; > if (getenv ("XDG_CONFIG_HOME") != NULL){ > - string r1= string(getenv ("XDG_CONFIG_HOME"))+"/icedtea-web"; > - string r2 = r1+"/"+default_itw_log_dir_name; > - if (!IcedTeaPluginUtilities::file_exists(r1)){ > - g_mkdir(r1.c_str(), 755); > - } > - if (!IcedTeaPluginUtilities::file_exists(r2)){ > - g_mkdir(r2.c_str(), 755); > - } > - return r2; > + config_dir = string(getenv("XDG_CONFIG_HOME")); > + } else { > + int myuid = getuid(); > + struct passwd *mypasswd = getpwuid(myuid); > + config_dir = string(mypasswd->pw_dir) + "/.config"; > } > - //if not then use default > - string r1 = string(mypasswd->pw_dir)+"/.config/icedtea-web"; > - string r2 = r1+"/"+default_itw_log_dir_name; > - if (!IcedTeaPluginUtilities::file_exists(r1)){ > - g_mkdir(r1.c_str(), 755); > + string itw_dir = config_dir+"/icedtea-web"; > + string log_dir = itw_dir+"/"+default_itw_log_dir_name; > + bool created_config = IcedTeaPluginUtilities::create_dir(itw_dir); > + bool created_log = IcedTeaPluginUtilities::create_dir(log_dir); > + if (!created_config || !created_log){ > + PLUGIN_ERROR("IcedTea-Web log directory creation failed. IcedTea-Web may fail to work!"); > } > - if (!IcedTeaPluginUtilities::file_exists(r2)){ > - g_mkdir(r2.c_str(), 755); > - } > - return r2; > + return log_dir; > } > return value; > } > > - > -string main_properties_file(){ > +string main_properties_file(){ > return "/etc/.java/deployment/"+default_file_ITW_deploy_props_name; > } > > diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaPluginUtils.cc > --- a/plugin/icedteanp/IcedTeaPluginUtils.cc Mon Jul 28 12:36:26 2014 -0400 > +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc Wed Jul 30 12:11:20 2014 -0400 > @@ -59,6 +59,33 @@ > /* Plugin async call queue */ > static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< PluginThreadCall* >(); > > +bool > +IcedTeaPluginUtilities::create_dir(std::string dir) > +{ > + if (file_exists(dir)) > + { > + if (!is_directory(dir)) > + { > + PLUGIN_ERROR("WARNING: Needed to create directory %s but there is already a file of the same name at this location.\n", dir.c_str()); > + return false; > + } > + PLUGIN_DEBUG("Directory %s already exists\n", dir.c_str()); > + } else > + { > + PLUGIN_DEBUG("Directory %s does not yet exist\n", dir.c_str()); > + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 > + bool created_directory = (g_mkdir(dir.c_str(), PERMISSIONS_MASK) == 0); > + int err = errno; > + if (!created_directory) > + { > + PLUGIN_ERROR("WARNING: Failed to create new directory %s. Reason: %s\n", dir.c_str(), strerror(err)); > + return false; > + } > + PLUGIN_DEBUG("Directory %s created\n", dir.c_str()); > + } > + return true; > +} > + > void *flush_pre_init_messages(void* data) { > while (true){ > struct timespec ts; > @@ -1136,6 +1163,17 @@ > return infile.good(); > } > > +bool IcedTeaPluginUtilities::is_directory(std::string filename) > +{ > + if (!file_exists) > + { > + return false; > + } > + struct stat buf; > + stat(filename.c_str(), &buf); > + return S_ISDIR(buf.st_mode); > +} > + > void IcedTeaPluginUtilities::initFileLog(){ > if (plugin_file_log != NULL ) { > //reusing > diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaPluginUtils.h > --- a/plugin/icedteanp/IcedTeaPluginUtils.h Mon Jul 28 12:36:26 2014 -0400 > +++ b/plugin/icedteanp/IcedTeaPluginUtils.h Wed Jul 30 12:11:20 2014 -0400 > @@ -49,6 +49,7 @@ > #include > #include > #include > +#include > > #include > #include > @@ -430,12 +431,14 @@ > /*cutting whitespaces from end and start of string*/ > static void trim(std::string& str); > static bool file_exists(std::string filename); > + static bool is_directory(std::string filename); > //file-loggers helpers > static std::string generateLogFileName(); > static void initFileLog(); > static void printDebugStatus(); > static std::string getTmpPath(); > static std::string getRuntimePath(); > + static bool create_dir(std::string); > }; > > /* > diff -r 6a985d697bf1 -r 5672bb76595d plugin/icedteanp/IcedTeaScriptablePluginObject.cc > --- a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc Mon Jul 28 12:36:26 2014 -0400 > +++ b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc Wed Jul 30 12:11:20 2014 -0400 > @@ -704,7 +704,7 @@ > browser_functions.intfromidentifier(name_id) >= 0) // else if array and requesting index > { > > - JavaResultData* java_result = java_request.getArrayLength(instance_id); > + java_result = java_request.getArrayLength(instance_id); > if (java_result->error_occurred) > { > PLUGIN_ERROR("ERROR: Couldn't fetch array length\n"); > diff -r 6a985d697bf1 -r 5672bb76595d tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc > --- a/tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc Mon Jul 28 12:36:26 2014 -0400 > +++ b/tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc Wed Jul 30 12:11:20 2014 -0400 > @@ -135,6 +135,72 @@ > remove(f1.c_str()); > bool b = IcedTeaPluginUtilities::file_exists(f1); > CHECK_EQUAL(b, false); > + > + std::string dir = tmpnam(NULL); > + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 > + bool created_dir = g_mkdir(dir.c_str(), PERMISSIONS_MASK); > + CHECK_EQUAL(created_dir, false); > + CHECK_EQUAL(IcedTeaPluginUtilities::file_exists(dir), true); > +} > + > + > +TEST(is_directory) { > + std::string n = tmpnam(NULL); > + bool no_file = IcedTeaPluginUtilities::is_directory(n); > + CHECK_EQUAL(no_file, false); > + > + std::string f = temporary_file("dummy content"); > + bool is_directory = IcedTeaPluginUtilities::is_directory(f); > + CHECK_EQUAL(is_directory, false); > + > + std::string d = tmpnam(NULL); > + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 > + bool created_test_dir = g_mkdir(d.c_str(), PERMISSIONS_MASK); > + CHECK_EQUAL(created_test_dir, false); > + bool is_directory2 = IcedTeaPluginUtilities::is_directory(d); > + CHECK_EQUAL(is_directory2, true); > +} > + > + > +TEST(create_dir) { > + FILE* old1 = stdout; > + FILE* old2 = stderr; > + char* buf1 = " "; > + char* buf2 = " "; > + stdout = fmemopen (buf1, strlen (buf1), "rw"); > + stderr = fmemopen (buf2, strlen (buf2), "rw"); > + > + std::string f1 = tmpnam(NULL); > + bool res1 = IcedTeaPluginUtilities::create_dir(f1); > + CHECK_EQUAL(res1, true); > + CHECK_EQUAL(IcedTeaPluginUtilities::is_directory(f1), true); > + > + std::string f2 = temporary_file("dummy content"); > + bool res2 = IcedTeaPluginUtilities::create_dir(f2); > + CHECK_EQUAL(res2, false); > + CHECK_EQUAL(IcedTeaPluginUtilities::is_directory(f2), false); > + > + std::string f3 = tmpnam(NULL); > + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 > + bool created_test_dir = g_mkdir(f3.c_str(), PERMISSIONS_MASK); > + CHECK_EQUAL(created_test_dir, false); > + bool res3 = IcedTeaPluginUtilities::create_dir(f3); > + CHECK_EQUAL(res3, true); > + CHECK_EQUAL(IcedTeaPluginUtilities::is_directory(f3), true); > + > + std::string f4 = tmpnam(NULL); > + const int READONLY_PERMISSIONS_MASK = S_IRUSR | S_IRGRP | S_IROTH; // 0444 > + bool created_test_dir2 = g_mkdir(f4.c_str(), READONLY_PERMISSIONS_MASK); > + CHECK_EQUAL(created_test_dir2, false); > + std::string subdir = f4 + "/test"; > + bool res4 = IcedTeaPluginUtilities::create_dir(subdir); > + CHECK_EQUAL(res4, false); > + CHECK_EQUAL(IcedTeaPluginUtilities::is_directory(subdir), false); > + > + fclose(stdout); > + fclose(stderr); > + stdout = old1; > + stderr = old2; > } > > > From andrew at icedtea.classpath.org Wed Jul 30 16:27:03 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:27:03 +0000 Subject: /hg/icedtea6: 2 new changesets Message-ID: changeset e992d073f853 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e992d073f853 author: Andrew John Hughes date: Wed Jul 30 16:57:57 2014 +0100 Update to newer 2014-07-15 tarball 2014-07-14 Omair Majid * Makefile.am: (OPENJDK_SHA256SUM): Update checksum for new tarball. changeset b83d551f7874 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=b83d551f7874 author: Andrew John Hughes date: Wed Jul 30 17:26:41 2014 +0100 PR1886: IcedTea does not checksum supplied tarballs 2014-07-30 Andrew John Hughes PR1886: IcedTea does not checksum supplied tarballs * Makefile.am: (download-openjdk): Check all tarballs, rather than just those downloaded by $(WGET). diffstat: ChangeLog | 12 ++++++++++++ Makefile.am | 5 ++--- NEWS | 2 ++ 3 files changed, 16 insertions(+), 3 deletions(-) diffs (60 lines): diff -r faaea522af93 -r b83d551f7874 ChangeLog --- a/ChangeLog Wed Jul 30 14:41:18 2014 +0100 +++ b/ChangeLog Wed Jul 30 17:26:41 2014 +0100 @@ -1,3 +1,15 @@ +2014-07-30 Andrew John Hughes + + PR1886: IcedTea does not checksum supplied tarballs + * Makefile.am: + (download-openjdk): Check all tarballs, + rather than just those downloaded by $(WGET). + +2014-07-14 Omair Majid + + * Makefile.am: + (OPENJDK_SHA256SUM): Update checksum for new tarball. + 2014-07-30 Andrew John Hughes * patches/jtreg-T6638712-fix.patch, diff -r faaea522af93 -r b83d551f7874 Makefile.am --- a/Makefile.am Wed Jul 30 14:41:18 2014 +0100 +++ b/Makefile.am Wed Jul 30 17:26:41 2014 +0100 @@ -1,7 +1,7 @@ # Dependencies OPENJDK_DATE = 15_jul_2014 -OPENJDK_SHA256SUM = 1a7404f38b3fa7cbb25d4273c0d94885912badd3343c5184c3b0947437501256 +OPENJDK_SHA256SUM = 9a5ad1b599953baac1b6b34189b9487ac5dcdb367aac5cc0aa5aa49700e73871 OPENJDK_VERSION = b32 OPENJDK_URL = https://java.net/downloads/openjdk6/ @@ -1121,7 +1121,7 @@ else if USE_ALT_OPENJDK_SRC_ZIP ln -sf $(ALT_OPENJDK_SRC_ZIP) $(OPENJDK_SRC_ZIP) -else +endif if ! echo "$(OPENJDK_SHA256SUM) $(OPENJDK_SRC_ZIP)" \ | $(SHA256SUM) --check ; \ then \ @@ -1140,7 +1140,6 @@ fi endif endif -endif mkdir -p stamps touch $@ diff -r faaea522af93 -r b83d551f7874 NEWS --- a/NEWS Wed Jul 30 14:41:18 2014 +0100 +++ b/NEWS Wed Jul 30 17:26:41 2014 +0100 @@ -23,6 +23,8 @@ - S8013057: Detect mmap() commit failures in Linux and Solaris os::commit_memory() impls and call vm_exit_out_of_memory() - S8026887: Make issues due to failed large pages allocations easier to debug - OJ39: Handle fonts with the non-canonical processing flag set +* Bug fixes + - PR1886: IcedTea does not checksum supplied tarballs New in release 1.13.4 (2014-07-15): From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:27:12 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:27:12 +0000 Subject: [Bug 1886] [IcedTea6] IcedTea does not checksum supplied tarballs In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1886 --- Comment #1 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea6?cmd=changeset;node=b83d551f7874 author: Andrew John Hughes date: Wed Jul 30 17:26:41 2014 +0100 PR1886: IcedTea does not checksum supplied tarballs 2014-07-30 Andrew John Hughes PR1886: IcedTea does not checksum supplied tarballs * Makefile.am: (download-openjdk): Check all tarballs, rather than just those downloaded by $(WGET). -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:28:17 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:28:17 +0000 Subject: [Bug 1886] [IcedTea6] IcedTea does not checksum supplied tarballs In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1886 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: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:28:18 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:28:18 +0000 Subject: [Bug 1503] [TRACKER] IcedTea6 1.14 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1503 Bug 1503 depends on bug 1886, which changed state. Bug 1886 Summary: [IcedTea6] IcedTea does not checksum supplied tarballs http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1886 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: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:32:38 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:32:38 +0000 Subject: [Bug 1887] New: [IcedTea6] Allow tarball checksumming to be disabled Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1887 Bug ID: 1887 Summary: [IcedTea6] Allow tarball checksumming to be disabled Product: IcedTea Version: 6-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Sometimes, users need to knowingly override the default tarball selection used by IcedTea e.g. in the case that distributors need to make changes to the upstream OpenJDK tarballs. As such, we should provide the option to opt out of having the tarballs checksummed. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:33:19 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:33:19 +0000 Subject: [Bug 1503] [TRACKER] IcedTea6 1.14 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1503 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1887 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:33:19 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:33:19 +0000 Subject: [Bug 1887] [IcedTea6] Allow tarball checksumming to be disabled In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1887 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1503 Target Milestone|--- |6-1.14.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:34:14 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:34:14 +0000 Subject: [Bug 1888] New: [IcedTea7] Allow tarball checksumming to be disabled Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1888 Bug ID: 1888 Summary: [IcedTea7] Allow tarball checksumming to be disabled Product: IcedTea Version: 7-hg Hardware: all OS: All Status: NEW Severity: enhancement Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Sometimes, users need to knowingly override the default tarball selection used by IcedTea e.g. in the case that distributors need to make changes to the upstream OpenJDK tarballs. As such, we should provide the option to opt out of having the tarballs checksummed. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Wed Jul 30 16:49:16 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 18:49:16 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D91C44.4090906@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> <53D90D2C.2030000@redhat.com> <53D90F6F.9070401@redhat.com> <53D91C44.4090906@redhat.com> Message-ID: <53D9220C.3030701@redhat.com> On 07/30/2014 06:24 PM, Jiri Vanek wrote: > On 07/30/2014 05:29 PM, Andrew Azores wrote: >> On 07/30/2014 11:20 AM, Jiri Vanek wrote: >>> >>>>>> +++ b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >>>>>> @@ -129,7 +129,7 @@ public class JNLPFileTest extends NoStdO >>>>>> /* >>>>>> * "sandbox" or "all-permissions" >>>>>> */ >>>>>> - manifest6.getMainAttributes().put(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); >>>>>> + manifest6.getMainAttributes().put(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "all-permissions"); >>>>> >>>>> Why this change??? It should not be here... >>>>> >>>>>> manifest6.getMainAttributes().put(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); >>>>>> manifest6.getMainAttributes().put(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); >>>>>> >>>>>> @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO >>>>>> Assert.assertEquals("*.comhttps://*.cz", >>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); >>>>>> Assert.assertEquals("*.netftp://*uu.co.uk", >>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); >>>>>> Assert.assertEquals("*.com *.net *.cz *.co.uk", >>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); >>>>>> - Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>>>> + Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), >>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>>> >>>>> So this one, >>>>>> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); >>>>>> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); >>>>>> >>>>>> @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO >>>>>> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>> URL("ftp://aa.bb.net"))); >>>>>> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>> URL("https://x.net"))); >>>>>> Assert.assertEquals(false, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>> URL("http://aa.bb/com"))); >>>>>> - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >>>>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>>>> + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>>> >>>>> and this one. Why so? >>>>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>> jnlpFile.getManifestsAttributes().isTrustedLibrary()); >>>>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>> jnlpFile.getManifestsAttributes().isTrustedOnly()); >>>>>> >>>>> >>>>> >>>> >>>> The JNLPClassLoader is determining the applet to be signed, and the ManifestAttributesChecker does >>>> not allow for JNLP applets to have a mismatch between their signing state and the permissions level >>>> they request (I believe this is in the spec for the Permissions attribute). Is the applet not >>>> actually signed? I looked into how the JARs are being created and couldn't see if they're signed >>>> one >>>> way or the other. >>>> >>> >>> Well thats the issue. The testing "applet" (its dummyjnlp) is not signed. So this change sholdnot >>> be needed. Something different msut be wrong. >>> >>> >>> J. >>> >> >> The classloader's JarCertVerifier 'jcv' is returning true for 'jcv.isFullySigned()' on all of these >> tests, even without the patch applied. It falls into the 'isTriviallySigned' case. If this needs to >> be fixed then I think it's perhaps out of scope of this patch, no? >> >> Thanks, >> > > > ufff.. not so sure. > > Well the issue is here: > > public boolean isTriviallySigned() { > return getTotalJarEntries(jarSignableEntries) <= 0 > && certs.size() <= 0; > } > > > > I'm not sure if it is case of DummyJnlp only or if it hides something more serious. > > > > It seems to me that once there are no jars, and no certificates, then it is considered signed (like > class only applet?/??) If I'm correct that this return is terribly wrong. Not sure if your current > patch made it more visible, made new hole, or just pointed to something rotten already inside... > Looking deeper, into VerifyResult verifyJarEntryCerts I really think your patch disturbed something. The loop here is counting the entries, and is distinguishing among maniefested, not manifested jars. So I guess this is an cause. J. From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:52:09 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:52:09 +0000 Subject: [Bug 1888] [IcedTea7] Allow tarball checksumming to be disabled In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1888 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1698 Target Milestone|--- |2.6.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:52:09 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:52:09 +0000 Subject: [Bug 1698] [TRACKER] IcedTea 2.6.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1698 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1888 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:54:15 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:54:15 +0000 Subject: [Bug 1889] New: [IcedTea8] Allow tarball checksumming to be disabled Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1889 Bug ID: 1889 Summary: [IcedTea8] Allow tarball checksumming to be disabled Product: IcedTea Version: 8-hg Hardware: all OS: All Status: NEW Severity: normal Priority: P5 Component: IcedTea Assignee: gnu.andrew at redhat.com Reporter: gnu.andrew at redhat.com CC: unassigned at icedtea.classpath.org Sometimes, users need to knowingly override the default tarball selection used by IcedTea e.g. in the case that distributors need to make changes to the upstream OpenJDK tarballs. As such, we should provide the option to opt out of having the tarballs checksummed. -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:54:30 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:54:30 +0000 Subject: [Bug 1740] [TRACKER] IcedTea 3.1.0 Release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1740 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |1889 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 16:54:30 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 16:54:30 +0000 Subject: [Bug 1889] [IcedTea8] Allow tarball checksumming to be disabled In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1889 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Blocks| |1740 Target Milestone|--- |3.1.0 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From jvanek at redhat.com Wed Jul 30 17:07:46 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Wed, 30 Jul 2014 19:07:46 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D9220C.3030701@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> <53D90D2C.2030000@redhat.com> <53D90F6F.9070401@redhat.com> <53D91C44.4090906@redhat.com> <53D9220C.3030701@redhat.com> Message-ID: <53D92662.8010203@redhat.com> On 07/30/2014 06:49 PM, Jiri Vanek wrote: > On 07/30/2014 06:24 PM, Jiri Vanek wrote: >> On 07/30/2014 05:29 PM, Andrew Azores wrote: >>> On 07/30/2014 11:20 AM, Jiri Vanek wrote: >>>> >>>>>>> +++ b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >>>>>>> @@ -129,7 +129,7 @@ public class JNLPFileTest extends NoStdO >>>>>>> /* >>>>>>> * "sandbox" or "all-permissions" >>>>>>> */ >>>>>>> - manifest6.getMainAttributes().put(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); >>>>>>> + manifest6.getMainAttributes().put(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "all-permissions"); >>>>>> >>>>>> Why this change??? It should not be here... >>>>>> >>>>>>> manifest6.getMainAttributes().put(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); >>>>>>> manifest6.getMainAttributes().put(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); >>>>>>> >>>>>>> @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO >>>>>>> Assert.assertEquals("*.comhttps://*.cz", >>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); >>>>>>> Assert.assertEquals("*.netftp://*uu.co.uk", >>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); >>>>>>> Assert.assertEquals("*.com *.net *.cz *.co.uk", >>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); >>>>>>> - Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>>>>> + Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), >>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>>>> >>>>>> So this one, >>>>>>> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); >>>>>>> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); >>>>>>> >>>>>>> @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO >>>>>>> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>>> URL("ftp://aa.bb.net"))); >>>>>>> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>>> URL("https://x.net"))); >>>>>>> Assert.assertEquals(false, jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>>> URL("http://aa.bb/com"))); >>>>>>> - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >>>>>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>>>>> + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>>>> >>>>>> and this one. Why so? >>>>>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>>> jnlpFile.getManifestsAttributes().isTrustedLibrary()); >>>>>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>>> jnlpFile.getManifestsAttributes().isTrustedOnly()); >>>>>>> >>>>>> >>>>>> >>>>> >>>>> The JNLPClassLoader is determining the applet to be signed, and the ManifestAttributesChecker does >>>>> not allow for JNLP applets to have a mismatch between their signing state and the permissions >>>>> level >>>>> they request (I believe this is in the spec for the Permissions attribute). Is the applet not >>>>> actually signed? I looked into how the JARs are being created and couldn't see if they're signed >>>>> one >>>>> way or the other. >>>>> >>>> >>>> Well thats the issue. The testing "applet" (its dummyjnlp) is not signed. So this change sholdnot >>>> be needed. Something different msut be wrong. >>>> >>>> >>>> J. >>>> >>> >>> The classloader's JarCertVerifier 'jcv' is returning true for 'jcv.isFullySigned()' on all of these >>> tests, even without the patch applied. It falls into the 'isTriviallySigned' case. If this needs to >>> be fixed then I think it's perhaps out of scope of this patch, no? >>> >>> Thanks, >>> >> >> >> ufff.. not so sure. >> >> Well the issue is here: >> >> public boolean isTriviallySigned() { >> return getTotalJarEntries(jarSignableEntries) <= 0 >> && certs.size() <= 0; >> } >> >> >> >> I'm not sure if it is case of DummyJnlp only or if it hides something more serious. >> >> >> >> It seems to me that once there are no jars, and no certificates, then it is considered signed (like >> class only applet?/??) If I'm correct that this return is terribly wrong. Not sure if your current >> patch made it more visible, made new hole, or just pointed to something rotten already inside... >> > > Looking deeper, into > > VerifyResult verifyJarEntryCerts > > > I really think your patch disturbed something. The loop here is counting the entries, and is > distinguishing among maniefested, not manifested jars. So I guess this is an cause. > > > J. > yes this wouldbe it: (initializeResources): do not set entries in jarLocationSecurityMap until + after prompting the user on whether to run the applet as well as and - inside that - you are asking about signature satus....\ /me moreover brainstorming From aazores at icedtea.classpath.org Wed Jul 30 17:23:09 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Wed, 30 Jul 2014 17:23:09 +0000 Subject: /hg/icedtea-web: Added RH1121549 fix mention to NEWS Message-ID: changeset ae19c6bf205b in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=ae19c6bf205b author: Andrew Azores date: Wed Jul 30 13:23:00 2014 -0400 Added RH1121549 fix mention to NEWS diffstat: ChangeLog | 4 ++++ NEWS | 1 + 2 files changed, 5 insertions(+), 0 deletions(-) diffs (22 lines): diff -r 7db064780e97 -r ae19c6bf205b ChangeLog --- a/ChangeLog Wed Jul 30 12:20:29 2014 -0400 +++ b/ChangeLog Wed Jul 30 13:23:00 2014 -0400 @@ -1,3 +1,7 @@ +2014-07-30 Andrew Azores + + * NEWS: added mention of RH1121549 fix + 2014-07-30 Andrew Azores Fixes for coverity issues discovered in RH1121549 diff -r 7db064780e97 -r ae19c6bf205b NEWS --- a/NEWS Wed Jul 30 12:20:29 2014 -0400 +++ b/NEWS Wed Jul 30 13:23:00 2014 -0400 @@ -15,6 +15,7 @@ * Added KEY_ENABLE_MANIFEST_ATTRIBUTES_CHECK deployment property to control scan of Manifest file * Plugin - PR1743 - Intermittant deadlock in PluginRequestProcessor + - RH1121549: coverity defects * PolicyEditor - codebases can be renamed in-place, copied, and pasted - codebase URLs can be copied to system clipboard From aazores at icedtea.classpath.org Wed Jul 30 17:35:28 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Wed, 30 Jul 2014 17:35:28 +0000 Subject: /hg/icedtea-web: Added PolicyEditor accelerators + mnemonics and... Message-ID: changeset b76e7dba5c1f in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=b76e7dba5c1f author: Andrew Azores date: Wed Jul 30 13:35:17 2014 -0400 Added PolicyEditor accelerators + mnemonics and "exit-on-save cancel" to NEWS diffstat: ChangeLog | 8 +++++++- NEWS | 3 +++ 2 files changed, 10 insertions(+), 1 deletions(-) diffs (35 lines): diff -r ae19c6bf205b -r b76e7dba5c1f ChangeLog --- a/ChangeLog Wed Jul 30 13:23:00 2014 -0400 +++ b/ChangeLog Wed Jul 30 13:35:17 2014 -0400 @@ -1,3 +1,9 @@ +2014-07-30 Andrew Azores + + * NEWS: added mention of PolicyEditor mnemonics and accelerators overhaul, + PolicyEditor bug fix where "cancel" on the "save before exit" dialog would + exit without saving changes + 2014-07-30 Andrew Azores * NEWS: added mention of RH1121549 fix @@ -168,7 +174,7 @@ 2014-06-25 Andrew Azores * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java: - (setupLayout) use SwingUtilities.getWindowAncestor() rather than manually + (setupLayout): use SwingUtilities.getWindowAncestor() rather than manually searching 2014-06-24 Andrew Azores diff -r ae19c6bf205b -r b76e7dba5c1f NEWS --- a/NEWS Wed Jul 30 13:23:00 2014 -0400 +++ b/NEWS Wed Jul 30 13:35:17 2014 -0400 @@ -23,6 +23,9 @@ - codebases without permissions assigned save to file anyway (and re-appear on next open) - PR1776: NullPointer on save-and-exit - PR1850: duplicate codebases when launching from security dialogs + - Fixed bug where clicking "Cancel" on the "Save before Exiting" dialog could result in the editor + exiting without saving changes + - Keyboard accelerators and mnemonics greatly improved * Temporary Permissions in security dialog now multi-selectable and based on PolicyEditor permissions New in release 1.5 (2014-XX-XX): From jkang at icedtea.classpath.org Wed Jul 30 17:58:10 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Wed, 30 Jul 2014 17:58:10 +0000 Subject: /hg/icedtea-web: Added PR1856, PR1858, PR1858 and MethodOverload... Message-ID: changeset 10b3c3ecc773 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=10b3c3ecc773 author: Jie Kang date: Wed Jul 30 13:58:07 2014 -0400 Added PR1856, PR1858, PR1858 and MethodOverload Resolution fixes to NEWS diffstat: ChangeLog | 5 +++++ NEWS | 10 ++++++++++ 2 files changed, 15 insertions(+), 0 deletions(-) diffs (49 lines): diff -r b76e7dba5c1f -r 10b3c3ecc773 ChangeLog --- a/ChangeLog Wed Jul 30 13:35:17 2014 -0400 +++ b/ChangeLog Wed Jul 30 13:58:07 2014 -0400 @@ -1,3 +1,8 @@ +2014-07-30 Jie Kang + + * NEWS: added mention of fixes to Java Console and itweb-settings UI as + well as fix to method overloading resolution + 2014-07-30 Andrew Azores * NEWS: added mention of PolicyEditor mnemonics and accelerators overhaul, diff -r b76e7dba5c1f -r 10b3c3ecc773 NEWS --- a/NEWS Wed Jul 30 13:35:17 2014 -0400 +++ b/NEWS Wed Jul 30 13:58:07 2014 -0400 @@ -13,9 +13,15 @@ * JDK 6 and older no longer supported * Added DE localisation * Added KEY_ENABLE_MANIFEST_ATTRIBUTES_CHECK deployment property to control scan of Manifest file +* Control Panel + - PR1856: ControlPanel UI improvement for lower resolutions (800*600) +* NetX + - PR1858: Java Console accepts multi-byte encodings + - PR1859: Java Console UI improvement for lower resolutions (800*600) * Plugin - PR1743 - Intermittant deadlock in PluginRequestProcessor - RH1121549: coverity defects + - Resolves method overloading correctly with superclass heirarchy distance * PolicyEditor - codebases can be renamed in-place, copied, and pasted - codebase URLs can be copied to system clipboard @@ -50,6 +56,9 @@ - PR1473 - javaws should not depend on name of local file - Redesigned About dialogue layout and contents - Console made aware of plugin messages + - PR1856: ControlPanel UI improvement for lower resolutions (800*600) + - PR1858: Java Console accepts multi-byte encodings + - PR1859: Java Console UI improvement for lower resolutions (800*600) * Plugin - PR854: Resizing an applet several times causes 100% CPU load - PR1271: icedtea-web does not handle 'javascript:'-protocol URLs @@ -57,6 +66,7 @@ - Pipes moved into XDG_RUNTIME_DIR - Added debug to file - RH1010958: insecure temporary file use flaw in LiveConnect implementation + - Resolves method overloading correctly with superclass heirarchy distance * Common - PR1474: Can't get javaws to use SOCKS proxy - Man page for itweb-settings From jkang at icedtea.classpath.org Wed Jul 30 18:05:17 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Wed, 30 Jul 2014 18:05:17 +0000 Subject: /hg/release/icedtea-web-1.5: Fixed ControlPanel UI for lower res... Message-ID: changeset f16daf7f68fa in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=f16daf7f68fa author: Jie Kang date: Wed Jul 30 14:05:11 2014 -0400 Fixed ControlPanel UI for lower resolutions. 2014-07-30 Jie Kang Fix to Control Panel UI for lower resolutions. Addresses bug PR1856 where part of the dialog is hidden and unaccessible on lower resolutions such as 800 x 600. * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java: * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java: diffstat: ChangeLog | 8 + netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java | 3 +- netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java | 200 +++++---- 3 files changed, 126 insertions(+), 85 deletions(-) diffs (367 lines): diff -r bfa9387111aa -r f16daf7f68fa ChangeLog --- a/ChangeLog Tue Jul 22 11:44:53 2014 -0400 +++ b/ChangeLog Wed Jul 30 14:05:11 2014 -0400 @@ -1,3 +1,11 @@ +2014-07-30 Jie Kang + + Fix to Control Panel UI for lower resolutions. Addresses bug + PR1856 where part of the dialog is hidden and unaccessible + on lower resolutions such as 800 x 600. + * netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java: + * netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java: + 2014-07-22 Fridrich Strba * plugin/icedteanp/IcedTeaPluginUtils.cc (flush_pre_init_messages): diff -r bfa9387111aa -r f16daf7f68fa netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java --- a/netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java Tue Jul 22 11:44:53 2014 -0400 +++ b/netx/net/sourceforge/jnlp/controlpanel/ControlPanel.java Wed Jul 30 14:05:11 2014 -0400 @@ -120,7 +120,6 @@ add(buttonPanel, BorderLayout.PAGE_END); setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); pack(); - setMinimumSize(getPreferredSize()); } private JPanel createTopPanel() { @@ -303,7 +302,7 @@ } }); JScrollPane settingsListScrollPane = new JScrollPane(settingsList); - settingsListScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); + settingsListScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); final JPanel settingsDetailPanel = new JPanel(); settingsDetailPanel.setLayout(new BorderLayout()); diff -r bfa9387111aa -r f16daf7f68fa netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java --- a/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Tue Jul 22 11:44:53 2014 -0400 +++ b/netx/net/sourceforge/jnlp/controlpanel/UnsignedAppletsTrustingListPanel.java Wed Jul 30 14:05:11 2014 -0400 @@ -51,16 +51,27 @@ import java.util.Date; import java.util.List; import java.util.regex.Pattern; + import javax.swing.DefaultCellEditor; +import javax.swing.DefaultComboBoxModel; +import javax.swing.DefaultListCellRenderer; +import javax.swing.GroupLayout; +import javax.swing.JButton; +import javax.swing.JCheckBox; import javax.swing.JComboBox; import javax.swing.JDialog; import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JList; import javax.swing.JOptionPane; import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTabbedPane; import javax.swing.JTable; import javax.swing.JTextField; +import javax.swing.LayoutStyle; +import javax.swing.ListCellRenderer; import javax.swing.RowFilter; -import javax.swing.RowFilter.Entry; import javax.swing.RowSorter.SortKey; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; @@ -72,6 +83,7 @@ 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; @@ -83,28 +95,28 @@ import net.sourceforge.jnlp.util.logging.OutputController; import net.sourceforge.jnlp.util.ScreenFinder; -public class UnsignedAppletsTrustingListPanel extends javax.swing.JPanel { +public class UnsignedAppletsTrustingListPanel extends JPanel { - private javax.swing.JButton helpButton; - private javax.swing.JButton deleteButton; - private javax.swing.JButton addRowButton; - private javax.swing.JButton validateTableButton; - private javax.swing.JButton testUrlButton; - private javax.swing.JButton invertSelectionButton; - private javax.swing.JButton moveRowUpButton; - private javax.swing.JButton moveRowDownButton; - private javax.swing.JCheckBox askBeforeActionCheckBox; - 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; - private javax.swing.JTabbedPane mainTabPanel; - private javax.swing.JTable userTable; - private javax.swing.JScrollPane globalTableScrollPane; - private javax.swing.JTable globalTable; + private JButton helpButton; + private JButton deleteButton; + private JButton addRowButton; + private JButton validateTableButton; + private JButton testUrlButton; + private JButton invertSelectionButton; + private JButton moveRowUpButton; + private JButton moveRowDownButton; + private JCheckBox askBeforeActionCheckBox; + private JCheckBox filterRegexesCheckBox; + private JComboBox mainPolicyComboBox; + private JComboBox deleteTypeComboBox; + private JComboBox viewFilter; + private JLabel globalBehaviourLabel; + private JLabel securityLevelLabel; + private JScrollPane userTableScrollPane; + private JTabbedPane mainTabPanel; + private JTable userTable; + private JScrollPane globalTableScrollPane; + private JTable globalTable; private final UnsignedAppletActionStorageExtendedImpl customBackEnd; private final UnsignedAppletActionStorageExtendedImpl globalBackEnd; private final UnsignedAppletActionTableModel customModel; @@ -112,7 +124,7 @@ private final ByPermanencyFilter customFilter; private final ByPermanencyFilter globalFilter; private final DeploymentConfiguration conf; - private javax.swing.JTable currentTable; + private JTable currentTable; private UnsignedAppletActionTableModel currentModel; private String lastDoc; private String lastCode; @@ -132,7 +144,6 @@ public void run() { try { JFrame f = new JFrame(); - f.setSize(700, 300); f.setLayout(new BorderLayout()); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); DeploymentConfiguration cc = new DeploymentConfiguration(); @@ -140,6 +151,7 @@ File ff1 = new File(defaultFile1); File ff2 = new File(defaultFile2); f.add(new UnsignedAppletsTrustingListPanel(ff2, ff1, cc)); + f.pack(); f.setVisible(true); } catch (Exception ex) { OutputController.getLogger().log(OutputController.Level.ERROR_ALL, ex); @@ -242,13 +254,28 @@ model.clear(); } + ListCellRenderer comboRendererWithToolTips = new DefaultListCellRenderer() { + + @Override + public final Component getListCellRendererComponent(final JList list, + final Object value, final int index, final boolean isSelected, + final boolean cellHasFocus) { + if (value != null) { + setToolTipText(value.toString()); + } + return super.getListCellRendererComponent(list, value, index, isSelected, + cellHasFocus); + } + + }; + private void initComponents() { - userTableScrollPane = new javax.swing.JScrollPane(); - globalTableScrollPane = new javax.swing.JScrollPane(); - userTable = createTbale(customModel); - globalTable = createTbale(globalModel); - helpButton = new javax.swing.JButton(); + userTableScrollPane = new JScrollPane(); + globalTableScrollPane = new JScrollPane(); + userTable = createTable(customModel); + globalTable = createTable(globalModel); + helpButton = new JButton(); mainPolicyComboBox = new JComboBox(new AppletSecurityLevel[]{ AppletSecurityLevel.DENY_ALL, AppletSecurityLevel.DENY_UNSIGNED, @@ -256,20 +283,22 @@ AppletSecurityLevel.ALLOW_UNSIGNED }); mainPolicyComboBox.setSelectedItem(AppletSecurityLevel.getDefault()); - 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(); - validateTableButton = new javax.swing.JButton(); - askBeforeActionCheckBox = new javax.swing.JCheckBox(); - filterRegexesCheckBox = new javax.swing.JCheckBox(); - invertSelectionButton = new javax.swing.JButton(); - moveRowUpButton = new javax.swing.JButton(); - moveRowDownButton = new javax.swing.JButton(); - mainTabPanel = new javax.swing.JTabbedPane(); + mainPolicyComboBox.setRenderer(comboRendererWithToolTips); + + securityLevelLabel = new JLabel(); + globalBehaviourLabel = new JLabel(); + deleteTypeComboBox = new JComboBox(); + viewFilter = new JComboBox(); + deleteButton = new JButton(); + testUrlButton = new JButton(); + addRowButton = new JButton(); + validateTableButton = new JButton(); + askBeforeActionCheckBox = new JCheckBox(); + filterRegexesCheckBox = new JCheckBox(); + invertSelectionButton = new JButton(); + moveRowUpButton = new JButton(); + moveRowDownButton = new JButton(); + mainTabPanel = new JTabbedPane(); userTableScrollPane.setViewportView(userTable); @@ -335,15 +364,16 @@ globalBehaviourLabel.setText(Translator.R("APPEXTSECguiPanelGlobalBehaviourCaption")); - deleteTypeComboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[]{ + deleteTypeComboBox.setModel(new DefaultComboBoxModel(new String[] { Translator.R("APPEXTSECguiPanelDeleteMenuSelected"), Translator.R("APPEXTSECguiPanelDeleteMenuAllA"), Translator.R("APPEXTSECguiPanelDeleteMenuAllN"), Translator.R("APPEXTSECguiPanelDeleteMenuAlly"), Translator.R("APPEXTSECguiPanelDeleteMenuAlln"), Translator.R("APPEXTSECguiPanelDeleteMenuAllAll")})); - - viewFilter.setModel(new javax.swing.DefaultComboBoxModel(new String[]{ + deleteTypeComboBox.setRenderer(comboRendererWithToolTips); + + viewFilter.setModel(new DefaultComboBoxModel (new String[] { Translator.R("APPEXTSECguiPanelShowOnlyPermanent"), Translator.R("APPEXTSECguiPanelShowOnlyTemporal"), Translator.R("APPEXTSECguiPanelShowAll"), @@ -351,7 +381,8 @@ Translator.R("APPEXTSECguiPanelShowOnlyPermanentN"), Translator.R("APPEXTSECguiPanelShowOnlyTemporalY"), Translator.R("APPEXTSECguiPanelShowOnlyTemporalN")})); - + viewFilter.setRenderer(comboRendererWithToolTips); + deleteButton.setText(Translator.R("APPEXTSECguiPanelDeleteButton")); deleteButton.setToolTipText(Translator.R("APPEXTSECguiPanelDeleteButtonToolTip")); deleteButton.addActionListener(new java.awt.event.ActionListener() { @@ -422,54 +453,54 @@ } }); - javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); + GroupLayout layout = new GroupLayout(this); this.setLayout(layout); layout.setHorizontalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup().addContainerGap() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(mainTabPanel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 583, Short.MAX_VALUE) - .addComponent(globalBehaviourLabel, javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() - .addComponent(securityLevelLabel).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + layout.createParallelGroup(GroupLayout.Alignment.LEADING) + .addGroup(GroupLayout.Alignment.TRAILING, layout.createSequentialGroup().addContainerGap() + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.TRAILING) + .addComponent(mainTabPanel, GroupLayout.Alignment.LEADING, 0, 583, Short.MAX_VALUE) + .addComponent(globalBehaviourLabel, GroupLayout.Alignment.LEADING, 0, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addComponent(securityLevelLabel, 0, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) .addComponent(mainPolicyComboBox, 0, 474, Short.MAX_VALUE)) - .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup() - .addComponent(addRowButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(validateTableButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(testUrlButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 94, Short.MAX_VALUE) - .addComponent(moveRowDownButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(moveRowUpButton)) + .addGroup(GroupLayout.Alignment.LEADING, layout.createSequentialGroup() + .addComponent(addRowButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(validateTableButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(testUrlButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 94, Short.MAX_VALUE) + .addComponent(moveRowDownButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(moveRowUpButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() - .addComponent(deleteButton).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(deleteTypeComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(invertSelectionButton)) + .addComponent(deleteButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(deleteTypeComboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(invertSelectionButton, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(layout.createSequentialGroup() - .addComponent(askBeforeActionCheckBox).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .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())); + .addComponent(askBeforeActionCheckBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(filterRegexesCheckBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 93, Short.MAX_VALUE) + .addComponent(viewFilter, 0, GroupLayout.PREFERRED_SIZE, Short.MAX_VALUE))).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addComponent(helpButton, GroupLayout.PREFERRED_SIZE, 108, GroupLayout.PREFERRED_SIZE))).addContainerGap())); layout.setVerticalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + layout.createParallelGroup(GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup().addContainerGap() - .addComponent(globalBehaviourLabel).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(globalBehaviourLabel).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING) .addComponent(securityLevelLabel) - .addComponent(mainPolicyComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(mainPolicyComboBox, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.TRAILING) .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING, false) .addComponent(deleteButton) .addComponent(deleteTypeComboBox) - .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(invertSelectionButton, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(askBeforeActionCheckBox) .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) + .addComponent(helpButton, GroupLayout.PREFERRED_SIZE, 53, GroupLayout.PREFERRED_SIZE)).addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(mainTabPanel, GroupLayout.DEFAULT_SIZE, 161, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(GroupLayout.Alignment.BASELINE) .addComponent(addRowButton) .addComponent(validateTableButton) .addComponent(testUrlButton) @@ -695,13 +726,17 @@ moveRowDownButton.setEnabled(b); } - private JTable createTbale(final TableModel model) { + private JTable createTable(final TableModel model) { JTable jt = new JTable() { @Override public TableCellEditor getCellEditor(int row, int column) { int columnx = convertColumnIndexToModel(column); if (columnx == 0) { - return new DefaultCellEditor(new JComboBox(new ExecuteAppletAction[]{ExecuteAppletAction.ALWAYS, ExecuteAppletAction.NEVER, ExecuteAppletAction.YES, ExecuteAppletAction.NO})); + return new DefaultCellEditor(new JComboBox(new ExecuteAppletAction[] { + ExecuteAppletAction.ALWAYS, + ExecuteAppletAction.NEVER, + ExecuteAppletAction.YES, + ExecuteAppletAction.NO})); } if (columnx == 2) { column = convertColumnIndexToModel(column); @@ -753,7 +788,6 @@ currentTable.setModel(currentModel); { currentTable.getRowSorter().setSortKeys(l); - } } From aazores at redhat.com Wed Jul 30 18:08:50 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 30 Jul 2014 14:08:50 -0400 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53D8F76F.1020604@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> <53D114C8.1080407@redhat.com> <53D259B5.9090402@redhat.com> <53D668C7.3060901@redhat.com> <53D6C65A.4030101@redhat.com> <53D8F76F.1020604@redhat.com> Message-ID: <53D934B2.3000403@redhat.com> On 07/30/2014 09:47 AM, Jiri Vanek wrote: > On 07/28/2014 11:53 PM, Andrew Azores wrote: >> On 07/28/2014 11:14 AM, Jiri Vanek wrote: >>> >>>> diff --git a/plugin/icedteanp/IcedTeaPluginUtils.cc >>>> b/plugin/icedteanp/IcedTeaPluginUtils.cc >>>> --- a/plugin/icedteanp/IcedTeaPluginUtils.cc >>>> +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc >>>> @@ -59,6 +59,19 @@ >>>> /* Plugin async call queue */ >>>> static std::vector< PluginThreadCall* >* >>>> pendingPluginThreadRequests = new std::vector< >>>> PluginThreadCall* >(); >>>> >>>> +int >>>> +IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>>> +{ >>>> + if (!IcedTeaPluginUtilities::file_exists(dir)) >>>> + { >>>> + if (!g_mkdir(dir.c_str(), 755)) >>>> + { >>>> + return errno; >>>> + } >>>> + } >>>> + return 0; >>>> +} >>>> + >>> ... >>> > + int parentErr = >>> IcedTeaPluginUtilities::createLogDirectory(r1); >>> > + if (!parentErr){ >>> > + PLUGIN_ERROR("FATAL: Failed to create IcedTea-Web >>> config directory %s: %s\n", >>> r1.c_str(), strerror(parentErr)); >>> > + return NULL; >>> } >>> >>> When you are her, you should also verify (if it exists then) whether >>> it is directory or file. If >>> File, return failure. >>> >>> I would discourage you from returning errno. I would say Print >>> error messages here, and return >>> true/false. >>> >>> true/false is the only indicator you need if you need to decide >>> wheter continue or not. >>> >>> And I would suggest continue at all cost, but print out a warning >>> that it probably will nto work. >>> >>> So I would go with: >>> >>> bool IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>> { >>> if (!file_exists(dir) ) >>> { >>> if (!g_mkdir(dir.c_str(), 755)) >>> int x=errno >>> echo "warning, creation of $dir failed. Itw need this >>> direcotry to work. You can >>> expect failre later. reason: "error_toString(x) >>> //always save errorn >>> return false; >>> } >>> } else { >>> if (!is_dir(dir)){ >>> echo "warning, cannot create $dir becasue there is >>> already an file" >>> return false >>> } >>> } >>> return true; >>> //feel free to add some debug only outputs here like exists, >>> continuing, is dir, continuing... >>> } >>> int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); >>> // warnings have been printed >>> // no need to die, trying to continue >>> >>> >>> >>> >>> Also.. :-/ .. your patch kills ITW at my machine >>> >>> [unknown user][ITW-C-PLUGIN][MESSAGE_DEBUG][Mon Jul 28 16:11:03 CEST >>> 2014][/home/jvanek/hg/icedtea-web/plugin/icedteanp/IcedTeaParseProperties.cc:141] >>> ITNPP Thread# >>> 139757752895360, gthread 0x7f1bd2614120: FATAL: Failed to create >>> IcedTea-Web config directory >>> /home/jvanek/.config/icedtea-web: Success >>> >>> and firefox dies. Please run your code on soem usecases before >>> posting. >>> >>> Well the /home/jvanek/.config/icedtea-web do exist at my pc - so >>> somethig is wrong :) >> >> :S I could swear it worked for me, not sure what happened there. >> Maybe I made a change and failed to >> test that one before sending :/ >> >>> >>> >>> My reason to try continuing is simple - There may be cases, when >>> .confing/itw may be some special >>> device - well nearly impossible, but still possible. >>> >>> >>> Another note - sinc you created new method - please unittest it in >>> cpp-unit-tests. >>> >>> >>> And positive note at the end. I run covescan on your patch and not >>> sure what to read - >>> http://cov01.lab.eng.brq.redhat.com/covscanhub/task/13258/ :)) >>> J. >>> >>> >>> >> >> New patch has tests added and some style cleanup done, and works >> again (hopefully - seems to work >> fine for me and unit tests are a little reassuring). >> >> Thanks, >> > > Is this output of test expected? (yes, the code is doing it :) , but > should not be :) ) > Passed: is_directory > WARNING: Needed to create directory /tmp/fileSGg0Vp but there is > already a file of the same name at this location. > WARNING: Failed to create new directory /tmp/filecvV1sH/test. Reason: > Permission denied > Passed: create_log_dir > > > I mean the warnings. I thing they are disturbing the output and should > not be here. > > I think there are exampels in ccp tests, how to redirect the output. > May you try them? > > Except this I'm moreover happy with patch. > > One nit > > you called it "create_log_dir" I would go with generic "create_dir" > If the redirect of output and renaming will be smooth, ok for head. > > > For 1.5 - I'm for a bit less invasive patch. One of the earlier > versions was more suitable. I would Discourage you from any behaviour > changes (like new error/warning messages). Please reconsider benefits > and post 1.5 patch separately. (unless it is completely same as this > one) > > tyvm! > > J. > Attached is the promised 1.5 backport patch. The rest of the coverity issues are handled exactly the same as in HEAD. Creating the log directory however has hardly changed now, with simply reduced duplicate code. No new methods or error messages. This means that the coverity issue of the mkdir results not being checked will still be present in 1.5/1.5.1 though. Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: rh1121549-1.5-backport.patch Type: text/x-patch Size: 4238 bytes Desc: not available URL: From jkang at icedtea.classpath.org Wed Jul 30 18:13:59 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Wed, 30 Jul 2014 18:13:59 +0000 Subject: /hg/release/icedtea-web-1.5: Fixed ConsoleOutputPane UI for lowe... Message-ID: changeset 8e9179035018 in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=8e9179035018 author: Jie Kang date: Wed Jul 30 14:13:51 2014 -0400 Fixed ConsoleOutputPane UI for lower resolutions. 2014-07-30 Jie Kang Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug PR1859 where part of the pane is hidden and unnaccessible when clicking Show Details. * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: diffstat: ChangeLog | 7 +++++ netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java | 13 ++++++---- 2 files changed, 15 insertions(+), 5 deletions(-) diffs (65 lines): diff -r f16daf7f68fa -r 8e9179035018 ChangeLog --- a/ChangeLog Wed Jul 30 14:05:11 2014 -0400 +++ b/ChangeLog Wed Jul 30 14:13:51 2014 -0400 @@ -1,3 +1,10 @@ +2014-07-30 Jie Kang + + Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug + PR1859 where part of the pane is hidden and unnaccessible when + clicking Show Details. + * netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java: + 2014-07-30 Jie Kang Fix to Control Panel UI for lower resolutions. Addresses bug diff -r f16daf7f68fa -r 8e9179035018 netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java --- a/netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java Wed Jul 30 14:05:11 2014 -0400 +++ b/netx/net/sourceforge/jnlp/util/logging/ConsoleOutputPane.java Wed Jul 30 14:13:51 2014 -0400 @@ -85,7 +85,9 @@ public ConsoleOutputPane(final ObservableMessagesProvider dataProvider) { model = new ConsoleOutputPaneModel(dataProvider); // Create final JComponents members + jPanel2 = new JPanel(); + jpanel2scrollpane = new JScrollPane(jPanel2); showHeaders = new JCheckBox(); showUser = new JCheckBox(); sortCopyAll = new JCheckBox(); @@ -656,12 +658,12 @@ addComponent(jScrollPane1, GroupLayout.DEFAULT_SIZE, 684, Short.MAX_VALUE). addGroup(jPanel1Layout.createSequentialGroup().addGroup(jPanel1Layout.createParallelGroup(GroupLayout.Alignment.TRAILING). addComponent(showHide, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, 672, Short.MAX_VALUE). - addComponent(jPanel2, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addContainerGap())))); + addComponent(jpanel2scrollpane, GroupLayout.Alignment.LEADING, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addContainerGap())))); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(GroupLayout.Alignment.LEADING). addGroup(GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup().addContainerGap(). addComponent(jScrollPane1, GroupLayout.DEFAULT_SIZE, 329, Short.MAX_VALUE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). - addComponent(jPanel2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). + addComponent(jpanel2scrollpane, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addPreferredGap(LayoutStyle.ComponentPlacement.RELATED). addComponent(showHide).addContainerGap())); final JMenuItem tab = new JMenuItem("insert \\t"); @@ -829,11 +831,11 @@ } private final void showHideActionPerformed(final ActionEvent evt) { - if (jPanel2.isVisible()) { - jPanel2.setVisible(false); + if (jpanel2scrollpane.isVisible()) { + jpanel2scrollpane.setVisible(false); showHide.setText(Translator.R("ButShowDetails")); } else { - jPanel2.setVisible(true); + jpanel2scrollpane.setVisible(true); showHide.setText(Translator.R("ButHideDetails")); } } @@ -922,6 +924,7 @@ private final JButton copyRich; private final JCheckBox highLight; private final JEditorPane jEditorPane1; + private final JScrollPane jpanel2scrollpane; private final JPanel jPanel2; private final JScrollPane jScrollPane1; private final JCheckBox mark; From jkang at icedtea.classpath.org Wed Jul 30 18:17:45 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Wed, 30 Jul 2014 18:17:45 +0000 Subject: /hg/release/icedtea-web-1.5: Fixed TeeOutputStream to accept mul... Message-ID: changeset 5fff68c9a9ec in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=5fff68c9a9ec author: Jie Kang date: Wed Jul 30 14:17:43 2014 -0400 Fixed TeeOutputStream to accept multi-byte encodings. Fixed TeeOutputStream to accept multi-byte encodings. * netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java: Now uses ByteArrayOutputStream instead of StringBuffer * tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java: diffstat: ChangeLog | 7 + netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java | 59 ++++--- tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java | 70 ++++++++++ 3 files changed, 109 insertions(+), 27 deletions(-) diffs (209 lines): diff -r 8e9179035018 -r 5fff68c9a9ec ChangeLog --- a/ChangeLog Wed Jul 30 14:13:51 2014 -0400 +++ b/ChangeLog Wed Jul 30 14:17:43 2014 -0400 @@ -1,3 +1,10 @@ +2014-07-30 Jie Kang + + Fixed TeeOutputStream to accept multi-byte encodings. + * netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java: Now uses + ByteArrayOutputStream instead of StringBuffer + * tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java: + 2014-07-30 Jie Kang Fix to Java ConsoleOutputPane for lower resolutions. Addresses bug diff -r 8e9179035018 -r 5fff68c9a9ec netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java --- a/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java Wed Jul 30 14:13:51 2014 -0400 +++ b/netx/net/sourceforge/jnlp/util/logging/TeeOutputStream.java Wed Jul 30 14:17:43 2014 -0400 @@ -38,14 +38,13 @@ package net.sourceforge.jnlp.util.logging; +import java.io.ByteArrayOutputStream; +import java.io.IOException; import java.io.PrintStream; -import net.sourceforge.jnlp.util.logging.JavaConsole; -import net.sourceforge.jnlp.util.logging.OutputController; + import net.sourceforge.jnlp.util.logging.OutputController.Level; -import net.sourceforge.jnlp.util.logging.SingleStreamLogger; import net.sourceforge.jnlp.util.logging.headers.Header; import net.sourceforge.jnlp.util.logging.headers.JavaMessage; -import net.sourceforge.jnlp.util.logging.headers.MessageWithHeader; /** * Behaves like the 'tee' command, sends output to both actual std stream and a @@ -55,15 +54,15 @@ // Everthing written to TeeOutputStream is written to our log too - private final StringBuffer string = new StringBuffer(); + private final ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); private final boolean isError; + private final String lineSeparator = System.getProperty("line.separator"); public TeeOutputStream(PrintStream stdStream, boolean isError) { super(stdStream); this.isError = isError; } - @Override public void close() { flushLog(); @@ -82,32 +81,25 @@ @Override public synchronized void write(byte[] b, int off, int len) { - if (b == null) { - throw new NullPointerException(); - } else if ((off < 0) || (off > b.length) || (len < 0) - || ((off + len) > b.length) || ((off + len) < 0)) { - throw new IndexOutOfBoundsException(); - } else if (len == 0) { + if (len == 0) { return; } - for (int i = 0; i < len; i++) { - appendChar(b[off + i]); - } + appendByteArray(b, off, len); super.write(b, off, len); } @Override public synchronized void write(int b) { - appendChar(b); + appendByte(b); super.write(b); } private void flushLog() { - if (string.length() <= 0 ){ - return; + String s = byteArrayOutputStream.toString(); + if (s.length() > 0) { + log(s); + byteArrayOutputStream.reset(); } - log(string.toString()); - string.setLength(0); } @Override @@ -121,21 +113,34 @@ return isError; } - private void appendChar(int b) { - if ( b <= 0 || b == '\n'){ + private void appendByte(int b) { + byteArrayOutputStream.write(b); + String s = byteArrayOutputStream.toString(); + if (s.endsWith(lineSeparator)) { flushLog(); - } else { - string.append((char)b); + } + } + + private void appendByteArray(byte[] b, int off, int len) { + byteArrayOutputStream.write(b, off, len); + String s = new String(b, off, len); + if (s.endsWith(lineSeparator)) { + flushLog(); } } private Level getlevel() { - if (isError()){ + if (isError()) { return OutputController.Level.ERROR_ALL; } else { return OutputController.Level.MESSAGE_ALL; } } - - + + //For unit testing + protected ByteArrayOutputStream getByteArrayOutputStream() throws IOException { + ByteArrayOutputStream copy = new ByteArrayOutputStream(); + copy.write(this.byteArrayOutputStream.toByteArray()); + return copy; + } } diff -r 8e9179035018 -r 5fff68c9a9ec tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/netx/unit/net/sourceforge/jnlp/util/logging/TeeOutputStreamTest.java Wed Jul 30 14:17:43 2014 -0400 @@ -0,0 +1,70 @@ +package net.sourceforge.jnlp.util.logging; + +import org.junit.Before; +import org.junit.Test; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.PrintStream; + +import static org.junit.Assert.assertTrue; + +/** + * Created by jkang on 15/07/14. + */ +public class TeeOutputStreamTest { + + private PrintStream teePrintStream; + private TeeOutputStream tos; + + + @Before + public void setup() { + teePrintStream = new PrintStream(new ByteArrayOutputStream(), true); + tos = new TeeOutputStream(teePrintStream, false); + } + @Test + public void testPrintLn() throws IOException { + String s = "Hel??????lo \n World!"; + tos.println(s); //println should be immediately flushed + assertTrue(tos.getByteArrayOutputStream().toString().isEmpty()); + } + + @Test + public void testPrint() throws IOException { + String s = "???????????????Hello!\r"; + tos.print(s); + assertTrue(tos.getByteArrayOutputStream().toString().equals(s)); + } + + @Test + public void testWriteByteArrayString() throws IOException { + String s = "He\n\n\\llo cha??o"; + tos.write(s.getBytes(), 0, s.getBytes().length); + assertTrue(tos.getByteArrayOutputStream().toString().equals(s.toString())); + } + @Test + public void testWriteByte() throws IOException { + byte b = 5; + tos.write(b); + assertTrue(byteArrayEquals(b, tos.getByteArrayOutputStream().toByteArray())); + } + + @Test + public void testFlush() throws IOException { + String s = "Hello"; + tos.print(s); + assertTrue(!tos.getByteArrayOutputStream().toString().isEmpty()); + tos.flush(); + assertTrue(tos.getByteArrayOutputStream().toString().isEmpty()); + } + + private boolean byteArrayEquals(byte b, byte[] arr) { + for (byte i : arr) { + if (b != i) { + return false; + } + } + return true; + } +} From aazores at redhat.com Wed Jul 30 18:20:12 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 30 Jul 2014 14:20:12 -0400 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D92662.8010203@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> <53D90D2C.2030000@redhat.com> <53D90F6F.9070401@redhat.com> <53D91C44.4090906@redhat.com> <53D9220C.3030701@redhat.com> <53D92662.8010203@redhat.com> Message-ID: <53D9375C.8090502@redhat.com> On 07/30/2014 01:07 PM, Jiri Vanek wrote: > On 07/30/2014 06:49 PM, Jiri Vanek wrote: >> On 07/30/2014 06:24 PM, Jiri Vanek wrote: >>> On 07/30/2014 05:29 PM, Andrew Azores wrote: >>>> On 07/30/2014 11:20 AM, Jiri Vanek wrote: >>>>> >>>>>>>> +++ >>>>>>>> b/tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPFileTest.java >>>>>>>> @@ -129,7 +129,7 @@ public class JNLPFileTest extends NoStdO >>>>>>>> /* >>>>>>>> * "sandbox" or "all-permissions" >>>>>>>> */ >>>>>>>> - manifest6.getMainAttributes().put(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), >>>>>>>> "sandbox"); >>>>>>>> + manifest6.getMainAttributes().put(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), >>>>>>>> "all-permissions"); >>>>>>> >>>>>>> Why this change??? It should not be here... >>>>>>> >>>>>>>> manifest6.getMainAttributes().put(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), >>>>>>>> "false"); >>>>>>>> manifest6.getMainAttributes().put(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), >>>>>>>> "false"); >>>>>>>> >>>>>>>> @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO >>>>>>>> Assert.assertEquals("*.comhttps://*.cz", >>>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); >>>>>>>> >>>>>>>> Assert.assertEquals("*.netftp://*uu.co.uk", >>>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); >>>>>>>> Assert.assertEquals("*.com *.net *.cz *.co.uk", >>>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); >>>>>>>> - >>>>>>>> Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >>>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>>>>>> + >>>>>>>> Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), >>>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >>>>>>> >>>>>>> So this one, >>>>>>>> Assert.assertEquals("false", >>>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); >>>>>>>> Assert.assertEquals("false", >>>>>>>> jnlpFile.getManifestsAttributes().getAttribute(new >>>>>>>> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); >>>>>>>> >>>>>>>> @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO >>>>>>>> Assert.assertEquals(true, >>>>>>>> jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>>>> URL("ftp://aa.bb.net"))); >>>>>>>> Assert.assertEquals(true, >>>>>>>> jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>>>> URL("https://x.net"))); >>>>>>>> Assert.assertEquals(false, >>>>>>>> jnlpFile.getManifestsAttributes().getCodebase().matches(new >>>>>>>> URL("http://aa.bb/com"))); >>>>>>>> - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >>>>>>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>>>>>> + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>>>> jnlpFile.getManifestsAttributes().isSandboxForced()); >>>>>>> >>>>>>> and this one. Why so? >>>>>>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>>>> jnlpFile.getManifestsAttributes().isTrustedLibrary()); >>>>>>>> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >>>>>>>> jnlpFile.getManifestsAttributes().isTrustedOnly()); >>>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> The JNLPClassLoader is determining the applet to be signed, and >>>>>> the ManifestAttributesChecker does >>>>>> not allow for JNLP applets to have a mismatch between their >>>>>> signing state and the permissions >>>>>> level >>>>>> they request (I believe this is in the spec for the Permissions >>>>>> attribute). Is the applet not >>>>>> actually signed? I looked into how the JARs are being created and >>>>>> couldn't see if they're signed >>>>>> one >>>>>> way or the other. >>>>>> >>>>> >>>>> Well thats the issue. The testing "applet" (its dummyjnlp) is not >>>>> signed. So this change sholdnot >>>>> be needed. Something different msut be wrong. >>>>> >>>>> >>>>> J. >>>>> >>>> >>>> The classloader's JarCertVerifier 'jcv' is returning true for >>>> 'jcv.isFullySigned()' on all of these >>>> tests, even without the patch applied. It falls into the >>>> 'isTriviallySigned' case. If this needs to >>>> be fixed then I think it's perhaps out of scope of this patch, no? >>>> >>>> Thanks, >>>> >>> >>> >>> ufff.. not so sure. >>> >>> Well the issue is here: >>> >>> public boolean isTriviallySigned() { >>> return getTotalJarEntries(jarSignableEntries) <= 0 >>> && certs.size() <= 0; >>> } >>> >>> >>> >>> I'm not sure if it is case of DummyJnlp only or if it hides >>> something more serious. >>> >>> >>> >>> It seems to me that once there are no jars, and no certificates, >>> then it is considered signed (like >>> class only applet?/??) If I'm correct that this return is terribly >>> wrong. Not sure if your current >>> patch made it more visible, made new hole, or just pointed to >>> something rotten already inside... >>> >> >> Looking deeper, into >> >> VerifyResult verifyJarEntryCerts >> >> >> I really think your patch disturbed something. The loop here is >> counting the entries, and is >> distinguishing among maniefested, not manifested jars. So I guess >> this is an cause. >> >> >> J. >> > > yes this wouldbe it: > (initializeResources): do not set entries in jarLocationSecurityMap until > + after prompting the user on whether to run the applet as well as > > > and - inside that - you are asking about signature satus....\ > > /me moreover brainstorming But verifyJarEntryCerts is called from verifyJar, from verifyJars, from add, and add is still done before isFullySigned is called, same as before... Like I said, even without this patch applied, isTriviallySigned is still returning true for dummy JNLPs (and so the classloader thinks they're signed). So it isn't this patch that's making the dummy JNLP show up as signed - it already is doing that in HEAD right now. AFAICT this is just "something rotten already inside" :( -- Andrew A From jkang at icedtea.classpath.org Wed Jul 30 18:22:16 2014 From: jkang at icedtea.classpath.org (jkang at icedtea.classpath.org) Date: Wed, 30 Jul 2014 18:22:16 +0000 Subject: /hg/release/icedtea-web-1.5: Added PR1856, PR1858, PR1859 fixes ... Message-ID: changeset fe3feb87ede1 in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=fe3feb87ede1 author: Jie Kang date: Wed Jul 30 14:22:13 2014 -0400 Added PR1856, PR1858, PR1859 fixes to NEWS diffstat: ChangeLog | 5 +++++ NEWS | 5 +++++ 2 files changed, 10 insertions(+), 0 deletions(-) diffs (27 lines): diff -r 5fff68c9a9ec -r fe3feb87ede1 ChangeLog --- a/ChangeLog Wed Jul 30 14:17:43 2014 -0400 +++ b/ChangeLog Wed Jul 30 14:22:13 2014 -0400 @@ -1,3 +1,8 @@ +2014-07-30 Jie Kang + + *NEWS: mentioned fixes to Java Console and itweb-settings UI. PR1856, 1857, + 1859 + 2014-07-30 Jie Kang Fixed TeeOutputStream to accept multi-byte encodings. diff -r 5fff68c9a9ec -r fe3feb87ede1 NEWS --- a/NEWS Wed Jul 30 14:17:43 2014 -0400 +++ b/NEWS Wed Jul 30 14:22:13 2014 -0400 @@ -12,6 +12,11 @@ * Improved to be able to run with any JDK * Added DE and PL localizations * Added KEY_ENABLE_MANIFEST_ATTRIBUTES_CHECK deployment property to control scan of Manifest file +* Control Panel + - PR1856: ControlPanel UI improvement for lower resolutions (800*600) +* NetX + - PR1858: Java Console accepts multi-byte encodings + - PR1859: Java Console UI improvement for lower resolutions (800*600) * Plugin - PR1743 - Intermittant deadlock in PluginRequestProcessor * PolicyEditor From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 18:41:08 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 18:41:08 +0000 Subject: [Bug 1885] hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1885 --- Comment #2 from jacques glass --- Created attachment 1132 --> http://icedtea.classpath.org/bugzilla/attachment.cgi?id=1132&action=edit fatal error SIGSEG(0xb) at pc=0xb361cddd, pid3326 other error not reported for bug 1885 -- You are receiving this mail because: You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 19:01:44 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 19:01:44 +0000 Subject: [Bug 1885] hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1885 --- Comment #3 from jacques glass --- Sorry for a new mistake this fatal error 3326 is SIGSEGV(0xb) at pc=0xb3846 ddd pid3326 tid 2984115008 -- You are receiving this mail because: You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 19:15:04 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 19:15:04 +0000 Subject: [Bug 1885] hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1885 --- Comment #4 from jacques glass --- Sorry for a new mistake this fatal error 3326 is SIGSEGV(0xb) at pc=0xb3846 ddd pid3326 tid 2984115008 -- You are receiving this mail because: You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at icedtea.classpath.org Wed Jul 30 19:16:43 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 30 Jul 2014 19:16:43 +0000 Subject: /hg/release/icedtea6-1.13: OJ39: Handle fonts with the non-canon... Message-ID: changeset b50966a1ef00 in /hg/release/icedtea6-1.13 details: http://icedtea.classpath.org/hg/release/icedtea6-1.13?cmd=changeset;node=b50966a1ef00 author: Andrew John Hughes date: Wed Jul 30 20:16:29 2014 +0100 OJ39: Handle fonts with the non-canonical processing flag set 2014-07-28 Andrew John Hughes OJ39: Handle fonts with the non-canonical processing flag set * Makefile.am: (ICEDTEA_PATCHES): Add new patch. * NEWS: Updated. * patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch: Sync LETypes.h and LayoutEngine.cpp with 7 versions in order to support fonts with the no canonical processing flag. diffstat: ChangeLog | 12 + Makefile.am | 3 +- NEWS | 3 + patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch | 347 ++++++++++ 4 files changed, 364 insertions(+), 1 deletions(-) diffs (396 lines): diff -r 25b0fd22e956 -r b50966a1ef00 ChangeLog --- a/ChangeLog Tue Jul 15 22:22:49 2014 +0100 +++ b/ChangeLog Wed Jul 30 20:16:29 2014 +0100 @@ -1,3 +1,15 @@ +2014-07-28 Andrew John Hughes + + OJ39: Handle fonts with the non-canonical + processing flag set + * Makefile.am: + (ICEDTEA_PATCHES): Add new patch. + * NEWS: Updated. + * patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch: + Sync LETypes.h and LayoutEngine.cpp with 7 versions + in order to support fonts with the no canonical + processing flag. + 2014-07-15 Andrew John Hughes * NEWS: Fix formatting issues. diff -r 25b0fd22e956 -r b50966a1ef00 Makefile.am --- a/Makefile.am Tue Jul 15 22:22:49 2014 +0100 +++ b/Makefile.am Wed Jul 30 20:16:29 2014 +0100 @@ -609,7 +609,8 @@ patches/8003992_support_6.patch \ patches/shark-drop_compile_method_arg_following_7083786.patch \ patches/openjdk/7027300-unsync_hashmap_causes_endless_loop.patch \ - patches/openjdk/7183251-netbeans_renders_text_wrong.patch + patches/openjdk/7183251-netbeans_renders_text_wrong.patch \ + patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 25b0fd22e956 -r b50966a1ef00 NEWS --- a/NEWS Tue Jul 15 22:22:49 2014 +0100 +++ b/NEWS Wed Jul 30 20:16:29 2014 +0100 @@ -14,6 +14,9 @@ New in release 1.13.5 (2014-10-YY): +* Backports + - OJ39: Handle fonts with the non-canonical processing flag set + New in release 1.13.4 (2014-07-15): * Security fixes diff -r 25b0fd22e956 -r b50966a1ef00 patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/oj639-handle_fonts_with_no_canon_flag_set.patch Wed Jul 30 20:16:29 2014 +0100 @@ -0,0 +1,347 @@ +diff -r 1492971e2155 src/share/native/sun/font/layout/LETypes.h +--- openjdk/jdk/src/share/native/sun/font/layout/LETypes.h Wed Mar 20 13:39:56 2013 -0700 ++++ openjdk/jdk/src/share/native/sun/font/layout/LETypes.h Tue Jul 29 00:40:14 2014 +0100 +@@ -25,7 +25,7 @@ + + /* + * +- * (C) Copyright IBM Corp. 1998-2010 - All Rights Reserved ++ * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved + * + */ + +@@ -107,7 +107,7 @@ + */ + typedef int8_t le_int8; + #endif +- ++ + #ifndef HAVE_LE_UINT8 + /** + * A type used for unsigned, 8-bit integers. +@@ -231,38 +231,6 @@ + #define LE_CLIENT_SHIFT 24 + + +-#ifndef LE_ASSERT_BAD_FONT +-#define LE_ASSERT_BAD_FONT 0 +-#endif +- +-#if LE_ASSERT_BAD_FONT +-#include +-#define LE_DEBUG_BAD_FONT(x) fprintf(stderr,"%s:%d: BAD FONT: %s\n", __FILE__, __LINE__, (x)); +-#else +-#define LE_DEBUG_BAD_FONT(x) +-#endif +- +-/** +- * Max value representable by a uintptr +- */ +- +-#ifndef UINT32_MAX +-#define LE_UINT32_MAX 0xFFFFFFFFU +-#else +-#define LE_UINT32_MAX UINT32_MAX +-#endif +- +-#ifndef UINTPTR_MAX +-#define LE_UINTPTR_MAX LE_UINT32_MAX +-#else +-#define LE_UINTPTR_MAX UINTPTR_MAX +-#endif +- +-/** +- * Range check for overflow +- */ +-#define LE_RANGE_CHECK(type, count, ptrfn) (( (LE_UINTPTR_MAX / sizeof(type)) < count ) ? NULL : (ptrfn)) +- + /** + * A convenience macro to get the Glyph ID part of an LEGlyphID. + * +@@ -312,20 +280,6 @@ + */ + #define LE_SET_CLIENT(gid, client) ((gid & ~LE_CLIENT_MASK) | ((client << LE_CLIENT_SHIFT) & LE_CLIENT_MASK)) + +-/** +- * \def LE_TRACE +- * @internal +- */ +-#ifndef LE_TRACE +-# define LE_TRACE 0 +-#endif +- +-#if LE_TRACE +-# include +-# define _LETRACE printf("\n%s:%d: LE: ", __FILE__, __LINE__),printf +-#else +-# define _LETRACE 0&& +-#endif + + /** + * Used to represent 16-bit Unicode code points. +@@ -379,7 +333,54 @@ + typedef struct LEPoint LEPoint; + #endif + ++/** ++ * \def LE_TRACE ++ * @internal ++ */ ++#ifndef LE_TRACE ++# define LE_TRACE 0 ++#endif + ++#if LE_TRACE ++# include ++# define _LETRACE printf("\n%s:%d: LE: ", __FILE__, __LINE__),printf ++#else ++# define _LETRACE 0&& ++#endif ++ ++#ifndef U_HIDE_INTERNAL_API ++ ++#ifndef LE_ASSERT_BAD_FONT ++#define LE_ASSERT_BAD_FONT 0 ++#endif ++ ++#if LE_ASSERT_BAD_FONT ++#include ++#define LE_DEBUG_BAD_FONT(x) fprintf(stderr,"%s:%d: BAD FONT: %s\n", __FILE__, __LINE__, (x)); ++#else ++#define LE_DEBUG_BAD_FONT(x) ++#endif ++ ++/** ++ * Max value representable by a uintptr ++ */ ++ ++#ifndef UINT32_MAX ++#define LE_UINT32_MAX 0xFFFFFFFFU ++#else ++#define LE_UINT32_MAX UINT32_MAX ++#endif ++ ++#ifndef UINTPTR_MAX ++#define LE_UINTPTR_MAX LE_UINT32_MAX ++#else ++#define LE_UINTPTR_MAX UINTPTR_MAX ++#endif ++ ++/** ++ * Range check for overflow ++ */ ++#define LE_RANGE_CHECK(type, count, ptrfn) (( (LE_UINTPTR_MAX / sizeof(type)) < count ) ? NULL : (ptrfn)) + /** + * A convenience macro to get the length of an array. + * +@@ -401,7 +402,7 @@ + * + * @internal + */ +-#define LE_NEW_ARRAY(type, count) (type *) uprv_malloc((count) * sizeof(type)) ++#define LE_NEW_ARRAY(type, count) (type *) LE_RANGE_CHECK(type,count,uprv_malloc((count) * sizeof(type))) + + /** + * Re-allocate an array of basic types. This is used to isolate the rest of +@@ -418,7 +419,52 @@ + * @internal + */ + #define LE_DELETE_ARRAY(array) uprv_free((void *) (array)) +-#endif ++#else ++/* !LE_USE_CMEMORY - Not using ICU memory - use C std lib versions */ ++ ++#include ++#include ++ ++/** ++ * A convenience macro to get the length of an array. ++ * ++ * @internal ++ */ ++#define LE_ARRAY_SIZE(array) (sizeof array / sizeof array[0]) ++ ++/** ++ * A convenience macro for copying an array. ++ * ++ * @internal ++ */ ++#define LE_ARRAY_COPY(dst, src, count) memcpy((void *) (dst), (void *) (src), (count) * sizeof (src)[0]) ++ ++/** ++ * Allocate an array of basic types. This is used to isolate the rest of ++ * the LayoutEngine code from cmemory.h. ++ * ++ * @internal ++ */ ++#define LE_NEW_ARRAY(type, count) LE_RANGE_CHECK(type,count,(type *) malloc((count) * sizeof(type))) ++ ++/** ++ * Re-allocate an array of basic types. This is used to isolate the rest of ++ * the LayoutEngine code from cmemory.h. ++ * ++ * @internal ++ */ ++#define LE_GROW_ARRAY(array, newSize) realloc((void *) (array), (newSize) * sizeof (array)[0]) ++ ++ /** ++ * Free an array of basic types. This is used to isolate the rest of ++ * the LayoutEngine code from cmemory.h. ++ * ++ * @internal ++ */ ++#define LE_DELETE_ARRAY(array) free((void *) (array)) ++ ++#endif /* LE_USE_CMEMORY */ ++#endif /* U_HIDE_INTERNAL_API */ + + /** + * A macro to construct the four-letter tags used to +@@ -581,7 +627,7 @@ + LE_RAND_FEATURE_TAG = 0x72616E64UL, /**< 'rand' */ + LE_RLIG_FEATURE_TAG = 0x726C6967UL, /**< 'rlig' */ + LE_RPHF_FEATURE_TAG = 0x72706866UL, /**< 'rphf' */ +- LE_RKRF_FEATURE_TAG = 0x726B7266UL, /**< 'rkrf' */ ++ LE_RKRF_FEATURE_TAG = 0x726B7266UL, /**< 'rkrf' */ + LE_RTBD_FEATURE_TAG = 0x72746264UL, /**< 'rtbd' */ + LE_RTLA_FEATURE_TAG = 0x72746C61UL, /**< 'rtla' */ + LE_RUBY_FEATURE_TAG = 0x72756279UL, /**< 'ruby' */ +@@ -633,6 +679,77 @@ + }; + + /** ++ * @internal ++ */ ++enum LEFeatureENUMs { ++ LE_Kerning_FEATURE_ENUM = 0, /**< Requests Kerning. Formerly LayoutEngine::kTypoFlagKern */ ++ LE_Ligatures_FEATURE_ENUM = 1, /**< Requests Ligatures. Formerly LayoutEngine::kTypoFlagLiga */ ++ LE_NoCanon_FEATURE_ENUM = 2, /**< Requests No Canonical Processing */ ++ LE_CLIG_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_DLIG_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_HLIG_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_LIGA_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_RLIG_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SMCP_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_FRAC_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_AFRC_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_ZERO_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SWSH_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_CSWH_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SALT_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_NALT_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_RUBY_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS01_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS02_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS03_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS04_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS05_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS06_FEATURE_ENUM, /**< Feature specific enum */ ++ LE_SS07_FEATURE_ENUM, /**< Feature specific enum */ ++ ++ LE_CHAR_FILTER_FEATURE_ENUM = 31, /**< Apply CharSubstitutionFilter */ ++ LE_FEATURE_ENUM_MAX = LE_CHAR_FILTER_FEATURE_ENUM ++}; ++ ++ ++/** ++ * Flags for typographic features. ++ * @internal ++ * @{ ++ */ ++#define LE_Kerning_FEATURE_FLAG (1 << LE_Kerning_FEATURE_ENUM) ++#define LE_Ligatures_FEATURE_FLAG (1 << LE_Ligatures_FEATURE_ENUM) ++#define LE_NoCanon_FEATURE_FLAG (1 << LE_NoCanon_FEATURE_ENUM) ++#define LE_CLIG_FEATURE_FLAG (1 << LE_CLIG_FEATURE_ENUM) ++#define LE_DLIG_FEATURE_FLAG (1 << LE_DLIG_FEATURE_ENUM) ++#define LE_HLIG_FEATURE_FLAG (1 << LE_HLIG_FEATURE_ENUM) ++#define LE_LIGA_FEATURE_FLAG (1 << LE_LIGA_FEATURE_ENUM) ++#define LE_RLIG_FEATURE_FLAG (1 << LE_RLIG_FEATURE_ENUM) ++#define LE_SMCP_FEATURE_FLAG (1 << LE_SMCP_FEATURE_ENUM) ++#define LE_FRAC_FEATURE_FLAG (1 << LE_FRAC_FEATURE_ENUM) ++#define LE_AFRC_FEATURE_FLAG (1 << LE_AFRC_FEATURE_ENUM) ++#define LE_ZERO_FEATURE_FLAG (1 << LE_ZERO_FEATURE_ENUM) ++#define LE_SWSH_FEATURE_FLAG (1 << LE_SWSH_FEATURE_ENUM) ++#define LE_CSWH_FEATURE_FLAG (1 << LE_CSWH_FEATURE_ENUM) ++#define LE_SALT_FEATURE_FLAG (1 << LE_SALT_FEATURE_ENUM) ++#define LE_NALT_FEATURE_FLAG (1 << LE_NALT_FEATURE_ENUM) ++#define LE_RUBY_FEATURE_FLAG (1 << LE_RUBY_FEATURE_ENUM) ++#define LE_SS01_FEATURE_FLAG (1 << LE_SS01_FEATURE_ENUM) ++#define LE_SS02_FEATURE_FLAG (1 << LE_SS02_FEATURE_ENUM) ++#define LE_SS03_FEATURE_FLAG (1 << LE_SS03_FEATURE_ENUM) ++#define LE_SS04_FEATURE_FLAG (1 << LE_SS04_FEATURE_ENUM) ++#define LE_SS05_FEATURE_FLAG (1 << LE_SS05_FEATURE_ENUM) ++#define LE_SS06_FEATURE_FLAG (1 << LE_SS06_FEATURE_ENUM) ++#define LE_SS07_FEATURE_FLAG (1 << LE_SS07_FEATURE_ENUM) ++ ++#define LE_CHAR_FILTER_FEATURE_FLAG (1 << LE_CHAR_FILTER_FEATURE_ENUM) ++/** ++ * @} ++ */ ++ ++#define LE_DEFAULT_FEATURE_FLAG (LE_Kerning_FEATURE_FLAG | LE_Ligatures_FEATURE_FLAG) /**< default features */ ++ ++/** + * Error codes returned by the LayoutEngine. + * + * @stable ICU 2.4 +@@ -674,30 +791,6 @@ + #define LE_SUCCESS(code) (U_SUCCESS((UErrorCode)code)) + #endif + +-enum LEFeatureENUMs { +- LE_Kerning_FEATURE_ENUM = 0, +- LE_Ligatures_FEATURE_ENUM = 1, +- LE_CHAR_FILTER_FEATURE_ENUM = 31, +-}; +- +- +-/** +- * Flags for typographic features. +- * @internal +- * @{ +- */ +-#define LE_Kerning_FEATURE_FLAG (1 << LE_Kerning_FEATURE_ENUM) +-#define LE_Ligatures_FEATURE_FLAG (1 << LE_Ligatures_FEATURE_ENUM) +- +-#define LE_CHAR_FILTER_FEATURE_ENUM 31 +- +-#define LE_CHAR_FILTER_FEATURE_FLAG (1 << LE_CHAR_FILTER_FEATURE_ENUM) +-/** +- * @} +- */ +- +-#define LE_DEFAULT_FEATURE_FLAG (LE_Kerning_FEATURE_FLAG | LE_Ligatures_FEATURE_FLAG) /**< default features */ +- + /** + * A convenience macro to test for the failure of a LayoutEngine call. + * +@@ -709,5 +802,3 @@ + + U_NAMESPACE_END + #endif +- +- +diff -r 1492971e2155 src/share/native/sun/font/layout/LayoutEngine.cpp +--- openjdk/jdk/src/share/native/sun/font/layout/LayoutEngine.cpp Wed Mar 20 13:39:56 2013 -0700 ++++ openjdk/jdk/src/share/native/sun/font/layout/LayoutEngine.cpp Tue Jul 29 00:40:14 2014 +0100 +@@ -32,8 +32,8 @@ + + #include "LETypes.h" + #include "LEScripts.h" ++#include "LELanguages.h" + #include "LESwaps.h" +-#include "LELanguages.h" + + #include "LayoutEngine.h" + #include "ArabicLayoutEngine.h" +@@ -252,6 +252,10 @@ + return 0; + } + ++ if ((fTypoFlags & LE_NoCanon_FEATURE_FLAG) == 0) { // no canonical processing ++ return count; ++ } ++ + LEReferenceTo canonGSUBTable(LETableReference::kStaticData, + (GlyphSubstitutionTableHeader *) CanonShaping::glyphSubstitutionTable, + CanonShaping::glyphSubstitutionTableLen); From jkang at redhat.com Wed Jul 30 19:22:08 2014 From: jkang at redhat.com (Jie Kang) Date: Wed, 30 Jul 2014 15:22:08 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] PolicyEditor Help Menu Dialog In-Reply-To: <1268344973.10083294.1405704471096.JavaMail.zimbra@redhat.com> References: <68382570.10039571.1405698817132.JavaMail.zimbra@redhat.com> <53C94894.4040408@gmx.de> <1268344973.10083294.1405704471096.JavaMail.zimbra@redhat.com> Message-ID: <223592026.14599547.1406748128277.JavaMail.zimbra@redhat.com> Hello, > Hello, > > > Patch file is missing... ;-) > > Yes, sorry and thanks for noticing. > > Thank you, > Lukasz Dracz > Probably intellij auto-imports again: +import javax.swing.*; +import javax.swing.border.EmptyBorder; +import javax.swing.event.HyperlinkEvent; +import javax.swing.event.HyperlinkListener; +import javax.swing.text.html.HTMLEditorKit; +import java.awt.*; Please fix them :D Apart from that, patch looks fine to me. Regards, -- Jie Kang From ldracz at redhat.com Wed Jul 30 19:43:42 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Wed, 30 Jul 2014 15:43:42 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] "File - New" In-Reply-To: <53CD290D.4030703@redhat.com> References: <53CD290D.4030703@redhat.com> Message-ID: <1703495598.14610405.1406749422123.JavaMail.zimbra@redhat.com> > Hi, Hello, > This patch adds "File - New" functionality to PolicyEditor, so a new > policy file can be created/edited properly. Previously the editor would > either have to be relaunched, or the current file could be saved and > then the contents changed for the new file and "Save As" used to put it > in the correct location. > > This patch also makes the window title dynamic, so that it shows the > currently open file's path (if any), and also an asterisk if any changes > have been made in the editor since the file was opened or last saved. Looks good +1. On an unrelated note, I noticed that Add new the second word is not capitalized but in other usages such as Save As or Custom Permissions, the second word starts with a capital, so perhaps the new should be capital too and possibly Copy Url to clipboard, the clipboard could also be capitalized. >From your patch, the way you handled the title is great. - performingIO = true; + setPerformingIO(true); Good catch to use the method instead. Anyways looks good and works well. > Andrew A Thank you, Lukasz Dracz From ldracz at redhat.com Wed Jul 30 19:58:16 2014 From: ldracz at redhat.com (Lukasz Dracz) Date: Wed, 30 Jul 2014 15:58:16 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] PolicyEditor Help Menu Dialog In-Reply-To: <223592026.14599547.1406748128277.JavaMail.zimbra@redhat.com> References: <68382570.10039571.1405698817132.JavaMail.zimbra@redhat.com> <53C94894.4040408@gmx.de> <1268344973.10083294.1405704471096.JavaMail.zimbra@redhat.com> <223592026.14599547.1406748128277.JavaMail.zimbra@redhat.com> Message-ID: <1804180099.14618435.1406750296664.JavaMail.zimbra@redhat.com> Hello, > Probably intellij auto-imports again: > > +import javax.swing.*; > +import javax.swing.border.EmptyBorder; > +import javax.swing.event.HyperlinkEvent; > +import javax.swing.event.HyperlinkListener; > +import javax.swing.text.html.HTMLEditorKit; > +import java.awt.*; > > Please fix them :D Ah yes haha, sorry I missed this. Fixed :) > Apart from that, patch looks fine to me. Thank you, Lukasz Dracz -------------- next part -------------- A non-text attachment was scrubbed... Name: AboutDialog-7.patch Type: text/x-patch Size: 11589 bytes Desc: not available URL: From jkang at redhat.com Wed Jul 30 20:01:37 2014 From: jkang at redhat.com (Jie Kang) Date: Wed, 30 Jul 2014 16:01:37 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] "File - New" In-Reply-To: <53CD290D.4030703@redhat.com> References: <53CD290D.4030703@redhat.com> Message-ID: <1459623911.14620055.1406750497703.JavaMail.zimbra@redhat.com> Hello, > Hi, > > This patch adds "File - New" functionality to PolicyEditor, so a new > policy file can be created/edited properly. Previously the editor would > either have to be relaunched, or the current file could be saved and > then the contents changed for the new file and "Save As" used to put it > in the correct location. > I would add ellipses to the other names that open new dialogs. E.g. 'Open...', the ellipses could also be applied to 'Add new'., etc. > This patch also makes the window title dynamic, so that it shows the > currently open file's path (if any), and also an asterisk if any changes > have been made in the editor since the file was opened or last saved. Nice :D >From my testing, removing a codebase doesn't cause changesMade to be set to true. e.g. add codebase, save, remove codebase : state should be changesMade=true, but no * is shown in UI. I notice that if you check something permission it will be set to * to show changes made, but if you uncheck it, it remains as *. This functionality differs from other programs I think. This is probably because the change-checking mechanism doesn't save the base-state and compare with it to see changes made. Maybe for a future patch this could be implemented. > > Thanks, > > -- > Andrew A > > Regards, -- Jie Kang From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 20:11:47 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 20:11:47 +0000 Subject: [Bug 1885] hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1885 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |gnu.andrew at redhat.com, | |unassigned at icedtea.classpat | |h.org Component|VisualVM |IcedTea Version|unspecified |7-hg Assignee|unassigned at icedtea.classpat |gnu.andrew at redhat.com |h.org | Product|VisualVM Harness |IcedTea -- You are receiving this mail because: You are on the CC list for the bug. You are the assignee for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 20:12:16 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 20:12:16 +0000 Subject: [Bug 1885] hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1885 Andrew John Hughes changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #1132|1 |0 is patch| | -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Wed Jul 30 20:13:34 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 30 Jul 2014 20:13:34 +0000 Subject: [Bug 1885] hs_err_pid 2191/2762/2783/3082/3358/3577/4021.log In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1885 --- Comment #5 from Andrew John Hughes --- What version of IcedTea is being used here? How do we reproduce 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: From aazores at redhat.com Wed Jul 30 20:14:36 2014 From: aazores at redhat.com (Andrew Azores) Date: Wed, 30 Jul 2014 16:14:36 -0400 Subject: [rfc][icedtea-web][policyeditor] "File - New" In-Reply-To: <1459623911.14620055.1406750497703.JavaMail.zimbra@redhat.com> References: <53CD290D.4030703@redhat.com> <1459623911.14620055.1406750497703.JavaMail.zimbra@redhat.com> Message-ID: <53D9522C.2050002@redhat.com> On 07/30/2014 04:01 PM, Jie Kang wrote: > Hello, > >> Hi, >> >> This patch adds "File - New" functionality to PolicyEditor, so a new >> policy file can be created/edited properly. Previously the editor would >> either have to be relaunched, or the current file could be saved and >> then the contents changed for the new file and "Save As" used to put it >> in the correct location. >> > > I would add ellipses to the other names that open new dialogs. E.g. 'Open...', the ellipses could also be applied to 'Add new'., etc. > Done, thanks. > >> This patch also makes the window title dynamic, so that it shows the >> currently open file's path (if any), and also an asterisk if any changes >> have been made in the editor since the file was opened or last saved. > > Nice :D > > From my testing, removing a codebase doesn't cause changesMade to be set to true. e.g. add codebase, save, remove codebase : state should be changesMade=true, but no * is shown in UI. > Nice catch, fixed in the attached patch. > > I notice that if you check something permission it will be set to * to show changes made, but if you uncheck it, it remains as *. This functionality differs from other programs I think. This is probably because the change-checking mechanism doesn't save the base-state and compare with it to see changes made. Maybe for a future patch this could be implemented. > Yea, the changes-made checking is just so primitive right now that this isn't really feasible. That feature would probably be extremely easy to implement if PolicyEditor were to ever be given undo/redo support, for example, but otherwise I think it'll just stay how it is. > > > >> >> Thanks, >> >> -- >> Andrew A >> >> > > Regards, > > Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: policyeditor-file-new-2.patch Type: text/x-patch Size: 15284 bytes Desc: not available URL: From jkang at redhat.com Wed Jul 30 20:40:20 2014 From: jkang at redhat.com (Jie Kang) Date: Wed, 30 Jul 2014 16:40:20 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] Copy Paste refactored to use System Clipboard In-Reply-To: <1697347631.9705334.1405629144240.JavaMail.zimbra@redhat.com> References: <1697347631.9705334.1405629144240.JavaMail.zimbra@redhat.com> Message-ID: <702723432.14638780.1406752820043.JavaMail.zimbra@redhat.com> ----- Original Message ----- > Hello, > > I have been working with Andrew A on a patch that refactors the copy and > paste functionality to use the system clipboard. We had to refactor the > parsing to allow it take in Strings instead of requiring a file. > 2014-07-14 Andrew Azores > Lukasz Dracz > * netx/net/sourceforge/jnlp/resources/Messages.properties > (PEClipboardError, PEInvalidPolicy, PEClipboardAccessError): added > * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java > (renameCodebaseButtonAction, copyCodebaseButtonAction, > pasteCodebaseButtonAction): > changed functionality to call methods from PolicyEditorController > that use system clipboard > * > netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorController.java > (addPolicyEntry): added > (openAndParsePolicyFile): throws new exception InvalidPolicyException > (copyCodebaseToClipboard, getClipboardContentAsString, > getPolicyEntryFromClipboard, > getCodebaseFromClipboard, getPermissionsFromClipboard, > getCustomPermissionsFromClipboard): new methods > * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEntry.java > (getCodebase, getPermissions, getCustomPermissions, fromString, > validatePolicy): new overloaded methods > * netx/net/sourceforge/jnlp/security/policyeditor/PolicyFileModel.java > all methods made synchronized (openAndParsePolicyFile): extracted and > modified > parsing logic > (parsePolicyString): new method > (clearPermissions): also clears Custom Permissions now > * > netx/net/sourceforge/jnlp/security/policyeditor/InvalidPolicyException.java: > added new exception > * netx/net/sourceforge/jnlp/security/policyeditor/CustomPermission.java > (equals, hashCode): Override these methods to be able to compare custom > permissions. > New constructors for custom permission, one of the constructors takes > only PermissionType, PermissionTarget > and the other takes an additional PermissionActions > * > tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/CustomPermissionTest.java, > * > tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorParsingTest.java, > * > tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorTest.java, > * > tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEditorControllerTest.java, > * > tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyEntryTest.java, > * > tests/netx/unit/net/sourceforge/jnlp/security/policyeditor/PolicyFileModelTest.java: > added new unit tests > > Thank you, > Lukasz Dracz Hello, Nice patch but a few things: I would make the error message for failing to paste a little more descriptive. Right now I see "Could not read policy entry for codebase null". I suggest something like "Paste failed: System clipboard does not contain a valid codebase entry" Or something that let's the user know that the paste failed because they are trying to copy something that isn't acceptable. Also maybe for another patch, I would make it possible to paste one codebases' properties to another. Atm if you try to paste to a codebase that already exists, nothing happens and the dialog reappears. I think it would be good to instead have it override the properties of the existing codebase. Or have a selection to allow overriding. When doing user testing, I repeatedly attempted to paste an invalid entry from the system clipboard. When closing the program there some exceptions spouted out which may or may not be an issue. I have attached the logs. It seems that each failure to paste from system clipboard does not fully complete until the policyeditor closes at which point it spews out it's exceptions. Something like that :/ Regards, -- Jie Kang -------------- next part -------------- A non-text attachment was scrubbed... Name: clipboard.log Type: text/x-log Size: 9515 bytes Desc: not available URL: From jvanek at redhat.com Thu Jul 31 09:14:50 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 31 Jul 2014 11:14:50 +0200 Subject: [rfc][icedtea-web] C++-side small fixes (RH 1121549) In-Reply-To: <53D934B2.3000403@redhat.com> References: <53CD1E87.5080102@redhat.com> <53CE2D43.9010109@redhat.com> <53CE7EA4.8080906@redhat.com> <53D114C8.1080407@redhat.com> <53D259B5.9090402@redhat.com> <53D668C7.3060901@redhat.com> <53D6C65A.4030101@redhat.com> <53D8F76F.1020604@redhat.com> <53D934B2.3000403@redhat.com> Message-ID: <53DA090A.9040908@redhat.com> On 07/30/2014 08:08 PM, Andrew Azores wrote: > On 07/30/2014 09:47 AM, Jiri Vanek wrote: >> On 07/28/2014 11:53 PM, Andrew Azores wrote: >>> On 07/28/2014 11:14 AM, Jiri Vanek wrote: >>>> >>>>> diff --git a/plugin/icedteanp/IcedTeaPluginUtils.cc b/plugin/icedteanp/IcedTeaPluginUtils.cc >>>>> --- a/plugin/icedteanp/IcedTeaPluginUtils.cc >>>>> +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc >>>>> @@ -59,6 +59,19 @@ >>>>> /* Plugin async call queue */ >>>>> static std::vector< PluginThreadCall* >* pendingPluginThreadRequests = new std::vector< >>>>> PluginThreadCall* >(); >>>>> >>>>> +int >>>>> +IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>>>> +{ >>>>> + if (!IcedTeaPluginUtilities::file_exists(dir)) >>>>> + { >>>>> + if (!g_mkdir(dir.c_str(), 755)) >>>>> + { >>>>> + return errno; >>>>> + } >>>>> + } >>>>> + return 0; >>>>> +} >>>>> + >>>> ... >>>> > + int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); >>>> > + if (!parentErr){ >>>> > + PLUGIN_ERROR("FATAL: Failed to create IcedTea-Web config directory %s: %s\n", >>>> r1.c_str(), strerror(parentErr)); >>>> > + return NULL; >>>> } >>>> >>>> When you are her, you should also verify (if it exists then) whether it is directory or file. If >>>> File, return failure. >>>> >>>> I would discourage you from returning errno. I would say Print error messages here, and return >>>> true/false. >>>> >>>> true/false is the only indicator you need if you need to decide wheter continue or not. >>>> >>>> And I would suggest continue at all cost, but print out a warning that it probably will nto work. >>>> >>>> So I would go with: >>>> >>>> bool IcedTeaPluginUtilities::createLogDirectory(std::string dir) >>>> { >>>> if (!file_exists(dir) ) >>>> { >>>> if (!g_mkdir(dir.c_str(), 755)) >>>> int x=errno >>>> echo "warning, creation of $dir failed. Itw need this direcotry to work. You can >>>> expect failre later. reason: "error_toString(x) >>>> //always save errorn >>>> return false; >>>> } >>>> } else { >>>> if (!is_dir(dir)){ >>>> echo "warning, cannot create $dir becasue there is already an file" >>>> return false >>>> } >>>> } >>>> return true; >>>> //feel free to add some debug only outputs here like exists, continuing, is dir, continuing... >>>> } >>>> int parentErr = IcedTeaPluginUtilities::createLogDirectory(r1); >>>> // warnings have been printed >>>> // no need to die, trying to continue >>>> >>>> >>>> >>>> >>>> Also.. :-/ .. your patch kills ITW at my machine >>>> >>>> [unknown user][ITW-C-PLUGIN][MESSAGE_DEBUG][Mon Jul 28 16:11:03 CEST >>>> 2014][/home/jvanek/hg/icedtea-web/plugin/icedteanp/IcedTeaParseProperties.cc:141] ITNPP Thread# >>>> 139757752895360, gthread 0x7f1bd2614120: FATAL: Failed to create IcedTea-Web config directory >>>> /home/jvanek/.config/icedtea-web: Success >>>> >>>> and firefox dies. Please run your code on soem usecases before posting. >>>> >>>> Well the /home/jvanek/.config/icedtea-web do exist at my pc - so somethig is wrong :) >>> >>> :S I could swear it worked for me, not sure what happened there. Maybe I made a change and failed to >>> test that one before sending :/ >>> >>>> >>>> >>>> My reason to try continuing is simple - There may be cases, when .confing/itw may be some special >>>> device - well nearly impossible, but still possible. >>>> >>>> >>>> Another note - sinc you created new method - please unittest it in cpp-unit-tests. >>>> >>>> >>>> And positive note at the end. I run covescan on your patch and not sure what to read - >>>> http://cov01.lab.eng.brq.redhat.com/covscanhub/task/13258/ :)) >>>> J. >>>> >>>> >>>> >>> >>> New patch has tests added and some style cleanup done, and works again (hopefully - seems to work >>> fine for me and unit tests are a little reassuring). >>> >>> Thanks, >>> >> >> Is this output of test expected? (yes, the code is doing it :) , but should not be :) ) >> Passed: is_directory >> WARNING: Needed to create directory /tmp/fileSGg0Vp but there is already a file of the same name >> at this location. >> WARNING: Failed to create new directory /tmp/filecvV1sH/test. Reason: Permission denied >> Passed: create_log_dir >> >> >> I mean the warnings. I thing they are disturbing the output and should not be here. >> >> I think there are exampels in ccp tests, how to redirect the output. May you try them? >> >> Except this I'm moreover happy with patch. >> >> One nit >> >> you called it "create_log_dir" I would go with generic "create_dir" If the redirect of output and >> renaming will be smooth, ok for head. >> >> >> For 1.5 - I'm for a bit less invasive patch. One of the earlier versions was more suitable. I >> would Discourage you from any behaviour changes (like new error/warning messages). Please >> reconsider benefits and post 1.5 patch separately. (unless it is completely same as this one) >> >> tyvm! >> >> J. >> > > Attached is the promised 1.5 backport patch. The rest of the coverity issues are handled exactly the > same as in HEAD. Creating the log directory however has hardly changed now, with simply reduced > duplicate code. No new methods or error messages. This means that the coverity issue of the mkdir > results not being checked will still be present in 1.5/1.5.1 though. > I would check the mkdir. I would go with x = g_mkdir(s) if (!x){ log_debug_only(creation of dir s failed) } Nothing more. Maye you can have simple g_mkdir_checked function to avoid duplications. If yo are ok with it then ok for 1.5 agter this change. +- do as you wish. The patch is ok. J. From jvanek at redhat.com Thu Jul 31 09:32:13 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 31 Jul 2014 11:32:13 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53D9375C.8090502@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> <53D90D2C.2030000@redhat.com> <53D90F6F.9070401@redhat.com> <53D91C44.4090906@redhat.com> <53D9220C.3030701@redhat.com> <53D92662.8010203@redhat.com> <53D9375C.8090502@redhat.com> Message-ID: <53DA0D1D.40205@redhat.com> > > But verifyJarEntryCerts is called from verifyJar, from verifyJars, from add, and add is still done > before isFullySigned is called, same as before... > > Like I said, even without this patch applied, isTriviallySigned is still returning true for dummy > JNLPs (and so the classloader thinks they're signed). So it isn't this patch that's making the dummy > JNLP show up as signed - it already is doing that in HEAD right now. AFAICT this is just "something > rotten already inside" :( > How does this behave in 1.5? I bet it is same. How important is to backport this to 1.5? I would be hesitating with it now. I'm now ok with your patch for ehad, but pelase keep original lines from discussed hunk only commented out instead of deleted, with comment why. Something like thjis, although not the best shot: - manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); +//[1] manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); + manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "all-permissions"); manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); manifest6.getMainAttributes().put(new Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO Assert.assertEquals("*.com https://*.cz", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); Assert.assertEquals("*.net ftp://*uu.co.uk", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); Assert.assertEquals("*.com *.net *.cz *.co.uk", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); - Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); +//[1] Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); + Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new URL("ftp://aa.bb.net"))); Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new URL("https://x.net"))); Assert.assertEquals(false, jnlpFile.getManifestsAttributes().getCodebase().matches(new URL("http://aa.bb/com"))); - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, jnlpFile.getManifestsAttributes().isSandboxForced()); +//[1] Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, jnlpFile.getManifestsAttributes().isSandboxForced()); + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, jnlpFile.getManifestsAttributes().isSandboxForced()); Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, jnlpFile.getManifestsAttributes().isTrustedLibrary()); Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, jnlpFile.getManifestsAttributes().isTrustedOnly()); + //[1]:TODO: the commented out liens are causing failures after patch blahblahurl was added. IT is probbaly issue in dummyjnlp file, but the isTriviallySigned is returning true, although it have only unsigned jars inisde. J. From jvanek at redhat.com Thu Jul 31 11:57:55 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 31 Jul 2014 13:57:55 +0200 Subject: [rfc][icedtea-web] prevent CCE from plugin appeltviewer Message-ID: <53DA2F43.4090602@redhat.com> ok for head and 1.5 ? J. -------------- next part -------------- A non-text attachment was scrubbed... Name: did_instanceof.patch Type: text/x-patch Size: 1779 bytes Desc: not available URL: From aazores at icedtea.classpath.org Thu Jul 31 13:15:42 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Thu, 31 Jul 2014 13:15:42 +0000 Subject: /hg/icedtea-web: ChangeLog formatting fix Message-ID: changeset 51d839dd6052 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=51d839dd6052 author: Andrew Azores date: Thu Jul 31 09:15:31 2014 -0400 ChangeLog formatting fix diffstat: ChangeLog | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diffs (16 lines): diff -r c754f4b58ac5 -r 51d839dd6052 ChangeLog --- a/ChangeLog Wed Jul 30 16:30:56 2014 -0400 +++ b/ChangeLog Thu Jul 31 09:15:31 2014 -0400 @@ -46,9 +46,9 @@ * plugin/icedteanp/IcedTeaPluginUtils.h: same * plugin/icedteanp/IcedTeaScriptablePluginObject.cc (setProperty): do not erroneously redeclare java_result - * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc: (is_directory, - create_dir) new tests. (file_exists) added assertion that directories - satisfy file_exists + * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc + (is_directory, create_dir): new tests. + (file_exists): added assertion that directories satisfy file_exists 2014-07-28 Jie Kang From aazores at icedtea.classpath.org Thu Jul 31 13:20:31 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Thu, 31 Jul 2014 13:20:31 +0000 Subject: /hg/release/icedtea-web-1.5: 3 new changesets Message-ID: changeset cc873afa26d1 in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=cc873afa26d1 author: Andrew Azores date: Thu Jul 31 09:16:32 2014 -0400 Fixes for coverity issues discovered in RH1121549 2014-07-30 Andrew Azores Fixes for coverity issues discovered in RH1121549 * plugin/icedteanp/IcedTeaNPPlugin.cc (ITNP_New): print error message and return error if JVM fails to start. (NP_Initialize): fix missing argument to PLUGIN_ERROR when unable to create data directory * plugin/icedteanp/IcedTeaParseProperties.cc (get_log_dir): refactored to reduce duplicate code, and added debug warning messages * plugin/icedteanp/IcedTeaScriptablePluginObject.cc (setProperty): do not erroneously redeclare java_result * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc (file_exists): added assertion that directories satisfy file_exist changeset 62f173f7efa3 in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=62f173f7efa3 author: Andrew Azores date: Thu Jul 31 09:17:43 2014 -0400 Fix date in ChangeLog changeset 39631aab56cf in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=39631aab56cf author: Andrew Azores date: Thu Jul 31 09:19:59 2014 -0400 Fix ChangeLog formatting diffstat: ChangeLog | 18 +++++++- NEWS | 1 + plugin/icedteanp/IcedTeaNPPlugin.cc | 6 ++- plugin/icedteanp/IcedTeaParseProperties.cc | 48 +++++++++++----------- plugin/icedteanp/IcedTeaParseProperties.h | 1 + plugin/icedteanp/IcedTeaScriptablePluginObject.cc | 2 +- tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc | 6 ++ 7 files changed, 54 insertions(+), 28 deletions(-) diffs (167 lines): diff -r fe3feb87ede1 -r 39631aab56cf ChangeLog --- a/ChangeLog Wed Jul 30 14:22:13 2014 -0400 +++ b/ChangeLog Thu Jul 31 09:19:59 2014 -0400 @@ -1,7 +1,21 @@ +2014-07-31 Andrew Azores + + Fixes for coverity issues discovered in RH1121549 + * plugin/icedteanp/IcedTeaNPPlugin.cc (ITNP_New): print error message and + return error if JVM fails to start. + (NP_Initialize): fix missing argument to PLUGIN_ERROR when unable to + create data directory + * plugin/icedteanp/IcedTeaParseProperties.cc (get_log_dir): refactored to + reduce duplicate code, and added debug warning messages + * plugin/icedteanp/IcedTeaScriptablePluginObject.cc (setProperty): do not + erroneously redeclare java_result + * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc (file_exists): added + assertion that directories satisfy file_exist + 2014-07-30 Jie Kang - *NEWS: mentioned fixes to Java Console and itweb-settings UI. PR1856, 1857, - 1859 + *NEWS: mentioned fixes to Java Console and itweb-settings UI. PR1856, 1857, + 1859 2014-07-30 Jie Kang diff -r fe3feb87ede1 -r 39631aab56cf NEWS --- a/NEWS Wed Jul 30 14:22:13 2014 -0400 +++ b/NEWS Thu Jul 31 09:19:59 2014 -0400 @@ -19,6 +19,7 @@ - PR1859: Java Console UI improvement for lower resolutions (800*600) * Plugin - PR1743 - Intermittant deadlock in PluginRequestProcessor + - RH1121549: coverity defects * PolicyEditor - codebases without permissions assigned save to file anyway (and re-appear on next open) - PR1776: NullPointer on save-and-exit diff -r fe3feb87ede1 -r 39631aab56cf plugin/icedteanp/IcedTeaNPPlugin.cc --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Wed Jul 30 14:22:13 2014 -0400 +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Thu Jul 31 09:19:59 2014 -0400 @@ -373,6 +373,10 @@ // start the jvm if needed NPError startup_error = start_jvm_if_needed(); + if (startup_error != NPERR_NO_ERROR) { + PLUGIN_ERROR ("Failed to start JVM\n"); + return startup_error; + } // Initialize data->instance_id. // @@ -2025,7 +2029,7 @@ NPError np_error = initialize_data_directory(); if (np_error != NPERR_NO_ERROR) { - PLUGIN_ERROR("Unable create data directory %s\n"); + PLUGIN_ERROR("Unable to create data directory %s\n", data_directory.c_str()); return np_error; } diff -r fe3feb87ede1 -r 39631aab56cf plugin/icedteanp/IcedTeaParseProperties.cc --- a/plugin/icedteanp/IcedTeaParseProperties.cc Wed Jul 30 14:22:13 2014 -0400 +++ b/plugin/icedteanp/IcedTeaParseProperties.cc Thu Jul 31 09:19:59 2014 -0400 @@ -123,39 +123,39 @@ return string(mypasswd->pw_dir)+"/.config/icedtea-web/"+default_file_ITW_deploy_props_name; } -string get_log_dir(){ +string get_log_dir(){ string value; if (!read_deploy_property_value("deployment.user.logdir", value)) { - int myuid = getuid(); - struct passwd *mypasswd = getpwuid(myuid); - // try pre 1.5 file location + string config_dir; if (getenv ("XDG_CONFIG_HOME") != NULL){ - string r1= string(getenv ("XDG_CONFIG_HOME"))+"/icedtea-web"; - string r2 = r1+"/"+default_itw_log_dir_name; - if (!IcedTeaPluginUtilities::file_exists(r1)){ - g_mkdir(r1.c_str(), 755); - } - if (!IcedTeaPluginUtilities::file_exists(r2)){ - g_mkdir(r2.c_str(), 755); - } - return r2; + config_dir = string(getenv("XDG_CONFIG_HOME")); + } else { + int myuid = getuid(); + struct passwd *mypasswd = getpwuid(myuid); + config_dir = string(mypasswd->pw_dir) + "/.config"; } - //if not then use default - string r1 = string(mypasswd->pw_dir)+"/.config/icedtea-web"; - string r2 = r1+"/"+default_itw_log_dir_name; - if (!IcedTeaPluginUtilities::file_exists(r1)){ - g_mkdir(r1.c_str(), 755); - } - if (!IcedTeaPluginUtilities::file_exists(r2)){ - g_mkdir(r2.c_str(), 755); - } - return r2; + string itw_dir = config_dir+"/icedtea-web"; + string log_dir = itw_dir+"/"+default_itw_log_dir_name; + mkdir_checked(itw_dir); + mkdir_checked(log_dir); + return log_dir; } return value; } +void mkdir_checked(string dir){ + if (!IcedTeaPluginUtilities::file_exists(dir)) + { + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 + int stat = g_mkdir(dir.c_str(), PERMISSIONS_MASK); + if (stat != 0) + { + PLUGIN_DEBUG("WARNING: Creation of directory %s failed: %s\n", dir.c_str(), strerror(errno)); + } + } +} -string main_properties_file(){ +string main_properties_file(){ return "/etc/.java/deployment/"+default_file_ITW_deploy_props_name; } diff -r fe3feb87ede1 -r 39631aab56cf plugin/icedteanp/IcedTeaParseProperties.h --- a/plugin/icedteanp/IcedTeaParseProperties.h Wed Jul 30 14:22:13 2014 -0400 +++ b/plugin/icedteanp/IcedTeaParseProperties.h Thu Jul 31 09:19:59 2014 -0400 @@ -45,6 +45,7 @@ //public api std::string user_properties_file(); std::string get_log_dir(); +void mkdir_checked(std::string); 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); diff -r fe3feb87ede1 -r 39631aab56cf plugin/icedteanp/IcedTeaScriptablePluginObject.cc --- a/plugin/icedteanp/IcedTeaScriptablePluginObject.cc Wed Jul 30 14:22:13 2014 -0400 +++ b/plugin/icedteanp/IcedTeaScriptablePluginObject.cc Thu Jul 31 09:19:59 2014 -0400 @@ -704,7 +704,7 @@ browser_functions.intfromidentifier(name_id) >= 0) // else if array and requesting index { - JavaResultData* java_result = java_request.getArrayLength(instance_id); + java_result = java_request.getArrayLength(instance_id); if (java_result->error_occurred) { PLUGIN_ERROR("ERROR: Couldn't fetch array length\n"); diff -r fe3feb87ede1 -r 39631aab56cf tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc --- a/tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc Wed Jul 30 14:22:13 2014 -0400 +++ b/tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc Thu Jul 31 09:19:59 2014 -0400 @@ -135,6 +135,12 @@ remove(f1.c_str()); bool b = IcedTeaPluginUtilities::file_exists(f1); CHECK_EQUAL(b, false); + + std::string dir = tmpnam(NULL); + const int PERMISSIONS_MASK = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; // 0755 + bool created_dir = g_mkdir(dir.c_str(), PERMISSIONS_MASK); + CHECK_EQUAL(created_dir, false); + CHECK_EQUAL(IcedTeaPluginUtilities::file_exists(dir), true); } From jkang at redhat.com Thu Jul 31 13:36:48 2014 From: jkang at redhat.com (Jie Kang) Date: Thu, 31 Jul 2014 09:36:48 -0400 (EDT) Subject: [rfc][icedtea-web] prevent CCE from plugin appeltviewer In-Reply-To: <53DA2F43.4090602@redhat.com> References: <53DA2F43.4090602@redhat.com> Message-ID: <1490535152.14893778.1406813808772.JavaMail.zimbra@redhat.com> > > > ok for head and 1.5 ? > > > J. > Hello, Good catch! I think now that we check for CCE, we should output something to let us know that the CCE occurred since behaviour is affected. Also for the following code: + if (panel.getAppletClassLoader() instanceof JNLPClassLoader) { + JNLPClassLoader loader = (JNLPClassLoader) panel.getAppletClassLoader(); - URL localURL = null; - if (loader.resourceAvailableLocally(resourceName)) { - url = loader.getResource(resourceName); + URL localURL = null; + if (loader.resourceAvailableLocally(resourceName)) { + url = loader.getResource(resourceName); + } + + url = localURL != null ? localURL : url; } - - url = localURL != null ? localURL : url; I think that the behaviour of the function changed a little. If a CCE occurs, the AppletImageRef returned is that of url that includes codebase. Is this valid? I think if CCE occurs then we should return null. Regards, -- Jie Kang From aazores at redhat.com Thu Jul 31 13:37:04 2014 From: aazores at redhat.com (Andrew Azores) Date: Thu, 31 Jul 2014 09:37:04 -0400 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53DA0D1D.40205@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> <53D90D2C.2030000@redhat.com> <53D90F6F.9070401@redhat.com> <53D91C44.4090906@redhat.com> <53D9220C.3030701@redhat.com> <53D92662.8010203@redhat.com> <53D9375C.8090502@redhat.com> <53DA0D1D.40205@redhat.com> Message-ID: <53DA4680.3080300@redhat.com> On 07/31/2014 05:32 AM, Jiri Vanek wrote: >> >> But verifyJarEntryCerts is called from verifyJar, from verifyJars, >> from add, and add is still done >> before isFullySigned is called, same as before... >> >> Like I said, even without this patch applied, isTriviallySigned is >> still returning true for dummy >> JNLPs (and so the classloader thinks they're signed). So it isn't >> this patch that's making the dummy >> JNLP show up as signed - it already is doing that in HEAD right now. >> AFAICT this is just "something >> rotten already inside" :( >> > > > How does this behave in 1.5? I bet it is same. Yes, it's the same in 1.5, I just tested it now. > > How important is to backport this to 1.5? I would be hesitating with > it now. 1.5 still has the "Sandbox button" workaround anyway. I think this is a big enough patch that it warrants being a 1.6 feature ;) > > I'm now ok with your patch for ehad, but pelase keep original lines > from discussed hunk only commented out instead of deleted, with > comment why. Something like thjis, although not the best shot: > Sure thing. > > - manifest6.getMainAttributes().put(new > Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); > +//[1] manifest6.getMainAttributes().put(new > Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); > + manifest6.getMainAttributes().put(new > Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), > "all-permissions"); > manifest6.getMainAttributes().put(new > Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); > manifest6.getMainAttributes().put(new > Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); > > @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO > Assert.assertEquals("*.com https://*.cz", > jnlpFile.getManifestsAttributes().getAttribute(new > Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); > Assert.assertEquals("*.net ftp://*uu.co.uk", > jnlpFile.getManifestsAttributes().getAttribute(new > Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); > Assert.assertEquals("*.com *.net *.cz *.co.uk", > jnlpFile.getManifestsAttributes().getAttribute(new > Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); > - > Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), > jnlpFile.getManifestsAttributes().getAttribute(new > Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); > +//[1] > Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), > jnlpFile.getManifestsAttributes().getAttribute(new > Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); > + > Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), > jnlpFile.getManifestsAttributes().getAttribute(new > Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); > Assert.assertEquals("false", > jnlpFile.getManifestsAttributes().getAttribute(new > Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); > Assert.assertEquals("false", > jnlpFile.getManifestsAttributes().getAttribute(new > Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); > > @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO > Assert.assertEquals(true, > jnlpFile.getManifestsAttributes().getCodebase().matches(new > URL("ftp://aa.bb.net"))); > Assert.assertEquals(true, > jnlpFile.getManifestsAttributes().getCodebase().matches(new > URL("https://x.net"))); > Assert.assertEquals(false, > jnlpFile.getManifestsAttributes().getCodebase().matches(new > URL("http://aa.bb/com"))); > - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, > jnlpFile.getManifestsAttributes().isSandboxForced()); > +//[1] Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, > jnlpFile.getManifestsAttributes().isSandboxForced()); > + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, > jnlpFile.getManifestsAttributes().isSandboxForced()); > Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, > jnlpFile.getManifestsAttributes().isTrustedLibrary()); > Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, > jnlpFile.getManifestsAttributes().isTrustedOnly()); > + //[1]:TODO: the commented out liens are causing failures after patch > blahblahurl was added. IT is probbaly issue in dummyjnlp file, but > the isTriviallySigned is returning true, although it have only > unsigned jars inisde. > > > J. At first glance I thought this said "aliens are causing failures" :) OK to push (after I verify reproducers one last time)? Thanks, -- Andrew A -------------- next part -------------- A non-text attachment was scrubbed... Name: pr1769-8.patch Type: text/x-patch Size: 23058 bytes Desc: not available URL: From aazores at redhat.com Thu Jul 31 13:40:51 2014 From: aazores at redhat.com (Andrew Azores) Date: Thu, 31 Jul 2014 09:40:51 -0400 Subject: [rfc][icedtea-web] prevent CCE from plugin appeltviewer In-Reply-To: <53DA2F43.4090602@redhat.com> References: <53DA2F43.4090602@redhat.com> Message-ID: <53DA4763.2040805@redhat.com> On 07/31/2014 07:57 AM, Jiri Vanek wrote: > > > ok for head and 1.5 ? > > > J. What happens in the first hunk if the appletClassLoader isn't a JNLPClassLoader? Thanks, -- Andrew A From jvanek at redhat.com Thu Jul 31 13:51:30 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 31 Jul 2014 15:51:30 +0200 Subject: [rfc][icedtea-web] Fix support for signed applets with sandbox permissions in manifest In-Reply-To: <53DA4680.3080300@redhat.com> References: <5384BC13.5010708@redhat.com> <53A1B7BE.9020308@redhat.com> <53A1D012.7000807@redhat.com> <53A2FBB6.6020204@redhat.com> <53A9841B.3090705@redhat.com> <53A98DCE.1000702@redhat.com> <53A99B9B.4040303@redhat.com> <53D8EC9F.2050007@redhat.com> <53D8F513.5070506@redhat.com> <53D90576.1010602@redhat.com> <53D906B9.2090802@redhat.com> <53D90913.7000703@redhat.com> <53D90D2C.2030000@redhat.com> <53D90F6F.9070401@redhat.com> <53D91C44.4090906@redhat.com> <53D9220C.3030701@redhat.com> <53D92662.8010203@redhat.com> <53D9375C.8090502@redhat.com> <53DA0D1D.40205@redhat.com> <53DA4680.3080300@redhat.com> Message-ID: <53DA49E2.8060905@redhat.com> On 07/31/2014 03:37 PM, Andrew Azores wrote: > On 07/31/2014 05:32 AM, Jiri Vanek wrote: >>> >>> But verifyJarEntryCerts is called from verifyJar, from verifyJars, from add, and add is still done >>> before isFullySigned is called, same as before... >>> >>> Like I said, even without this patch applied, isTriviallySigned is still returning true for dummy >>> JNLPs (and so the classloader thinks they're signed). So it isn't this patch that's making the dummy >>> JNLP show up as signed - it already is doing that in HEAD right now. AFAICT this is just "something >>> rotten already inside" :( >>> >> >> >> How does this behave in 1.5? I bet it is same. > > Yes, it's the same in 1.5, I just tested it now. > >> >> How important is to backport this to 1.5? I would be hesitating with it now. > > 1.5 still has the "Sandbox button" workaround anyway. I think this is a big enough patch that it > warrants being a 1.6 feature ;) > >> >> I'm now ok with your patch for ehad, but pelase keep original lines from discussed hunk only >> commented out instead of deleted, with comment why. Something like thjis, although not the best shot: >> > > Sure thing. > >> >> - manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); >> +//[1] manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "sandbox"); >> + manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS), "all-permissions"); >> manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY), "false"); >> manifest6.getMainAttributes().put(new >> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY), "false"); >> >> @@ -180,7 +180,7 @@ public class JNLPFileTest extends NoStdO >> Assert.assertEquals("*.com https://*.cz", >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.APP_LIBRARY_ALLOWABLE))); >> Assert.assertEquals("*.net ftp://*uu.co.uk", >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.CALLER_ALLOWABLE))); >> Assert.assertEquals("*.com *.net *.cz *.co.uk", >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.CODEBASE))); >> - Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >> +//[1] Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.SANDBOX.toHtmlString(), >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >> + Assert.assertEquals(SecurityDesc.RequestedPermissionLevel.ALL.toHtmlString(), >> jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.PERMISSIONS))); >> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_LIBRARY))); >> Assert.assertEquals("false", jnlpFile.getManifestsAttributes().getAttribute(new >> Attributes.Name(JNLPFile.ManifestsAttributes.TRUSTED_ONLY))); >> >> @@ -206,7 +206,7 @@ public class JNLPFileTest extends NoStdO >> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >> URL("ftp://aa.bb.net"))); >> Assert.assertEquals(true, jnlpFile.getManifestsAttributes().getCodebase().matches(new >> URL("https://x.net"))); >> Assert.assertEquals(false, jnlpFile.getManifestsAttributes().getCodebase().matches(new >> URL("http://aa.bb/com"))); >> - Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >> jnlpFile.getManifestsAttributes().isSandboxForced()); >> +//[1] Assert.assertEquals(JNLPFile.ManifestBoolean.TRUE, >> jnlpFile.getManifestsAttributes().isSandboxForced()); >> + Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >> jnlpFile.getManifestsAttributes().isSandboxForced()); >> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >> jnlpFile.getManifestsAttributes().isTrustedLibrary()); >> Assert.assertEquals(JNLPFile.ManifestBoolean.FALSE, >> jnlpFile.getManifestsAttributes().isTrustedOnly()); >> + //[1]:TODO: the commented out liens are causing failures after patch blahblahurl was added. IT >> is probbaly issue in dummyjnlp file, but the isTriviallySigned is returning true, although it >> have only unsigned jars inisde. >> >> >> J. > > At first glance I thought this said "aliens are causing failures" :) > > OK to push (after I verify reproducers one last time)? > yup. From jkang at redhat.com Thu Jul 31 14:02:39 2014 From: jkang at redhat.com (Jie Kang) Date: Thu, 31 Jul 2014 10:02:39 -0400 (EDT) Subject: [rfc][icedtea-web][policyeditor] "File - New" In-Reply-To: <53D9522C.2050002@redhat.com> References: <53CD290D.4030703@redhat.com> <1459623911.14620055.1406750497703.JavaMail.zimbra@redhat.com> <53D9522C.2050002@redhat.com> Message-ID: <1515790972.14912292.1406815359208.JavaMail.zimbra@redhat.com> ----- Original Message ----- > On 07/30/2014 04:01 PM, Jie Kang wrote: > > Hello, > > > >> Hi, > >> > >> This patch adds "File - New" functionality to PolicyEditor, so a new > >> policy file can be created/edited properly. Previously the editor would > >> either have to be relaunched, or the current file could be saved and > >> then the contents changed for the new file and "Save As" used to put it > >> in the correct location. > >> > > > > I would add ellipses to the other names that open new dialogs. E.g. > > 'Open...', the ellipses could also be applied to 'Add new'., etc. > > > > Done, thanks. > > > > >> This patch also makes the window title dynamic, so that it shows the > >> currently open file's path (if any), and also an asterisk if any changes > >> have been made in the editor since the file was opened or last saved. > > > > Nice :D > > > > From my testing, removing a codebase doesn't cause changesMade to be set > > to true. e.g. add codebase, save, remove codebase : state should be > > changesMade=true, but no * is shown in UI. > > > > Nice catch, fixed in the attached patch. > > > > > I notice that if you check something permission it will be set to * to show > > changes made, but if you uncheck it, it remains as *. This functionality > > differs from other programs I think. This is probably because the > > change-checking mechanism doesn't save the base-state and compare with it > > to see changes made. Maybe for a future patch this could be implemented. > > > > Yea, the changes-made checking is just so primitive right now that this > isn't really feasible. That feature would probably be extremely easy to > implement if PolicyEditor were to ever be given undo/redo support, for > example, but otherwise I think it'll just stay how it is. > Maybe Lukas or I can look into improving it later :D Patch looks good to me. +! > > > > > > > >> > >> Thanks, > >> > >> -- > >> Andrew A > >> > >> > > > > Regards, > > > > > > Thanks, > -- > Andrew A > -- Jie Kang From jvanek at redhat.com Thu Jul 31 14:03:37 2014 From: jvanek at redhat.com (Jiri Vanek) Date: Thu, 31 Jul 2014 16:03:37 +0200 Subject: [rfc][icedtea-web] prevent CCE from plugin appeltviewer In-Reply-To: <1490535152.14893778.1406813808772.JavaMail.zimbra@redhat.com> References: <53DA2F43.4090602@redhat.com> <1490535152.14893778.1406813808772.JavaMail.zimbra@redhat.com> Message-ID: <53DA4CB9.5080000@redhat.com> On 07/31/2014 03:36 PM, Jie Kang wrote: >> >> >> ok for head and 1.5 ? >> >> >> J. >> > Hello, > > > Good catch! > > I think now that we check for CCE, we should output something to let us know that the CCE occurred since behaviour is affected. > > Also for the following code: > > > + if (panel.getAppletClassLoader() instanceof JNLPClassLoader) { > + JNLPClassLoader loader = (JNLPClassLoader) panel.getAppletClassLoader(); > > - URL localURL = null; > - if (loader.resourceAvailableLocally(resourceName)) { > - url = loader.getResource(resourceName); > + URL localURL = null; > + if (loader.resourceAvailableLocally(resourceName)) { > + url = loader.getResource(resourceName); > + } > + > + url = localURL != null ? localURL : url; > } > - > - url = localURL != null ? localURL : url; > > > I think that the behaviour of the function changed a little. If a CCE occurs, the AppletImageRef returned is that of url that includes codebase. Is this valid? I think if CCE occurs then we should return null. > > + > What happens in the first hunk if the appletClassLoader isn't a JNLPClassLoader? The url will have its default value and if this is invalid, then it will die alter. BUt in most cases it will work. J. From andrew at icedtea.classpath.org Thu Jul 31 15:40:56 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:40:56 +0000 Subject: /hg/release/icedtea7-forest-2.4: Added tag icedtea-2.4.8 for cha... Message-ID: changeset a81200a5e018 in /hg/release/icedtea7-forest-2.4 details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4?cmd=changeset;node=a81200a5e018 author: andrew date: Thu Jul 31 16:39:08 2014 +0100 Added tag icedtea-2.4.8 for changeset 2b38d8f0e43f diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 2b38d8f0e43f -r a81200a5e018 .hgtags --- a/.hgtags Thu Apr 17 17:20:15 2014 +0100 +++ b/.hgtags Thu Jul 31 16:39:08 2014 +0100 @@ -432,3 +432,4 @@ d972a2d9e4f3f864d26c33ccfdacd8269e0f29a8 jdk7u55-b13 0820b4707cfa75f8211b88b0daa67bba8475f498 jdk7u55-b30 f0fab6df83bbc0b02e86ac065a655e50f5a61c6c icedtea-2.4.8pre01 +2b38d8f0e43f476904207eea61733e7479142c99 icedtea-2.4.8 From andrew at icedtea.classpath.org Thu Jul 31 15:41:02 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:41:02 +0000 Subject: /hg/release/icedtea7-forest-2.4/corba: Added tag icedtea-2.4.8 f... Message-ID: changeset ae17beb7757a in /hg/release/icedtea7-forest-2.4/corba details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/corba?cmd=changeset;node=ae17beb7757a author: andrew date: Thu Jul 31 16:38:56 2014 +0100 Added tag icedtea-2.4.8 for changeset 58b31c5bf14e diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 58b31c5bf14e -r ae17beb7757a .hgtags --- a/.hgtags Sat Jun 07 14:28:56 2014 +0100 +++ b/.hgtags Thu Jul 31 16:38:56 2014 +0100 @@ -434,3 +434,4 @@ 8efa6e66c13a5329c312d1a521ffab75d9a330e3 jdk7u55-b13 e041c52fe69128ec3439d26afef9b0fcba00684c jdk7u55-b30 179bc370340d11a9f063c5420f1866d4f045c19f icedtea-2.4.8pre01 +58b31c5bf14e59dbcfcac467ba87fbae101d5c2e icedtea-2.4.8 From andrew at icedtea.classpath.org Thu Jul 31 15:41:08 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:41:08 +0000 Subject: /hg/release/icedtea7-forest-2.4/jaxp: Added tag icedtea-2.4.8 fo... Message-ID: changeset 45fc92341038 in /hg/release/icedtea7-forest-2.4/jaxp details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jaxp?cmd=changeset;node=45fc92341038 author: andrew date: Thu Jul 31 16:38:57 2014 +0100 Added tag icedtea-2.4.8 for changeset 95d394340fda diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 95d394340fda -r 45fc92341038 .hgtags --- a/.hgtags Wed May 07 08:37:39 2014 -0700 +++ b/.hgtags Thu Jul 31 16:38:57 2014 +0100 @@ -434,3 +434,4 @@ 14719f73596f5c90e3f46c0f4312f32e5b105edd jdk7u55-b13 01f26830f88cf4f10897416fe1f4f372efcdecf5 jdk7u55-b30 481d5d80aada486e18d780bf994d7fc450b8cc11 icedtea-2.4.8pre01 +95d394340fdafc7f09680e549add7090cc5461eb icedtea-2.4.8 From andrew at icedtea.classpath.org Thu Jul 31 15:41:14 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:41:14 +0000 Subject: /hg/release/icedtea7-forest-2.4/jaxws: Added tag icedtea-2.4.8 f... Message-ID: changeset 6f7b348dcc93 in /hg/release/icedtea7-forest-2.4/jaxws details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jaxws?cmd=changeset;node=6f7b348dcc93 author: andrew date: Thu Jul 31 16:38:57 2014 +0100 Added tag icedtea-2.4.8 for changeset bce4362b2996 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r bce4362b2996 -r 6f7b348dcc93 .hgtags --- a/.hgtags Wed Apr 09 10:15:04 2014 -0400 +++ b/.hgtags Thu Jul 31 16:38:57 2014 +0100 @@ -434,3 +434,4 @@ 3b0da73591b1ea23c48aa7babc34ed776fc183f0 jdk7u55-b13 5d726bf8fedc1f10d250e980653315919b7602f2 jdk7u55-b30 2cc5b85692ba39099b4b6f7e533232fe3975430a icedtea-2.4.8pre01 +bce4362b29967517d6dc80800ebc33fe2bfe9ed4 icedtea-2.4.8 From andrew at icedtea.classpath.org Thu Jul 31 15:41:20 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:41:20 +0000 Subject: /hg/release/icedtea7-forest-2.4/langtools: Added tag icedtea-2.4... Message-ID: changeset 6928ebbe0187 in /hg/release/icedtea7-forest-2.4/langtools details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/langtools?cmd=changeset;node=6928ebbe0187 author: andrew date: Thu Jul 31 16:39:08 2014 +0100 Added tag icedtea-2.4.8 for changeset 43cdaf529543 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 43cdaf529543 -r 6928ebbe0187 .hgtags --- a/.hgtags Thu Apr 17 17:20:15 2014 +0100 +++ b/.hgtags Thu Jul 31 16:39:08 2014 +0100 @@ -433,3 +433,4 @@ 81bf1ca3a3a71c628b7d952ba47c6f200a223f27 jdk7u55-b13 96d55b4d88fea1d9f8227e70003210a6c10a1dba jdk7u55-b30 200ea1a5797efc75393873814edfeb34b16e6cb8 icedtea-2.4.8pre01 +43cdaf5295430cf0269baad78cdfd32821fcc55e icedtea-2.4.8 From andrew at icedtea.classpath.org Thu Jul 31 15:41:26 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:41:26 +0000 Subject: /hg/release/icedtea7-forest-2.4/hotspot: Added tag icedtea-2.4.8... Message-ID: changeset 7c25bbff7532 in /hg/release/icedtea7-forest-2.4/hotspot details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/hotspot?cmd=changeset;node=7c25bbff7532 author: andrew date: Thu Jul 31 16:39:36 2014 +0100 Added tag icedtea-2.4.8 for changeset 6f93cec20d27 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 6f93cec20d27 -r 7c25bbff7532 .hgtags --- a/.hgtags Tue Apr 15 15:10:07 2014 -0500 +++ b/.hgtags Thu Jul 31 16:39:36 2014 +0100 @@ -647,3 +647,4 @@ b021fd817a0177b31d1e3d65127a27458e85801e jdk7u55-b13 d27b468d5f3be3329ff1ff342f3347e6b2e0303b jdk7u55-b30 ee5d9f6749da3fa65eb211818b5c4f2926b961f0 icedtea-2.4.8pre01 +6f93cec20d2707d12b9eb07ed3ced24da4e708c4 icedtea-2.4.8 From andrew at icedtea.classpath.org Thu Jul 31 15:41:32 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:41:32 +0000 Subject: /hg/release/icedtea7-forest-2.4/jdk: Added tag icedtea-2.4.8 for... Message-ID: changeset 8cf9fdab0ed6 in /hg/release/icedtea7-forest-2.4/jdk details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.4/jdk?cmd=changeset;node=8cf9fdab0ed6 author: andrew date: Thu Jul 31 16:39:07 2014 +0100 Added tag icedtea-2.4.8 for changeset 22d79652f370 diffstat: .hgtags | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (8 lines): diff -r 22d79652f370 -r 8cf9fdab0ed6 .hgtags --- a/.hgtags Wed Mar 05 22:31:11 2014 -0800 +++ b/.hgtags Thu Jul 31 16:39:07 2014 +0100 @@ -425,3 +425,4 @@ 92fd166252c2701092a510002f4cf9285a20473d jdk7u55-b13 4a5651c84b1e6cf26dc9b19f00747e5004efba68 jdk7u55-b30 344829ae761ea0f33d32cb15aa59b49bfba32375 icedtea-2.4.8pre01 +22d79652f3704775a60b46be57ea5ef5e62b10b0 icedtea-2.4.8 From andrew at icedtea.classpath.org Thu Jul 31 15:58:12 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:58:12 +0000 Subject: /hg/icedtea7-forest/hotspot: PR1868: Avoid x86 workaround when r... Message-ID: changeset fae3b09fe959 in /hg/icedtea7-forest/hotspot details: http://icedtea.classpath.org/hg/icedtea7-forest/hotspot?cmd=changeset;node=fae3b09fe959 author: andrew date: Tue Jul 15 22:55:15 2014 +0100 PR1868: Avoid x86 workaround when running Zero rather than a JIT Contributed-by: Matthias Klose diffstat: src/os/linux/vm/os_linux.cpp | 2 +- src/os_cpu/linux_x86/vm/os_linux_x86.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diffs (24 lines): diff -r a61c666945e7 -r fae3b09fe959 src/os/linux/vm/os_linux.cpp --- a/src/os/linux/vm/os_linux.cpp Tue Jun 03 17:16:46 2014 +0100 +++ b/src/os/linux/vm/os_linux.cpp Tue Jul 15 22:55:15 2014 +0100 @@ -4925,7 +4925,7 @@ Linux::capture_initial_stack(JavaThread::stack_size_at_create()); -#if defined(IA32) +#if defined(IA32) && !defined(ZERO) workaround_expand_exec_shield_cs_limit(); #endif diff -r a61c666945e7 -r fae3b09fe959 src/os_cpu/linux_x86/vm/os_linux_x86.cpp --- a/src/os_cpu/linux_x86/vm/os_linux_x86.cpp Tue Jun 03 17:16:46 2014 +0100 +++ b/src/os_cpu/linux_x86/vm/os_linux_x86.cpp Tue Jul 15 22:55:15 2014 +0100 @@ -880,7 +880,7 @@ * updates (JDK-8023956). */ void os::workaround_expand_exec_shield_cs_limit() { -#if defined(IA32) +#if defined(IA32) && !defined(ZERO) size_t page_size = os::vm_page_size(); /* * Take the highest VA the OS will give us and exec From bugzilla-daemon at icedtea.classpath.org Thu Jul 31 15:58:18 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:58:18 +0000 Subject: [Bug 1868] [IcedTea7] Avoid x86 workaround when running Zero rather than a JIT In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1868 --- Comment #3 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/hotspot?cmd=changeset;node=fae3b09fe959 author: andrew date: Tue Jul 15 22:55:15 2014 +0100 PR1868: Avoid x86 workaround when running Zero rather than a JIT Contributed-by: Matthias Klose -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at icedtea.classpath.org Thu Jul 31 15:58:31 2014 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:58:31 +0000 Subject: /hg/icedtea7-forest/jdk: 3 new changesets Message-ID: changeset b2198909d6d8 in /hg/icedtea7-forest/jdk details: http://icedtea.classpath.org/hg/icedtea7-forest/jdk?cmd=changeset;node=b2198909d6d8 author: andrew date: Thu Apr 17 22:51:43 2014 +0100 Fix merge duplication in com.sun.script.javascript.RhinoTopLevel changeset 466edca8234a in /hg/icedtea7-forest/jdk details: http://icedtea.classpath.org/hg/icedtea7-forest/jdk?cmd=changeset;node=466edca8234a author: andrew date: Tue Jul 15 22:57:57 2014 +0100 PR1853: Revert PR729 from minor release changeset 605610f355ce in /hg/icedtea7-forest/jdk details: http://icedtea.classpath.org/hg/icedtea7-forest/jdk?cmd=changeset;node=605610f355ce author: andrew date: Tue Jul 15 23:03:29 2014 +0100 PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 diffstat: src/share/classes/com/sun/script/javascript/RhinoTopLevel.java | 1 - src/share/classes/javax/swing/UIManager.java | 5 ++--- src/solaris/native/sun/security/smartcardio/pcsc_md.c | 1 - 3 files changed, 2 insertions(+), 5 deletions(-) diffs (37 lines): diff -r 9ff90d1818b1 -r 605610f355ce src/share/classes/com/sun/script/javascript/RhinoTopLevel.java --- a/src/share/classes/com/sun/script/javascript/RhinoTopLevel.java Thu Jun 12 21:14:44 2014 +0100 +++ b/src/share/classes/com/sun/script/javascript/RhinoTopLevel.java Tue Jul 15 23:03:29 2014 +0100 @@ -26,7 +26,6 @@ package com.sun.script.javascript; import sun.org.mozilla.javascript.internal.*; -import java.security.AccessControlContext; import javax.script.*; import java.security.AccessControlContext; diff -r 9ff90d1818b1 -r 605610f355ce src/share/classes/javax/swing/UIManager.java --- a/src/share/classes/javax/swing/UIManager.java Thu Jun 12 21:14:44 2014 +0100 +++ b/src/share/classes/javax/swing/UIManager.java Tue Jul 15 23:03:29 2014 +0100 @@ -606,9 +606,8 @@ } else { String desktop = AccessController.doPrivileged(new GetPropertyAction("sun.desktop")); Toolkit toolkit = Toolkit.getDefaultToolkit(); - boolean gtkDesktop = "gnome".equals(desktop) || - (osType == OSInfo.OSType.LINUX && SwingUtilities2.isLocalDisplay()); - if (gtkDesktop && toolkit instanceof SunToolkit && + if ("gnome".equals(desktop) && + toolkit instanceof SunToolkit && ((SunToolkit) toolkit).isNativeGTKAvailable()) { // May be set on Linux and Solaris boxs. return "com.sun.java.swing.plaf.gtk.GTKLookAndFeel"; diff -r 9ff90d1818b1 -r 605610f355ce src/solaris/native/sun/security/smartcardio/pcsc_md.c --- a/src/solaris/native/sun/security/smartcardio/pcsc_md.c Thu Jun 12 21:14:44 2014 +0100 +++ b/src/solaris/native/sun/security/smartcardio/pcsc_md.c Tue Jul 15 23:03:29 2014 +0100 @@ -79,7 +79,6 @@ #ifndef USE_SYSTEM_PCSC void *findFunction(JNIEnv *env, void *hModule, char *functionName) { - return NULL; void *fAddress = dlsym(hModule, functionName); if (fAddress == NULL) { char errorMessage[256]; From bugzilla-daemon at icedtea.classpath.org Thu Jul 31 15:58:38 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:58:38 +0000 Subject: [Bug 729] [IcedTea8] GTKLookAndFeel should be the system look&feel on all GNU/Linux desktops In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=729 --- Comment #32 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset;node=466edca8234a author: andrew date: Tue Jul 15 22:57:57 2014 +0100 PR1853: Revert PR729 from minor release -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Thu Jul 31 15:58:45 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:58:45 +0000 Subject: [Bug 1853] [IcedTea7] Revert PR729 from minor release In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1853 --- Comment #3 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset;node=466edca8234a author: andrew date: Tue Jul 15 22:57:57 2014 +0100 PR1853: Revert PR729 from minor release -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From bugzilla-daemon at icedtea.classpath.org Thu Jul 31 15:58:51 2014 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 31 Jul 2014 15:58:51 +0000 Subject: [Bug 1864] PCSC + openjdk 1.7 crash on fedora 20 In-Reply-To: References: Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1864 --- Comment #10 from hg commits --- details: http://icedtea.classpath.org//hg/icedtea7-forest/jdk?cmd=changeset;node=605610f355ce author: andrew date: Tue Jul 15 23:03:29 2014 +0100 PR1864: PCSC + OpenJDK 1.7 crash on Fedora 20 -- You are receiving this mail because: You are on the CC list for the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: From aazores at icedtea.classpath.org Thu Jul 31 20:24:47 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Thu, 31 Jul 2014 20:24:47 +0000 Subject: /hg/icedtea-web: Added "File - New" action to PolicyEditor Message-ID: changeset b2bbab17c25b in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=b2bbab17c25b author: Andrew Azores date: Thu Jul 31 16:24:31 2014 -0400 Added "File - New" action to PolicyEditor 2014-07-31 Andrew Azores Added "File - New" action to PolicyEditor * netx/net/sourceforge/jnlp/resources/Messages.properties (PETitle): PolicyEditor, not Policy Editor. (PETitleWithPath): new message used for PolicyEditor window title bar (PETitleWithChangesMade): same (PENewMenuItem): new message (PEAddCodebaseItem): added ellipsis (PEPasteCodebaseItem): same (PENewMenuItemMnemonic): new message (PEAddCodebaseItemAccelerator): C-S-n rather than just C-n (PENewMenuItemAccelerator): new message, C-n * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java: added "New" item to "File" menu. (setFile): new method. (newButtonAction): new field (openButtonAction): "save changes made" dialog extracted into new method (promptOnSaveChangesMade): new method (setParentWindowTitle): new method (getWindowTitleForStatus): new method (getFile): new method (createMenuBar): added New item to File menu (removeCodebase): add setChangesMade call * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorController.java (openAndParsePolicyFile): use setPerformingIO rather than direct access (savePolicyFile): same * netx/net/sourceforge/jnlp/security/policyeditor/PolicyFileModel.java (setFile): allow null file to facilitate "new file" without a location set (saveFile): set new fileWatcher every time, not only if file was previously null diffstat: ChangeLog | 32 ++ NEWS | 1 + netx/net/sourceforge/jnlp/resources/Messages.properties | 13 +- netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java | 143 ++++++++- netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorController.java | 8 +- netx/net/sourceforge/jnlp/security/policyeditor/PolicyFileModel.java | 5 +- 6 files changed, 165 insertions(+), 37 deletions(-) diffs (396 lines): diff -r 51d839dd6052 -r b2bbab17c25b ChangeLog --- a/ChangeLog Thu Jul 31 09:15:31 2014 -0400 +++ b/ChangeLog Thu Jul 31 16:24:31 2014 -0400 @@ -1,3 +1,35 @@ +2014-07-31 Andrew Azores + + Added "File - New" action to PolicyEditor + * netx/net/sourceforge/jnlp/resources/Messages.properties (PETitle): + PolicyEditor, not Policy Editor. + (PETitleWithPath): new message used for PolicyEditor window title bar + (PETitleWithChangesMade): same + (PENewMenuItem): new message + (PEAddCodebaseItem): added ellipsis + (PEPasteCodebaseItem): same + (PENewMenuItemMnemonic): new message + (PEAddCodebaseItemAccelerator): C-S-n rather than just C-n + (PENewMenuItemAccelerator): new message, C-n + * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java: added + "New" item to "File" menu. + (setFile): new method. + (newButtonAction): new field + (openButtonAction): "save changes made" dialog extracted into new method + (promptOnSaveChangesMade): new method + (setParentWindowTitle): new method + (getWindowTitleForStatus): new method + (getFile): new method + (createMenuBar): added New item to File menu + (removeCodebase): add setChangesMade call + * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorController.java + (openAndParsePolicyFile): use setPerformingIO rather than direct access + (savePolicyFile): same + * netx/net/sourceforge/jnlp/security/policyeditor/PolicyFileModel.java + (setFile): allow null file to facilitate "new file" without a location set + (saveFile): set new fileWatcher every time, not only if file was + previously null + 2014-07-30 Andrew Azores Lukasz Dracz diff -r 51d839dd6052 -r b2bbab17c25b NEWS --- a/NEWS Thu Jul 31 09:15:31 2014 -0400 +++ b/NEWS Thu Jul 31 16:24:31 2014 -0400 @@ -32,6 +32,7 @@ - Fixed bug where clicking "Cancel" on the "Save before Exiting" dialog could result in the editor exiting without saving changes - Keyboard accelerators and mnemonics greatly improved + - "File - New" allows editing a new policy without first selecting the file to save to * Temporary Permissions in security dialog now multi-selectable and based on PolicyEditor permissions New in release 1.5 (2014-XX-XX): diff -r 51d839dd6052 -r b2bbab17c25b netx/net/sourceforge/jnlp/resources/Messages.properties --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Thu Jul 31 09:15:31 2014 -0400 +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Thu Jul 31 16:24:31 2014 -0400 @@ -498,7 +498,9 @@ PEHelpFlag=Print this message and exit PEFileFlag=Specify a policyfile path to open PECodebaseFlag=Specify (a) codebase URL(s) to add and/or focus in the editor -PETitle=Policy Editor +PETitle=PolicyEditor +PETitleWithPath=PolicyEditor - {0} +PETitleWithChangesMade={0} * PEReadProps=Read system properties PEReadPropsDetail=Allow applets to read system properties such as your username and home directory location PEWriteProps=Write system properties @@ -558,16 +560,17 @@ PECheckboxLabel=Permissions PECodebaseLabel=Codebases PEFileMenu=File +PENewMenuItem=New PEOpenMenuItem=Open... PESaveMenuItem=Save PESaveAsMenuItem=Save As... PEExitMenuItem=Exit PECodebaseMenu=Codebase -PEAddCodebaseItem=Add new +PEAddCodebaseItem=Add New... PERemoveCodebaseItem=Remove PERenameCodebaseItem=Rename PECopyCodebaseItem=Copy -PEPasteCodebaseItem=Paste +PEPasteCodebaseItem=Paste... PECopyCodebaseToClipboardItem=Copy URL to clipboard PERenameCodebase=Rename codebase to: PEPasteCodebase=Paste copied codebase as: @@ -636,6 +639,7 @@ PEAddCodebaseItemMnemonic=N PERemoveCodebaseMnemonic=R PERemoveCodebaseItemMnemonic=R +PENewMenuItemMnemonic=N PEOpenMenuItemMnemonic=O PESaveMenuItemMnemonic=S PEExitMenuItemMnemonic=X @@ -649,8 +653,9 @@ PEPolicyEditorHelpItemMnemonic=H # See javax.swing.KeyStroke.getKeyStroke(String) -PEAddCodebaseItemAccelerator=control N +PEAddCodebaseItemAccelerator=control shift N PERemoveCodebaseItemAccelerator=DELETE +PENewMenuItemAccelerator=control N PEOpenMenuItemAccelerator=control O PESaveMenuItemAccelerator=control S PESaveAsMenuItemAccelerator=control shift S diff -r 51d839dd6052 -r b2bbab17c25b netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java --- a/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java Thu Jul 31 09:15:31 2014 -0400 +++ b/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java Thu Jul 31 16:24:31 2014 -0400 @@ -184,7 +184,7 @@ private Set customPermissionsClipboard = null; private final ActionListener okButtonAction, addCodebaseButtonAction, - removeCodebaseButtonAction, openButtonAction, saveAsButtonAction, viewCustomButtonAction, + removeCodebaseButtonAction, newButtonAction, openButtonAction, saveAsButtonAction, viewCustomButtonAction, renameCodebaseButtonAction, copyCodebaseButtonAction, pasteCodebaseButtonAction, copyCodebaseToClipboardButtonAction, policyEditorHelpButtonAction, aboutPolicyEditorButtonAction; private ActionListener closeButtonAction; @@ -238,12 +238,9 @@ checkboxMap.put(perm, box); } + setFile(filepath); if (filepath != null) { - policyEditorController.setFile(new File(filepath)); openAndParsePolicyFile(); - } else { - resetCodebases(); - addNewCodebase(""); } setChangesMade(false); @@ -256,7 +253,7 @@ if (policyEditorController.getFile() == null) { final int choice = fileChooser.showOpenDialog(PolicyEditor.this); if (choice == JFileChooser.APPROVE_OPTION) { - policyEditorController.setFile(fileChooser.getSelectedFile()); + PolicyEditor.this.setFile(fileChooser.getSelectedFile().getAbsolutePath()); } } @@ -287,28 +284,22 @@ removeCodebaseButton.setText(R("PERemoveCodebase")); removeCodebaseButton.addActionListener(removeCodebaseButtonAction); + newButtonAction = new ActionListener() { + @Override + public void actionPerformed(final ActionEvent e) { + if (!promptOnSaveChangesMade(false)) return; + setFile(null); + setChangesMade(false); + } + }; + openButtonAction = new ActionListener() { @Override public void actionPerformed(final ActionEvent e) { - if (policyEditorController.changesMade()) { - final int save = JOptionPane.showConfirmDialog(PolicyEditor.this, R("PESaveChanges")); - if (save == JOptionPane.YES_OPTION) { - if (policyEditorController.getFile() == null) { - final int choice = fileChooser.showSaveDialog(PolicyEditor.this); - if (choice == JFileChooser.APPROVE_OPTION) { - policyEditorController.setFile(fileChooser.getSelectedFile()); - } else if (choice == JFileChooser.CANCEL_OPTION) { - return; - } - } - savePolicyFile(); - } else if (save == JOptionPane.CANCEL_OPTION) { - return; - } - } + if (!promptOnSaveChangesMade(true)) return; final int choice = fileChooser.showOpenDialog(PolicyEditor.this); if (choice == JFileChooser.APPROVE_OPTION) { - policyEditorController.setFile(fileChooser.getSelectedFile()); + PolicyEditor.this.setFile(fileChooser.getSelectedFile().getAbsolutePath()); openAndParsePolicyFile(); } } @@ -319,7 +310,7 @@ public void actionPerformed(final ActionEvent e) { final int choice = fileChooser.showSaveDialog(PolicyEditor.this); if (choice == JFileChooser.APPROVE_OPTION) { - policyEditorController.setFile(fileChooser.getSelectedFile()); + PolicyEditor.this.setFile(fileChooser.getSelectedFile().getAbsolutePath()); setChangesMade(true); savePolicyFile(); } @@ -429,6 +420,88 @@ setupLayout(); } + /** + * + * @param async use asynchronous saving, which displays a progress dialog, or use synchronous, which blocks the + * EDT but allows for eg the on-disk file to be changed without resorting to a busy-wait loop + * @return false iff the user wishes to cancel the operation and keep the current editor state + */ + private boolean promptOnSaveChangesMade(final boolean async) { + if (policyEditorController.changesMade()) { + final int save = JOptionPane.showConfirmDialog(this, R("PESaveChanges")); + if (save == JOptionPane.YES_OPTION) { + if (policyEditorController.getFile() == null) { + final int choice = fileChooser.showSaveDialog(this); + if (choice == JFileChooser.APPROVE_OPTION) { + this.setFile(fileChooser.getSelectedFile().getAbsolutePath()); + } else if (choice == JFileChooser.CANCEL_OPTION) { + return false; + } + } + if (async) { + savePolicyFile(); + } else { + try { + policyEditorController.savePolicyFile(); + } catch (final IOException e) { + showCouldNotSaveDialog(); + } + } + } else if (save == JOptionPane.CANCEL_OPTION) { + return false; + } + } + return true; + } + + public void setFile(final String filepath) { + if (filepath != null) { + policyEditorController.setFile(new File(filepath)); + } else { + policyEditorController.setFile(null); + resetCodebases(); + addNewCodebase(""); + } + setParentWindowTitle(getWindowTitleForStatus()); + } + + private void setParentWindowTitle(final String title) { + invokeRunnableOrEnqueueLater(new Runnable() { + @Override + public void run() { + final Window parent = SwingUtilities.getWindowAncestor(PolicyEditor.this); + if (!(parent instanceof PolicyEditorWindow)) { + return; + } + final PolicyEditorWindow window = (PolicyEditorWindow) parent; + window.setTitle(title); + } + }); + } + + private String getWindowTitleForStatus() { + final String filepath; + final File file = getFile(); + if (file != null) { + filepath = file.getPath(); + } else { + filepath = null; + } + final String titleAndPath; + if (filepath != null) { + titleAndPath = R("PETitleWithPath", filepath); + } else { + titleAndPath = R("PETitle"); + } + final String result; + if (policyEditorController.changesMade()) { + result = R("PETitleWithChangesMade", titleAndPath); + } else { + result = titleAndPath; + } + return result; + } + private String getSelectedCodebase() { final String codebase = list.getSelectedValue(); if (codebase == null || codebase.isEmpty()) { @@ -544,7 +617,7 @@ if (editor.policyEditorController.getFile() == null) { final int choice = editor.fileChooser.showSaveDialog(window); if (choice == JFileChooser.APPROVE_OPTION) { - editor.policyEditorController.setFile(editor.fileChooser.getSelectedFile()); + editor.setFile(editor.fileChooser.getSelectedFile().getAbsolutePath()); } else if (choice == JFileChooser.CANCEL_OPTION) { return; } @@ -681,6 +754,11 @@ return true; } + + public File getFile() { + return policyEditorController.getFile(); + } + /** * Display an input dialog, which will disappear when the user enters a valid URL * or when the user presses cancel. If an invalid URL is entered, the dialog reappears. @@ -724,6 +802,7 @@ list.setSelectedIndex(fIndex); } }); + setChangesMade(true); } /** @@ -888,6 +967,12 @@ final JMenu fileMenu = new JMenu(R("PEFileMenu")); setButtonMnemonic(fileMenu, R("PEFileMenuMnemonic")); + final JMenuItem newItem = new JMenuItem(R("PENewMenuItem")); + setButtonMnemonic(newItem, R("PENewMenuItemMnemonic")); + setMenuItemAccelerator(newItem, R("PENewMenuItemAccelerator")); + newItem.addActionListener(editor.newButtonAction); + fileMenu.add(newItem); + final JMenuItem openItem = new JMenuItem(R("PEOpenMenuItem")); setButtonMnemonic(openItem, R("PEOpenMenuItemMnemonic")); setMenuItemAccelerator(openItem, R("PEOpenMenuItemAccelerator")); @@ -1189,6 +1274,12 @@ void setChangesMade(final boolean b) { policyEditorController.setChangesMade(b); + invokeRunnableOrEnqueueLater(new Runnable() { + @Override + public void run() { + setParentWindowTitle(getWindowTitleForStatus()); + } + }); } private void resetCodebases() { @@ -1263,6 +1354,7 @@ addNewCodebase(""); progressIndicator.setVisible(false); progressIndicator.dispose(); + setChangesMade(false); } }; openPolicyFileWorker.execute(); @@ -1313,6 +1405,7 @@ showChangesSavedDialog(); progressIndicator.setVisible(false); progressIndicator.dispose(); + setChangesMade(false); } }; savePolicyFileWorker.execute(); diff -r 51d839dd6052 -r b2bbab17c25b netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorController.java --- a/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorController.java Thu Jul 31 09:15:31 2014 -0400 +++ b/netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorController.java Thu Jul 31 16:24:31 2014 -0400 @@ -162,19 +162,19 @@ OutputController.getLogger().log(e); } - performingIO = true; + setPerformingIO(true); policyFile.openAndParsePolicyFile(); setChangesMade(false); - performingIO = false; + setPerformingIO(false); } public void savePolicyFile() throws FileNotFoundException, IOException { - performingIO = true; + setPerformingIO(true); policyFile.savePolicyFile(); setChangesMade(false); - performingIO = false; + setPerformingIO(false); } } diff -r 51d839dd6052 -r b2bbab17c25b netx/net/sourceforge/jnlp/security/policyeditor/PolicyFileModel.java --- a/netx/net/sourceforge/jnlp/security/policyeditor/PolicyFileModel.java Thu Jul 31 09:15:31 2014 -0400 +++ b/netx/net/sourceforge/jnlp/security/policyeditor/PolicyFileModel.java Thu Jul 31 16:24:31 2014 -0400 @@ -81,7 +81,6 @@ } void setFile(final File file) { - Objects.requireNonNull(file); this.file = file; } @@ -196,9 +195,7 @@ } FileUtils.saveFile(sb.toString(), file); - if (fileWatcher == null) { - fileWatcher = new MD5SumWatcher(file); - } + fileWatcher = new MD5SumWatcher(file); fileWatcher.update(); } From aazores at icedtea.classpath.org Thu Jul 31 20:37:27 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Thu, 31 Jul 2014 20:37:27 +0000 Subject: /hg/icedtea-web: URLPermissions granted in SecurityDesc if avail... Message-ID: changeset d700c395b040 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=d700c395b040 author: Andrew Azores date: Thu Jul 31 16:37:09 2014 -0400 URLPermissions granted in SecurityDesc if available 2014-07-31 Andrew Azores Add URLPermission support to SecurityDesc. This is essentially Java 8 support, as URLPermission is new to Java 8 and required for many applets to continue working when a Java 8-compatible JVM is in use. * netx/net/sourceforge/jnlp/SecurityDesc.java (urlPermissionClass, urlPermissionConstructor): new static variables for storing references to URLPermission, if available, for reflective construction at runtime (getSandboxPermissions): adds URLPermissions to sandbox permissions set, if available (Java 8+) (getUrlPermissions): new method for getting URLPermissions for the current SecurityDesc (getHostWithSpecifiedPort, appendRecursiveSubdirToCodebaseHostString): new static helper methods for generating URLPermissions' constructor args * tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java (testNotNullJnlpFile): cleanup refactor, no semantic change (testNullJnlpFile, testAppendRecursiveSubdirToCodebaseHostString, testAppendRecursiveSubdirToCodebaseHostString2, testAppendRecursiveSubdirToCodebaseHostString3, testAppendRecursiveSubdirToCodebaseHostStringWithPort, testAppendRecursiveSubdirToCodebaseHostStringWithNull, testGetHostWithSpecifiedPort, testGetHostWithSpecifiedPortWithFtpScheme, testGetHostWithSpecifiedPortWithUserInfo, testGetHostWithSpecifiedPOrtWithPort, testGetHostWithSpecifiedPortWithPath, testGetHostWithSpecifiedPortWithAll, testGetHostWithSpecifiedPortWithNull, testGetHost, testGetHostWithFtpScheme, testGetHostWithUserInfo, testGetHostWithPort, testGetHostWithPath, testGetHostWithAll, testGetHostNull, testGetHostWithAppendRecursiveSubdirToCodebaseHostString, testGetHostWithSpecifiedPortWithAppendRecursiveSubdirToCodebaseHostString): new test methods diffstat: ChangeLog | 32 ++ NEWS | 1 + netx/net/sourceforge/jnlp/SecurityDesc.java | 138 ++++++++++- tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java | 166 +++++++++++- 4 files changed, 315 insertions(+), 22 deletions(-) diffs (416 lines): diff -r b2bbab17c25b -r d700c395b040 ChangeLog --- a/ChangeLog Thu Jul 31 16:24:31 2014 -0400 +++ b/ChangeLog Thu Jul 31 16:37:09 2014 -0400 @@ -1,3 +1,35 @@ +2014-07-31 Andrew Azores + + Add URLPermission support to SecurityDesc. This is essentially Java 8 + support, as URLPermission is new to Java 8 and required for many applets + to continue working when a Java 8-compatible JVM is in use. + * netx/net/sourceforge/jnlp/SecurityDesc.java (urlPermissionClass, + urlPermissionConstructor): new static variables for storing references to + URLPermission, if available, for reflective construction at runtime + (getSandboxPermissions): adds URLPermissions to sandbox permissions set, + if available (Java 8+) + (getUrlPermissions): new method for getting URLPermissions for the current + SecurityDesc + (getHostWithSpecifiedPort, appendRecursiveSubdirToCodebaseHostString): new + static helper methods for generating URLPermissions' constructor args + * tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java + (testNotNullJnlpFile): cleanup refactor, no semantic change + (testNullJnlpFile, testAppendRecursiveSubdirToCodebaseHostString, + testAppendRecursiveSubdirToCodebaseHostString2, + testAppendRecursiveSubdirToCodebaseHostString3, + testAppendRecursiveSubdirToCodebaseHostStringWithPort, + testAppendRecursiveSubdirToCodebaseHostStringWithNull, + testGetHostWithSpecifiedPort, testGetHostWithSpecifiedPortWithFtpScheme, + testGetHostWithSpecifiedPortWithUserInfo, + testGetHostWithSpecifiedPOrtWithPort, + testGetHostWithSpecifiedPortWithPath, testGetHostWithSpecifiedPortWithAll, + testGetHostWithSpecifiedPortWithNull, testGetHost, + testGetHostWithFtpScheme, testGetHostWithUserInfo, testGetHostWithPort, + testGetHostWithPath, testGetHostWithAll, testGetHostNull, + testGetHostWithAppendRecursiveSubdirToCodebaseHostString, + testGetHostWithSpecifiedPortWithAppendRecursiveSubdirToCodebaseHostString): + new test methods + 2014-07-31 Andrew Azores Added "File - New" action to PolicyEditor diff -r b2bbab17c25b -r d700c395b040 NEWS --- a/NEWS Thu Jul 31 16:24:31 2014 -0400 +++ b/NEWS Thu Jul 31 16:37:09 2014 -0400 @@ -11,6 +11,7 @@ New in release 1.6 (2014-XX-XX): * Improved to be able to run with any JDK * JDK 6 and older no longer supported +* JDK 8 support added (URLPermission granted if applicable) * Added DE localisation * Added KEY_ENABLE_MANIFEST_ATTRIBUTES_CHECK deployment property to control scan of Manifest file * Control Panel diff -r b2bbab17c25b -r d700c395b040 netx/net/sourceforge/jnlp/SecurityDesc.java --- a/netx/net/sourceforge/jnlp/SecurityDesc.java Thu Jul 31 16:24:31 2014 -0400 +++ b/netx/net/sourceforge/jnlp/SecurityDesc.java Thu Jul 31 16:37:09 2014 -0400 @@ -16,11 +16,20 @@ package net.sourceforge.jnlp; -import java.io.*; -import java.net.*; +import java.awt.AWTPermission; +import java.io.FilePermission; +import java.lang.reflect.Constructor; +import java.net.SocketPermission; +import java.net.URI; +import java.net.URISyntaxException; +import java.security.AllPermission; +import java.security.CodeSource; +import java.security.Permission; +import java.security.PermissionCollection; +import java.security.Permissions; +import java.security.Policy; +import java.security.URIParameter; import java.util.*; -import java.security.*; -import java.awt.AWTPermission; import net.sourceforge.jnlp.config.DeploymentConfiguration; import net.sourceforge.jnlp.runtime.JNLPRuntime; @@ -129,10 +138,34 @@ private final boolean grantAwtPermissions; /** the JNLP file */ - private JNLPFile file; + private final JNLPFile file; private final Policy customTrustedPolicy; + /** + * URLPermission is new in Java 8, so we use reflection to check for it to keep compatibility + * with Java 6/7. If we can't find the class or fail to construct it then we continue as usual + * without. + * + * These are saved as fields so that the reflective lookup only needs to be performed once + * when the SecurityDesc is constructed, rather than every time a call is made to + * {@link SecurityDesc#getSandBoxPermissions()}, which is called frequently. + */ + private static Class urlPermissionClass = null; + private static Constructor urlPermissionConstructor = null; + + static { + try { + urlPermissionClass = (Class) Class.forName("java.net.URLPermission"); + urlPermissionConstructor = urlPermissionClass.getDeclaredConstructor(new Class[] { String.class }); + } catch (final ReflectiveOperationException | SecurityException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while reflectively finding URLPermission - host is probably not running Java 8+"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + urlPermissionClass = null; + urlPermissionConstructor = null; + } + } + // We go by the rules here: // http://java.sun.com/docs/books/tutorial/deployment/doingMoreWithRIA/properties.html @@ -321,8 +354,7 @@ * Returns a PermissionCollection containing the sandbox permissions */ public PermissionCollection getSandBoxPermissions() { - - Permissions permissions = new Permissions(); + final Permissions permissions = new Permissions(); for (int i = 0; i < sandboxPermissions.length; i++) permissions.add(sandboxPermissions[i]); @@ -345,9 +377,99 @@ permissions.add(new SocketPermission(downloadHost, "connect, accept")); + final Collection urlPermissions = getUrlPermissions(); + for (final Permission permission : urlPermissions) { + permissions.add(permission); + } + return permissions; } - + + private Set getUrlPermissions() { + if (urlPermissionClass == null || urlPermissionConstructor == null) { + return Collections.emptySet(); + } + final Set permissions = new HashSet<>(); + for (final JARDesc jar : file.getResources().getJARs()) { + try { + // Allow applets all HTTP methods (ex POST, GET) with any request headers + // on resources anywhere recursively in or below the applet codebase, only on + // default ports and ports explicitly specified in resource locations + final URI resourceLocation = jar.getLocation().toURI().normalize(); + final URI host = getHost(resourceLocation); + final String hostUriString = host.toString(); + final String urlPermissionUrlString = appendRecursiveSubdirToCodebaseHostString(hostUriString); + final Permission p = urlPermissionConstructor.newInstance(urlPermissionUrlString); + permissions.add(p); + } catch (final ReflectiveOperationException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while attempting to reflectively generate a URLPermission, probably not running on Java 8+?"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + } catch (final URISyntaxException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Could not determine codebase host for resource at " + jar.getLocation() + " while generating URLPermissions"); + OutputController.getLogger().log(e); + } + } + try { + final URI codebase = file.getCodeBase().toURI().normalize(); + final URI host = getHost(codebase); + final String codebaseHostUriString = host.toString(); + final String urlPermissionUrlString = appendRecursiveSubdirToCodebaseHostString(codebaseHostUriString); + final Permission p = urlPermissionConstructor.newInstance(urlPermissionUrlString); + permissions.add(p); + } catch (final ReflectiveOperationException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while attempting to reflectively generate a URLPermission, probably not running on Java 8+?"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + } catch (final URISyntaxException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Could not determine codebase host for codebase " + file.getCodeBase() + " while generating URLPermissions"); + OutputController.getLogger().log(e); + } + return permissions; + } + + /** + * Gets the host domain part of an applet's codebase. Removes path, query, and fragment, but preserves scheme, + * user info, and host. The port used is overridden with the specified port. + * @param codebase the applet codebase URL + * @param port + * @return the host domain of the codebase + * @throws URISyntaxException + */ + static URI getHostWithSpecifiedPort(final URI codebase, final int port) throws URISyntaxException { + Objects.requireNonNull(codebase); + return new URI(codebase.getScheme(), codebase.getUserInfo(), codebase.getHost(), port, null, null, null); + } + + /** + * Gets the host domain part of an applet's codebase. Removes path, query, and fragment, but preserves scheme, + * user info, host, and port. + * @param codebase the applet codebase URL + * @return the host domain of the codebase + * @throws URISyntaxException + */ + static URI getHost(final URI codebase) throws URISyntaxException { + Objects.requireNonNull(codebase); + return getHostWithSpecifiedPort(codebase, codebase.getPort()); + } + + /** + * Appends a recursive access marker to a codebase host, for granting Java 8 URLPermissions which are no + * more restrictive than the existing SocketPermissions + * See http://docs.oracle.com/javase/8/docs/api/java/net/URLPermission.html + * @param codebaseHost the applet's codebase's host domain URL as a String. Expected to be formatted as eg + * "http://example.com:8080" or "http://example.com/" + * @return the resulting String eg "http://example.com:8080/- + */ + static String appendRecursiveSubdirToCodebaseHostString(final String codebaseHost) { + Objects.requireNonNull(codebaseHost); + String result = codebaseHost; + while (result.endsWith("/")) { + result = result.substring(0, result.length() - 1); + } + // See http://docs.oracle.com/javase/8/docs/api/java/net/URLPermission.html + result = result + "/-"; // allow access to any resources recursively on the host domain + return result; + } + /** * Returns all the names of the basic JNLP system properties accessible by RIAs */ diff -r b2bbab17c25b -r d700c395b040 tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java --- a/tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java Thu Jul 31 16:24:31 2014 -0400 +++ b/tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java Thu Jul 31 16:37:09 2014 -0400 @@ -36,35 +36,173 @@ */ package net.sourceforge.jnlp; +import java.net.URI; import net.sourceforge.jnlp.mock.DummyJNLPFile; -import org.junit.Assert; import org.junit.Test; +import static org.junit.Assert.*; + public class SecurityDescTest { @Test - public void testNotNullJnlpFile() { + public void testNotNullJnlpFile() throws Exception { Throwable t = null; try { - SecurityDesc securityDesc = new SecurityDesc(new DummyJNLPFile(), SecurityDesc.SANDBOX_PERMISSIONS, "hey!"); + new SecurityDesc(new DummyJNLPFile(), SecurityDesc.SANDBOX_PERMISSIONS, "hey!"); } catch (Exception ex) { t = ex; } - Assert.assertNull("securityDesc should not throw exception", t); + assertNull("securityDesc should not throw exception", t); + } - + @Test(expected = NullPointerException.class) + public void testNullJnlpFile() throws Exception { + new SecurityDesc(null, SecurityDesc.SANDBOX_PERMISSIONS, "hey!"); } @Test - public void testNullJnlpFile() { - Exception ex = null; - try { - SecurityDesc securityDesc = new SecurityDesc(null, SecurityDesc.SANDBOX_PERMISSIONS, "hey!"); - } catch (Exception eex) { - ex = eex; - } - Assert.assertNotNull("Exception should not be null", ex); - Assert.assertTrue("Exception should be " + NullJnlpFileException.class.getName(), ex instanceof NullJnlpFileException); + public void testAppendRecursiveSubdirToCodebaseHostString() throws Exception { + final String urlStr = "http://example.com"; + final String result = SecurityDesc.appendRecursiveSubdirToCodebaseHostString(urlStr); + final String expected = "http://example.com/-"; + assertEquals(expected, result); + } + @Test + public void testAppendRecursiveSubdirToCodebaseHostString2() throws Exception { + final String urlStr = "http://example.com/"; + final String result = SecurityDesc.appendRecursiveSubdirToCodebaseHostString(urlStr); + final String expected = "http://example.com/-"; + assertEquals(expected, result); } + + @Test + public void testAppendRecursiveSubdirToCodebaseHostString3() throws Exception { + final String urlStr = "http://example.com///"; + final String result = SecurityDesc.appendRecursiveSubdirToCodebaseHostString(urlStr); + final String expected = "http://example.com/-"; + assertEquals(expected, result); + } + + @Test + public void testAppendRecursiveSubdirToCodebaseHostStringWithPort() throws Exception { + final String urlStr = "http://example.com:8080"; + final String result = SecurityDesc.appendRecursiveSubdirToCodebaseHostString(urlStr); + final String expected = "http://example.com:8080/-"; + assertEquals(expected, result); + } + + @Test(expected = NullPointerException.class) + public void testAppendRecursiveSubdirToCodebaseHostStringWithNull() throws Exception { + SecurityDesc.appendRecursiveSubdirToCodebaseHostString(null); + } + + @Test + public void testGetHostWithSpecifiedPort() throws Exception { + final URI codebase = new URI("http://example.com"); + final URI expected = new URI("http://example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithFtpScheme() throws Exception { + final URI codebase = new URI("ftp://example.com"); + final URI expected = new URI("ftp://example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithUserInfo() throws Exception { + final URI codebase = new URI("http://user:password at example.com"); + final URI expected = new URI("http://user:password at example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithPort() throws Exception { + final URI codebase = new URI("http://example.com:8080"); + final URI expected = new URI("http://example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithPath() throws Exception { + final URI codebase = new URI("http://example.com/applet/codebase/"); + final URI expected = new URI("http://example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithAll() throws Exception { + final URI codebase = new URI("ftp://user:password at example.com:8080/applet/codebase/"); + final URI expected = new URI("ftp://user:password at example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test(expected = NullPointerException.class) + public void testGetHostWithSpecifiedPortWithNull() throws Exception { + SecurityDesc.getHostWithSpecifiedPort(null, 80); + } + + @Test + public void testGetHost() throws Exception { + final URI codebase = new URI("http://example.com"); + final URI expected = new URI("http://example.com"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithFtpScheme() throws Exception { + final URI codebase = new URI("ftp://example.com"); + final URI expected = new URI("ftp://example.com"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithUserInfo() throws Exception { + final URI codebase = new URI("http://user:password at example.com"); + final URI expected = new URI("http://user:password at example.com"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithPort() throws Exception { + final URI codebase = new URI("http://example.com:8080"); + final URI expected = new URI("http://example.com:8080"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithPath() throws Exception { + final URI codebase = new URI("http://example.com/applet/codebase/"); + final URI expected = new URI("http://example.com"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithAll() throws Exception { + final URI codebase = new URI("ftp://user:password at example.com:8080/applet/codebase/"); + final URI expected = new URI("ftp://user:password at example.com:8080"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test(expected = NullPointerException.class) + public void testGetHostNull() throws Exception { + SecurityDesc.getHost(null); + } + + @Test + public void testGetHostWithAppendRecursiveSubdirToCodebaseHostString() throws Exception { + final URI codebase = new URI("ftp://user:password at example.com:8080/applet/codebase/"); + final String expected = "ftp://user:password at example.com:8080/-"; + assertEquals(expected, SecurityDesc.appendRecursiveSubdirToCodebaseHostString(SecurityDesc.getHost(codebase).toString())); + } + + @Test + public void testGetHostWithSpecifiedPortWithAppendRecursiveSubdirToCodebaseHostString() throws Exception { + final URI codebase = new URI("ftp://user:password at example.com:8080/applet/codebase/"); + final String expected = "ftp://user:password at example.com:80/-"; + assertEquals(expected, SecurityDesc.appendRecursiveSubdirToCodebaseHostString(SecurityDesc.getHostWithSpecifiedPort(codebase, 80).toString())); + } + } From aazores at icedtea.classpath.org Thu Jul 31 20:58:16 2014 From: aazores at icedtea.classpath.org (aazores at icedtea.classpath.org) Date: Thu, 31 Jul 2014 20:58:16 +0000 Subject: /hg/release/icedtea-web-1.5: URLPermissions granted in SecurityD... Message-ID: changeset 36ecc6fe6f62 in /hg/release/icedtea-web-1.5 details: http://icedtea.classpath.org/hg/release/icedtea-web-1.5?cmd=changeset;node=36ecc6fe6f62 author: Andrew Azores date: Thu Jul 31 16:57:39 2014 -0400 URLPermissions granted in SecurityDesc if available 2014-07-31 Andrew Azores Add URLPermission support to SecurityDesc. This is essentially Java 8 support, as URLPermission is new to Java 8 and required for many applets to continue working when a Java 8-compatible JVM is in use. * netx/net/sourceforge/jnlp/SecurityDesc.java (urlPermissionClass, urlPermissionConstructor): new static variables for storing references to URLPermission, if available, for reflective construction at runtime (getSandboxPermissions): adds URLPermissions to sandbox permissions set, if available (Java 8+) (getUrlPermissions): new method for getting URLPermissions for the current SecurityDesc (getHostWithSpecifiedPort, appendRecursiveSubdirToCodebaseHostString): new static helper methods for generating URLPermissions' constructor args (requireNonNull): new method, simply throws NPE if its argument is null * tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java (testNotNullJnlpFile): cleanup refactor, no semantic change (testNullJnlpFile, testAppendRecursiveSubdirToCodebaseHostString, testAppendRecursiveSubdirToCodebaseHostString2, testAppendRecursiveSubdirToCodebaseHostString3, testAppendRecursiveSubdirToCodebaseHostStringWithPort, testAppendRecursiveSubdirToCodebaseHostStringWithNull, testGetHostWithSpecifiedPort, testGetHostWithSpecifiedPortWithFtpScheme, testGetHostWithSpecifiedPortWithUserInfo, testGetHostWithSpecifiedPOrtWithPort, testGetHostWithSpecifiedPortWithPath, testGetHostWithSpecifiedPortWithAll, testGetHostWithSpecifiedPortWithNull, testGetHost, testGetHostWithFtpScheme, testGetHostWithUserInfo, testGetHostWithPort, testGetHostWithPath, testGetHostWithAll, testGetHostNull, testGetHostWithAppendRecursiveSubdirToCodebaseHostString, testGetHostWithSpecifiedPortWithAppendRecursiveSubdirToCodebaseHostString): new test methods diffstat: ChangeLog | 33 ++ NEWS | 1 + netx/net/sourceforge/jnlp/SecurityDesc.java | 173 ++++++++++++- tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java | 166 +++++++++++- 4 files changed, 350 insertions(+), 23 deletions(-) diffs (459 lines): diff -r 39631aab56cf -r 36ecc6fe6f62 ChangeLog --- a/ChangeLog Thu Jul 31 09:19:59 2014 -0400 +++ b/ChangeLog Thu Jul 31 16:57:39 2014 -0400 @@ -1,3 +1,36 @@ +2014-07-31 Andrew Azores + + Add URLPermission support to SecurityDesc. This is essentially Java 8 + support, as URLPermission is new to Java 8 and required for many applets + to continue working when a Java 8-compatible JVM is in use. + * netx/net/sourceforge/jnlp/SecurityDesc.java (urlPermissionClass, + urlPermissionConstructor): new static variables for storing references to + URLPermission, if available, for reflective construction at runtime + (getSandboxPermissions): adds URLPermissions to sandbox permissions set, + if available (Java 8+) + (getUrlPermissions): new method for getting URLPermissions for the current + SecurityDesc + (getHostWithSpecifiedPort, appendRecursiveSubdirToCodebaseHostString): new + static helper methods for generating URLPermissions' constructor args + (requireNonNull): new method, simply throws NPE if its argument is null + * tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java + (testNotNullJnlpFile): cleanup refactor, no semantic change + (testNullJnlpFile, testAppendRecursiveSubdirToCodebaseHostString, + testAppendRecursiveSubdirToCodebaseHostString2, + testAppendRecursiveSubdirToCodebaseHostString3, + testAppendRecursiveSubdirToCodebaseHostStringWithPort, + testAppendRecursiveSubdirToCodebaseHostStringWithNull, + testGetHostWithSpecifiedPort, testGetHostWithSpecifiedPortWithFtpScheme, + testGetHostWithSpecifiedPortWithUserInfo, + testGetHostWithSpecifiedPOrtWithPort, + testGetHostWithSpecifiedPortWithPath, testGetHostWithSpecifiedPortWithAll, + testGetHostWithSpecifiedPortWithNull, testGetHost, + testGetHostWithFtpScheme, testGetHostWithUserInfo, testGetHostWithPort, + testGetHostWithPath, testGetHostWithAll, testGetHostNull, + testGetHostWithAppendRecursiveSubdirToCodebaseHostString, + testGetHostWithSpecifiedPortWithAppendRecursiveSubdirToCodebaseHostString): + new test methods + 2014-07-31 Andrew Azores Fixes for coverity issues discovered in RH1121549 diff -r 39631aab56cf -r 36ecc6fe6f62 NEWS --- a/NEWS Thu Jul 31 09:19:59 2014 -0400 +++ b/NEWS Thu Jul 31 16:57:39 2014 -0400 @@ -10,6 +10,7 @@ New in release 1.5.1 (YYYY-MM-DD): * Improved to be able to run with any JDK +* JDK 8 support added (URLPermission granted if applicable) * Added DE and PL localizations * Added KEY_ENABLE_MANIFEST_ATTRIBUTES_CHECK deployment property to control scan of Manifest file * Control Panel diff -r 39631aab56cf -r 36ecc6fe6f62 netx/net/sourceforge/jnlp/SecurityDesc.java --- a/netx/net/sourceforge/jnlp/SecurityDesc.java Thu Jul 31 09:19:59 2014 -0400 +++ b/netx/net/sourceforge/jnlp/SecurityDesc.java Thu Jul 31 16:57:39 2014 -0400 @@ -16,11 +16,25 @@ package net.sourceforge.jnlp; -import java.io.*; -import java.net.*; -import java.util.*; -import java.security.*; import java.awt.AWTPermission; +import java.io.FilePermission; +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; +import java.net.SocketPermission; +import java.net.URI; +import java.net.URISyntaxException; +import java.security.AllPermission; +import java.security.CodeSource; +import java.security.Permission; +import java.security.PermissionCollection; +import java.security.Permissions; +import java.security.Policy; +import java.security.URIParameter; +import java.util.Collection; +import java.util.Collections; +import java.util.HashSet; +import java.util.PropertyPermission; +import java.util.Set; import net.sourceforge.jnlp.config.DeploymentConfiguration; import net.sourceforge.jnlp.runtime.JNLPRuntime; @@ -90,7 +104,7 @@ * The HTML permission level corresponding to the given String. If null is given, null comes * back. If there is no permission level that can be granted in HTML matching the given String, * null is also returned. - * @param jnlpString the JNLP permission String + * @param htmlString the JNLP permission String * @return the matching RequestedPermissionLevel */ public RequestedPermissionLevel fromHtmlString(final String htmlString) { @@ -129,10 +143,44 @@ private final boolean grantAwtPermissions; /** the JNLP file */ - private JNLPFile file; + private final JNLPFile file; private final Policy customTrustedPolicy; + /** + * URLPermission is new in Java 8, so we use reflection to check for it to keep compatibility + * with Java 6/7. If we can't find the class or fail to construct it then we continue as usual + * without. + * + * These are saved as fields so that the reflective lookup only needs to be performed once + * when the SecurityDesc is constructed, rather than every time a call is made to + * {@link SecurityDesc#getSandBoxPermissions()}, which is called frequently. + */ + private static Class urlPermissionClass = null; + private static Constructor urlPermissionConstructor = null; + + static { + try { + urlPermissionClass = (Class) Class.forName("java.net.URLPermission"); + urlPermissionConstructor = urlPermissionClass.getDeclaredConstructor(new Class[] { String.class }); + } catch (final SecurityException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while reflectively finding URLPermission - host is probably not running Java 8+"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + urlPermissionClass = null; + urlPermissionConstructor = null; + } catch (final ClassNotFoundException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while reflectively finding URLPermission - host is probably not running Java 8+"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + urlPermissionClass = null; + urlPermissionConstructor = null; + } catch (final NoSuchMethodException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while reflectively finding URLPermission - host is probably not running Java 8+"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + urlPermissionClass = null; + urlPermissionConstructor = null; + } + } + // We go by the rules here: // http://java.sun.com/docs/books/tutorial/deployment/doingMoreWithRIA/properties.html @@ -321,8 +369,7 @@ * Returns a PermissionCollection containing the sandbox permissions */ public PermissionCollection getSandBoxPermissions() { - - Permissions permissions = new Permissions(); + final Permissions permissions = new Permissions(); for (int i = 0; i < sandboxPermissions.length; i++) permissions.add(sandboxPermissions[i]); @@ -345,9 +392,117 @@ permissions.add(new SocketPermission(downloadHost, "connect, accept")); + final Collection urlPermissions = getUrlPermissions(); + for (final Permission permission : urlPermissions) { + permissions.add(permission); + } + return permissions; } - + + private Set getUrlPermissions() { + if (urlPermissionClass == null || urlPermissionConstructor == null) { + return Collections.emptySet(); + } + final Set permissions = new HashSet(); + for (final JARDesc jar : file.getResources().getJARs()) { + try { + // Allow applets all HTTP methods (ex POST, GET) with any request headers + // on resources anywhere recursively in or below the applet codebase, only on + // default ports and ports explicitly specified in resource locations + final URI resourceLocation = jar.getLocation().toURI().normalize(); + final URI host = getHost(resourceLocation); + final String hostUriString = host.toString(); + final String urlPermissionUrlString = appendRecursiveSubdirToCodebaseHostString(hostUriString); + final Permission p = urlPermissionConstructor.newInstance(urlPermissionUrlString); + permissions.add(p); + } catch (final URISyntaxException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Could not determine codebase host for resource at " + jar.getLocation() + " while generating URLPermissions"); + OutputController.getLogger().log(e); + } catch (final InvocationTargetException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while attempting to reflectively generate a URLPermission, probably not running on Java 8+?"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + } catch (final InstantiationException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while attempting to reflectively generate a URLPermission, probably not running on Java 8+?"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + } catch (final IllegalAccessException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while attempting to reflectively generate a URLPermission, probably not running on Java 8+?"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + } + } + try { + final URI codebase = file.getCodeBase().toURI().normalize(); + final URI host = getHost(codebase); + final String codebaseHostUriString = host.toString(); + final String urlPermissionUrlString = appendRecursiveSubdirToCodebaseHostString(codebaseHostUriString); + final Permission p = urlPermissionConstructor.newInstance(urlPermissionUrlString); + permissions.add(p); + } catch (final URISyntaxException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Could not determine codebase host for codebase " + file.getCodeBase() + " while generating URLPermissions"); + OutputController.getLogger().log(e); + } catch (final InvocationTargetException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while attempting to reflectively generate a URLPermission, probably not running on Java 8+?"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + } catch (final InstantiationException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while attempting to reflectively generate a URLPermission, probably not running on Java 8+?"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + } catch (final IllegalAccessException e) { + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, "Exception while attempting to reflectively generate a URLPermission, probably not running on Java 8+?"); + OutputController.getLogger().log(OutputController.Level.WARNING_DEBUG, e); + } + return permissions; + } + + /** + * Gets the host domain part of an applet's codebase. Removes path, query, and fragment, but preserves scheme, + * user info, and host. The port used is overridden with the specified port. + * @param codebase the applet codebase URL + * @param port + * @return the host domain of the codebase + * @throws URISyntaxException + */ + static URI getHostWithSpecifiedPort(final URI codebase, final int port) throws URISyntaxException { + requireNonNull(codebase); + return new URI(codebase.getScheme(), codebase.getUserInfo(), codebase.getHost(), port, null, null, null); + } + + /** + * Gets the host domain part of an applet's codebase. Removes path, query, and fragment, but preserves scheme, + * user info, host, and port. + * @param codebase the applet codebase URL + * @return the host domain of the codebase + * @throws URISyntaxException + */ + static URI getHost(final URI codebase) throws URISyntaxException { + requireNonNull(codebase); + return getHostWithSpecifiedPort(codebase, codebase.getPort()); + } + + /** + * Appends a recursive access marker to a codebase host, for granting Java 8 URLPermissions which are no + * more restrictive than the existing SocketPermissions + * See http://docs.oracle.com/javase/8/docs/api/java/net/URLPermission.html + * @param codebaseHost the applet's codebase's host domain URL as a String. Expected to be formatted as eg + * "http://example.com:8080" or "http://example.com/" + * @return the resulting String eg "http://example.com:8080/- + */ + static String appendRecursiveSubdirToCodebaseHostString(final String codebaseHost) { + requireNonNull(codebaseHost); + String result = codebaseHost; + while (result.endsWith("/")) { + result = result.substring(0, result.length() - 1); + } + // See http://docs.oracle.com/javase/8/docs/api/java/net/URLPermission.html + result = result + "/-"; // allow access to any resources recursively on the host domain + return result; + } + + private static void requireNonNull(final Object arg) { + if (arg == null) { + throw new NullPointerException(); + } + } + /** * Returns all the names of the basic JNLP system properties accessible by RIAs */ diff -r 39631aab56cf -r 36ecc6fe6f62 tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java --- a/tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java Thu Jul 31 09:19:59 2014 -0400 +++ b/tests/netx/unit/net/sourceforge/jnlp/SecurityDescTest.java Thu Jul 31 16:57:39 2014 -0400 @@ -36,35 +36,173 @@ */ package net.sourceforge.jnlp; +import java.net.URI; import net.sourceforge.jnlp.mock.DummyJNLPFile; -import org.junit.Assert; import org.junit.Test; +import static org.junit.Assert.*; + public class SecurityDescTest { @Test - public void testNotNullJnlpFile() { + public void testNotNullJnlpFile() throws Exception { Throwable t = null; try { - SecurityDesc securityDesc = new SecurityDesc(new DummyJNLPFile(), SecurityDesc.SANDBOX_PERMISSIONS, "hey!"); + new SecurityDesc(new DummyJNLPFile(), SecurityDesc.SANDBOX_PERMISSIONS, "hey!"); } catch (Exception ex) { t = ex; } - Assert.assertNull("securityDesc should not throw exception", t); + assertNull("securityDesc should not throw exception", t); + } - + @Test(expected = NullPointerException.class) + public void testNullJnlpFile() throws Exception { + new SecurityDesc(null, SecurityDesc.SANDBOX_PERMISSIONS, "hey!"); } @Test - public void testNullJnlpFile() { - Exception ex = null; - try { - SecurityDesc securityDesc = new SecurityDesc(null, SecurityDesc.SANDBOX_PERMISSIONS, "hey!"); - } catch (Exception eex) { - ex = eex; - } - Assert.assertNotNull("Exception should not be null", ex); - Assert.assertTrue("Exception should be " + NullJnlpFileException.class.getName(), ex instanceof NullJnlpFileException); + public void testAppendRecursiveSubdirToCodebaseHostString() throws Exception { + final String urlStr = "http://example.com"; + final String result = SecurityDesc.appendRecursiveSubdirToCodebaseHostString(urlStr); + final String expected = "http://example.com/-"; + assertEquals(expected, result); + } + @Test + public void testAppendRecursiveSubdirToCodebaseHostString2() throws Exception { + final String urlStr = "http://example.com/"; + final String result = SecurityDesc.appendRecursiveSubdirToCodebaseHostString(urlStr); + final String expected = "http://example.com/-"; + assertEquals(expected, result); } + + @Test + public void testAppendRecursiveSubdirToCodebaseHostString3() throws Exception { + final String urlStr = "http://example.com///"; + final String result = SecurityDesc.appendRecursiveSubdirToCodebaseHostString(urlStr); + final String expected = "http://example.com/-"; + assertEquals(expected, result); + } + + @Test + public void testAppendRecursiveSubdirToCodebaseHostStringWithPort() throws Exception { + final String urlStr = "http://example.com:8080"; + final String result = SecurityDesc.appendRecursiveSubdirToCodebaseHostString(urlStr); + final String expected = "http://example.com:8080/-"; + assertEquals(expected, result); + } + + @Test(expected = NullPointerException.class) + public void testAppendRecursiveSubdirToCodebaseHostStringWithNull() throws Exception { + SecurityDesc.appendRecursiveSubdirToCodebaseHostString(null); + } + + @Test + public void testGetHostWithSpecifiedPort() throws Exception { + final URI codebase = new URI("http://example.com"); + final URI expected = new URI("http://example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithFtpScheme() throws Exception { + final URI codebase = new URI("ftp://example.com"); + final URI expected = new URI("ftp://example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithUserInfoWi() throws Exception { + final URI codebase = new URI("http://user:password at example.com"); + final URI expected = new URI("http://user:password at example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithPort() throws Exception { + final URI codebase = new URI("http://example.com:8080"); + final URI expected = new URI("http://example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithPath() throws Exception { + final URI codebase = new URI("http://example.com/applet/codebase/"); + final URI expected = new URI("http://example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test + public void testGetHostWithSpecifiedPortWithAll() throws Exception { + final URI codebase = new URI("ftp://user:password at example.com:8080/applet/codebase/"); + final URI expected = new URI("ftp://user:password at example.com:80"); + assertEquals(expected, SecurityDesc.getHostWithSpecifiedPort(codebase, 80)); + } + + @Test(expected = NullPointerException.class) + public void testGetHostWithSpecifiedPortWithNull() throws Exception { + SecurityDesc.getHostWithSpecifiedPort(null, 80); + } + + @Test + public void testGetHost() throws Exception { + final URI codebase = new URI("http://example.com"); + final URI expected = new URI("http://example.com"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithFtpScheme() throws Exception { + final URI codebase = new URI("ftp://example.com"); + final URI expected = new URI("ftp://example.com"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithUserInfo() throws Exception { + final URI codebase = new URI("http://user:password at example.com"); + final URI expected = new URI("http://user:password at example.com"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithPort() throws Exception { + final URI codebase = new URI("http://example.com:8080"); + final URI expected = new URI("http://example.com:8080"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithPath() throws Exception { + final URI codebase = new URI("http://example.com/applet/codebase/"); + final URI expected = new URI("http://example.com"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test + public void testGetHostWithAll() throws Exception { + final URI codebase = new URI("ftp://user:password at example.com:8080/applet/codebase/"); + final URI expected = new URI("ftp://user:password at example.com:8080"); + assertEquals(expected, SecurityDesc.getHost(codebase)); + } + + @Test(expected = NullPointerException.class) + public void testGetHostNull() throws Exception { + SecurityDesc.getHost(null); + } + + @Test + public void testGetHostWithAppendRecursiveSubdirToCodebaseHostString() throws Exception { + final URI codebase = new URI("ftp://user:password at example.com:8080/applet/codebase/"); + final String expected = "ftp://user:password at example.com:8080/-"; + assertEquals(expected, SecurityDesc.appendRecursiveSubdirToCodebaseHostString(SecurityDesc.getHost(codebase).toString())); + } + + @Test + public void testGetHostWithSpecifiedPortWithAppendRecursiveSubdirToCodebaseHostString() throws Exception { + final URI codebase = new URI("ftp://user:password at example.com:8080/applet/codebase/"); + final String expected = "ftp://user:password at example.com:80/-"; + assertEquals(expected, SecurityDesc.appendRecursiveSubdirToCodebaseHostString(SecurityDesc.getHostWithSpecifiedPort(codebase, 80).toString())); + } + } From aazores at redhat.com Thu Jul 31 21:03:37 2014 From: aazores at redhat.com (Andrew Azores) Date: Thu, 31 Jul 2014 17:03:37 -0400 Subject: [rfc][icedtea-web] prevent CCE from plugin appeltviewer In-Reply-To: <53DA4CB9.5080000@redhat.com> References: <53DA2F43.4090602@redhat.com> <1490535152.14893778.1406813808772.JavaMail.zimbra@redhat.com> <53DA4CB9.5080000@redhat.com> Message-ID: <53DAAF29.10709@redhat.com> On 07/31/2014 10:03 AM, Jiri Vanek wrote: > On 07/31/2014 03:36 PM, Jie Kang wrote: >>> >>> >>> ok for head and 1.5 ? >>> >>> >>> J. >>> >> Hello, >> >> >> Good catch! >> >> I think now that we check for CCE, we should output something to let >> us know that the CCE occurred since behaviour is affected. >> >> Also for the following code: >> >> >> + if (panel.getAppletClassLoader() instanceof >> JNLPClassLoader) { >> + JNLPClassLoader loader = (JNLPClassLoader) >> panel.getAppletClassLoader(); >> >> - URL localURL = null; >> - if (loader.resourceAvailableLocally(resourceName)) { >> - url = loader.getResource(resourceName); >> + URL localURL = null; >> + if >> (loader.resourceAvailableLocally(resourceName)) { >> + url = loader.getResource(resourceName); >> + } >> + >> + url = localURL != null ? localURL : url; >> } >> - >> - url = localURL != null ? localURL : url; >> >> >> I think that the behaviour of the function changed a little. If a CCE >> occurs, the AppletImageRef returned is that of url that includes >> codebase. Is this valid? I think if CCE occurs then we should return >> null. >> >> > > + > > > What happens in the first hunk if the appletClassLoader isn't a > JNLPClassLoader? > > > > The url will have its default value and if this is invalid, then it > will die alter. BUt in most cases it will work. > > > J. Well, it can't be any more fatal than an uncaught ClassCastException. +1 push 1.5 and HEAD from me. Thanks, -- Andrew A From ldracz at icedtea.classpath.org Wed Jul 30 20:31:15 2014 From: ldracz at icedtea.classpath.org (ldracz at icedtea.classpath.org) Date: Wed, 30 Jul 2014 20:31:15 -0000 Subject: /hg/icedtea-web: Quick Fix ChangeLog formatting Message-ID: changeset c754f4b58ac5 in /hg/icedtea-web details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=c754f4b58ac5 author: Lukasz Dracz date: Wed Jul 30 16:30:56 2014 -0400 Quick Fix ChangeLog formatting diffstat: ChangeLog | 32 ++++++++++++++++---------------- 1 files changed, 16 insertions(+), 16 deletions(-) diffs (40 lines): diff -r e582d7f85222 -r c754f4b58ac5 ChangeLog --- a/ChangeLog Wed Jul 30 16:23:02 2014 -0400 +++ b/ChangeLog Wed Jul 30 16:30:56 2014 -0400 @@ -1,20 +1,20 @@ 2014-07-30 Andrew Azores - Lukasz Dracz - - * netx/net/sourceforge/jnlp/resources/Messages.properties - (PEHelpMenu, PEAboutPolicyEditorItem, PEPolicyEditorHelpItem, - PEAboutDialogTitle, PEAboutDialogContent, PEHelpDialogTitle, - PEHelpDialogContent, PEHelpMenuMnemonic, PEAboutPolicyEditorItemMnemonic, - PEPolicyEditorHelpItemMnemonic, PEAboutPolicyEditorCloseAccelerator):added - * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java - (policyEditorHelpButtonAction, aboutPolicyEditorButtonAction): added and used - to open dialogs - (helpMenu, aboutPolicyEditorItem, policyEditorHelpItem): added - * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorAboutDialog.java - Implements a frame that uses a textpane which takes html within a scrollpane - to show dialogs in. - (close, setupLayout): added - (CloseKeyListener): added class + Lukasz Dracz + + * netx/net/sourceforge/jnlp/resources/Messages.properties + (PEHelpMenu, PEAboutPolicyEditorItem, PEPolicyEditorHelpItem, + PEAboutDialogTitle, PEAboutDialogContent, PEHelpDialogTitle, + PEHelpDialogContent, PEHelpMenuMnemonic, PEAboutPolicyEditorItemMnemonic, + PEPolicyEditorHelpItemMnemonic, PEAboutPolicyEditorCloseAccelerator):added + * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditor.java + (policyEditorHelpButtonAction, aboutPolicyEditorButtonAction): added and used + to open dialogs + (helpMenu, aboutPolicyEditorItem, policyEditorHelpItem): added + * netx/net/sourceforge/jnlp/security/policyeditor/PolicyEditorAboutDialog.java + Implements a frame that uses a textpane which takes html within a scrollpane + to show dialogs in. + (close, setupLayout): added + (CloseKeyListener): added class 2014-07-30 Jie Kang