From linuxhippy at gmail.com Sat May 3 12:31:48 2008 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Sat, 3 May 2008 14:31:48 +0200 Subject: [OpenJDK 2D-Dev] Questions about the X11 backend Message-ID: <194f62550805030531n3c993e15q33f61eac86ab953d@mail.gmail.com> Hello, I've (again) some questions about the X11 pipeline, just a few words would be really helpful: 1.) When looking at X11SurfaceData.c, there are several notes that this provides support for the software-loops to work directly on the native data, e.g.: > This file contains support code for loops using the SurfaceData > interface to talk to an X11 drawable from native code. I wonder where, and what the required mechanisms are to allow this working? I commented out all blit-"loops"-registrations in X11XPMBlit(Bg)Loops and although slow, everything seems still to work ... amazing :) 2.) In X11SurfaceData.java the pipeline-setup quite confuses me: Whats lazy pipe, and why is it set for everything if x11txpipe is null? Is "sg2d.loops = getRenderLoops(sg2d);" only there to be overridden if the rendering mode changes? 3.) Why is there a javaGC and a cachedGC in _X11SDOps? 4.) Is DGA still used? I see quite a lot #ifdef's for missing MITSHM and DGA, but I wonder wether there are still systems without MITSHM, and the other way round for DGA. Thanks for your patience and help, lg Clemens From Jim.A.Graham at Sun.COM Sat May 3 21:03:59 2008 From: Jim.A.Graham at Sun.COM (Jim Graham) Date: Sat, 03 May 2008 14:03:59 -0700 Subject: [OpenJDK 2D-Dev] Questions about the X11 backend In-Reply-To: <194f62550805030531n3c993e15q33f61eac86ab953d@mail.gmail.com> References: <194f62550805030531n3c993e15q33f61eac86ab953d@mail.gmail.com> Message-ID: <0K0B00F1096M0R00@fe-sfbay-09.sun.com> Hi Clemens, Clemens Eisserer wrote: > Hello, > > I've (again) some questions about the X11 pipeline, just a few words > would be really helpful: > > > 1.) When looking at X11SurfaceData.c, there are several notes that > this provides support for the software-loops to work directly on the > native data, e.g.: >> This file contains support code for loops using the SurfaceData >> interface to talk to an X11 drawable from native code. > I wonder where, and what the required mechanisms are to allow this working? I forget the details right now and I'm not at my desk, but there is a native counterpart to SurfaceData in the share/native/sun/java2d tree. It defines ways to lock and unlock surfaces and get access to their pixels for the native loops to work on. I believe that the functions are defined in SurfaceData.h and implemented in X11SurfaceData.c. > I commented out all blit-"loops"-registrations in X11XPMBlit(Bg)Loops > and although slow, everything seems still to work ... amazing :) I believe in the absence of this mechanism the standard Blit(Bg) loops will be run which request a buffer of pixels from the source surface data (requiring them to be read via X11) copy them to a destination buffer (which may need to be read from the dest if the blit is non-opaque) and then send the results back. The X11PM loops bypass all of that network traffic by using Pixmap CopyArea X11 requests, so they are simply an (important) optimization, but not required for correct behavior. > 2.) In X11SurfaceData.java the pipeline-setup quite confuses me: > Whats lazy pipe, and why is it set for everything if x11txpipe is null? > Is "sg2d.loops = getRenderLoops(sg2d);" only there to be overridden if > the rendering mode changes? LazyPipe is similar to InvalidPipe which does lazy validation of pipelines. InvalidPipe simply waits for all of the attribute/state changes to be over and for the first rendering request to happen before we bother (re)validating the pipelines. In the case of X11 windows, though, if I recall correctly, there are some aspects of an X11 Surface that cannot be queried/completely initialized until a window is visible, so we want to delay the first real pipeline validation until that happens. The LazyPipe simply checks to be sure that the window is visible before it allows the lazy validation of the pipeline data - so it is even lazier than the InvalidPipe which just waits for the first rendering request. > 3.) Why is there a javaGC and a cachedGC in _X11SDOps? One is (the javaGC one probably?) for use when servicing fillRect, etc. requests and is set up with/validated against the latest attributes in the most recently used Graphics object. Those probably include clip, color, and XOR vs. COPY mode. But sometimes we need to issue some X11 rendering requests that are not directly triggered by a rendering request from the Java level. An example would be when we need to read back or send pixel data to X11 surfaces for software loops to operate on the pixels - we don't want to inherit unwanted attributes (like XOR mode) from rendering requests so we use our own private GC that only gets used for our internal needs. > 4.) Is DGA still used? I see quite a lot #ifdef's for missing MITSHM > and DGA, but I wonder wether there are still systems without MITSHM, > and the other way round for DGA. I believe it may no longer be in use, but Dmitri would have to answer to be sure. It was a Sun-specific API for coordinating talking directly to the framebuffer with the X11 server. Since then more work on the X11 and OpenGL pipelines and the use of MITSHM and the fact that Sun stopped shipping framebuffers with DGA drivers at some point made the importance of that pipeline wane... > Thanks for your patience and help, lg Clemens Thanks for looking into things in such depth! ;-) ...jim From Phil.Race at Sun.COM Sun May 4 01:25:47 2008 From: Phil.Race at Sun.COM (Phil Race) Date: Sat, 03 May 2008 18:25:47 -0700 Subject: [OpenJDK 2D-Dev] Questions about the X11 backend In-Reply-To: <0K0B00F1096M0R00@fe-sfbay-09.sun.com> References: <194f62550805030531n3c993e15q33f61eac86ab953d@mail.gmail.com> <0K0B00F1096M0R00@fe-sfbay-09.sun.com> Message-ID: <481D109B.1080703@sun.com> Jim Graham wrote: > Hi Clemens, >> 4.) Is DGA still used? I see quite a lot #ifdef's for missing MITSHM >> and DGA, but I wonder wether there are still systems without MITSHM, >> and the other way round for DGA. > > I believe it may no longer be in use, but Dmitri would have to answer > to be sure. It was a Sun-specific API for coordinating talking > directly to the framebuffer with the X11 server. Since then more work > on the X11 and OpenGL pipelines and the use of MITSHM and the fact > that Sun stopped shipping framebuffers with DGA drivers at some point > made the importance of that pipeline wane... Well, still its in daily use on my Solaris 10 SPARC SB2000 with FFB2+. So I'm not sure I'd want to ditch DGA quite yet. I think it should stay at least for JDK7. -phil. From Dmitri.Trembovetski at Sun.COM Sun May 4 19:18:46 2008 From: Dmitri.Trembovetski at Sun.COM (Dmitri Trembovetski) Date: Sun, 04 May 2008 12:18:46 -0700 Subject: [OpenJDK 2D-Dev] Questions about the X11 backend In-Reply-To: <481D109B.1080703@sun.com> References: <194f62550805030531n3c993e15q33f61eac86ab953d@mail.gmail.com> <0K0B00F1096M0R00@fe-sfbay-09.sun.com> <481D109B.1080703@sun.com> Message-ID: <481E0C16.1040208@Sun.COM> Phil is right, the pipeline is still being used and is the fastest way to render on the framebuffers where it is used. As for the MITSHM ifdefs, I believe they are there for some licensees who might want to build the jdk w/o the MITSHM support. Although I would not hazard to guess if it even builds w/o MITSHM now, I haven't tried in a while. Thanks, Dmitri Phil Race wrote: > Jim Graham wrote: >> Hi Clemens, >>> 4.) Is DGA still used? I see quite a lot #ifdef's for missing MITSHM >>> and DGA, but I wonder wether there are still systems without MITSHM, >>> and the other way round for DGA. >> >> I believe it may no longer be in use, but Dmitri would have to answer >> to be sure. It was a Sun-specific API for coordinating talking >> directly to the framebuffer with the X11 server. Since then more work >> on the X11 and OpenGL pipelines and the use of MITSHM and the fact >> that Sun stopped shipping framebuffers with DGA drivers at some point >> made the importance of that pipeline wane... > > Well, still its in daily use on my Solaris 10 SPARC SB2000 with FFB2+. > So I'm not sure I'd want to ditch DGA quite yet. I think it should stay > at least for JDK7. > > -phil. > > From Phil.Race at Sun.COM Mon May 5 19:16:15 2008 From: Phil.Race at Sun.COM (Phil Race) Date: Mon, 05 May 2008 12:16:15 -0700 Subject: [OpenJDK 2D-Dev] PATCH: drawString/drawTextlayout with fon trotation In-Reply-To: <688157.95675.qm@web39208.mail.mud.yahoo.com> References: <688157.95675.qm@web39208.mail.mud.yahoo.com> Message-ID: <481F5CFF.8060104@sun.com> Doug, Douglas Felt wrote: > When the font transform has a rotation and offset, Openjdk 7 doesn't > position text the same in drawString and TextLayout. > > There are still small discrepancies but this fixes the main problem. Yes, I see this fixes the case for FRACTIONALMETRICS_ON, but there's also a problem with the non-FM case. The rotated advances are rounded so drawString deviates from the theoretical rotated baseline, whereas TextLayout doesn't. I'll also fix that so it behaves the same in both cases, and is also then consistent with the commercial JDK. I've filed bug 6697721 to track this. The change to AttributeValues is needed but in fact was already made as part of fix 6683472 - which was affecting 6u10. I can easily re-use the regression test from that bug, so I don't need to ask for a test in this case. -phil From lists at munckfish.net Tue May 6 12:37:19 2008 From: lists at munckfish.net (Dan Munckton) Date: Tue, 06 May 2008 13:37:19 +0100 Subject: [OpenJDK 2D-Dev] [PATCH] 6636469: Java Fullscreen Exclusive Mode not working with Xorg server 1.3.0 and above In-Reply-To: <47C8296A.1080405@Sun.COM> References: <1197121416.14405.50.camel@dylan> <475AF914.1090309@sun.com> <1197369278.7494.8.camel@dylan> <1200497859.7514.14.camel@dylan> <1200593410.6546.2.camel@dylan> <478FA100.7070401@Sun.COM> <1203114142.12409.2.camel@dylan> <47B6219B.50005@Sun.COM> <1204201375.10919.64.camel@dylan> <47C6E57B.3050906@Sun.COM> <47C6E79A.5060005@Sun.COM> <47C71129.204@Sun.COM> <1204294080.23914.9.camel@dylan> <47C8296A.1080405@Sun.COM> Message-ID: <1210077439.8444.36.camel@dylan> Hi Dmitri This patch has gone into the Ubuntu OpenJDK6 package and has shipped with Hardy 8.04 [0]. It's also been submitted to the IcedTea guys [1]. Any idea on when it could make it into a Sun consumer release? Cheers Dan [0] log for 6b08-0ubuntu2 https://launchpad.net/ubuntu/+source/openjdk-6/ [1] http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5d2b5714c8c2 From Dmitri.Trembovetski at Sun.COM Wed May 7 06:00:43 2008 From: Dmitri.Trembovetski at Sun.COM (Dmitri Trembovetski) Date: Tue, 06 May 2008 23:00:43 -0700 Subject: [OpenJDK 2D-Dev] [PATCH] 6636469: Java Fullscreen Exclusive Mode not working with Xorg server 1.3.0 and above In-Reply-To: <1210077439.8444.36.camel@dylan> References: <1197121416.14405.50.camel@dylan> <475AF914.1090309@sun.com> <1197369278.7494.8.camel@dylan> <1200497859.7514.14.camel@dylan> <1200593410.6546.2.camel@dylan> <478FA100.7070401@Sun.COM> <1203114142.12409.2.camel@dylan> <47B6219B.50005@Sun.COM> <1204201375.10919.64.camel@dylan> <47C6E57B.3050906@Sun.COM> <47C6E79A.5060005@Sun.COM> <47C71129.204@Sun.COM> <1204294080.23914.9.camel@dylan> <47C8296A.1080405@Sun.COM> <1210077439.8444.36.camel@dylan> Message-ID: <4821458B.9010006@Sun.COM> Hi Dan, thanks for doing this. I'll integrate the fix into java7 (and possibly Sun's openjdk6 tree as well) after Javaone. Sorry about dragging this for so long. One piece of good news is that I have integrated the other fix into 6u10 and openjdk6 - to better recognize xinerama, or the lack of it (6599351). Thanks, Dmitri Dan Munckton wrote: > Hi Dmitri > > This patch has gone into the Ubuntu OpenJDK6 package and has shipped > with Hardy 8.04 [0]. > > It's also been submitted to the IcedTea guys [1]. > > Any idea on when it could make it into a Sun consumer release? > > Cheers > > Dan > > [0] log for 6b08-0ubuntu2 > https://launchpad.net/ubuntu/+source/openjdk-6/ > [1] > http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5d2b5714c8c2 > From phil.race at sun.com Tue May 13 23:24:50 2008 From: phil.race at sun.com (phil.race at sun.com) Date: Tue, 13 May 2008 23:24:50 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 6699843: IllegalArgumentException when using Graphics.drawString( "", 0, 0 ) Message-ID: <20080513232502.4287F27FD7@hg.openjdk.java.net> Changeset: fb61ff1cc5fd Author: prr Date: 2008-05-13 16:18 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/fb61ff1cc5fd 6699843: IllegalArgumentException when using Graphics.drawString( "", 0, 0 ) Reviewed-by: igor, tdv ! src/share/classes/sun/java2d/SunGraphics2D.java + test/java/awt/Graphics2D/DrawString/EmptyAttrString.java From dmitri.trembovetski at sun.com Tue May 13 23:55:14 2008 From: dmitri.trembovetski at sun.com (dmitri.trembovetski at sun.com) Date: Tue, 13 May 2008 23:55:14 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 6636469: Java Fullscreen Exclusive Mode not working with Xorg server 1.3.0 and above Message-ID: <20080513235526.748FA28004@hg.openjdk.java.net> Changeset: 11a35970b90e Author: tdv Date: 2008-05-13 16:46 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/11a35970b90e 6636469: Java Fullscreen Exclusive Mode not working with Xorg server 1.3.0 and above Summary: improve the check for full exclusive screen support by analyzing RANDR extension version Reviewed-by: tdv, prr Contributed-by: Dan Munckton ! src/solaris/native/sun/awt/awt_GraphicsEnv.c From phil.race at sun.com Wed May 14 00:03:24 2008 From: phil.race at sun.com (phil.race at sun.com) Date: Wed, 14 May 2008 00:03:24 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 3 new changesets Message-ID: <20080514000359.BD15E2800F@hg.openjdk.java.net> Changeset: 57bcfeb3d8d8 Author: prr Date: 2008-05-13 16:49 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/57bcfeb3d8d8 6696292: Printing transformed images accuracy problems Reviewed-by: jgodinez, igor ! src/share/classes/sun/print/PSPathGraphics.java ! src/windows/classes/sun/awt/windows/WPathGraphics.java Changeset: 4092c04aeae7 Author: prr Date: 2008-05-13 16:56 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4092c04aeae7 6697721: OpenJDK: rotated text baseline different between TextLayout and drawString Reviewed-by: prr, igor Contributed-by: dougfelt at yahoo.com ! src/share/native/sun/font/freetypeScaler.c ! test/java/awt/Graphics2D/DrawString/RotTransText.java Changeset: be7daefad89f Author: prr Date: 2008-05-13 16:57 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/be7daefad89f Merge From dmitri.trembovetski at sun.com Wed May 14 16:26:00 2008 From: dmitri.trembovetski at sun.com (dmitri.trembovetski at sun.com) Date: Wed, 14 May 2008 16:26:00 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 6604044: java crashes talking to second X screen Message-ID: <20080514162612.3C32328043@hg.openjdk.java.net> Changeset: ed68352f7e42 Author: tdv Date: 2008-05-14 09:16 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/ed68352f7e42 6604044: java crashes talking to second X screen Reviewed-by: prr ! src/solaris/native/sun/awt/awt_GraphicsEnv.c From Dmitri.Trembovetski at Sun.COM Wed May 14 16:43:06 2008 From: Dmitri.Trembovetski at Sun.COM (Dmitri Trembovetski) Date: Wed, 14 May 2008 09:43:06 -0700 Subject: [OpenJDK 2D-Dev] [PATCH] 6636469: Java Fullscreen Exclusive Mode not working with Xorg server 1.3.0 and above In-Reply-To: <1210077439.8444.36.camel@dylan> References: <1197121416.14405.50.camel@dylan> <475AF914.1090309@sun.com> <1197369278.7494.8.camel@dylan> <1200497859.7514.14.camel@dylan> <1200593410.6546.2.camel@dylan> <478FA100.7070401@Sun.COM> <1203114142.12409.2.camel@dylan> <47B6219B.50005@Sun.COM> <1204201375.10919.64.camel@dylan> <47C6E57B.3050906@Sun.COM> <47C6E79A.5060005@Sun.COM> <47C71129.204@Sun.COM> <1204294080.23914.9.camel@dylan> <47C8296A.1080405@Sun.COM> <1210077439.8444.36.camel@dylan> Message-ID: <482B169A.5030500@Sun.COM> Hi Dan, I have integrated the fix into openjdk6 and openjdk7. It's not clear that I will be allowed to put it into 6u10 (we have to justify putting stuff into this release at this point - well past beta) but that shouldn't be a big problem for two reasons: - fix for 6604044 (which _is_ in 6u10, openjdk6/7) improves xinerama detection - it will not enable xinerama support for the "fake" xinerama advertised by the latest X servers - since your fix is in icedtea and ubuntu (and now in the upstream openjdk6/7, along with 6604044), major linux distributions will have a version that works fine Thanks, Dmitri Dan Munckton wrote: > Hi Dmitri > > This patch has gone into the Ubuntu OpenJDK6 package and has shipped > with Hardy 8.04 [0]. > > It's also been submitted to the IcedTea guys [1]. > > Any idea on when it could make it into a Sun consumer release? > > Cheers > > Dan > > [0] log for 6b08-0ubuntu2 > https://launchpad.net/ubuntu/+source/openjdk-6/ > [1] > http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5d2b5714c8c2 > From dmitri.trembovetski at sun.com Wed May 14 23:12:21 2008 From: dmitri.trembovetski at sun.com (dmitri.trembovetski at sun.com) Date: Wed, 14 May 2008 23:12:21 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 6675596: SurfaceManagerFactory should allow plugging in different implementations Message-ID: <20080514231243.D9EE8280E1@hg.openjdk.java.net> Changeset: 4af4867ed787 Author: tdv Date: 2008-05-14 16:05 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4af4867ed787 6675596: SurfaceManagerFactory should allow plugging in different implementations Reviewed-by: tdv, campbell Contributed-by: Roman Kennke ! src/share/classes/sun/awt/image/SunVolatileImage.java + src/share/classes/sun/java2d/SurfaceManagerFactory.java ! src/solaris/classes/sun/awt/X11GraphicsEnvironment.java - src/solaris/classes/sun/java2d/SurfaceManagerFactory.java + src/solaris/classes/sun/java2d/UnixSurfaceManagerFactory.java ! src/windows/classes/sun/awt/Win32GraphicsEnvironment.java - src/windows/classes/sun/java2d/SurfaceManagerFactory.java + src/windows/classes/sun/java2d/WindowsSurfaceManagerFactory.java From Dmitri.Trembovetski at Sun.COM Wed May 14 23:22:01 2008 From: Dmitri.Trembovetski at Sun.COM (Dmitri Trembovetski) Date: Wed, 14 May 2008 16:22:01 -0700 Subject: [OpenJDK 2D-Dev] [PATCH] SurfaceManagerFactory In-Reply-To: <47DAE64E.2060409@Sun.COM> References: <1204044836.7087.42.camel@mercury> <47C453C7.9060402@Sun.COM> <1204052914.7087.53.camel@mercury> <47C48232.50009@Sun.COM> <1205137701.13416.11.camel@mercury> <47D5FD5A.6050805@Sun.COM> <47DADD12.3010507@Sun.COM> <1205527747.9971.26.camel@mercury> <47DAE64E.2060409@Sun.COM> Message-ID: <482B7419.7040005@Sun.COM> Hi Roman, OK, I have finally integrated this fix (with a couple of minor changes after internal code review): http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4af4867ed787 From the code review by Chris (should have CC-ed you in the first place): >> SMF.java >> 49: Take out the "Unix" part. > > Fixed. > >> 50,51: I don't think that's what it does. > > Removed the comment. If this is added later, > will add back in. > >> 56, 61, 72, 84: Unnecessary blank lines. > > Removed. > >> 66: {@code null} > > Fixed. > >> 75: I'd prefer an IllegalArgumentException with an explanatory message >> (e.g. "factory must be non-null"). > > Fixed. Thanks, Dmitri Dmitri Trembovetski wrote: > > Hi Roman, > > Roman Kennke wrote: >>> I can tell that someone didn't build on windows >>> since the build fails there =) The fix should have deleted >>> src/windows/classes/sun/java2d/SurfaceManagerFactory.java >>> just like it did the solaris/ one. >> >> Whoops, did I forget that? I was sure I deleted it locally, so somehow >> it didn't make it into the patch. Sorry for that. > > No problem, I should have spotted it during review anyway. > I'm just not used to reviewing by looking at the raw diff > output, we use that webrev tool for generating html for > code reviews, much easier on the eyes. > >>> In general, if the fix touches shared code it is >>> very advisable to build on all platforms - at >>> least on 32-bit solaris/linux/windows. >> >> The problem is, I don't have a Windows box (easily) available. I will >> have to setup one at work, including all the build machinery for >> OpenJDK. > > I myself use vmware to compile on windows if needed- then you'd only need > a windows license (and the compilers - although someone did compile > the jdk with the free VS2008, I believe). Of course, if you'll be > touching > any hw-acceleration related stuff, you'll need a real box to test on, > so you may as well get the box. > > Thanks, > Dmitri > From lists at munckfish.net Thu May 15 15:11:37 2008 From: lists at munckfish.net (Dan Munckton) Date: Thu, 15 May 2008 16:11:37 +0100 Subject: [OpenJDK 2D-Dev] [PATCH] 6636469: Java Fullscreen Exclusive Mode not working with Xorg server 1.3.0 and above In-Reply-To: <482B169A.5030500@Sun.COM> References: <1197121416.14405.50.camel@dylan> <475AF914.1090309@sun.com> <1197369278.7494.8.camel@dylan> <1200497859.7514.14.camel@dylan> <1200593410.6546.2.camel@dylan> <478FA100.7070401@Sun.COM> <1203114142.12409.2.camel@dylan> <47B6219B.50005@Sun.COM> <1204201375.10919.64.camel@dylan> <47C6E57B.3050906@Sun.COM> <47C6E79A.5060005@Sun.COM> <47C71129.204@Sun.COM> <1204294080.23914.9.camel@dylan> <47C8296A.1080405@Sun.COM> <1210077439.8444.36.camel@dylan> <482B169A.5030500@Sun.COM> Message-ID: <1210864297.3400.24.camel@dylan> Hi > I have integrated the fix into openjdk6 and openjdk7. Great. Thank you! > It's not clear that I will be allowed to put it into > 6u10 (we have to justify putting stuff into this release > at this point - well past beta) but that shouldn't be > a big problem for two reasons: > - fix for 6604044 (which _is_ in 6u10, openjdk6/7) improves > xinerama detection - it will not enable xinerama support for the > "fake" xinerama advertised by the latest X servers > - since your fix is in icedtea and ubuntu (and now in > the upstream openjdk6/7, along with 6604044), major > linux distributions will have a version that works fine I understand. I'm really happy to have managed to get the patch into the main distros already. But I do think it would be good if it does get into 6u10. Java 6 was the first time that full screen mode became possible with Java on Linux. Without this fix the consumer build appears to have regressed. Thanks Dan From igor.nekrestyanov at sun.com Thu May 15 23:22:00 2008 From: igor.nekrestyanov at sun.com (igor.nekrestyanov at sun.com) Date: Thu, 15 May 2008 23:22:00 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 6630501: CRASH: JCK test eats much memory and jvm crashes Message-ID: <20080515232223.508A82815B@hg.openjdk.java.net> Changeset: bf2c66511d1b Author: igor Date: 2008-05-16 03:10 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/bf2c66511d1b 6630501: CRASH: JCK test eats much memory and jvm crashes Reviewed-by: bae, prr ! src/share/classes/sun/font/Type1Font.java From linuxhippy at gmail.com Fri May 16 17:43:07 2008 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Fri, 16 May 2008 19:43:07 +0200 Subject: [OpenJDK 2D-Dev] How are transformations done and some other questions Message-ID: <194f62550805161043q334cdaf0tead568d3d54f520c@mail.gmail.com> Hello, 1.) I am currently investigating how AffineTransformations are done by Java2D, and for the X11 Pipeline it seems for anything but translations the PixelToShapeConverter is called and the general path/fill algorythmns are used. In the case of a simply Line, it is rotated and then sent to the X11Renderer which continues processing as nothing would have happended. Does the OpenGL pipeline work the same way? I saw that it registers some TransformBlits, so is the tranformation of everything exctept images handled by Java2D? I wonder because this would mean that for images I would have to adjust the context to rotate, but for everything else I would have to reset it. Seems I mess things somehow up :-/ 2.) The X11-Pipeline does clipping itself (took me some time to understand why the validation code always passed without re-seting the current clip^^) for drawImage. Why was this done? Thanks, lg Clemens From linuxhippy at gmail.com Mon May 19 09:21:30 2008 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Mon, 19 May 2008 11:21:30 +0200 Subject: [OpenJDK 2D-Dev] How are transformations done and some other questions In-Reply-To: <194f62550805161043q334cdaf0tead568d3d54f520c@mail.gmail.com> References: <194f62550805161043q334cdaf0tead568d3d54f520c@mail.gmail.com> Message-ID: <194f62550805190221q16cd0748w9354d56891c0982e@mail.gmail.com> Sorry, seems I've mixed some things up. After stepping through with a debugger things are much clearer now :) Sorry for the traffic, lg Clemens 2008/5/16 Clemens Eisserer : > Hello, > > 1.) I am currently investigating how AffineTransformations are done by > Java2D, and for the X11 Pipeline it seems for anything but > translations the PixelToShapeConverter is called and the general > path/fill algorythmns are used. > In the case of a simply Line, it is rotated and then sent to the > X11Renderer which continues processing as nothing would have > happended. > > Does the OpenGL pipeline work the same way? > I saw that it registers some TransformBlits, so is the tranformation > of everything exctept images handled by Java2D? > I wonder because this would mean that for images I would have to > adjust the context to rotate, but for everything else I would have to > reset it. > Seems I mess things somehow up :-/ > > 2.) The X11-Pipeline does clipping itself (took me some time to > understand why the validation code always passed without re-seting the > current clip^^) for drawImage. Why was this done? > > Thanks, lg Clemens > From Dmitri.Trembovetski at Sun.COM Mon May 19 16:28:53 2008 From: Dmitri.Trembovetski at Sun.COM (Dmitri Trembovetski) Date: Mon, 19 May 2008 09:28:53 -0700 Subject: [OpenJDK 2D-Dev] How are transformations done and some other questions In-Reply-To: <194f62550805190221q16cd0748w9354d56891c0982e@mail.gmail.com> References: <194f62550805161043q334cdaf0tead568d3d54f520c@mail.gmail.com> <194f62550805190221q16cd0748w9354d56891c0982e@mail.gmail.com> Message-ID: <4831AAC5.9030203@Sun.COM> That's the best kind of question - that answers itself up after a while =) Dmitri Clemens Eisserer wrote: > Sorry, seems I've mixed some things up. > > After stepping through with a debugger things are much clearer now :) > > Sorry for the traffic, lg Clemens > > 2008/5/16 Clemens Eisserer : >> Hello, >> >> 1.) I am currently investigating how AffineTransformations are done by >> Java2D, and for the X11 Pipeline it seems for anything but >> translations the PixelToShapeConverter is called and the general >> path/fill algorythmns are used. >> In the case of a simply Line, it is rotated and then sent to the >> X11Renderer which continues processing as nothing would have >> happended. >> >> Does the OpenGL pipeline work the same way? >> I saw that it registers some TransformBlits, so is the tranformation >> of everything exctept images handled by Java2D? >> I wonder because this would mean that for images I would have to >> adjust the context to rotate, but for everything else I would have to >> reset it. >> Seems I mess things somehow up :-/ >> >> 2.) The X11-Pipeline does clipping itself (took me some time to >> understand why the validation code always passed without re-seting the >> current clip^^) for drawImage. Why was this done? >> >> Thanks, lg Clemens >> From phil.race at sun.com Mon May 19 18:32:01 2008 From: phil.race at sun.com (phil.race at sun.com) Date: Mon, 19 May 2008 18:32:01 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 6611637: NullPointerException in sun.font.GlyphLayout$EngineRecord.init Message-ID: <20080519183214.E053C28297@hg.openjdk.java.net> Changeset: 075152aa892e Author: prr Date: 2008-05-19 11:25 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/075152aa892e 6611637: NullPointerException in sun.font.GlyphLayout$EngineRecord.init Reviewed-by: tdv, jgodinez ! src/share/classes/sun/font/GlyphLayout.java From Jim.A.Graham at Sun.COM Mon May 19 19:09:50 2008 From: Jim.A.Graham at Sun.COM (Jim Graham) Date: Mon, 19 May 2008 12:09:50 -0700 Subject: [OpenJDK 2D-Dev] How are transformations done and some other questions In-Reply-To: <194f62550805190221q16cd0748w9354d56891c0982e@mail.gmail.com> References: <194f62550805161043q334cdaf0tead568d3d54f520c@mail.gmail.com> <194f62550805190221q16cd0748w9354d56891c0982e@mail.gmail.com> Message-ID: <0K1400JWKQKEAN10@fe-sfbay-09.sun.com> And note that we aren't necessarily dealing with transforms in the fastest way in all cases. Until recently we were focused mainly on Swing performance and they mostly dealt with integer translations and integer rendering requests. Nowadays as we focus the platform more on rich clients and scene graphs we are starting to run into the inefficiencies in the transformed shape rendering code. We recently made some major enhancements to the OGL and D3D pipelines in 6u10 to dispatch transformed wide single lines, and filled and drawn rectangles directly to a primitive in the RenderQueue and got a huge performance boost. We'll have to port those changes (along with the D3D pipeline) to JDK7 sometime soon (after we're done fixing bugs in 6u10) and then we'd like to continue doing performance work to make transformations of some other common shapes avoid a lot of the overhead you are seeing here... ...jim Clemens Eisserer wrote: > Sorry, seems I've mixed some things up. > > After stepping through with a debugger things are much clearer now :) > > Sorry for the traffic, lg Clemens > > 2008/5/16 Clemens Eisserer : >> Hello, >> >> 1.) I am currently investigating how AffineTransformations are done by >> Java2D, and for the X11 Pipeline it seems for anything but >> translations the PixelToShapeConverter is called and the general >> path/fill algorythmns are used. >> In the case of a simply Line, it is rotated and then sent to the >> X11Renderer which continues processing as nothing would have >> happended. >> >> Does the OpenGL pipeline work the same way? >> I saw that it registers some TransformBlits, so is the tranformation >> of everything exctept images handled by Java2D? >> I wonder because this would mean that for images I would have to >> adjust the context to rotate, but for everything else I would have to >> reset it. >> Seems I mess things somehow up :-/ >> >> 2.) The X11-Pipeline does clipping itself (took me some time to >> understand why the validation code always passed without re-seting the >> current clip^^) for drawImage. Why was this done? >> >> Thanks, lg Clemens >> From linuxhippy at gmail.com Mon May 19 21:05:11 2008 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Mon, 19 May 2008 23:05:11 +0200 Subject: [OpenJDK 2D-Dev] How are transformations done and some other questions In-Reply-To: <0K1400JWKQKEAN10@fe-sfbay-09.sun.com> References: <194f62550805161043q334cdaf0tead568d3d54f520c@mail.gmail.com> <194f62550805190221q16cd0748w9354d56891c0982e@mail.gmail.com> <0K1400JWKQKEAN10@fe-sfbay-09.sun.com> Message-ID: <194f62550805191405l66723fddp9fcb71ddaf6ff9de@mail.gmail.com> Hi, Thanks for the answers, I already have a guilty conscience because of asking that much. All in all the pipelines don't seem to be that complicated, ist just ... beginning with something new is always hard ;) > We recently made some major enhancements to the OGL and D3D pipelines in > 6u10 to dispatch transformed wide single lines, and filled and drawn > rectangles directly to a primitive in the RenderQueue and got a huge > performance boost. We'll have to port those changes (along with the D3D > pipeline) to JDK7 sometime soon (after we're done fixing bugs in 6u10) and > then we'd like to continue doing performance work to make transformations of > some other common shapes avoid a lot of the overhead you are seeing here... Thanks for letting me know about this, I'll have a look as soon as its available :) By the way, I've again another question about ScaledBlit: The scale-method does handle over the already scaled destination dimensions, but not the AffineTranform used to scale it: public void Scale(SurfaceData src, SurfaceData dst, Composite comp, Region clip, int sx1, int sy1, int sx2, int sy2, double dx1, double dy1, double dx2, double dy2) The OpenGL pipeline calls from there its OGLBlitLoops.IsoBlit-Method, and simply passes the "null" for the AffineTransform-Parameter along with the already scaled coordinates and than calls validateContext, so although most likely the scale transformation is used for all primitives, the scaled blit resets the transformation just and the next primitive rendered sets it again. I am also quite confused about the validation-code: // validate transform if (xform == null) { if (xformInUse) { resetTransform(); xformInUse = false; } } else { setTransform(xform); xformInUse = true; } doesn't this set the transformation for any primitive that calls validateContext? I would have imagined some code like this: if (xform != validatedXForm) .... I guess I just misunderstand the code, but .. well ;) For XRender this challenges me, because XRender uses a transformation matrix on the destination surface (I was not able to find out wether the transformation set on the source surface also impact e.g. src or srcover operators). Because I don't get any AffineTransform, I don't see any way to validate it against the last set transform. I would be able to calculate the scale from the dstwidth/srcwith and height and set the transformation just for this single operation reseting it, but that would probably very inefficient. Is there any need for the ScaledBlit at all, or could I somehow make my pipeline fall back to an renderImageXform, which just seems to be a more general case (and as far as I see it would not make my pipeline any slower, at least theoretically) Thank you in advance, lg Clemens From Jim.A.Graham at Sun.COM Mon May 19 21:55:47 2008 From: Jim.A.Graham at Sun.COM (Jim Graham) Date: Mon, 19 May 2008 14:55:47 -0700 Subject: [OpenJDK 2D-Dev] How are transformations done and some other questions In-Reply-To: <194f62550805191405l66723fddp9fcb71ddaf6ff9de@mail.gmail.com> References: <194f62550805161043q334cdaf0tead568d3d54f520c@mail.gmail.com> <194f62550805190221q16cd0748w9354d56891c0982e@mail.gmail.com> <0K1400JWKQKEAN10@fe-sfbay-09.sun.com> <194f62550805191405l66723fddp9fcb71ddaf6ff9de@mail.gmail.com> Message-ID: <0K140068VY90B350@fe-sfbay-09.sun.com> I'd wager that trying to deduce the original transform from the parameters at that point in the pipeline would be counter-productive since the destination coordinates represent the product of the coordinates that the user requested and the current transform, so you may end up trying to set a transform that is "a scale transform", but not the same scale as the currently established transform. With XRender, could you have multiple contexts - one validated with the current transform, one validated with no transform, and then choose which of the two to use in a given case? X11 has no problem with having an unlimited number of outstanding contexts each with its own set of rendering attributes so I would hope that XRender followed that model. Of course, if the transform is on the surface rather than the context, then that might blow that theory out of the water. Another option would be to expose a getter for the "currently validated transform" and simply untransform the destination coordinates by that transform. The untransform operation would probably be a bit faster than setting/resetting the transform... ...jim Clemens Eisserer wrote: > Hi, > > Thanks for the answers, I already have a guilty conscience because of > asking that much. > All in all the pipelines don't seem to be that complicated, ist just > ... beginning with something new is always hard ;) > >> We recently made some major enhancements to the OGL and D3D pipelines in >> 6u10 to dispatch transformed wide single lines, and filled and drawn >> rectangles directly to a primitive in the RenderQueue and got a huge >> performance boost. We'll have to port those changes (along with the D3D >> pipeline) to JDK7 sometime soon (after we're done fixing bugs in 6u10) and >> then we'd like to continue doing performance work to make transformations of >> some other common shapes avoid a lot of the overhead you are seeing here... > Thanks for letting me know about this, I'll have a look as soon as its > available :) > > By the way, I've again another question about ScaledBlit: > > The scale-method does handle over the already scaled destination > dimensions, but not the AffineTranform used to scale it: > public void Scale(SurfaceData src, SurfaceData dst, Composite comp, > Region clip, > int sx1, int sy1, > int sx2, int sy2, > double dx1, double dy1, > double dx2, double dy2) > > The OpenGL pipeline calls from there its OGLBlitLoops.IsoBlit-Method, > and simply passes the "null" for the AffineTransform-Parameter along > with the already scaled coordinates and than calls validateContext, so > although most likely the scale transformation is used for all > primitives, the scaled blit resets the transformation just and the > next primitive rendered sets it again. > > I am also quite confused about the validation-code: > // validate transform > if (xform == null) { > if (xformInUse) { > resetTransform(); > xformInUse = false; > } > } else { > setTransform(xform); > xformInUse = true; > } > > doesn't this set the transformation for any primitive that calls > validateContext? > I would have imagined some code like this: > if (xform != validatedXForm) .... > > I guess I just misunderstand the code, but .. well ;) > > For XRender this challenges me, because XRender uses a transformation > matrix on the destination surface (I was not able to find out wether > the transformation set on the source surface also impact e.g. src or > srcover operators). Because I don't get any AffineTransform, I don't > see any way to validate it against the last set transform. > I would be able to calculate the scale from the dstwidth/srcwith and > height and set the transformation just for this single operation > reseting it, but that would probably very inefficient. > > Is there any need for the ScaledBlit at all, or could I somehow make > my pipeline fall back to an renderImageXform, which just seems to be a > more general case (and as far as I see it would not make my pipeline > any slower, at least theoretically) > > Thank you in advance, lg Clemens From linuxhippy at gmail.com Mon May 19 22:55:12 2008 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Tue, 20 May 2008 00:55:12 +0200 Subject: [OpenJDK 2D-Dev] How are transformations done and some other questions In-Reply-To: <0K140068VY90B350@fe-sfbay-09.sun.com> References: <194f62550805161043q334cdaf0tead568d3d54f520c@mail.gmail.com> <194f62550805190221q16cd0748w9354d56891c0982e@mail.gmail.com> <0K1400JWKQKEAN10@fe-sfbay-09.sun.com> <194f62550805191405l66723fddp9fcb71ddaf6ff9de@mail.gmail.com> <0K140068VY90B350@fe-sfbay-09.sun.com> Message-ID: <194f62550805191555o40307b46md48418c952183442@mail.gmail.com> Hi Jim, Thanks a lot for your reply. > I'd wager that trying to deduce the original transform from the parameters > at that point in the pipeline would be counter-productive since the > destination coordinates represent the product of the coordinates that the > user requested and the current transform, so you may end up trying to set a > transform that is "a scale transform", but not the same scale as the > currently established transform. Well, my ideas where simply wrong. Destination coordinates are not transformed by the transformation matrix, the matrix only applies to the source surface used. > With XRender, could you have multiple contexts - one validated with the > current transform, one validated with no transform, and then choose which of > the two to use in a given case? X11 has no problem with having an unlimited > number of outstanding contexts each with its own set of rendering attributes > so I would hope that XRender followed that model. Of course, if the > transform is on the surface rather than the context, then that might blow > that theory out of the water. Yes, the transform (the whole state) is on the source surface. Furthermore it seems that windows as source-pictures don't work, although they should. A bit frustrating :-/ Thanks for your patience, Clemens From mail at josef-hahn.de Tue May 20 01:57:51 2008 From: mail at josef-hahn.de (Josef Hahn) Date: Tue, 20 May 2008 03:57:51 +0200 Subject: [OpenJDK 2D-Dev] Bug in sun.java2d.pisces.Stroker ?! Message-ID: <1211248671.7992.5.camel@voyager.kawo1.rwth-aachen.de> Hi people, i was not able to find your bugtracker, so i post it here: the following code throws an exception iff antialiasing is activated. imho it is a bug in "sun.java2d.pisces.Stroker.finish(Stroker.java:698)". here, it divides by the line length (which can be zero): ------------------------------------------- import java.awt.Graphics2D; import java.awt.RenderingHints; import javax.swing.JFrame; public class Example { public static void main(String[] args) { JFrame frame = new JFrame(); frame.setSize(100, 100); frame.setVisible(true); Graphics2D g = (Graphics2D) frame.getGraphics(); g.setRenderingHint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); ?// here everything is fine g.drawOval(10, 10, 80, 80); ?// here it crashes with a divide by zero (only with // enabled antialiasing) g.drawOval(0, 0, 0, 0); } } ?------------------------------------------- ps: i'm using the openjdk, which is shipped with fedora 9. -- Josef Alexander Hahn Instant Messenging (per Jabber): josef.hahn at jabber.rwth-aachen.de VoIP: sip:ProjectColeslaw at ekiga.net -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: This is a digitally signed message part URL: From lana.steuck at sun.com Tue May 20 17:48:38 2008 From: lana.steuck at sun.com (lana.steuck at sun.com) Date: Tue, 20 May 2008 17:48:38 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 154 new changesets Message-ID: <20080520181959.DF9EC283BE@hg.openjdk.java.net> Changeset: 0d4923ce2707 Author: emcmanus Date: 2008-03-19 15:17 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/0d4923ce2707 6675768: NoSuchElementException thrown in RequiredModelMBean when tracing enabled Summary: Rewrite logging in RequiredModelMBean.addAttributeChangeNotificationListener Reviewed-by: dfuchs ! src/share/classes/javax/management/modelmbean/RequiredModelMBean.java + test/javax/management/modelmbean/LoggingExceptionTest.java Changeset: f5853d8dab12 Author: mchung Date: 2008-03-18 11:53 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/f5853d8dab12 6658779: Regression: HotspotDiagnosticMXBean.getDiagnosticOptions() throws NullPointerException Summary: Add a null check for the VM option string Reviewed-by: alanb, tbell ! src/share/classes/sun/management/Flag.java + test/com/sun/management/HotSpotDiagnosticMXBean/GetDiagnosticOptions.java Changeset: b413d5d6cedc Author: mchung Date: 2008-03-18 12:53 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/b413d5d6cedc 6672804: First line in com/sun/management/package.html is broken Summary: Fixed the typo in package.html Reviewed-by: jjh ! src/share/classes/com/sun/management/package.html Changeset: 3e2a5ab9c131 Author: mchung Date: 2008-03-19 11:13 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/3e2a5ab9c131 Merge Changeset: 9a97ca4eb8b7 Author: emcmanus Date: 2008-03-21 09:49 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/9a97ca4eb8b7 6649542: Document explicitly in registerMBean etc that MBeanServerNotification is emitted Summary: Make spec more readable by adding cross-references. Suggested by Andrew Haley. Reviewed-by: dfuchs ! src/share/classes/javax/management/MBeanServer.java Changeset: 01f7eeea81f1 Author: emcmanus Date: 2008-03-21 18:07 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/01f7eeea81f1 6643627: JMX source code includes incorrect Java code Summary: javac compiler bug accepts incorrect code; JMX code inadvertently has such code Reviewed-by: dfuchs ! src/share/classes/com/sun/jmx/mbeanserver/OpenConverter.java ! src/share/classes/java/beans/MetaData.java Changeset: 75b405bff406 Author: tbell Date: 2008-03-27 10:42 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/75b405bff406 Merge Changeset: 7dd94e5bbec4 Author: dcubed Date: 2008-03-24 14:31 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/7dd94e5bbec4 6239043: 4/4 TransformerManagementThreadAddTests.java failed Summary: Clear fCheckedTransformers in order to properly record transformer() call data. Reviewed-by: sspitsyn ! test/java/lang/instrument/TransformerManagementThreadAddTests.java Changeset: d3dc2ede62ed Author: dcubed Date: 2008-03-24 14:39 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/d3dc2ede62ed 4926961: 4/4 TransformerManagementThreadRemoveTests hangs Summary: Changes motivated by Effective Java - Item 48 & Item 51. Reviewed-by: sspitsyn ! test/java/lang/instrument/TransformerManagementThreadAddTests.java ! test/java/lang/instrument/TransformerManagementThreadRemoveTests.java Changeset: bca8bf23ac59 Author: dcubed Date: 2008-03-24 15:05 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/bca8bf23ac59 5088398: 3/2 java.lang.instrument TCK test deadlock (test11) Summary: Add regression test for single-threaded bootstrap classloader. Reviewed-by: sspitsyn + test/java/lang/instrument/ParallelTransformerLoader.sh + test/java/lang/instrument/ParallelTransformerLoaderAgent.java + test/java/lang/instrument/ParallelTransformerLoaderApp.java + test/java/lang/instrument/TestClass1.java + test/java/lang/instrument/TestClass2.java + test/java/lang/instrument/TestClass3.java Changeset: 114854ebaa21 Author: dcubed Date: 2008-03-24 15:14 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/114854ebaa21 6274276: 3/2 java.lang.instrument JAR manifest processing does not remove spaces from class names Summary: Attribute values should be extracted without leading or trailing whitespace. Reviewed-by: ohair, sspitsyn ! src/share/instrument/JarFacade.c + test/java/lang/instrument/ManifestTest.sh + test/java/lang/instrument/ManifestTestAgent.java + test/java/lang/instrument/ManifestTestApp.java Changeset: d4cd9e6a72da Author: dcubed Date: 2008-03-24 15:20 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/d4cd9e6a72da 6289149: 4/4 Java Agent will pick wrong execution path while attaching Summary: Check for a declared premain() or agentmain() method before an inherited one Reviewed-by: sspitsyn ! src/share/classes/sun/instrument/InstrumentationImpl.java ! test/java/lang/instrument/PremainClass/DummyMain.java + test/java/lang/instrument/PremainClass/InheritAgent0001.java + test/java/lang/instrument/PremainClass/InheritAgent0010.java + test/java/lang/instrument/PremainClass/InheritAgent0011.java + test/java/lang/instrument/PremainClass/InheritAgent0100.java + test/java/lang/instrument/PremainClass/InheritAgent0101.java + test/java/lang/instrument/PremainClass/InheritAgent0110.java + test/java/lang/instrument/PremainClass/InheritAgent0111.java + test/java/lang/instrument/PremainClass/InheritAgent1000.java + test/java/lang/instrument/PremainClass/InheritAgent1001.java + test/java/lang/instrument/PremainClass/InheritAgent1010.java + test/java/lang/instrument/PremainClass/InheritAgent1011.java + test/java/lang/instrument/PremainClass/InheritAgent1100.java + test/java/lang/instrument/PremainClass/InheritAgent1101.java + test/java/lang/instrument/PremainClass/InheritAgent1110.java + test/java/lang/instrument/PremainClass/InheritAgent1111.java + test/java/lang/instrument/PremainClass/NoPremainAgent.java + test/java/lang/instrument/PremainClass/NoPremainAgent.sh + test/java/lang/instrument/PremainClass/ZeroArgPremainAgent.java + test/java/lang/instrument/PremainClass/ZeroArgPremainAgent.sh Changeset: 8c1c6c50dd36 Author: dcubed Date: 2008-03-24 15:26 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/8c1c6c50dd36 6487488: 3/5 TEST_BUG: Something in test/java/lang/instrument creates a copy of an SCCS dir Summary: Only copy Java source files from ilib and bootreporter. Reviewed-by: sspitsyn ! test/java/lang/instrument/MakeJAR2.sh Changeset: e6e301984a4a Author: dcubed Date: 2008-03-24 15:42 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/e6e301984a4a 6491461: 3/3 TEST: java/lang/instrument .sh tests need to use $TESTVMOPTS in their java commands Summary: Add ${TESTVMOPTS} to java test execution command(s). Reviewed-by: sspitsyn ! test/java/lang/instrument/BootClassPath/BootClassPathTest.sh ! test/java/lang/instrument/PremainClass/PremainClassTest.sh ! test/java/lang/instrument/appendToClassLoaderSearch/CircularityErrorTest.sh ! test/java/lang/instrument/appendToClassLoaderSearch/ClassUnloadTest.sh ! test/java/lang/instrument/appendToClassLoaderSearch/CommonSetup.sh ! test/java/lang/instrument/appendToClassLoaderSearch/run_tests.sh Changeset: ebe8adae32b9 Author: dcubed Date: 2008-03-24 16:04 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/ebe8adae32b9 6528548: 4/4 NativeMethodPrefixAgent.java times out intermittently in nightly Summary: Increase timeouts for tasks that take > 10 seconds on a 4-way Ultra-80 with all local resources. Reviewed-by: sspitsyn ! test/java/lang/instrument/BootClassPath/BootClassPathTest.sh ! test/java/lang/instrument/NativeMethodPrefixAgent.java ! test/java/lang/instrument/RetransformAgent.java ! test/java/lang/instrument/appendToClassLoaderSearch/CircularityErrorTest.sh ! test/java/lang/instrument/appendToClassLoaderSearch/run_tests.sh Changeset: 31959ddaf501 Author: dcubed Date: 2008-03-24 16:11 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/31959ddaf501 6545149: 4/4 JLI Instrumentation.redefineClasses SIGSEGVs on java/lang/Thread Summary: Add regression test for redefining class with native methods. Reviewed-by: sspitsyn + test/java/lang/instrument/RedefineClassWithNativeMethod.sh + test/java/lang/instrument/RedefineClassWithNativeMethodAgent.java + test/java/lang/instrument/RedefineClassWithNativeMethodApp.java Changeset: 719789c7132c Author: dcubed Date: 2008-03-24 16:23 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/719789c7132c 6547358: 2/2 j.l.i.: manifest attribute 'Can-Retransform-Classes' is ignored by isRetransformClassesSupported() Summary: isRetransformClassesSupported() should return the capability rather than give the agent the capability Reviewed-by: ohair, sspitsyn ! src/share/instrument/JPLISAgent.c Changeset: ba825e4b1b8b Author: dcubed Date: 2008-03-24 16:32 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/ba825e4b1b8b 6547500: 2/2 j.l.i.: .retransformClasses throws unexpected InternalError Summary: retransformClasses() should catch both an empty classes array and a classes array that contains a NULL element. Reviewed-by: ohair, sspitsyn ! src/share/instrument/JPLISAgent.c Changeset: 823abb444593 Author: dcubed Date: 2008-03-24 16:59 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/823abb444593 6642405: 4/4 src/share/instrument/JPLISAgent.c line 286: "==" found where assignment "=" expected Summary: Fix incorrect variable assignment in initializeJPLISAgent(). Reviewed-by: ohair, sspitsyn ! src/share/instrument/JPLISAgent.c Changeset: 9f75a46fad8b Author: dcubed Date: 2008-03-24 17:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/9f75a46fad8b 6572160: 3/3 Instrumentation.getObjectSize triggers JVM crash in JPLISAssert in shutdown Summary: Tolerate JVMTI_ERROR_WRONG_PHASE return codes so that JLI methods can be called to the end of VM's life. Reviewed-by: ohair, sspitsyn ! src/share/instrument/InvocationAdapter.c ! src/share/instrument/JPLISAgent.c ! src/share/instrument/JPLISAgent.h ! src/share/instrument/Reentrancy.c ! src/share/instrument/Utilities.c + test/java/lang/instrument/StressGetObjectSizeApp.java + test/java/lang/instrument/StressGetObjectSizeTest.sh Changeset: 9a804b6297c3 Author: dcubed Date: 2008-03-24 17:16 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/9a804b6297c3 6655234: 4/4 j.l.i.: setNativeMethodPrefix does not document that prefix string can be null Summary: Clarify wording for 'prefix' parameter to setNativeMethodPrefix(). Reviewed-by: sspitsyn ! src/share/classes/java/lang/instrument/Instrumentation.java Changeset: 1f45ae5ea94a Author: dcubed Date: 2008-03-24 17:20 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/1f45ae5ea94a 6667089: 3/3 multiple redefinitions of a class break reflection Summary: Add regression test for multiple redefinitions of a class break reflection. Reviewed-by: sspitsyn + test/java/lang/instrument/RedefineMethodAddInvoke.sh + test/java/lang/instrument/RedefineMethodAddInvokeAgent.java + test/java/lang/instrument/RedefineMethodAddInvokeApp.java + test/java/lang/instrument/RedefineMethodAddInvokeTarget.java + test/java/lang/instrument/RedefineMethodAddInvokeTarget_1.java + test/java/lang/instrument/RedefineMethodAddInvokeTarget_2.java Changeset: 7bf5f01e419d Author: dcubed Date: 2008-03-26 20:18 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/7bf5f01e419d 6679866: 3/2 portability issues with JLI-batch-200803 on Win* Summary: Make minor tweaks to the fix for 6274276 to make the Win* compiler happy... Reviewed-by: sspitsyn, ohair ! src/share/instrument/JarFacade.c Changeset: 52c76fc0a3a9 Author: dcubed Date: 2008-03-27 14:15 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/52c76fc0a3a9 Merge Changeset: 2965459a8ee7 Author: emcmanus Date: 2008-04-01 14:45 +0200 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/2965459a8ee7 6610917: Define a generic NotificationFilter Summary: Adds javax.management.QueryNotificationFilter Reviewed-by: dfuchs ! src/share/classes/com/sun/jmx/interceptor/DefaultMBeanServerInterceptor.java ! src/share/classes/com/sun/jmx/mbeanserver/MBeanAnalyzer.java ! src/share/classes/com/sun/jmx/mbeanserver/MBeanIntrospector.java + src/share/classes/com/sun/jmx/mbeanserver/NotificationMBeanSupport.java ! src/share/classes/com/sun/jmx/mbeanserver/OpenConverter.java ! src/share/classes/com/sun/jmx/mbeanserver/Repository.java ! src/share/classes/com/sun/jmx/mbeanserver/Util.java ! src/share/classes/javax/management/ObjectName.java + src/share/classes/javax/management/QueryNotificationFilter.java + test/javax/management/query/QueryNotifFilterTest.java Changeset: a8d6215fa863 Author: weijun Date: 2008-03-20 11:57 +0800 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a8d6215fa863 6670362: HTTP/SPNEGO should work across realms Reviewed-by: valeriep ! src/share/classes/sun/net/www/protocol/http/NegotiatorImpl.java Changeset: 74bc85c0f2a9 Author: valeriep Date: 2008-03-20 16:02 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/74bc85c0f2a9 4898461: Support for ECB and CBC/PKCS5Padding Summary: Add support for ECB mode and PKCS5Padding Reviewed-by: andreas ! src/share/classes/sun/security/pkcs11/P11Cipher.java ! src/share/classes/sun/security/pkcs11/SunPKCS11.java + test/sun/security/pkcs11/Cipher/TestSymmCiphers.java Changeset: 66c2b0cfc896 Author: valeriep Date: 2008-03-20 17:17 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/66c2b0cfc896 6572331: regression: cipher.wrap operation fails with CKR_ATTRIBUTE_VALUE_INVALID Summary: Check supported key size range and use encryption if needed Reviewed-by: andreas ! src/share/classes/sun/security/pkcs11/P11KeyGenerator.java ! src/share/classes/sun/security/pkcs11/P11RSACipher.java ! src/share/classes/sun/security/pkcs11/P11SecretKeyFactory.java + test/sun/security/pkcs11/Cipher/TestRSACipherWrap.java Changeset: 84aced25a346 Author: valeriep Date: 2008-03-20 18:41 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/84aced25a346 6599979: KeyStore.setEntry/setKeyEntry() do not override existing entry for secret key objects Summary: Override existing secret key entry when setEntry/setKeyEntry() is called Reviewed-by: andreas ! src/share/classes/sun/security/pkcs11/P11KeyStore.java ! src/share/classes/sun/security/pkcs11/P11SecretKeyFactory.java + test/sun/security/pkcs11/KeyStore/SecretKeysBasic.java + test/sun/security/pkcs11/KeyStore/SecretKeysBasic.sh Changeset: 05afbed1dc4f Author: valeriep Date: 2008-03-21 14:45 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/05afbed1dc4f Merge Changeset: b22cbc65a360 Author: wetmore Date: 2008-03-28 12:56 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/b22cbc65a360 Merge Changeset: 8805ae9d160c Author: valeriep Date: 2008-03-31 11:09 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/8805ae9d160c 6681652: Two new regression test failures in pkcs11 code Summary: Fixed the test to not assume SunJCE provider being the provider for DES Reviewed-by: wetmore ! test/javax/crypto/Cipher/TestGetInstance.java Changeset: e1bf7407c933 Author: wetmore Date: 2008-03-31 13:27 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/e1bf7407c933 6469580: 1.5.0_08 JVM crashes in SignatureHandlerLibrary::add on Fujitsu Primepower platform Reviewed-by: andreas, valeriep, wetmore Contributed-by: chris.phillips at sun.com ! src/solaris/native/sun/security/pkcs11/wrapper/p11_md.c Changeset: 17e93b7fb97d Author: valeriep Date: 2008-03-31 16:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/17e93b7fb97d 6682411: JCK test failed w/ ArrayIndexOutOfBoundException (-1) when decrypting with no data Summary: Fixed PKCS5Padding class with additional check and throw BadPaddingException if the check failed Reviewed-by: wetmore ! src/share/classes/sun/security/pkcs11/P11Cipher.java Changeset: c063b7fb55f7 Author: valeriep Date: 2008-03-31 16:16 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/c063b7fb55f7 6682417: JCK test failed w/ ProviderException when decrypted data is not multiple of blocks Summary: Check for CKR_ENCRYPTED_DATA_LEN_RANGE and throw IllegalBlockSizeException Reviewed-by: wetmore ! src/share/classes/sun/security/pkcs11/P11Cipher.java Changeset: 99b3301fc27c Author: valeriep Date: 2008-03-31 16:50 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/99b3301fc27c Merge Changeset: df5d7e6ac15e Author: xuelei Date: 2008-04-02 22:44 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/df5d7e6ac15e 6668231: Presence of a critical subjectAltName causes JSSE's SunX509 to fail trusted checks Summary: make the critical extension known to end entity checker. Reviewed-by: wetmore, mullan ! src/share/classes/sun/security/validator/EndEntityChecker.java + test/sun/security/ssl/com/sun/net/ssl/internal/www/protocol/https/HttpsURLConnection/CriticalSubjectAltName.java + test/sun/security/ssl/com/sun/net/ssl/internal/www/protocol/https/HttpsURLConnection/crisubn.jks + test/sun/security/ssl/com/sun/net/ssl/internal/www/protocol/https/HttpsURLConnection/trusted.jks Changeset: b70fc43afb8c Author: wetmore Date: 2008-04-06 10:15 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/b70fc43afb8c 6683078: Update JCE framework and provider builds to work on read-only filesystems 6644659: Error in default target of make/javax/crypto in OpenJDK build Reviewed-by: valeriep, ohair ! make/com/sun/crypto/provider/Makefile ! make/common/shared/Defs.gmk ! make/javax/crypto/Defs-jce.gmk ! make/javax/crypto/Makefile ! make/sun/security/mscapi/Makefile ! make/sun/security/pkcs11/Makefile Changeset: f4205a7bdfd4 Author: wetmore Date: 2008-04-07 14:19 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/f4205a7bdfd4 Merge Changeset: e6da580585e9 Author: tbell Date: 2008-04-07 23:27 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/e6da580585e9 Merge ! make/common/shared/Defs.gmk Changeset: 4708b9a13f24 Author: tbell Date: 2008-04-11 15:06 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4708b9a13f24 Merge Changeset: 3226a9a5cc47 Author: xdono Date: 2008-03-27 12:28 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/3226a9a5cc47 Merge Changeset: 88d235789027 Author: ohair Date: 2008-03-31 17:17 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/88d235789027 6672405: OPENJDK build: jdk7/jdk/make/tools/freetypecheck leaves dirt behind Summary: OpenJDK freetype sanity check cleanup. Reviewed-by: tbell ! make/common/Defs.gmk ! make/common/shared/Sanity.gmk ! make/tools/Makefile ! make/tools/freetypecheck/Makefile Changeset: e6157955511e Author: ohair Date: 2008-03-31 17:19 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/e6157955511e 6482445: j2se/make/java/java/localegen.sh uses 'sort' from PATH, could get system32/sort Summary: Making sure the right 'sort' utility is found. Reviewed-by: tbell ! make/java/java/genlocales.gmk ! make/java/java/localegen.sh Changeset: 425096dc0fc8 Author: ohair Date: 2008-03-31 17:20 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/425096dc0fc8 6501543: Username can have non-alphanumeric characters Summary: User version string issues, including a L10n issue with month names. Reviewed-by: tbell ! make/common/shared/Defs.gmk Changeset: a977a69d9cf2 Author: ohair Date: 2008-04-01 15:14 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a977a69d9cf2 6482134: JDK 6 build error on Windows, Visual Studio .NET on Japanese locale Summary: Fix scanning of cl.exe version output, removed CC_TYPE. Reviewed-by: tbell ! make/common/shared/Compiler-gcc.gmk ! make/common/shared/Compiler-msvc.gmk ! make/common/shared/Sanity.gmk Changeset: fa4df2d26d9b Author: ohair Date: 2008-04-01 15:41 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/fa4df2d26d9b 6627823: Missed whitespace normalization files: jdk/test/java/rmi Summary: Just missed a few files being normalized in rev 0. Reviewed-by: xdono ! test/java/rmi/activation/Activatable/createPrivateActivable/CreatePrivateActivatable.java ! test/java/rmi/activation/ActivateFailedException/activateFails/ActivateFails.java ! test/java/rmi/activation/ActivateFailedException/activateFails/ActivateFails_Stub.java ! test/java/rmi/activation/ActivateFailedException/activateFails/ActivateMe.java ! test/java/rmi/activation/ActivateFailedException/activateFails/ShutdownThread.java ! test/java/rmi/activation/ActivationGroup/downloadActivationGroup/DownloadActivationGroup.java ! test/java/rmi/activation/ActivationGroup/downloadActivationGroup/DownloadActivationGroup_Stub.java ! test/java/rmi/activation/ActivationGroup/downloadActivationGroup/MyActivationGroupImpl.java ! test/java/rmi/activation/ActivationGroupDesc/checkDefaultGroupName/CheckDefaultGroupName.java ! test/java/rmi/activation/ActivationSystem/activeGroup/IdempotentActiveGroup.java ! test/java/rmi/activation/ActivationSystem/modifyDescriptor/ActivateMe.java ! test/java/rmi/activation/ActivationSystem/modifyDescriptor/ModifyDescriptor.java ! test/java/rmi/activation/ActivationSystem/modifyDescriptor/ModifyDescriptor_Stub.java ! test/java/rmi/activation/ActivationSystem/stubClassesPermitted/CanCreateStubs.java ! test/java/rmi/activation/ActivationSystem/stubClassesPermitted/StubClassesPermitted.java ! test/java/rmi/activation/ActivationSystem/stubClassesPermitted/StubClassesPermitted_Stub.java ! test/java/rmi/activation/ActivationSystem/unregisterGroup/ActivateMe.java ! test/java/rmi/activation/ActivationSystem/unregisterGroup/CallbackInterface.java ! test/java/rmi/activation/ActivationSystem/unregisterGroup/Callback_Stub.java ! test/java/rmi/activation/ActivationSystem/unregisterGroup/UnregisterGroup.java ! test/java/rmi/activation/ActivationSystem/unregisterGroup/UnregisterGroup_Stub.java ! test/java/rmi/dgc/VMID/CheckVMID.java ! test/java/rmi/dgc/dgcAckFailure/DGCAckFailure.java ! test/java/rmi/dgc/dgcAckFailure/DGCAckFailure_Stub.java ! test/java/rmi/dgc/dgcImplInsulation/DGCImplInsulation.java ! test/java/rmi/dgc/dgcImplInsulation/DGCImplInsulation_Stub.java ! test/java/rmi/dgc/retryDirtyCalls/RetryDirtyCalls.java ! test/java/rmi/dgc/retryDirtyCalls/RetryDirtyCalls_Stub.java ! test/java/rmi/registry/altSecurityManager/AltSecurityManager.java ! test/java/rmi/registry/altSecurityManager/TestSecurityManager.java ! test/java/rmi/registry/checkusage/CheckUsage.java ! test/java/rmi/registry/classPathCodebase/ClassPathCodebase.java ! test/java/rmi/registry/classPathCodebase/Dummy.java ! test/java/rmi/registry/emptyName/EmptyName.java ! test/java/rmi/registry/interfaceHash/InterfaceHash.java ! test/java/rmi/registry/interfaceHash/ReferenceRegistryStub.java ! test/java/rmi/registry/multipleRegistries/MultipleRegistries.java ! test/java/rmi/registry/reexport/Reexport.java ! test/java/rmi/reliability/benchmark/bench/rmi/BenchServer.java ! test/java/rmi/reliability/benchmark/bench/rmi/BenchServerImpl.java ! test/java/rmi/reliability/benchmark/bench/rmi/BooleanArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/BooleanCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ByteArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ByteCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/CharArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/CharCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ClassLoading.java ! test/java/rmi/reliability/benchmark/bench/rmi/DoubleArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/DoubleCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ExceptionCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ExportObjs.java ! test/java/rmi/reliability/benchmark/bench/rmi/FloatArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/FloatCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/IntArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/IntCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/LongArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/LongCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/Main.java ! test/java/rmi/reliability/benchmark/bench/rmi/NullCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ObjArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ObjTreeCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ProxyArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/RemoteObjArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ShortArrayCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/ShortCalls.java ! test/java/rmi/reliability/benchmark/bench/rmi/SmallObjTreeCalls.java ! test/java/rmi/reliability/benchmark/bench/serial/BooleanArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/Booleans.java ! test/java/rmi/reliability/benchmark/bench/serial/ByteArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/Bytes.java ! test/java/rmi/reliability/benchmark/bench/serial/CharArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/Chars.java ! test/java/rmi/reliability/benchmark/bench/serial/ClassDesc.java ! test/java/rmi/reliability/benchmark/bench/serial/Cons.java ! test/java/rmi/reliability/benchmark/bench/serial/CustomDefaultObjTrees.java ! test/java/rmi/reliability/benchmark/bench/serial/CustomObjTrees.java ! test/java/rmi/reliability/benchmark/bench/serial/DoubleArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/Doubles.java ! test/java/rmi/reliability/benchmark/bench/serial/ExternObjTrees.java ! test/java/rmi/reliability/benchmark/bench/serial/FloatArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/Floats.java ! test/java/rmi/reliability/benchmark/bench/serial/GetPutFieldTrees.java ! test/java/rmi/reliability/benchmark/bench/serial/IntArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/Ints.java ! test/java/rmi/reliability/benchmark/bench/serial/LongArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/Longs.java ! test/java/rmi/reliability/benchmark/bench/serial/Main.java ! test/java/rmi/reliability/benchmark/bench/serial/ObjArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/ObjTrees.java ! test/java/rmi/reliability/benchmark/bench/serial/ProxyArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/ProxyClassDesc.java ! test/java/rmi/reliability/benchmark/bench/serial/RepeatObjs.java ! test/java/rmi/reliability/benchmark/bench/serial/ReplaceTrees.java ! test/java/rmi/reliability/benchmark/bench/serial/ShortArrays.java ! test/java/rmi/reliability/benchmark/bench/serial/Shorts.java ! test/java/rmi/reliability/benchmark/bench/serial/SmallObjTrees.java ! test/java/rmi/reliability/benchmark/bench/serial/StreamBuffer.java ! test/java/rmi/reliability/benchmark/bench/serial/Strings.java ! test/java/rmi/reliability/juicer/Apple.java ! test/java/rmi/reliability/juicer/AppleEvent.java ! test/java/rmi/reliability/juicer/AppleImpl.java ! test/java/rmi/reliability/juicer/AppleUser.java ! test/java/rmi/reliability/juicer/AppleUserImpl.java ! test/java/rmi/reliability/juicer/ApplicationServer.java ! test/java/rmi/reliability/juicer/Orange.java ! test/java/rmi/reliability/juicer/OrangeEcho.java ! test/java/rmi/reliability/juicer/OrangeEchoImpl.java ! test/java/rmi/reliability/juicer/OrangeImpl.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/CompressConstants.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/CompressInputStream.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/CompressOutputStream.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/Echo.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/EchoImpl.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/EchoImpl_Stub.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/MultiSocketFactory.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/activatable/UseCustomSocketFactory.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/registry/Compress.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/registry/Hello.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/registry/HelloImpl.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/registry/HelloImpl_Stub.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/registry/UseCustomSocketFactory.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/CompressConstants.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/CompressInputStream.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/CompressOutputStream.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/Echo.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/EchoImpl.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/EchoImpl_Stub.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/MultiSocketFactory.java ! test/java/rmi/server/RMISocketFactory/useSocketFactory/unicast/UseCustomSocketFactory.java ! test/java/rmi/server/RemoteServer/setLogPermission/SetLogPermission.java ! test/java/rmi/server/UnicastRemoteObject/changeHostName/ChangeHostName.java ! test/java/rmi/server/UnicastRemoteObject/changeHostName/ChangeHostName_Stub.java ! test/java/rmi/server/UnicastRemoteObject/keepAliveDuringCall/KeepAliveDuringCall.java ! test/java/rmi/server/UnicastRemoteObject/keepAliveDuringCall/KeepAliveDuringCall_Stub.java ! test/java/rmi/server/UnicastRemoteObject/keepAliveDuringCall/Shutdown.java ! test/java/rmi/server/UnicastRemoteObject/keepAliveDuringCall/ShutdownImpl.java ! test/java/rmi/server/UnicastRemoteObject/keepAliveDuringCall/ShutdownImpl_Stub.java ! test/java/rmi/server/UnicastRemoteObject/keepAliveDuringCall/ShutdownMonitor.java ! test/java/rmi/server/UnicastRemoteObject/marshalAfterUnexport/MarshalAfterUnexport.java ! test/java/rmi/server/UnicastRemoteObject/marshalAfterUnexport/MarshalAfterUnexport2.java ! test/java/rmi/server/UnicastRemoteObject/marshalAfterUnexport/MarshalAfterUnexport2_Stub.java ! test/java/rmi/server/UnicastRemoteObject/marshalAfterUnexport/MarshalAfterUnexport_Stub.java ! test/java/rmi/server/UnicastRemoteObject/unexportObject/Ping.java ! test/java/rmi/server/UnicastRemoteObject/unexportObject/UnexportLeak.java ! test/java/rmi/server/UnicastRemoteObject/unexportObject/UnexportLeak_Stub.java ! test/java/rmi/server/UnicastRemoteObject/useDynamicProxies/UseDynamicProxies.java ! test/java/rmi/server/UnicastRemoteObject/useDynamicProxies/UseDynamicProxies_Stub.java ! test/java/rmi/server/Unmarshal/checkUnmarshalOnStopThread/CheckUnmarshalOnStopThread.java ! test/java/rmi/server/Unmarshal/checkUnmarshalOnStopThread/CheckUnmarshalOnStopThread_Stub.java ! test/java/rmi/server/Unmarshal/checkUnmarshalOnStopThread/CheckUnmarshall.java ! test/java/rmi/server/Unmarshal/checkUnmarshalOnStopThread/PoisonPill.java ! test/java/rmi/server/Unmarshal/checkUnmarshalOnStopThread/RuntimeExceptionParameter.java ! test/java/rmi/server/Unreferenced/finiteGCLatency/FiniteGCLatency.java ! test/java/rmi/server/Unreferenced/finiteGCLatency/FiniteGCLatency_Stub.java ! test/java/rmi/server/Unreferenced/leaseCheckInterval/LeaseCheckInterval.java ! test/java/rmi/server/Unreferenced/leaseCheckInterval/LeaseCheckInterval_Stub.java ! test/java/rmi/server/Unreferenced/leaseCheckInterval/SelfTerminator.java ! test/java/rmi/server/Unreferenced/marshalledObjectGet/MarshalledObjectGet.java ! test/java/rmi/server/Unreferenced/marshalledObjectGet/MarshalledObjectGet_Stub.java ! test/java/rmi/server/Unreferenced/unreferencedContext/UnreferencedContext.java ! test/java/rmi/server/Unreferenced/unreferencedContext/UnreferencedContext_Stub.java ! test/java/rmi/transport/acceptLoop/CloseServerSocketOnTermination.java ! test/java/rmi/transport/checkFQDN/CheckFQDN.java ! test/java/rmi/transport/checkFQDN/CheckFQDNClient.java ! test/java/rmi/transport/checkFQDN/CheckFQDN_Stub.java ! test/java/rmi/transport/checkFQDN/TellServerName.java ! test/java/rmi/transport/checkLeaseInfoLeak/CheckLeaseLeak.java ! test/java/rmi/transport/checkLeaseInfoLeak/CheckLeaseLeak_Stub.java ! test/java/rmi/transport/checkLeaseInfoLeak/LeaseLeak.java ! test/java/rmi/transport/checkLeaseInfoLeak/LeaseLeakClient.java ! test/java/rmi/transport/closeServerSocket/CloseServerSocket.java ! test/java/rmi/transport/dgcDeadLock/DGCDeadLock.java ! test/java/rmi/transport/dgcDeadLock/Test.java ! test/java/rmi/transport/dgcDeadLock/TestImpl.java ! test/java/rmi/transport/dgcDeadLock/TestImpl_Stub.java ! test/java/rmi/transport/handshakeFailure/HandshakeFailure.java ! test/java/rmi/transport/handshakeTimeout/HandshakeTimeout.java ! test/java/rmi/transport/httpSocket/HttpSocketTest.java ! test/java/rmi/transport/httpSocket/HttpSocketTest_Stub.java ! test/java/rmi/transport/pinClientSocketFactory/PinClientSocketFactory.java ! test/java/rmi/transport/pinLastArguments/PinLastArguments.java ! test/java/rmi/transport/rapidExportUnexport/RapidExportUnexport.java ! test/java/rmi/transport/readTimeout/ReadTimeoutTest.java ! test/java/rmi/transport/readTimeout/TestIface.java ! test/java/rmi/transport/readTimeout/TestImpl.java ! test/java/rmi/transport/readTimeout/TestImpl_Stub.java ! test/java/rmi/transport/reuseDefaultPort/ReuseDefaultPort.java ! test/java/rmi/transport/runtimeThreadInheritanceLeak/RuntimeThreadInheritanceLeak.java ! test/java/rmi/transport/runtimeThreadInheritanceLeak/RuntimeThreadInheritanceLeak_Stub.java Changeset: 63e1f1ed9805 Author: xdono Date: 2008-04-07 17:38 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/63e1f1ed9805 Merge Changeset: 68b85ce111f2 Author: ohair Date: 2008-04-14 14:52 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/68b85ce111f2 6484686: The next directory looks like it is no longer part of the build (deploy makefiles) Summary: Getting rid of the _OUTPUTDIR settings. Using BUILD_PARENT_DIRECTORY instead. This solves problems with the "/build/windows-i586*" paths getting mangled on Windows builds (fastdebug builds in particular). Reviewed-by: tbell ! make/common/shared/Defs-control.gmk Changeset: eac50a34a8e0 Author: xdono Date: 2008-04-18 13:24 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/eac50a34a8e0 Merge ! make/common/shared/Defs.gmk Changeset: b1bbd90b0c4f Author: ohair Date: 2008-04-18 12:47 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/b1bbd90b0c4f 6641585: jdk/make/javax/Makefile should not have both SUBDIRS and AUTO_FILES_JAVA_DIRS Summary: Separated Makefile logic, subtree walk vs. javac compiles. Also fixed minor issue in Rules.gmk. Reviewed-by: tbell ! make/common/Rules.gmk ! make/javax/Makefile + make/javax/others/Makefile Changeset: fb57027902e0 Author: ohair Date: 2008-04-18 16:40 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/fb57027902e0 Merge Changeset: 256d28e3fd98 Author: xdono Date: 2008-04-24 12:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/256d28e3fd98 Added tag jdk7-b26 for changeset fb57027902e0 ! .hgtags Changeset: c2019d1360ef Author: ksrini Date: 2008-04-10 09:02 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/c2019d1360ef 6684582: Launcher needs improved error reporting Summary: indicate the missing main class in the error message Reviewed-by: darcy, kbr ! src/share/bin/emessages.h ! src/share/bin/java.c ! test/tools/launcher/Arrrghs.java ! test/tools/launcher/Arrrghs.sh Changeset: cb934dd5e073 Author: sherman Date: 2008-04-10 14:45 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/cb934dd5e073 6529796: Support JIS X 0213:2004 in existing JDK versions, especially for Windows Vista Summary: SJIS0213 support Reviewed-by: naoto ! make/java/sun_nio/FILES_java.gmk ! make/sun/nio/Makefile + make/tools/CharsetMapping/Makefile + make/tools/CharsetMapping/sjis0213.map ! make/tools/Makefile + make/tools/src/build/tools/charsetmapping/CharsetMapping.java + make/tools/src/build/tools/charsetmapping/GenerateMapping.java + src/share/classes/sun/nio/cs/CharsetMapping.java ! src/share/classes/sun/nio/cs/ext/ExtendedCharsets.java + src/share/classes/sun/nio/cs/ext/MS932_0213.java + src/share/classes/sun/nio/cs/ext/SJIS_0213.java Changeset: fd563c5dd750 Author: mchung Date: 2008-04-10 10:47 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/fd563c5dd750 6610094: Add generic support for platform MXBeans of any type (also fixed 6681031) Summary: Add new methods in ManagementFactory class to obtain platform MXBeans Reviewed-by: alanb, dfuchs, emcmanus ! src/share/classes/com/sun/management/HotSpotDiagnosticMXBean.java ! src/share/classes/java/lang/management/ClassLoadingMXBean.java ! src/share/classes/java/lang/management/CompilationMXBean.java ! src/share/classes/java/lang/management/GarbageCollectorMXBean.java ! src/share/classes/java/lang/management/ManagementFactory.java ! src/share/classes/java/lang/management/MemoryMXBean.java ! src/share/classes/java/lang/management/MemoryManagerMXBean.java ! src/share/classes/java/lang/management/MemoryPoolMXBean.java ! src/share/classes/java/lang/management/OperatingSystemMXBean.java + src/share/classes/java/lang/management/PlatformComponent.java + src/share/classes/java/lang/management/PlatformManagedObject.java ! src/share/classes/java/lang/management/RuntimeMXBean.java ! src/share/classes/java/lang/management/ThreadInfo.java ! src/share/classes/java/lang/management/ThreadMXBean.java ! src/share/classes/java/util/logging/Logging.java ! src/share/classes/java/util/logging/LoggingMXBean.java ! src/share/classes/sun/management/ClassLoadingImpl.java ! src/share/classes/sun/management/CompilationImpl.java ! src/share/classes/sun/management/GarbageCollectorImpl.java ! src/share/classes/sun/management/GcInfoBuilder.java ! src/share/classes/sun/management/GcInfoCompositeData.java ! src/share/classes/sun/management/HotSpotDiagnostic.java ! src/share/classes/sun/management/HotspotCompilation.java ! src/share/classes/sun/management/HotspotInternal.java ! src/share/classes/sun/management/LockDataConverter.java ! src/share/classes/sun/management/ManagementFactory.java + src/share/classes/sun/management/ManagementFactoryHelper.java ! src/share/classes/sun/management/MappedMXBeanType.java ! src/share/classes/sun/management/MemoryImpl.java ! src/share/classes/sun/management/MemoryManagerImpl.java ! src/share/classes/sun/management/MemoryNotifInfoCompositeData.java ! src/share/classes/sun/management/MemoryPoolImpl.java ! src/share/classes/sun/management/MemoryUsageCompositeData.java ! src/share/classes/sun/management/MonitorInfoCompositeData.java ! src/share/classes/sun/management/NotificationEmitterSupport.java ! src/share/classes/sun/management/OperatingSystemImpl.java ! src/share/classes/sun/management/RuntimeImpl.java ! src/share/classes/sun/management/StackTraceElementCompositeData.java ! src/share/classes/sun/management/ThreadImpl.java ! src/share/classes/sun/management/ThreadInfoCompositeData.java ! src/share/classes/sun/management/Util.java ! src/share/classes/sun/management/VMManagementImpl.java ! src/share/classes/sun/management/VMOptionCompositeData.java ! test/com/sun/management/HotSpotDiagnosticMXBean/DumpHeap.java ! test/com/sun/management/HotSpotDiagnosticMXBean/GetDiagnosticOptions.java ! test/com/sun/management/HotSpotDiagnosticMXBean/GetVMOption.java ! test/com/sun/management/HotSpotDiagnosticMXBean/SetVMOption.java + test/java/lang/management/ManagementFactory/GetPlatformMXBeans.java + test/java/lang/management/OperatingSystemMXBean/PlatformMXBeanTest.java Changeset: bcf689d26c1c Author: mchung Date: 2008-04-10 16:11 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/bcf689d26c1c Merge Changeset: 18eed13fe9f6 Author: mchung Date: 2008-04-11 10:26 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/18eed13fe9f6 6687508: Update test/sun/management jtreg tests due to sun.management.ManagementFactory class rename Summary: Modified the jtreg tests to use ManagementFactoryHelper instead Reviewed-by: emcmanus ! test/sun/management/HotspotClassLoadingMBean/GetClassInitializationTime.java ! test/sun/management/HotspotClassLoadingMBean/GetClassLoadingTime.java ! test/sun/management/HotspotClassLoadingMBean/GetInitializedClassCount.java ! test/sun/management/HotspotClassLoadingMBean/GetLoadedClassSize.java ! test/sun/management/HotspotClassLoadingMBean/GetMethodDataSize.java ! test/sun/management/HotspotClassLoadingMBean/GetUnloadedClassSize.java ! test/sun/management/HotspotRuntimeMBean/GetSafepointCount.java ! test/sun/management/HotspotRuntimeMBean/GetSafepointSyncTime.java ! test/sun/management/HotspotRuntimeMBean/GetTotalSafepointTime.java ! test/sun/management/HotspotThreadMBean/GetInternalThreads.java Changeset: dd212ba9a0c6 Author: sherman Date: 2008-04-14 21:45 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/dd212ba9a0c6 6635133: Exception thrown when using a Unicode escape Summary: Update regex engine to handle unicode escape correctly in character class Reviewed-by: okutsu ! src/share/classes/java/util/regex/Pattern.java Changeset: 74a42d77106b Author: tbell Date: 2008-04-15 17:46 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/74a42d77106b Merge Changeset: 2bfddc119eea Author: kamg Date: 2008-04-17 22:00 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/2bfddc119eea 6690122: Provide a mechanism for specifying Java-level USDT-like dtrace probes Summary: Initial checkin of JSDT code Reviewed-by: sspitsyn, sbohne ! make/com/sun/Makefile + make/com/sun/tracing/Makefile + make/com/sun/tracing/dtrace/Makefile ! make/docs/Makefile ! make/docs/NON_CORE_PKGS.gmk ! make/sun/Makefile + make/sun/tracing/Makefile + make/sun/tracing/dtrace/Makefile + make/sun/tracing/dtrace/mapfile-vers + src/share/classes/com/sun/tracing/Probe.java + src/share/classes/com/sun/tracing/ProbeName.java + src/share/classes/com/sun/tracing/Provider.java + src/share/classes/com/sun/tracing/ProviderFactory.java + src/share/classes/com/sun/tracing/ProviderName.java + src/share/classes/com/sun/tracing/dtrace/ArgsAttributes.java + src/share/classes/com/sun/tracing/dtrace/Attributes.java + src/share/classes/com/sun/tracing/dtrace/DependencyClass.java + src/share/classes/com/sun/tracing/dtrace/FunctionAttributes.java + src/share/classes/com/sun/tracing/dtrace/FunctionName.java + src/share/classes/com/sun/tracing/dtrace/ModuleAttributes.java + src/share/classes/com/sun/tracing/dtrace/ModuleName.java + src/share/classes/com/sun/tracing/dtrace/NameAttributes.java + src/share/classes/com/sun/tracing/dtrace/ProviderAttributes.java + src/share/classes/com/sun/tracing/dtrace/StabilityLevel.java + src/share/classes/com/sun/tracing/dtrace/package-info.java + src/share/classes/com/sun/tracing/package-info.java + src/share/classes/sun/tracing/MultiplexProviderFactory.java + src/share/classes/sun/tracing/NullProviderFactory.java + src/share/classes/sun/tracing/PrintStreamProviderFactory.java + src/share/classes/sun/tracing/ProbeSkeleton.java + src/share/classes/sun/tracing/ProviderSkeleton.java + src/share/classes/sun/tracing/dtrace/Activation.java + src/share/classes/sun/tracing/dtrace/DTraceProbe.java + src/share/classes/sun/tracing/dtrace/DTraceProvider.java + src/share/classes/sun/tracing/dtrace/DTraceProviderFactory.java + src/share/classes/sun/tracing/dtrace/JVM.java + src/share/classes/sun/tracing/package-info.java ! src/share/javavm/export/jvm.h + src/share/native/sun/tracing/dtrace/JVM.c + src/share/native/sun/tracing/dtrace/jvm_symbols.h + src/solaris/native/sun/tracing/dtrace/jvm_symbols_md.c + src/windows/native/sun/tracing/dtrace/jvm_symbols_md.c + test/com/sun/tracing/BasicFunctionality.java Changeset: 79b594e72df0 Author: kamg Date: 2008-04-21 11:24 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/79b594e72df0 6691494: doc build broken in tracingdocs Summary: Wrong variable names in makefile Reviewed-by: tbell ! make/docs/Makefile Changeset: 2249879c6f22 Author: tbell Date: 2008-04-25 15:18 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/2249879c6f22 Merge ! make/tools/Makefile Changeset: 94638b3696a6 Author: peterz Date: 2008-04-03 16:41 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/94638b3696a6 4714674: JEditorPane.setPage(url) blocks AWT thread when HTTP protocol is used Summary: Both POST and GET can now be processed asynchronously; PageLoader refactored Reviewed-by: gsm ! src/share/classes/javax/swing/JEditorPane.java + test/javax/swing/JEditorPane/bug4714674.java Changeset: 56646502accb Author: peterz Date: 2008-04-07 13:07 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/56646502accb 4765383: JTextArea.append(String) not thread safe Summary: Several swing.text methods are not marked thread-safe anymore. Reviewed-by: gsm ! src/share/classes/javax/swing/JEditorPane.java ! src/share/classes/javax/swing/JTextArea.java ! src/share/classes/javax/swing/JTextPane.java ! src/share/classes/javax/swing/text/JTextComponent.java Changeset: eecc88fb2430 Author: stayer Date: 2008-04-11 16:25 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/eecc88fb2430 6624717: Corrupted combo box, GTK L&F, Ubuntu 7.10 Reviewed-by: peterz ! src/solaris/native/sun/awt/gtk2_interface.c Changeset: 147803acf437 Author: mlapshin Date: 2008-04-14 16:41 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/147803acf437 6612531: api/javax_swing/ScrollPaneLayout/index.html#xxxLayoutSize (ScrollPaneLayout2024) throws NPE Summary: Added a check for the NPE Reviewed-by: alexp ! src/share/classes/javax/swing/ScrollPaneLayout.java + test/javax/swing/JScrollPane/6612531/bug6612531.java Changeset: dd66920b2d51 Author: mlapshin Date: 2008-04-18 18:21 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/dd66920b2d51 6675802: Regression: heavyweight popups cause SecurityExceptions in applets Summary: The problem code in Popup class is surrounded by AccessController.doPrivileged() Reviewed-by: alexp ! src/share/classes/javax/swing/Popup.java + test/javax/swing/JPopupMenu/6675802/bug6675802.java Changeset: 40414219305f Author: mlapshin Date: 2008-04-23 18:06 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/40414219305f 6691503: Malicious applet can show always-on-top popup menu which has whole screen size Summary: The fix for 6675802 is replaced by a try-catch clause that catches SequrityExceptions for applets. Reviewed-by: alexp ! src/share/classes/javax/swing/Popup.java + test/javax/swing/JPopupMenu/6691503/bug6691503.java Changeset: a15dae99414c Author: mlapshin Date: 2008-04-24 05:58 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a15dae99414c Merge Changeset: a883bd215e94 Author: mlapshin Date: 2008-04-29 06:30 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a883bd215e94 Merge Changeset: de9e902b1f24 Author: dav Date: 2008-03-24 18:24 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/de9e902b1f24 6638872: invalid links Summary: removed invalid links Reviewed-by: dcherepanov ! src/share/classes/java/awt/event/TextEvent.java ! src/share/classes/java/awt/event/TextListener.java Changeset: 58c90502785d Author: dav Date: 2008-03-25 15:16 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/58c90502785d 6610244: modal dialog closes with fatal error if -Xcheck:jni is set Summary: obtain WWindowPeer class every time it is required Reviewed-by: art ! src/windows/native/sun/windows/awt_Dialog.cpp ! src/windows/native/sun/windows/awt_Window.cpp ! src/windows/native/sun/windows/awt_Window.h + test/java/awt/Dialog/CrashXCheckJni/CrashXCheckJni.java Changeset: f72baf3b4419 Author: ant Date: 2008-03-24 15:51 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/f72baf3b4419 6637607: 1st char. is discarded after a modal dialogue shows up and disappears Summary: Reset consuming next KEY_TYPED on every subsequent KEY_PRESS. Reviewed-by: son ! src/share/classes/java/awt/DefaultKeyboardFocusManager.java ! src/windows/native/sun/windows/awt_Component.cpp + test/java/awt/Focus/ConsumeNextKeyTypedOnModalShowTest/ConsumeNextKeyTypedOnModalShowTest.java Changeset: 8b34e2cde06f Author: ant Date: 2008-03-25 18:08 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/8b34e2cde06f 6613426: two WM_TAKE_FOCUS messages on one mouse click in GNOME Metacity 2.16.0 Summary: A workaround to the metacity issue 485016. Reviewed-by: son ! src/solaris/classes/sun/awt/X11/XDecoratedPeer.java Changeset: 401d820d0b4a Author: ant Date: 2008-03-25 18:14 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/401d820d0b4a Merge Changeset: c58ca64469bb Author: anthony Date: 2008-03-27 11:08 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/c58ca64469bb 6603312: Segmentation fault running java -jar SwingSet2.jar in 256 color mode Summary: Force hiding the splashscreen if the code cannot allocate a reasonable number of color cells on PseudoColor displays Reviewed-by: son, art ! src/solaris/native/sun/awt/splashscreen/splashscreen_sys.c Changeset: 3b0cd0389985 Author: ant Date: 2008-03-26 16:20 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/3b0cd0389985 6680135: A number of test/closed/java/awt/Focus/* tests should be opened Summary: The tests moved from the closed repository. Reviewed-by: son + test/java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowBlockingTest.java + test/java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowRetaining.java + test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.html + test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.java + test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.html + test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.java + test/java/awt/Focus/FrameJumpingToMouse/FrameJumpingToMouse.java + test/java/awt/Focus/NonFocusableWindowTest/NonfocusableOwnerTest.java + test/java/awt/Focus/NonFocusableWindowTest/Test.java + test/java/awt/Focus/TypeAhead/TestFocusFreeze.java + test/java/awt/Focus/WrongKeyTypedConsumedTest/WrongKeyTypedConsumedTest.java Changeset: 72a4f94cd2f7 Author: ant Date: 2008-03-26 16:56 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/72a4f94cd2f7 6609607: test/closed/java/awt/Focus/AppletInitialFocusTest should be rewritten Summary: Using test.java.awt.regtesthelpers.Util. Refactoring. Reviewed-by: volk ! test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.html ! test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest.java ! test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.html ! test/java/awt/Focus/AppletInitialFocusTest/AppletInitialFocusTest1.java Changeset: 4a6dd11fe9fc Author: ant Date: 2008-03-26 17:38 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4a6dd11fe9fc 6616792: five AWT focus regression tests should be fixed Summary: Fixed/refactored the tests. Reviewed-by: volk ! test/java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowBlockingTest.java ! test/java/awt/Focus/ActualFocusedWindowTest/ActualFocusedWindowRetaining.java ! test/java/awt/Focus/FrameJumpingToMouse/FrameJumpingToMouse.java + test/java/awt/Focus/NonFocusableWindowTest/NoEventsTest.java ! test/java/awt/Focus/NonFocusableWindowTest/NonfocusableOwnerTest.java - test/java/awt/Focus/NonFocusableWindowTest/Test.java ! test/java/awt/Focus/TypeAhead/TestFocusFreeze.java ! test/java/awt/Focus/WrongKeyTypedConsumedTest/WrongKeyTypedConsumedTest.java Changeset: 5d98f1b8a6bb Author: ant Date: 2008-03-27 11:35 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/5d98f1b8a6bb Merge Changeset: c2252f113414 Author: dav Date: 2008-03-25 16:23 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/c2252f113414 6255653: REGRESSION: Override isLightweight() causes access violation in awt.dll Summary: verufy that the component to restack is a HW component by checking for instanceof WComponentPeer Reviewed-by: son, anthony ! src/windows/classes/sun/awt/windows/WPanelPeer.java + test/java/awt/Component/isLightweightCrash/IsLightweightCrash.java + test/java/awt/Component/isLightweightCrash/StubPeerCrash.java Changeset: 6e2a17c648a4 Author: dav Date: 2008-03-27 12:31 +0300 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/6e2a17c648a4 Merge Changeset: 4a06c0b6fdef Author: yan Date: 2008-03-28 03:06 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4a06c0b6fdef Merge Changeset: ada64880c5d0 Author: dcherepanov Date: 2008-03-31 15:41 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/ada64880c5d0 6508505: JComboBox collapses immediately if it is placed to embedded frame Summary: XWindowPeer should translate absolute coordinates to local Reviewed-by: son ! src/solaris/classes/sun/awt/X11/XWindowPeer.java Changeset: b0bc376a5360 Author: dcherepanov Date: 2008-03-31 15:56 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/b0bc376a5360 6637204: TrayIcon.displayMessage fails to show icon twice Summary: the icon canvas should be validated to finalize its layout Reviewed-by: ant ! src/solaris/classes/sun/awt/X11/XTrayIconPeer.java Changeset: 908cab7b2f1c Author: anthony Date: 2008-04-01 17:38 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/908cab7b2f1c 6681889: JSN security test headline/noWarningApp failed with NPE exception Summary: The java.awt.Component.changeSupportLock field should be initialized in the readObject() method. Reviewed-by: son, art ! src/share/classes/java/awt/Component.java + test/java/awt/Window/PropertyChangeListenerLockSerialization/PropertyChangeListenerLockSerialization.java Changeset: 58b6b665424a Author: son Date: 2008-04-02 17:45 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/58b6b665424a 6677332: incorrect signatures for JNI methods in XWindow.c and XlibWrapper.c Summary: int replaced with jint in XWindow.c and WlibWrapper.c, and BOOL replaced with Bool in MouseInfo.c. Reviewed-by: anthony Contributed-by: roman.kennke at aicas.com ! src/solaris/native/sun/awt/MouseInfo.c ! src/solaris/native/sun/xawt/XWindow.c ! src/solaris/native/sun/xawt/XlibWrapper.c Changeset: a1bef1a012e0 Author: dcherepanov Date: 2008-04-03 15:00 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a1bef1a012e0 6619458: testcase depends on a file with the name te{st.html Summary: using test.html instead of te{st.html in reg test Reviewed-by: son + test/java/awt/appletviewer/IOExceptionIfEncodedURLTest/IOExceptionIfEncodedURLTest.java + test/java/awt/appletviewer/IOExceptionIfEncodedURLTest/IOExceptionIfEncodedURLTest.sh + test/java/awt/appletviewer/IOExceptionIfEncodedURLTest/test.html Changeset: e80d1e36f553 Author: dcherepanov Date: 2008-04-03 15:48 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/e80d1e36f553 6615015: Typo in javadoc for Component.getTreeLock() Summary: fix for typo Reviewed-by: son ! src/share/classes/java/awt/Component.java Changeset: 9ca7032ada2b Author: dav Date: 2008-04-04 20:20 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/9ca7032ada2b 6573289: api/java_awt/Color/index.html#CreateContextTesttestCase4,5,6,7 fail since JDK 7 b14 Summary: specify current behavior - not caching the painting context Reviewed-by: flar, son ! src/share/classes/java/awt/Color.java ! src/share/classes/java/awt/GradientPaint.java ! src/share/classes/java/awt/LinearGradientPaint.java ! src/share/classes/java/awt/Paint.java ! src/share/classes/java/awt/RadialGradientPaint.java ! src/share/classes/java/awt/TexturePaint.java Changeset: 5c5a54b9d08d Author: dav Date: 2008-04-04 20:32 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/5c5a54b9d08d Merge Changeset: 664def01b886 Author: dav Date: 2008-04-07 14:53 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/664def01b886 6613529: Avoid duplicate object creation within JDK packages Summary: avoid using constructors when unique values are not necessary Reviewed-by: volk, igor, peterz ! src/share/classes/com/sun/imageio/plugins/gif/GIFImageReader.java ! src/share/classes/com/sun/imageio/plugins/gif/GIFWritableImageMetadata.java ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKColorChooserPanel.java ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java ! src/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ! src/share/classes/com/sun/java/swing/plaf/motif/MotifLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/windows/WindowsLookAndFeel.java ! src/share/classes/java/awt/Button.java ! src/share/classes/java/awt/MenuItem.java ! src/share/classes/java/awt/datatransfer/SystemFlavorMap.java ! src/share/classes/java/awt/image/BufferedImage.java ! src/share/classes/java/text/DictionaryBasedBreakIterator.java ! src/share/classes/java/text/MessageFormat.java ! src/share/classes/javax/imageio/stream/ImageInputStreamImpl.java ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/DebugGraphicsInfo.java ! src/share/classes/javax/swing/JInternalFrame.java ! src/share/classes/javax/swing/JOptionPane.java ! src/share/classes/javax/swing/JProgressBar.java ! src/share/classes/javax/swing/JScrollBar.java ! src/share/classes/javax/swing/JSlider.java ! src/share/classes/javax/swing/JSplitPane.java ! src/share/classes/javax/swing/JTabbedPane.java ! src/share/classes/javax/swing/JTable.java ! src/share/classes/javax/swing/JTextArea.java ! src/share/classes/javax/swing/SpinnerNumberModel.java ! src/share/classes/javax/swing/TablePrintable.java ! src/share/classes/javax/swing/plaf/basic/BasicButtonUI.java ! src/share/classes/javax/swing/plaf/basic/BasicLookAndFeel.java ! src/share/classes/javax/swing/plaf/basic/BasicMenuItemUI.java ! src/share/classes/javax/swing/plaf/basic/BasicOptionPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTabbedPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicToolBarUI.java ! src/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java ! src/share/classes/javax/swing/plaf/synth/SynthArrowButton.java ! src/share/classes/javax/swing/plaf/synth/SynthDesktopPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSplitPaneUI.java ! src/share/classes/javax/swing/table/TableColumn.java ! src/share/classes/javax/swing/text/AbstractDocument.java ! src/share/classes/javax/swing/text/NumberFormatter.java ! src/share/classes/javax/swing/text/PlainDocument.java ! src/share/classes/javax/swing/text/Segment.java ! src/share/classes/javax/swing/text/StyleConstants.java ! src/share/classes/javax/swing/text/html/AccessibleHTML.java ! src/share/classes/javax/swing/text/html/CSS.java ! src/share/classes/javax/swing/text/html/HTMLEditorKit.java ! src/share/classes/javax/swing/text/html/parser/AttributeList.java ! src/share/classes/javax/swing/text/html/parser/DTD.java ! src/share/classes/javax/swing/text/html/parser/Element.java ! src/share/classes/javax/swing/text/html/parser/Entity.java ! src/share/classes/javax/swing/text/html/parser/Parser.java ! src/share/classes/javax/swing/text/rtf/RTFAttributes.java ! src/share/classes/javax/swing/text/rtf/RTFGenerator.java ! src/share/classes/javax/swing/tree/DefaultTreeSelectionModel.java ! src/share/classes/sun/applet/AppletPanel.java ! src/share/classes/sun/applet/AppletViewer.java ! src/share/classes/sun/awt/FontConfiguration.java ! src/share/classes/sun/awt/im/InputContext.java ! src/share/classes/sun/font/FileFontStrike.java ! src/share/classes/sun/font/FontManager.java ! src/share/classes/sun/font/FontResolver.java ! src/share/classes/sun/font/PhysicalStrike.java ! src/share/classes/sun/java2d/SunGraphics2D.java ! src/share/classes/sun/java2d/loops/SurfaceType.java ! src/share/classes/sun/print/PSPrinterJob.java ! src/share/classes/sun/print/RasterPrinterJob.java ! src/share/classes/sun/text/normalizer/VersionInfo.java ! src/solaris/classes/sun/awt/X11/XDropTargetProtocol.java ! src/solaris/classes/sun/awt/X11/XDropTargetRegistry.java ! src/solaris/classes/sun/awt/X11/XEmbedServerTester.java ! src/solaris/classes/sun/awt/X11/XFileDialogPeer.java ! src/solaris/classes/sun/awt/X11/XScrollbar.java ! src/solaris/classes/sun/awt/X11GraphicsConfig.java ! src/solaris/classes/sun/awt/X11GraphicsDevice.java ! src/solaris/classes/sun/print/UnixPrintJob.java ! src/windows/classes/sun/awt/windows/WDataTransferer.java ! src/windows/classes/sun/awt/windows/WInputMethod.java ! src/windows/classes/sun/awt/windows/WWindowPeer.java ! src/windows/classes/sun/print/Win32PrintService.java Changeset: 840f49e23a40 Author: dav Date: 2008-04-07 16:52 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/840f49e23a40 6623459: Get rid of XConstant, XProtocolConstants and XUtilConstants antipattern Summary: Access to interface's fiels via their name rather then implementation Reviewed-by: volk, son ! src/solaris/classes/sun/awt/X11/MWMConstants.java ! src/solaris/classes/sun/awt/X11/MotifDnDConstants.java ! src/solaris/classes/sun/awt/X11/MotifDnDDragSourceProtocol.java ! src/solaris/classes/sun/awt/X11/MotifDnDDropTargetProtocol.java ! src/solaris/classes/sun/awt/X11/WindowPropertyGetter.java ! src/solaris/classes/sun/awt/X11/XAWTXSettings.java ! src/solaris/classes/sun/awt/X11/XAtom.java ! src/solaris/classes/sun/awt/X11/XBaseMenuWindow.java ! src/solaris/classes/sun/awt/X11/XBaseWindow.java ! src/solaris/classes/sun/awt/X11/XClipboard.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XConstants.java ! src/solaris/classes/sun/awt/X11/XContentWindow.java ! src/solaris/classes/sun/awt/X11/XCursorFontConstants.java ! src/solaris/classes/sun/awt/X11/XCustomCursor.java ! src/solaris/classes/sun/awt/X11/XDecoratedPeer.java ! src/solaris/classes/sun/awt/X11/XDialogPeer.java ! src/solaris/classes/sun/awt/X11/XDnDDragSourceProtocol.java ! src/solaris/classes/sun/awt/X11/XDnDDropTargetProtocol.java ! src/solaris/classes/sun/awt/X11/XDragSourceContextPeer.java ! src/solaris/classes/sun/awt/X11/XDragSourceProtocol.java ! src/solaris/classes/sun/awt/X11/XDropTargetEventProcessor.java ! src/solaris/classes/sun/awt/X11/XDropTargetProtocol.java ! src/solaris/classes/sun/awt/X11/XDropTargetRegistry.java ! src/solaris/classes/sun/awt/X11/XEmbedCanvasPeer.java ! src/solaris/classes/sun/awt/X11/XEmbedChildProxyPeer.java ! src/solaris/classes/sun/awt/X11/XEmbedClientHelper.java ! src/solaris/classes/sun/awt/X11/XEmbedHelper.java ! src/solaris/classes/sun/awt/X11/XEmbedServerTester.java ! src/solaris/classes/sun/awt/X11/XEmbeddedFramePeer.java ! src/solaris/classes/sun/awt/X11/XEmbeddingContainer.java ! src/solaris/classes/sun/awt/X11/XFocusProxyWindow.java ! src/solaris/classes/sun/awt/X11/XFramePeer.java ! src/solaris/classes/sun/awt/X11/XGlobalCursorManager.java ! src/solaris/classes/sun/awt/X11/XIconWindow.java ! src/solaris/classes/sun/awt/X11/XMSelection.java ! src/solaris/classes/sun/awt/X11/XNETProtocol.java ! src/solaris/classes/sun/awt/X11/XProtocol.java ! src/solaris/classes/sun/awt/X11/XProtocolConstants.java ! src/solaris/classes/sun/awt/X11/XSelection.java ! src/solaris/classes/sun/awt/X11/XSystemTrayPeer.java ! src/solaris/classes/sun/awt/X11/XToolkit.java ! src/solaris/classes/sun/awt/X11/XTrayIconPeer.java ! src/solaris/classes/sun/awt/X11/XUtilConstants.java ! src/solaris/classes/sun/awt/X11/XWINProtocol.java ! src/solaris/classes/sun/awt/X11/XWM.java ! src/solaris/classes/sun/awt/X11/XWindow.java ! src/solaris/classes/sun/awt/X11/XWindowPeer.java ! src/solaris/classes/sun/awt/X11/XlibUtil.java ! src/solaris/classes/sun/awt/X11/XlibWrapper.java Changeset: 0a053f373969 Author: dav Date: 2008-04-08 12:46 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/0a053f373969 6520716: event classes lack info about parameters Summary: clarify allowed values for event constructors Reviewed-by: son, denis ! src/share/classes/java/awt/dnd/DragGestureEvent.java ! src/share/classes/java/awt/dnd/DropTargetEvent.java ! src/share/classes/java/awt/event/ActionEvent.java ! src/share/classes/java/awt/event/AdjustmentEvent.java ! src/share/classes/java/awt/event/ComponentEvent.java ! src/share/classes/java/awt/event/ContainerEvent.java ! src/share/classes/java/awt/event/FocusEvent.java ! src/share/classes/java/awt/event/HierarchyEvent.java ! src/share/classes/java/awt/event/InputEvent.java ! src/share/classes/java/awt/event/InvocationEvent.java ! src/share/classes/java/awt/event/ItemEvent.java ! src/share/classes/java/awt/event/KeyEvent.java ! src/share/classes/java/awt/event/MouseEvent.java ! src/share/classes/java/awt/event/MouseWheelEvent.java ! src/share/classes/java/awt/event/PaintEvent.java ! src/share/classes/java/awt/event/TextEvent.java ! src/share/classes/java/awt/event/WindowEvent.java Changeset: dd05b5b0e7bd Author: ant Date: 2008-04-08 13:32 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/dd05b5b0e7bd 6607170: Focus not set by requestFocus Summary: fixing/refactoring focus auto-transfer mechanism. Reviewed-by: son ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/Container.java ! src/share/classes/java/awt/DefaultKeyboardFocusManager.java ! src/share/classes/java/awt/KeyboardFocusManager.java ! src/solaris/classes/sun/awt/X11/XKeyboardFocusManagerPeer.java ! src/windows/native/sun/windows/awt_Component.cpp + test/java/awt/Focus/ContainerFocusAutoTransferTest/ContainerFocusAutoTransferTest.java Changeset: ddfd2acb2347 Author: ant Date: 2008-04-09 09:37 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/ddfd2acb2347 6522725: Component in a minimized Frame has focus and receives key events Summary: XAWT: a window natively focused may request focus in it only synthetically Reviewed-by: son ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XDecoratedPeer.java ! src/solaris/classes/sun/awt/X11/XWindowPeer.java + test/java/awt/Focus/IconifiedFrameFocusChangeTest/IconifiedFrameFocusChangeTest.java Changeset: 61ea2d05afba Author: volk Date: 2008-04-13 23:41 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/61ea2d05afba 6686273: Some AWT reg. tests should be moved to open repository (for CRs 6444769, 6480547, and 6560348) Summary: Some AWT reg. tests are moved to open repository (for CRs 6444769, 6480547, and 6560348) Reviewed-by: ant + test/java/awt/Insets/WindowWithWarningTest/WindowWithWarningTest.html + test/java/awt/Insets/WindowWithWarningTest/WindowWithWarningTest.java + test/java/awt/TextField/ScrollSelectionTest/ScrollSelectionTest.html + test/java/awt/TextField/ScrollSelectionTest/ScrollSelectionTest.java + test/java/awt/xembed/server/JavaClient.java + test/java/awt/xembed/server/RunTestXEmbed.java + test/java/awt/xembed/server/TestXEmbedServer.java + test/java/awt/xembed/server/TestXEmbedServerJava.java + test/java/awt/xembed/server/TesterClient.java Changeset: 5a9dcfdf856d Author: volk Date: 2008-04-13 23:56 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/5a9dcfdf856d Merge Changeset: 863b81ff642c Author: dcherepanov Date: 2008-04-14 15:21 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/863b81ff642c 6471693: Moving the vertical scroll bar of List in FileDialog leads Flickering in solaris Summary: unite paint() calls in one call Reviewed-by: son ! src/solaris/classes/sun/awt/X11/XListPeer.java Changeset: 9d15a1989b84 Author: dcherepanov Date: 2008-04-14 15:53 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/9d15a1989b84 6688067: regression test for 6471693 is missed Summary: added regression test Reviewed-by: son + test/java/awt/List/ListFlickers/ListFlickers.java Changeset: adae10f1c14d Author: dav Date: 2008-04-15 14:00 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/adae10f1c14d 6430553: MouseClick event should not be fired if MouseRelease happened without MousePress Summary: verify that the there was a PRESS event before sending CLICK event Reviewed-by: son, dcherepanov ! src/solaris/classes/sun/awt/X11/XWindow.java ! src/windows/native/sun/windows/awt_Component.cpp ! src/windows/native/sun/windows/awt_Component.h ! src/windows/native/sun/windows/awt_TrayIcon.cpp ! src/windows/native/sun/windows/awt_TrayIcon.h Changeset: e2e1127aed7b Author: dav Date: 2008-04-15 14:14 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/e2e1127aed7b Merge Changeset: 29a4bb79a0fd Author: son Date: 2008-04-18 11:38 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/29a4bb79a0fd 6690036: some code cleanup for insets-related code Summary: all insets-related code from XWindowPeer, XFramePeer, and XDialogPeer has been moved to XDecoratedPeer. Reviewed-by: anthony ! src/solaris/classes/sun/awt/X11/XDecoratedPeer.java ! src/solaris/classes/sun/awt/X11/XDialogPeer.java ! src/solaris/classes/sun/awt/X11/XFramePeer.java ! src/solaris/classes/sun/awt/X11/XWindowPeer.java Changeset: a35e9e11d907 Author: yan Date: 2008-04-23 14:35 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a35e9e11d907 6627324: Alt Graph doesnot generate any key event when pressing in German locale Summary: This Unix only problem solved by mapping XK_ISO_Level3_Shift keysym to Java keycode VK_ALT_GRAPH. Reviewed-by: son ! src/solaris/classes/sun/awt/X11/XKeysym.java ! src/solaris/classes/sun/awt/X11/genhash.awk ! src/solaris/classes/sun/awt/X11/keysym2ucs.h Changeset: 8da00cb83d01 Author: yan Date: 2008-05-04 07:05 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/8da00cb83d01 Merge Changeset: c1e547a4c0ef Author: yan Date: 2008-05-13 21:58 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/c1e547a4c0ef Merge ! src/share/classes/javax/swing/JTextArea.java Changeset: 97240b4b5074 Author: rupashka Date: 2008-04-28 17:17 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/97240b4b5074 4252173: Inability to reuse the HorizontalSliderThumbIcon Summary: Removed casting component to JSlider from MetalIconFactory Reviewed-by: alexp ! src/share/classes/javax/swing/plaf/metal/MetalIconFactory.java + test/javax/swing/JFileChooser/4252173/bug4252173.java Changeset: 0447f9c7aed7 Author: rupashka Date: 2008-04-29 13:49 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/0447f9c7aed7 6210674: FileChooser fails to load custom harddrive icon and gets NullPointerException Summary: WindowsPlacesBar should use default icon for folders that doesn't have own icon Reviewed-by: loneid ! src/share/classes/sun/swing/WindowsPlacesBar.java ! src/windows/classes/sun/awt/shell/Win32ShellFolder2.java ! src/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java Changeset: 5b1734431fa5 Author: rupashka Date: 2008-04-29 15:47 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/5b1734431fa5 6693507: There are unnecessary compilation warnings in the com.sun.java.swing.plaf.motif package Summary: Removed unnecessary castings and other warnings Reviewed-by: peterz Contributed-by: Florian Brunner ! src/share/classes/com/sun/java/swing/plaf/motif/MotifGraphicsUtils.java ! src/share/classes/com/sun/java/swing/plaf/motif/MotifInternalFrameTitlePane.java ! src/share/classes/com/sun/java/swing/plaf/motif/MotifLookAndFeel.java Changeset: aaa771ded30b Author: rupashka Date: 2008-04-29 17:48 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/aaa771ded30b 6614972: JSlider value should not change on right-click Summary: WindowsSliderUI won't use the right mouse button for change slider position Reviewed-by: alexp ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKLookAndFeel.java ! src/share/classes/javax/swing/plaf/basic/BasicLookAndFeel.java ! src/share/classes/javax/swing/plaf/basic/BasicSliderUI.java Changeset: eca2e5716b86 Author: rupashka Date: 2008-04-30 12:32 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/eca2e5716b86 6524424: JSlider Clicking In Tracks Behavior Inconsistent For Different Tick Spacings Summary: JSlider should use minimal tick space in SnapToTicks mode Reviewed-by: peterz ! src/share/classes/javax/swing/plaf/basic/BasicSliderUI.java + test/javax/swing/JFileChooser/6524424/bug6524424.html + test/javax/swing/JFileChooser/6524424/bug6524424.java Changeset: 9a322f3dccd8 Author: rupashka Date: 2008-04-30 13:01 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/9a322f3dccd8 6642612: JFileChooser approve buttons should use Open and Save text (GTK) Summary: In FileChooser under GTK LaF "Ok" and "Cancel" buttons were made with the same size Reviewed-by: peterz ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKFileChooserUI.java Changeset: b49c01fd4b1c Author: mlapshin Date: 2008-04-30 13:19 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/b49c01fd4b1c 6690791: Even more ClassCasetException with TrayIcon Summary: event.getComponent() is used unstead of (Component)event.getSource() Reviewed-by: peterz ! src/share/classes/javax/swing/MenuSelectionManager.java + test/javax/swing/JPopupMenu/6690791/bug6690791.java Changeset: b5c38f2632d0 Author: mlapshin Date: 2008-04-30 07:03 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/b5c38f2632d0 Merge Changeset: 812b1e9aa7e5 Author: mlapshin Date: 2008-04-30 08:23 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/812b1e9aa7e5 Merge Changeset: 06916e21e10f Author: rupashka Date: 2008-05-01 14:47 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/06916e21e10f 6688203: Memory leak and performance problems in the method getFileSystemView of FileSystemView Summary: Removed from the "FileSystemView#getFileSystemView" method creation of a new listener and adding it to UIManager Reviewed-by: peterz ! src/share/classes/javax/swing/filechooser/FileSystemView.java + test/javax/swing/JFileChooser/6688203/bug6688203.java Changeset: c25ed95b96a8 Author: malenkov Date: 2008-05-07 16:08 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/c25ed95b96a8 6625450: javax.swing.border.TitledBorder.getBaseline() doesn't throw IAE when width is < 0 Summary: necessary check is added Reviewed-by: peterz, alexp ! src/share/classes/javax/swing/border/TitledBorder.java + test/javax/swing/border/Test6625450.java Changeset: 4cf10bc1973d Author: rupashka Date: 2008-05-07 20:26 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4cf10bc1973d 6635277: Incorrect text seen when creating a new folder, when selection is on the image file in JFileChooser Summary: Corrected bounds of editor area Reviewed-by: loneid ! src/share/classes/sun/swing/FilePane.java Changeset: 56cae54e668c Author: malenkov Date: 2008-05-07 21:54 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/56cae54e668c 6348456: BasicColorChooserUI ignores JColorChooser selection model changes Summary: Some methods are moved from AbstractColorChooserPanel to BasicColorChooserUI Reviewed-by: peterz, alexp ! src/share/classes/javax/swing/colorchooser/AbstractColorChooserPanel.java ! src/share/classes/javax/swing/plaf/basic/BasicColorChooserUI.java + test/javax/swing/JColorChooser/Test6348456.html + test/javax/swing/JColorChooser/Test6348456.java Changeset: 5bcff22d837d Author: malenkov Date: 2008-05-07 23:20 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/5bcff22d837d 4935607: RFE: LTP: Should be possible to set the TRANSIENT attribute of propertiies to FALSE Summary: Add the Transient annotation and support it (JSR-273) Reviewed-by: peterz, loneid ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/Dimension.java ! src/share/classes/java/awt/Point.java ! src/share/classes/java/awt/Rectangle.java ! src/share/classes/java/awt/ScrollPane.java ! src/share/classes/java/awt/geom/RectangularShape.java ! src/share/classes/java/awt/im/InputContext.java ! src/share/classes/java/beans/DefaultPersistenceDelegate.java ! src/share/classes/java/beans/EventSetDescriptor.java ! src/share/classes/java/beans/FeatureDescriptor.java ! src/share/classes/java/beans/IndexedPropertyDescriptor.java ! src/share/classes/java/beans/MetaData.java ! src/share/classes/java/beans/PropertyDescriptor.java + src/share/classes/java/beans/Transient.java ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/DefaultListSelectionModel.java ! src/share/classes/javax/swing/ImageIcon.java ! src/share/classes/javax/swing/JComboBox.java ! src/share/classes/javax/swing/JComponent.java ! src/share/classes/javax/swing/JLabel.java ! src/share/classes/javax/swing/JList.java ! src/share/classes/javax/swing/JMenuBar.java ! src/share/classes/javax/swing/JScrollPane.java ! src/share/classes/javax/swing/JTabbedPane.java ! src/share/classes/javax/swing/JViewport.java ! src/share/classes/javax/swing/table/JTableHeader.java ! src/share/classes/javax/swing/text/JTextComponent.java ! test/java/beans/Introspector/BeanUtils.java ! test/java/beans/Introspector/Test4896879.java + test/java/beans/Introspector/Test4935607.java + test/java/beans/XMLEncoder/Test4935607.java Changeset: ec3bbc3f675a Author: mlapshin Date: 2008-05-14 07:53 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/ec3bbc3f675a Merge ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKLookAndFeel.java ! src/share/classes/com/sun/java/swing/plaf/motif/MotifLookAndFeel.java ! src/share/classes/java/awt/Component.java ! src/share/classes/javax/swing/AbstractButton.java ! src/share/classes/javax/swing/JTabbedPane.java ! src/share/classes/javax/swing/plaf/basic/BasicLookAndFeel.java Changeset: d70a63c92b49 Author: ohair Date: 2008-04-30 17:34 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/d70a63c92b49 6695553: Cleanup GPLv2+SPL legal notices in hat sources Summary: Just correcting the legal notices on the HAT sources. Reviewed-by: alanb ! src/share/classes/com/sun/tools/hat/Main.java ! src/share/classes/com/sun/tools/hat/build.xml ! src/share/classes/com/sun/tools/hat/internal/model/AbstractJavaHeapObjectVisitor.java ! src/share/classes/com/sun/tools/hat/internal/model/ArrayTypeCodes.java ! src/share/classes/com/sun/tools/hat/internal/model/HackJavaValue.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaBoolean.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaByte.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaChar.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaClass.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaDouble.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaField.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaFloat.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaHeapObject.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaHeapObjectVisitor.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaInt.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaLazyReadObject.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaLong.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaObject.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaObjectArray.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaObjectRef.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaShort.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaStatic.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaThing.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaValue.java ! src/share/classes/com/sun/tools/hat/internal/model/JavaValueArray.java ! src/share/classes/com/sun/tools/hat/internal/model/ReachableExcludes.java ! src/share/classes/com/sun/tools/hat/internal/model/ReachableExcludesImpl.java ! src/share/classes/com/sun/tools/hat/internal/model/ReachableObjects.java ! src/share/classes/com/sun/tools/hat/internal/model/ReferenceChain.java ! src/share/classes/com/sun/tools/hat/internal/model/Root.java ! src/share/classes/com/sun/tools/hat/internal/model/Snapshot.java ! src/share/classes/com/sun/tools/hat/internal/model/StackFrame.java ! src/share/classes/com/sun/tools/hat/internal/model/StackTrace.java ! src/share/classes/com/sun/tools/hat/internal/oql/OQLEngine.java ! src/share/classes/com/sun/tools/hat/internal/oql/OQLException.java ! src/share/classes/com/sun/tools/hat/internal/oql/OQLQuery.java ! src/share/classes/com/sun/tools/hat/internal/oql/ObjectVisitor.java ! src/share/classes/com/sun/tools/hat/internal/parser/FileReadBuffer.java ! src/share/classes/com/sun/tools/hat/internal/parser/HprofReader.java ! src/share/classes/com/sun/tools/hat/internal/parser/MappedReadBuffer.java ! src/share/classes/com/sun/tools/hat/internal/parser/PositionDataInputStream.java ! src/share/classes/com/sun/tools/hat/internal/parser/PositionInputStream.java ! src/share/classes/com/sun/tools/hat/internal/parser/ReadBuffer.java ! src/share/classes/com/sun/tools/hat/internal/parser/Reader.java ! src/share/classes/com/sun/tools/hat/internal/server/AllClassesQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/AllRootsQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/ClassQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/FinalizerObjectsQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/FinalizerSummaryQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/HistogramQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/HttpReader.java ! src/share/classes/com/sun/tools/hat/internal/server/InstancesCountQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/InstancesQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/OQLHelp.java ! src/share/classes/com/sun/tools/hat/internal/server/OQLQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/ObjectQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/PlatformClasses.java ! src/share/classes/com/sun/tools/hat/internal/server/QueryHandler.java ! src/share/classes/com/sun/tools/hat/internal/server/QueryListener.java ! src/share/classes/com/sun/tools/hat/internal/server/ReachableQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/RefsByTypeQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/RootStackQuery.java ! src/share/classes/com/sun/tools/hat/internal/server/RootsQuery.java ! src/share/classes/com/sun/tools/hat/internal/util/ArraySorter.java ! src/share/classes/com/sun/tools/hat/internal/util/Comparer.java ! src/share/classes/com/sun/tools/hat/internal/util/CompositeEnumeration.java ! src/share/classes/com/sun/tools/hat/internal/util/Misc.java ! src/share/classes/com/sun/tools/hat/internal/util/VectorSorter.java ! src/share/classes/com/sun/tools/hat/resources/hat.js Changeset: 5a0950c45a27 Author: xdono Date: 2008-05-13 11:33 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/5a0950c45a27 Merge Changeset: 8767ccc53b42 Author: xdono Date: 2008-05-14 14:06 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/8767ccc53b42 Merge Changeset: 92ea0ac77d2f Author: emcmanus Date: 2008-04-22 18:58 +0200 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/92ea0ac77d2f 6692027: Custom subclasses of QueryEval don't serialize Summary: Remove non-public superclass of QueryEval Reviewed-by: dfuchs ! src/share/classes/javax/management/AndQueryExp.java ! src/share/classes/javax/management/BetweenQueryExp.java ! src/share/classes/javax/management/BinaryRelQueryExp.java ! src/share/classes/javax/management/NotQueryExp.java ! src/share/classes/javax/management/ObjectName.java ! src/share/classes/javax/management/OrQueryExp.java ! src/share/classes/javax/management/Query.java ! src/share/classes/javax/management/QueryEval.java + test/javax/management/query/CustomQueryTest.java Changeset: ad75c4b21d63 Author: weijun Date: 2008-04-10 19:58 +0800 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/ad75c4b21d63 6675606: javax.security.auth.login.Configuration does not recognize path with spaces Reviewed-by: chegar, xuelei ! src/share/classes/com/sun/security/auth/login/ConfigFile.java + test/javax/security/auth/login/Configuration/ConfigFileWithBlank.java Changeset: c0eb84957bea Author: xuelei Date: 2008-04-11 03:33 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/c0eb84957bea 6546639: (spec)javax.net.ssl.SSLContext.getInstance(null) throws undocumented NPE Summary: add NullPointerException description to those methods. Reviewed-by: weijun ! src/share/classes/javax/net/ssl/SSLContext.java Changeset: da9fa1fa9b95 Author: xuelei Date: 2008-04-11 03:43 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/da9fa1fa9b95 6546671: (spec)javax.net.ssl.TrustManagerFactory.getInstance() throws undocumented NP 5053895: (spec) Unspecified IllegalStateException in TrustManagerFactory Summary: add NullPointerException/IllegalStateException description Reviewed-by: weijun ! src/share/classes/javax/net/ssl/TrustManagerFactory.java ! src/share/classes/javax/net/ssl/TrustManagerFactorySpi.java Changeset: 143e1a9b51a9 Author: xuelei Date: 2008-04-11 03:50 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/143e1a9b51a9 6571950: SSLSocket(raddr, rport, laddr, lport) allows null as laddr that spec doesn't reflect Summary: add the description that while the local address parameter is null, anyLocalAddress will be used instead. Reviewed-by: weijun ! src/share/classes/java/net/Socket.java ! src/share/classes/javax/net/ssl/SSLSocket.java Changeset: aabdc646cb31 Author: mullan Date: 2008-04-14 10:25 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/aabdc646cb31 6631361: Spec of AccessControlContext constructor is not complete Summary: Add NullPointerException to @throws clause and treat empty array and array of nulls as equivalent Reviewed-by: valeriep ! src/share/classes/java/security/AccessControlContext.java + test/java/security/AccessControlContext/CheckCtor.java Changeset: b627c3efd97c Author: mullan Date: 2008-04-14 10:41 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/b627c3efd97c Merge Changeset: 459d23a95dfb Author: chegar Date: 2008-04-15 14:22 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/459d23a95dfb 6659779: HttpURLConnections logger should log tunnel requests Summary: Invoke Logger for CONNECT request/responses. Reviewed-by: jccollet ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java Changeset: a954a6f3be6f Author: chegar Date: 2008-04-16 14:17 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a954a6f3be6f 6687282: URLConnection for HTTPS connection through Proxy w/ Digest Authentication gives 400 Bad Request Summary: Change http/digest implementation to use host:port from CONNECT request Reviewed-by: michaelm ! src/share/classes/sun/net/www/protocol/http/DigestAuthentication.java ! src/share/classes/sun/net/www/protocol/http/HttpURLConnection.java Changeset: d44e3bf49ffb Author: jccollet Date: 2008-04-17 11:05 +0200 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/d44e3bf49ffb 6644726: Cookie management issues Summary: Many changes to accomodate RFC 2965 and old Netscape specs Reviewed-by: chegar ! src/share/classes/java/net/CookieManager.java ! src/share/classes/java/net/HttpCookie.java ! src/share/classes/sun/net/www/protocol/http/InMemoryCookieStore.java + test/java/net/CookieHandler/B6644726.java Changeset: 493af4f4be79 Author: wetmore Date: 2008-04-17 16:56 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/493af4f4be79 Merge Changeset: a71ab67d3ece Author: jccollet Date: 2008-04-18 15:23 +0200 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a71ab67d3ece 6558853: getHostAddress() on connections using IPv6 link-local addrs should have zone id Summary: Set the scope_id_set flag when necessary Reviewed-by: chegar ! src/share/native/java/net/net_util.c + test/java/net/Inet6Address/B6558853.java Changeset: 4e7ad09de58b Author: weijun Date: 2008-04-23 08:10 +0800 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4e7ad09de58b 6689000: Changes in 6675606 causing regression test failures on windows-i586 Summary: Accept illegal URLs like file:c:/root/x.conf and file:this/that/x.conf Reviewed-by: alanb, chegar ! src/share/classes/com/sun/security/auth/login/ConfigFile.java + test/com/sun/security/auth/login/ConfigFile/IllegalURL.java Changeset: d3af7105cc15 Author: wetmore Date: 2008-04-23 10:20 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/d3af7105cc15 Merge Changeset: 072695f32409 Author: mullan Date: 2008-04-25 08:58 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/072695f32409 6690169: Specification for BasicPermission.equals() is not consistent Summary: Clarified @return to be consistent with method description Reviewed-by: vinnie ! src/share/classes/java/security/BasicPermission.java Changeset: 44700b433be2 Author: mullan Date: 2008-04-25 09:03 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/44700b433be2 Merge Changeset: 51eab854cb1a Author: valeriep Date: 2008-04-25 15:19 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/51eab854cb1a 6524501: inconsistency with PKCS#11 spec - 0-value flags in CK_SLOT_INFO struct returned by C_GetSlotInfo() Reviewed-by: mullan ! src/share/classes/sun/security/pkcs11/SunPKCS11.java Changeset: 01dbd203d40e Author: valeriep Date: 2008-04-25 15:24 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/01dbd203d40e 6659990: KerberosTicket.getEndTime does not copy date (findbugs) Reviewed-by: mullan ! src/share/classes/javax/security/auth/kerberos/KerberosTicket.java + test/javax/security/auth/kerberos/KerberosTixDateTest.java Changeset: 4d62bebb22ea Author: valeriep Date: 2008-04-25 15:32 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/4d62bebb22ea Merge Changeset: 27719467fb93 Author: valeriep Date: 2008-04-30 11:10 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/27719467fb93 6695818: New regression test (KerberosTixDateTest) for Kerberos failing on (probably) all platforms. Reviewed-by: mullan ! test/javax/security/auth/kerberos/KerberosTixDateTest.java Changeset: a3b3f07682b5 Author: kamg Date: 2008-05-08 09:16 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/a3b3f07682b5 6697875: Copyright headers need to be upgraded with GPL derivative Summary: Update copyright headers to GPL Reviewed-by: xdono ! make/com/sun/tracing/Makefile ! make/com/sun/tracing/dtrace/Makefile ! make/sun/tracing/Makefile ! make/sun/tracing/dtrace/Makefile ! make/sun/tracing/dtrace/mapfile-vers ! src/share/classes/com/sun/tracing/Probe.java ! src/share/classes/com/sun/tracing/ProbeName.java ! src/share/classes/com/sun/tracing/Provider.java ! src/share/classes/com/sun/tracing/ProviderName.java ! src/share/classes/com/sun/tracing/dtrace/ArgsAttributes.java ! src/share/classes/com/sun/tracing/dtrace/Attributes.java ! src/share/classes/com/sun/tracing/dtrace/DependencyClass.java ! src/share/classes/com/sun/tracing/dtrace/FunctionAttributes.java ! src/share/classes/com/sun/tracing/dtrace/FunctionName.java ! src/share/classes/com/sun/tracing/dtrace/ModuleAttributes.java ! src/share/classes/com/sun/tracing/dtrace/ModuleName.java ! src/share/classes/com/sun/tracing/dtrace/NameAttributes.java ! src/share/classes/com/sun/tracing/dtrace/ProviderAttributes.java ! src/share/classes/com/sun/tracing/dtrace/StabilityLevel.java ! src/share/classes/com/sun/tracing/dtrace/package-info.java ! src/share/classes/com/sun/tracing/package-info.java ! src/share/classes/sun/tracing/MultiplexProviderFactory.java ! src/share/classes/sun/tracing/NullProviderFactory.java ! src/share/classes/sun/tracing/PrintStreamProviderFactory.java ! src/share/classes/sun/tracing/ProbeSkeleton.java ! src/share/classes/sun/tracing/ProviderSkeleton.java ! src/share/classes/sun/tracing/dtrace/Activation.java ! src/share/classes/sun/tracing/dtrace/DTraceProbe.java ! src/share/classes/sun/tracing/dtrace/DTraceProvider.java ! src/share/classes/sun/tracing/dtrace/DTraceProviderFactory.java ! src/share/classes/sun/tracing/dtrace/JVM.java ! src/share/classes/sun/tracing/package-info.java ! src/share/native/sun/tracing/dtrace/JVM.c ! src/share/native/sun/tracing/dtrace/jvm_symbols.h ! src/solaris/native/sun/tracing/dtrace/jvm_symbols_md.c ! src/windows/native/sun/tracing/dtrace/jvm_symbols_md.c Changeset: d64b14c25c82 Author: martin Date: 2008-05-10 11:30 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/d64b14c25c82 6636363: BufferUnderflowException decoding length 6 UTF-8 sequences with direct buffers Reviewed-by: sherman ! src/share/classes/sun/nio/cs/UTF_8.java Changeset: 3e7a4b6ef105 Author: martin Date: 2008-05-10 11:49 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/3e7a4b6ef105 6691185: (coll) TreeMap.navigableKeySet's descendingIterator method starts at first instead of last entry Reviewed-by: dl, chegar ! src/share/classes/java/util/TreeMap.java ! test/java/util/Collection/MOAT.java ! test/java/util/NavigableMap/LockStep.java Changeset: 9781e5c7b9ba Author: martin Date: 2008-05-10 12:14 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/9781e5c7b9ba 6691215: (coll) IdentityHashMap.containsValue(null) returns true when null value not present Reviewed-by: dl, chegar, alanb Contributed-by: scottb at google.com ! src/share/classes/java/util/IdentityHashMap.java ! test/java/util/Collection/MOAT.java Changeset: d95a6a4ea502 Author: chegar Date: 2008-05-02 21:33 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/d95a6a4ea502 6687919: REGRESSION : Classloader can handle any resource which is not included in classpath Reviewed-by: jccollet, alanb ! src/share/classes/sun/misc/URLClassPath.java Changeset: 61a7e1919ba3 Author: wetmore Date: 2008-05-11 00:26 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/61a7e1919ba3 Merge Changeset: 2bf15b903bec Author: tbell Date: 2008-05-12 18:06 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/2bf15b903bec Merge Changeset: 3e599d98875d Author: tbell Date: 2008-05-16 12:25 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/3e599d98875d Merge Changeset: 41470017e42f Author: prr Date: 2008-05-19 15:33 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/41470017e42f Merge ! src/share/classes/sun/font/FileFontStrike.java ! src/share/classes/sun/font/FontManager.java ! src/share/classes/sun/java2d/SunGraphics2D.java From igor.nekrestyanov at sun.com Wed May 21 07:03:56 2008 From: igor.nekrestyanov at sun.com (igor.nekrestyanov at sun.com) Date: Wed, 21 May 2008 07:03:56 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 6703377: freetype: glyph vector outline is not translated correctly Message-ID: <20080521070409.498D42847C@hg.openjdk.java.net> Changeset: 7fba83f5f5e0 Author: igor Date: 2008-05-21 10:59 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/7fba83f5f5e0 6703377: freetype: glyph vector outline is not translated correctly Reviewed-by: bae, prr ! src/share/native/sun/font/freetypeScaler.c + test/java/awt/font/Rotate/TranslatedOutlineTest.java From lana.steuck at sun.com Wed May 21 23:51:04 2008 From: lana.steuck at sun.com (lana.steuck at sun.com) Date: Wed, 21 May 2008 23:51:04 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d: 3 new changesets Message-ID: <20080521235104.7DA3628500@hg.openjdk.java.net> Changeset: 613dea62de17 Author: xdono Date: 2008-04-24 12:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/rev/613dea62de17 Added tag jdk7-b26 for changeset 9410f77cc30c ! .hgtags Changeset: 0f440f3321f5 Author: ohair Date: 2008-04-30 19:35 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/rev/0f440f3321f5 6563616: Clarify instructions for unpacking openjdk binary "plug" 6611685: Incorrect link to CA certs info from build README 6682167: Add cygwin faq to README-builds.html Reviewed-by: xdono ! README-builds.html Changeset: 11b4dc9f2be3 Author: xdono Date: 2008-05-13 11:31 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/rev/11b4dc9f2be3 Merge From lana.steuck at sun.com Wed May 21 23:51:50 2008 From: lana.steuck at sun.com (lana.steuck at sun.com) Date: Wed, 21 May 2008 23:51:50 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/corba: Added tag jdk7-b26 for changeset 0043eb3d4e62 Message-ID: <20080521235152.0445D28505@hg.openjdk.java.net> Changeset: e84e9018bebb Author: xdono Date: 2008-04-24 12:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/corba/rev/e84e9018bebb Added tag jdk7-b26 for changeset 0043eb3d4e62 ! .hgtags From lana.steuck at sun.com Wed May 21 23:53:38 2008 From: lana.steuck at sun.com (lana.steuck at sun.com) Date: Wed, 21 May 2008 23:53:38 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/hotspot: 85 new changesets Message-ID: <20080521235635.749672850A@hg.openjdk.java.net> Changeset: 5ff61c9f5601 Author: jmasa Date: 2008-02-11 15:40 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/5ff61c9f5601 6624782: Bigapps crashes during CMS precleaning. Summary: Lowered optimization level for files instanceKlass.cpp and objArrayKlass.cpp Reviewed-by: ysr ! build/solaris/makefiles/amd64.make Changeset: f21b879b4c72 Author: ysr Date: 2008-02-12 16:07 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/f21b879b4c72 6659981: +ParallelRefProcEnabled crashes on single core platform Summary: Disable parallel reference processing when there are no worker threads Reviewed-by: apetrusenko, pbk, jmasa, tonyp ! src/share/vm/memory/referenceProcessor.cpp Changeset: 73e96e5c30df Author: jmasa Date: 2008-02-15 07:01 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/73e96e5c30df 6624765: Guarantee failure "Unexpected dirty card found" Summary: In verification take into account partial coverage of a region by a card and expansion of the card table. Reviewed-by: ysr, apetrusenko ! src/share/vm/gc_implementation/parNew/parNewGeneration.cpp ! src/share/vm/memory/cardTableModRefBS.cpp ! src/share/vm/memory/cardTableRS.cpp ! src/share/vm/memory/cardTableRS.hpp ! src/share/vm/memory/genRemSet.hpp ! src/share/vm/memory/tenuredGeneration.cpp Changeset: 2faf283ce688 Author: ysr Date: 2008-02-16 22:41 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/2faf283ce688 6621144: CMS: assertion failure "is_cms_thread == Thread::current()->is_ConcurrentGC_thread()" Summary: Take lock conditionally (in asynchronous mode only) when updating the dead-object map. Reviewed-by: jmasa ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Changeset: 762905818571 Author: jmasa Date: 2008-02-20 08:40 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/762905818571 6665445: Backout change to CardTableModRefBS::resize_covered_region() Summary: Backed out part of cahnge for 6624765 because of nightly testing regressions. Reviewers below were for 6624765. Reviewed-by: ysr, apetrusenko ! src/share/vm/memory/cardTableModRefBS.cpp Changeset: 173195ff483a Author: ysr Date: 2008-02-21 11:03 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/173195ff483a 6642634: Test nsk/regression/b6186200 crashed with SIGSEGV Summary: Use correct allocation path in expand_and_allocate() so object's mark and p-bits are set as appropriate. Reviewed-by: jmasa, pbk ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Changeset: 28372612af5e Author: jmasa Date: 2008-02-22 17:17 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/28372612af5e 6362677: Change parallel GC collector default number of parallel GC threads. Summary: Use the same default number of GC threads as used by ParNewGC and ConcMarkSweepGC (i.e., the 5/8th rule). Reviewed-by: ysr, tonyp ! src/cpu/sparc/vm/vm_version_sparc.cpp ! src/cpu/sparc/vm/vm_version_sparc.hpp ! src/share/vm/gc_implementation/parallelScavenge/generationSizer.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/arguments.hpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/vm_version.cpp ! src/share/vm/runtime/vm_version.hpp Changeset: 3c1dbcaaab1d Author: ysr Date: 2008-02-26 15:57 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/3c1dbcaaab1d 6621728: Heap inspection should not crash in the face of C-heap exhaustion Summary: Deal more gracefully with situations where C-heap scratch space cannot be had Reviewed-by: jmasa ! src/share/vm/memory/heapInspection.cpp ! src/share/vm/memory/heapInspection.hpp Changeset: 6432c3bb6240 Author: ysr Date: 2008-02-29 14:42 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/6432c3bb6240 6668743: CMS: Consolidate block statistics reporting code Summary: Reduce the amount of related code replication and improve pretty printing. Reviewed-by: jmasa ! src/share/vm/gc_implementation/concurrentMarkSweep/binaryTreeDictionary.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.hpp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeList.cpp ! src/share/vm/gc_implementation/concurrentMarkSweep/freeList.hpp ! src/share/vm/gc_implementation/includeDB_gc_shared + src/share/vm/gc_implementation/shared/allocationStats.cpp + src/share/vm/gc_implementation/shared/allocationStats.hpp ! src/share/vm/includeDB_core - src/share/vm/memory/allocationStats.cpp - src/share/vm/memory/allocationStats.hpp Changeset: 183f41cf8bfe Author: jmasa Date: 2008-03-02 16:10 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/183f41cf8bfe 6557851: CMS: ergonomics defaults are not set with FLAG_SET_ERGO Summary: Default values set by cms ergonomics are set with FLAG_SET_DEFAULT so down stream the values look like the default values and affect how later parameters are set. Set these values with FLAG_SET_ERGO instead and adjust how later parameters are interpreted. Reviewed-by: iveresov, apetrusenko, pbk, ysr ! src/share/vm/gc_implementation/parNew/asParNewGeneration.cpp ! src/share/vm/gc_implementation/parallelScavenge/asPSYoungGen.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp ! src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp ! src/share/vm/gc_implementation/parallelScavenge/psYoungGen.cpp ! src/share/vm/memory/collectorPolicy.cpp ! src/share/vm/memory/collectorPolicy.hpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.cpp ! src/share/vm/runtime/globals_extension.hpp Changeset: 6228104986ca Author: jcoomes Date: 2008-03-05 17:37 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/6228104986ca Merge - src/share/vm/memory/allocationStats.cpp - src/share/vm/memory/allocationStats.hpp Changeset: d825a8a2bd39 Author: jmasa Date: 2008-03-11 14:19 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/d825a8a2bd39 6673975: Disable ZapUnusedHeapArea to reduce GC execution times of debug JVM's. Summary: Mangling the unused space is having an adverse affect on testing with fastdebug builds so turn it off by default. Reviewed-by: ysr, tonyp ! src/share/vm/runtime/globals.hpp Changeset: f8236e79048a Author: dcubed Date: 2007-12-05 09:00 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/f8236e79048a 6664627: Merge changes made only in hotspot 11 forward to jdk 7 Reviewed-by: jcoomes ! src/cpu/sparc/vm/stubGenerator_sparc.cpp ! src/cpu/sparc/vm/vtableStubs_sparc.cpp ! src/cpu/x86/vm/stubGenerator_x86_32.cpp ! src/cpu/x86/vm/stubGenerator_x86_64.cpp ! src/cpu/x86/vm/vtableStubs_x86_32.cpp ! src/cpu/x86/vm/vtableStubs_x86_64.cpp ! src/share/vm/oops/klassVtable.cpp ! src/share/vm/oops/klassVtable.hpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/sharedRuntime.hpp ! src/share/vm/runtime/stubRoutines.cpp ! src/share/vm/runtime/stubRoutines.hpp Changeset: ff5961f4c095 Author: never Date: 2007-12-05 09:01 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/ff5961f4c095 6395208: Elide autoboxing for calls to HashMap.get(int) and HashMap.get(long) Reviewed-by: kvn, rasbold + src/share/vm/ci/ciObjArray.cpp ! src/share/vm/ci/ciObjArray.hpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/includeDB_core ! src/share/vm/opto/addnode.cpp ! src/share/vm/opto/addnode.hpp ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/cfgnode.hpp ! src/share/vm/opto/ifnode.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopnode.hpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/parse2.cpp ! src/share/vm/opto/type.hpp ! src/share/vm/runtime/arguments.cpp Changeset: c7d713375c94 Author: phh Date: 2007-12-05 09:02 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/c7d713375c94 6621621: HashMap front cache should be enabled only with AggressiveOpts Reviewed-by: sbohne, xlu ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/runtime/thread.cpp Changeset: a73cc31728fe Author: rasbold Date: 2007-12-05 09:03 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/a73cc31728fe 6614036: REGRESSION: Java server x86 VM intermittently crash with SIGSEGV (0xb) Summary: restore destination address in x86 32-bit checkcast_arraycopy stub Reviewed-by: jrose, kvn, never ! src/cpu/x86/vm/stubGenerator_x86_32.cpp Changeset: e195fe4c40c7 Author: phh Date: 2007-12-05 09:04 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/e195fe4c40c7 6629887: 64-bit windows should not restrict default heap size to 1400m Reviewed-by: jmasa, sbohne, ikrylov, xlu ! src/os/linux/vm/os_linux.cpp ! src/os/windows/vm/os_windows.cpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp Changeset: b611e572fc5b Author: jcoomes Date: 2007-12-06 13:59 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/b611e572fc5b 6635560: segv in reference processor on t1000 Summary: Revert back to using the default page size for the card table Reviewed-by: pbk, phh ! src/share/vm/memory/cardTableModRefBS.cpp Changeset: 90f5ddc7297b Author: coleenp Date: 2008-01-17 13:38 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/90f5ddc7297b 6646946: Kernel installation failed on Japanese and Chinese XP SP2 (VM part) Summary: convert strings from Download Manager into native encoding in the VM Reviewed-by: sbohne, never, phh, kamg, xlu ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/classfile/javaClasses.hpp ! src/share/vm/classfile/systemDictionary.cpp Changeset: 9bdad1bb1c31 Author: kvn Date: 2008-02-12 18:37 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/9bdad1bb1c31 6621098: "* HeapWordSize" for TrackedInitializationLimit is missing Summary: '* HeapWordSize' is missing in GraphKit::set_output_for_allocation() Reviewed-by: rasbold, jrose, never ! src/share/vm/opto/graphKit.cpp Changeset: 953939ef62ab Author: kvn Date: 2008-02-20 16:19 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/953939ef62ab 6614330: Node::dump(n) does not print full graph for specified depth. Summary: A node is not processed in dump_nodes() if it was visited during processing previous inputs. Reviewed-by: rasbold ! src/share/vm/opto/node.cpp Changeset: c5cbd367e4d1 Author: kvn Date: 2008-02-20 17:23 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/c5cbd367e4d1 6621094: PrintOptoAssembly is broken for oops information in DebugInfo Summary: OopMapValue and VMRegImpl classes miss the virtual method print_on(st). Reviewed-by: rasbold, jrose, never ! src/share/vm/code/vmreg.cpp ! src/share/vm/code/vmreg.hpp ! src/share/vm/compiler/oopMap.cpp ! src/share/vm/compiler/oopMap.hpp Changeset: 0871d5cd64cd Author: kvn Date: 2008-02-21 14:03 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/0871d5cd64cd 6621084: ciMethodBlocks::split_block_at() is broken for methods with exception handler Summary: After an exception handler block is split the exception information is not moved to the new block which starts in exception handler BCI. Reviewed-by: jrose ! src/share/vm/ci/ciMethodBlocks.cpp ! src/share/vm/ci/ciMethodBlocks.hpp Changeset: 1f530c629c7d Author: kvn Date: 2008-02-21 19:03 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/1f530c629c7d 6498878: client compiler crashes on windows when dealing with breakpoint instructions Summary: _is_compilable check prevents breakpoint bytecodes reversion when loading bytecodes for ciMethod. Reviewed-by: never ! src/share/vm/ci/ciMethod.cpp Changeset: 67914967a4b5 Author: kvn Date: 2008-02-22 17:55 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/67914967a4b5 6650373: Assert in methodOopDesc::make_adapters() Summary: AdapterHandlerLibrary::get_create_adapter_index() returns incorrect value (-2) when CodeCache is full. Reviewed-by: sgoldman ! src/share/vm/opto/output.cpp ! src/share/vm/runtime/sharedRuntime.cpp Changeset: d5fc211aea19 Author: kvn Date: 2008-02-25 15:05 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/d5fc211aea19 6633953: type2aelembytes{T_ADDRESS} should be 8 bytes in 64 bit VM Summary: T_ADDRESS size is defined as 'int' size (4 bytes) but C2 use it for raw pointers and as memory type for StoreP and LoadP nodes. Reviewed-by: jrose ! src/cpu/sparc/vm/c1_LIRAssembler_sparc.cpp ! src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp ! src/cpu/x86/vm/c1_LIRAssembler_x86.cpp ! src/cpu/x86/vm/c1_LIRGenerator_x86.cpp ! src/share/vm/c1/c1_LIR.cpp ! src/share/vm/ci/ciField.hpp ! src/share/vm/oops/arrayOop.hpp ! src/share/vm/oops/klass.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/library_call.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/superword.cpp ! src/share/vm/opto/vectornode.cpp ! src/share/vm/opto/vectornode.hpp ! src/share/vm/services/heapDumper.cpp ! src/share/vm/utilities/globalDefinitions.cpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: 65a06b4a51b8 Author: jrose Date: 2008-02-27 00:23 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/65a06b4a51b8 6610906: inexplicable IncompatibleClassChangeError Summary: dependency check must treat polymorphic interfaces consistently Reviewed-by: kvn, never, sgoldman ! src/share/vm/code/dependencies.cpp ! src/share/vm/code/nmethod.cpp Changeset: 6152cbb08ce9 Author: kvn Date: 2008-02-28 10:45 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/6152cbb08ce9 6590177: jck60019 test assert(!repeated,"do not walk merges twice") Summary: A mergemem node could be not in worklist_store but in should_not_repeat vectorset since it was processed and removed from worklist_store before. Reviewed-by: jrose, never ! src/share/vm/opto/gcm.cpp Changeset: 4d428c5b4cb3 Author: kvn Date: 2008-02-28 15:40 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/4d428c5b4cb3 6667573: Use set_req_X() in AddPNode::Ideal() for Iterative GVN Summary: set_req_X() puts dependent nodes on IGVN worklist which allows to improve graph and gives more opportunities for EA scalar replacement. Reviewed-by: jrose, never ! src/share/vm/opto/addnode.cpp Changeset: 3288958bf319 Author: kvn Date: 2008-02-29 09:57 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/3288958bf319 6667580: Optimize CmpP for allocations Summary: CmpP could be optimized out if it compares new allocated objects. Reviewed-by: jrose, never, rasbold ! src/share/vm/includeDB_compiler2 ! src/share/vm/opto/callnode.hpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/subnode.cpp Changeset: 545c277a3ecf Author: kvn Date: 2008-02-29 11:22 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/545c277a3ecf 6667581: Don't generate initialization (by 0) code for arrays with size 0 Summary: generate_arraycopy() does not check the size of allocated array. Reviewed-by: jrose, never ! src/share/vm/opto/library_call.cpp Changeset: e2ae28d2ce91 Author: kvn Date: 2008-02-29 19:07 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/e2ae28d2ce91 6667588: Don't generate duplicated CMP for float/double values Summary: float CMove generation add duplicated CMPF if there are more then one Move depending on the condition. Reviewed-by: jrose, never, rasbold ! src/share/vm/opto/loopopts.cpp Changeset: f34d9da7acb2 Author: kvn Date: 2008-02-29 19:57 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/f34d9da7acb2 6667618: disable LoadL->ConvL2I ==> LoadI optimization Summary: this optimization causes problems (sizes of Load and Store nodes do not match) for objects initialization code and Escape Analysis Reviewed-by: jrose, never ! src/share/vm/opto/connode.cpp ! src/share/vm/opto/memnode.cpp Changeset: 73970d8c0b27 Author: kvn Date: 2008-03-05 11:33 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/73970d8c0b27 6671250: In Parse::do_if() old Cmp node 'c' should be replaced with new one after BoolNode transformation Summary: In Parse::do_if() 'c' (CmpNode) node may be changed during BoolNode transformation so 'c' may became dead but the node is referenced later in the code. Reviewed-by: never ! src/share/vm/opto/parse2.cpp Changeset: b789bcaf2dd9 Author: kvn Date: 2008-03-06 10:30 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/b789bcaf2dd9 6667610: (Escape Analysis) retry compilation without EA if it fails Summary: During split unique types EA could exceed nodes limit and fail the method compilation. Reviewed-by: rasbold ! src/share/vm/includeDB_compiler2 ! src/share/vm/opto/c2compiler.cpp ! src/share/vm/opto/c2compiler.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/parse1.cpp Changeset: 76256d272075 Author: kvn Date: 2008-03-06 10:53 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/76256d272075 6667612: (Escape Analysis) disable loop cloning if it has a scalar replaceable allocation Summary: Cloning an allocation will not allow scalar replacement since memory operations could not be associated with one allocation. Reviewed-by: rasbold ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/callnode.hpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/loopTransform.cpp ! src/share/vm/opto/loopnode.cpp ! src/share/vm/opto/loopnode.hpp Changeset: 7c1f32ae4a20 Author: kvn Date: 2008-03-06 20:58 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/7c1f32ae4a20 6670459: Fix Node::dump() performance Summary: dump full ideal graph takes forever. Reviewed-by: never, rasbold ! src/share/vm/opto/node.cpp ! src/share/vm/opto/node.hpp Changeset: 874b2c4f43d1 Author: kvn Date: 2008-03-07 11:09 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/874b2c4f43d1 6667605: (Escape Analysis) inline java constructors when EA is on Summary: java constructors should be inlined to be able scalar replace a new object Reviewed-by: rasbold ! src/share/vm/opto/bytecodeInfo.cpp ! src/share/vm/opto/parse.hpp ! src/share/vm/opto/phaseX.cpp Changeset: 1216832af221 Author: jcoomes Date: 2008-03-10 17:21 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/1216832af221 Merge Changeset: d821d920b465 Author: kvn Date: 2008-03-11 11:04 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/d821d920b465 6623167: C2 crashed in StoreCMNode::Value Summary: C2 crashed in StoreCMNode::Value because n->in(MemNode::OopStore) is 0. Reviewed-by: rasbold, never ! src/share/vm/opto/memnode.cpp Changeset: 52fed2ec0afb Author: kvn Date: 2008-03-11 11:25 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/52fed2ec0afb 6667620: (Escape Analysis) fix deoptimization for scalar replaced objects Summary: Deoptimization code for reallocation and relocking scalar replaced objects has to be fixed. Reviewed-by: rasbold, never ! src/share/vm/ci/ciInstanceKlass.cpp ! src/share/vm/ci/ciInstanceKlass.hpp ! src/share/vm/code/debugInfo.cpp ! src/share/vm/code/scopeDesc.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/runtime/deoptimization.cpp Changeset: 48a3fa21394b Author: kvn Date: 2008-03-11 19:00 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/48a3fa21394b 6667615: (Escape Analysis) extend MDO to cache arguments escape state Summary: Use MDO to cache arguments escape state determined by the byte code escape analyzer. Reviewed-by: never ! src/share/vm/ci/bcEscapeAnalyzer.cpp ! src/share/vm/ci/bcEscapeAnalyzer.hpp ! src/share/vm/ci/ciMethodData.cpp ! src/share/vm/ci/ciMethodData.hpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/oops/methodDataOop.cpp ! src/share/vm/oops/methodDataOop.hpp Changeset: 8b6e49187640 Author: rasbold Date: 2008-03-13 05:40 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/8b6e49187640 Merge ! src/share/vm/includeDB_core ! src/share/vm/memory/cardTableModRefBS.cpp ! src/share/vm/runtime/arguments.cpp Changeset: 2c106685d6d0 Author: dcubed Date: 2008-03-12 18:06 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/2c106685d6d0 6497639: 4/3 Profiling Swing application caused JVM crash Summary: Make RedefineClasses() interoperate better with class sharing. Reviewed-by: sspitsyn, jmasa ! src/share/vm/classfile/dictionary.cpp ! src/share/vm/memory/compactingPermGenGen.cpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp Changeset: d8b3ef7ee3e5 Author: dcubed Date: 2008-03-12 18:07 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/d8b3ef7ee3e5 6599425: 4/3 OopMapCache::lookup() can cause later crash or assert() failure Summary: Add should_not_be_cached() to markOop and methodOop and query that status inOopMapCache::lookup() Reviewed-by: coleenp, sspitsyn, jmasa ! src/share/vm/includeDB_core ! src/share/vm/interpreter/oopMapCache.cpp ! src/share/vm/oops/markOop.cpp ! src/share/vm/oops/markOop.hpp ! src/share/vm/oops/methodOop.cpp ! src/share/vm/oops/methodOop.hpp ! src/share/vm/prims/jvmtiRedefineClassesTrace.hpp Changeset: 31000d79ec71 Author: dcubed Date: 2008-03-12 18:09 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/31000d79ec71 6453355: 4/4 new No_Safepoint_Verifier uses fail during GC Summary: (for Serguei) Clean up use of No_Safepoint_Verifier in JVM TI Reviewed-by: dcubed ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/runtime/thread.cpp Changeset: 485d403e94e1 Author: dcubed Date: 2008-03-12 18:37 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/485d403e94e1 6452081: 3/4 Allow for Linux builds with Sun Studio Linux compilers Summary: (for Serguei) Allow for Linux builds with Sun Studio Linux compilers Reviewed-by: sspitsyn, ohair ! agent/src/os/linux/ps_core.c ! agent/src/os/linux/ps_proc.c ! build/linux/Makefile ! build/linux/makefiles/amd64.make ! build/linux/makefiles/buildtree.make + build/linux/makefiles/sparcWorks.make + build/linux/platform_amd64.suncc + build/linux/platform_i486.suncc ! src/cpu/x86/vm/assembler_x86_64.cpp ! src/os/linux/vm/attachListener_linux.cpp ! src/os_cpu/linux_x86/vm/bytes_linux_x86.inline.hpp ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/share/vm/utilities/globalDefinitions_sparcWorks.hpp Changeset: 1ffa5cdd0b7e Author: dcubed Date: 2008-03-12 18:39 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/1ffa5cdd0b7e 6667089: 3/3 multiple redefinitions of a class break reflection Summary: Use instanceKlass::method_with_idnum() instead of slot() to work with RedefineClasses(). Reviewed-by: sspitsyn ! src/share/vm/runtime/reflection.cpp Changeset: 75b0f3cb1943 Author: dcubed Date: 2008-03-13 14:17 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/75b0f3cb1943 Merge ! src/os_cpu/linux_x86/vm/os_linux_x86.cpp ! src/share/vm/includeDB_core ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/runtime/thread.cpp Changeset: 9785f6d2dd97 Author: kamg Date: 2008-01-31 09:41 -0500 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/9785f6d2dd97 6631248: Memory problem when doing invalid type cast Summary: Changed memory allocation method for exception method Reviewed-by: ysr, never ! src/share/vm/runtime/sharedRuntime.cpp Changeset: d4a0f561287a Author: sbohne Date: 2008-01-31 14:56 -0500 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/d4a0f561287a 6598190: JPRT tests fail when run with -XX:+CheckUnhandledOops Summary: Work around Sun Studio C++ compiler bug 6629277 in dependencies.cpp Reviewed-by: kamg, sgoldman, pbk ! src/share/vm/code/dependencies.cpp Changeset: 2a8eb116ebbe Author: xlu Date: 2008-02-05 23:21 -0800 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/2a8eb116ebbe 6610420: Debug VM crashes during monitor lock rank checking Summary: Make SerializePage lock as raw lock and add name for mutex locks Reviewed-by: never, dice, dholmes ! src/share/vm/runtime/mutex.cpp ! src/share/vm/runtime/mutex.hpp ! src/share/vm/runtime/mutexLocker.cpp ! src/share/vm/runtime/mutexLocker.hpp ! src/share/vm/runtime/os.cpp Changeset: 31d829b33f26 Author: coleenp Date: 2008-02-27 13:55 -0500 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/31d829b33f26 6549844: Wording problems in "An unexpected error ..." Summary: Changed wording to "A fatal error.." also don't claim it's not VM bug if in hotspot compilers (Java thread in native). Reviewed-by: jjh, sbohne, jrose, never ! src/share/vm/utilities/vmError.cpp Changeset: ff0979201b06 Author: sbohne Date: 2008-03-03 14:47 -0500 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/ff0979201b06 6655385: Disable frame pointer omission in jvm.dll on Windows for better crash logs Summary: Add /Oy- C++ compiler option on Windows Reviewed-by: phh, never, ysr ! build/windows/makefiles/compile.make Changeset: 7ee622712fcf Author: sbohne Date: 2008-03-04 09:44 -0500 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/7ee622712fcf 6666698: EnableBiasedLocking with BiasedLockingStartupDelay can block Watcher thread Summary: Enqueue VM_EnableBiasedLocking operation asynchronously Reviewed-by: never, xlu, kbr, acorn ! src/share/vm/runtime/biasedLocking.cpp Changeset: 887682771f69 Author: jcoomes Date: 2008-03-12 16:31 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/887682771f69 Merge Changeset: 8d84e28e68ba Author: sbohne Date: 2008-03-14 10:43 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/8d84e28e68ba 6204603: Modify hotspot to use new Solaris mmap semantics for class data archive file Summary: os::attempt_reserve_memory_at() now passes an address hint to mmap Reviewed-by: kamg, dice ! src/os/solaris/vm/os_solaris.cpp ! src/os/solaris/vm/os_solaris.hpp Changeset: 5a76ab815e34 Author: sbohne Date: 2008-03-19 09:58 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/5a76ab815e34 6667833: Remove CacheTimeMillis Summary: Remove -XX:+CacheTimeMillis option and associated functionality Reviewed-by: acorn, never ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/java.cpp ! src/share/vm/runtime/os.cpp ! src/share/vm/runtime/os.hpp ! src/share/vm/runtime/task.cpp ! src/share/vm/runtime/task.hpp ! src/share/vm/runtime/thread.cpp Changeset: cd0742ba123c Author: kamg Date: 2008-03-20 09:17 -0500 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/cd0742ba123c Merge ! src/os/linux/vm/os_linux.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/code/dependencies.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/sharedRuntime.cpp ! src/share/vm/runtime/thread.cpp Changeset: eac007780a58 Author: kvn Date: 2008-03-13 16:06 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/eac007780a58 6671807: (Escape Analysis) Add new ideal node to represent the state of a scalarized object at a safepoint Summary: Values of non-static fields of a scalarized object should be saved in debug info to reallocate the object during deoptimization. Reviewed-by: never ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/callnode.hpp ! src/share/vm/opto/classes.hpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/matcher.cpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/output.cpp Changeset: b8f5ba577b02 Author: kvn Date: 2008-03-13 16:31 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/b8f5ba577b02 6673473: (Escape Analysis) Add the instance's field information to PhiNode Summary: Avoid an infinite generation of instance's field values Phi nodes. Reviewed-by: never ! src/share/vm/opto/cfgnode.hpp ! src/share/vm/opto/loopopts.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/type.cpp ! src/share/vm/opto/type.hpp Changeset: 99269dbf4ba8 Author: kvn Date: 2008-03-14 15:26 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/99269dbf4ba8 6674588: (Escape Analysis) Improve Escape Analysis code Summary: Current EA code has several problems which have to be fixed. Reviewed-by: jrose, sgoldman ! src/share/vm/includeDB_compiler2 ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/callnode.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/escape.hpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/phaseX.cpp ! src/share/vm/runtime/arguments.cpp Changeset: 6dbf1a175d6b Author: kvn Date: 2008-03-14 16:40 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/6dbf1a175d6b 6672848: (Escape Analysis) improve lock elimination with EA Summary: Remove lock/unlock MemBar nodes and specify locks in debug info for deoptimization. Reviewed-by: never ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/locknode.cpp ! src/share/vm/opto/locknode.hpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/macro.hpp ! src/share/vm/opto/output.cpp Changeset: 16e1cb7cde24 Author: never Date: 2008-03-18 11:17 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/16e1cb7cde24 6666343: Compile::has_loops not always set correctly Summary: Compile::has_loops() should be set from inlined methods Reviewed-by: kvn, rasbold ! src/share/vm/opto/doCall.cpp Changeset: daf38130e60d Author: never Date: 2008-03-18 23:44 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/daf38130e60d 6676841: ClearArrayNode::Identity is incorrect for 64-bit Summary: ClearArrayNode::Identity should use TypeX instead of TypeInt Reviewed-by: jrose, kvn, sgoldman ! src/share/vm/opto/memnode.cpp Changeset: 8bb88f9877e5 Author: never Date: 2008-03-18 23:54 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/8bb88f9877e5 6659207: access violation in CompilerThread0 Summary: split_thru_phi produces top on a non-dead path Reviewed-by: kvn, rasbold, sgoldman ! src/share/vm/opto/loopopts.cpp + test/compiler/6659207/Test.java Changeset: b683f557224b Author: never Date: 2008-03-19 15:14 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/b683f557224b 6661247: Internal bug in 32-bit HotSpot optimizer while bit manipulations Summary: copy elimination of a constant value results in incorrect execution Reviewed-by: kvn, sgoldman, rasbold ! src/share/vm/opto/chaitin.hpp ! src/share/vm/opto/postaloc.cpp + test/compiler/6661247/Test.java Changeset: 3d62cb85208d Author: kvn Date: 2008-03-19 15:33 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/3d62cb85208d 6662967: Optimize I2D conversion on new x86 Summary: Use CVTDQ2PS and CVTDQ2PD for integer values conversions to float and double values on new AMD cpu. Reviewed-by: sgoldman, never ! src/cpu/x86/vm/assembler_x86_32.cpp ! src/cpu/x86/vm/assembler_x86_32.hpp ! src/cpu/x86/vm/assembler_x86_64.cpp ! src/cpu/x86/vm/assembler_x86_64.hpp ! src/cpu/x86/vm/vm_version_x86_32.cpp ! src/cpu/x86/vm/vm_version_x86_64.cpp ! src/cpu/x86/vm/x86_32.ad ! src/cpu/x86/vm/x86_64.ad ! src/share/vm/runtime/globals.hpp Changeset: f705f25597eb Author: never Date: 2008-03-20 10:43 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/f705f25597eb 6663621: JVM crashes while trying to execute api/java_security/Signature/SignatureTests.html#initSign tests. Summary: alignment expression with secondary induction variables is sometimes wrong Reviewed-by: kvn, rasbold ! src/share/vm/opto/superword.cpp + test/compiler/6663621/IVTest.java Changeset: a8880a78d355 Author: kvn Date: 2008-03-20 13:51 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/a8880a78d355 6259129: (Escape Analysis) scalar replacement for not escaping objects Summary: Use scalar replacement with EA to remove allocations for objects which do not escape the compiled method. Reviewed-by: rasbold, never, jrose ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/macro.hpp ! src/share/vm/opto/phaseX.hpp Changeset: 2a9af0b9cb1c Author: kvn Date: 2008-03-20 15:11 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/2a9af0b9cb1c 6674600: (Escape Analysis) Optimize memory graph for instance's fields Summary: EA gives opportunite to do more aggressive memory optimizations. Reviewed-by: never, jrose ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/callnode.hpp ! src/share/vm/opto/cfgnode.cpp ! src/share/vm/opto/cfgnode.hpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp Changeset: f68325221ce1 Author: kvn Date: 2008-03-21 00:49 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/f68325221ce1 6678377: Update build number for HS12 Summary: b01 -> b02 Reviewed-by: kvn ! make/hotspot_version Changeset: d6fe2e4959d6 Author: rasbold Date: 2008-03-21 08:32 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/d6fe2e4959d6 Merge ! src/cpu/x86/vm/assembler_x86_64.cpp ! src/share/vm/runtime/arguments.cpp ! src/share/vm/runtime/globals.hpp Changeset: 36cd3cc4d27b Author: kvn Date: 2008-03-27 09:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/36cd3cc4d27b 6679854: assert in escape.cpp:397 Summary: The assert misses the case CastX2P 'base' for an unsafe field reference Reviewed-by: never, jrose ! src/share/vm/opto/escape.cpp Changeset: e1e86702e43e Author: kvn Date: 2008-03-28 11:52 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/e1e86702e43e 6680665: bytecode Escape Analyzer produces incorrect escape information for methods without oop arguments Summary: bcEscapeAnalyzer does not analyze methods with no oop arguments. Reviewed-by: rasbold ! src/share/vm/ci/bcEscapeAnalyzer.cpp ! src/share/vm/ci/bcEscapeAnalyzer.hpp ! src/share/vm/oops/methodDataOop.hpp Changeset: 82db0859acbe Author: jcoomes Date: 2008-03-28 23:35 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/82db0859acbe 6642862: Code cache allocation fails with large pages after 6588638 Reviewed-by: apetrusenko ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp ! src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp ! src/share/vm/memory/heap.cpp ! src/share/vm/runtime/os.hpp Changeset: 092ea87cc974 Author: jcoomes Date: 2008-03-28 23:35 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/092ea87cc974 6679422: networkStream::connect() in ostream.cpp is not 64-bit clean Reviewed-by: jmasa, xlu ! src/share/vm/utilities/ostream.cpp Changeset: dee7a3f3dc9d Author: never Date: 2008-03-31 16:22 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/dee7a3f3dc9d 6636352: Unit tests for supplementary character support fail with -XX:+AggressiveOpts Summary: incorrect encoding Reviewed-by: kvn, rasbold, sgoldman, jrose ! src/cpu/sparc/vm/sparc.ad Changeset: de93acbb64fc Author: kvn Date: 2008-03-31 18:37 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/de93acbb64fc 6682236: C2 hits ideal nodes limit during IGVN optimization with EA Summary: missing check in LoadNode::Ideal() causes infinite generation of a value Phi. Reviewed-by: jrose, never ! src/share/vm/opto/memnode.cpp Changeset: d3cd40645d0d Author: kvn Date: 2008-04-01 16:14 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/d3cd40645d0d 6681646: Relocking of a scalar replaced object during deoptimization is broken Summary: Relocking of a thread-local object during deoptimization is broken Reviewed-by: kbr, jrose, never ! src/share/vm/runtime/deoptimization.cpp ! src/share/vm/runtime/deoptimization.hpp ! src/share/vm/runtime/vframe.cpp ! src/share/vm/runtime/vframe.hpp ! src/share/vm/runtime/vframe_hp.cpp Changeset: 6e085831cad7 Author: sbohne Date: 2008-04-10 15:49 -0400 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/6e085831cad7 6692235: Fix for 6666698 broke -XX:BiasedLockingStartupDelay=0 Summary: Stack allocated VM_EnableBiasedLocking op must be marked as such Reviewed-by: xlu, acorn, never, dholmes ! src/share/vm/runtime/biasedLocking.cpp Changeset: f3b3fe64f59f Author: kvn Date: 2008-04-15 10:49 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/f3b3fe64f59f 6692301: Side effect in NumberFormat tests with -server -Xcomp Summary: Optimization in CmpPNode::sub() removed the valid compare instruction because of false positive answer from detect_dominating_control(). Reviewed-by: jrose, sgoldman ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/node.cpp ! src/share/vm/opto/node.hpp Changeset: 6cc3576e5142 Author: jcoomes Date: 2008-04-16 15:34 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/6cc3576e5142 6689788: Bump HSX12 build version number Summary: Update HSX12 build number to 03 Reviewed-by: kvn ! make/hotspot_version Changeset: ad0b851458ff Author: trims Date: 2008-04-22 15:36 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/ad0b851458ff Merge - src/share/vm/memory/allocationStats.cpp - src/share/vm/memory/allocationStats.hpp Changeset: 24706b95d959 Author: xdono Date: 2008-04-24 12:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/hotspot/rev/24706b95d959 Added tag jdk7-b26 for changeset ad0b851458ff ! .hgtags From lana.steuck at sun.com Wed May 21 23:58:28 2008 From: lana.steuck at sun.com (lana.steuck at sun.com) Date: Wed, 21 May 2008 23:58:28 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jaxp: Added tag jdk7-b26 for changeset da43cb85fac1 Message-ID: <20080521235830.B46472850F@hg.openjdk.java.net> Changeset: bafed478d67c Author: xdono Date: 2008-04-24 12:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jaxp/rev/bafed478d67c Added tag jdk7-b26 for changeset da43cb85fac1 ! .hgtags From lana.steuck at sun.com Wed May 21 23:59:16 2008 From: lana.steuck at sun.com (lana.steuck at sun.com) Date: Wed, 21 May 2008 23:59:16 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jaxws: Added tag jdk7-b26 for changeset debd37e1a422 Message-ID: <20080521235918.AF4BB28514@hg.openjdk.java.net> Changeset: 27d8f42862c1 Author: xdono Date: 2008-04-24 12:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/jaxws/rev/27d8f42862c1 Added tag jdk7-b26 for changeset debd37e1a422 ! .hgtags From lana.steuck at sun.com Thu May 22 00:00:15 2008 From: lana.steuck at sun.com (lana.steuck at sun.com) Date: Thu, 22 May 2008 00:00:15 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/langtools: 19 new changesets Message-ID: <20080522000045.868192851B@hg.openjdk.java.net> Changeset: 058bdd3ca02e Author: ksrini Date: 2008-03-20 08:44 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/058bdd3ca02e 6618930: (javac) fix test after whitespace normalization Summary: whitespace normalization left the test unusable, back to service Reviewed-by: jjg ! test/tools/javac/6304921/T6304921.java ! test/tools/javac/6304921/T6304921.out Changeset: 6e4cefcce80a Author: mcimadamore Date: 2008-04-02 11:20 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/6e4cefcce80a 6569789: Compiler test lang/TYPE/type153/type15304/type15304.html fails since jdk7 b05 Summary: improved glb on type-inference Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Infer.java + test/tools/javac/generics/inference/6569789/T6569789.java Changeset: aeaa0f482b28 Author: mcimadamore Date: 2008-04-02 11:38 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/aeaa0f482b28 6509042: javac rejects class literals in enum constructors Summary: javac now distinguish between enum class literals and static fields Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/enum/T6509042.java Changeset: adaa3fc51b60 Author: mcimadamore Date: 2008-04-02 11:44 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/adaa3fc51b60 6531090: Cannot access methods/fields of a captured type belonging to an intersection type Summary: fixed lookup of field/methods on intersection types Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Types.java ! src/share/classes/com/sun/tools/javac/comp/Resolve.java + test/tools/javac/generics/6531090/T6531090a.java + test/tools/javac/generics/6531090/T6531090b.java Changeset: ddd77d1c1b49 Author: ksrini Date: 2008-04-03 18:01 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/ddd77d1c1b49 6570242: Regression test failures with Javac on win32. Summary: takes this test out of service until the reall bug is fixed Reviewed-by: jjg ! test/tools/javac/api/6431257/T6431257.java Changeset: c46d25a2350a Author: tbell Date: 2008-04-11 15:08 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/c46d25a2350a Merge Changeset: 3c41acaad702 Author: xdono Date: 2008-04-24 12:12 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/3c41acaad702 Added tag jdk7-b26 for changeset c46d25a2350a ! .hgtags Changeset: 961ae2608114 Author: mcimadamore Date: 2008-04-09 13:19 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/961ae2608114 6531075: Missing synthetic casts when accessing fields/methods of intersection types including type variables Summary: bug when javac generates code involving intersection types Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/TransTypes.java + test/tools/javac/generics/6531075/T6531075.java Changeset: d032d5090fd5 Author: mcimadamore Date: 2008-04-09 13:41 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/d032d5090fd5 5009937: hiding versus generics versus binary compatibility Summary: missing implementation of JLS 8.4.8.3 (different arguments with same erasure not always triggering a compiler error) Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Check.java + test/tools/javac/generics/5009937/T5009937.java + test/tools/javac/generics/5009937/T5009937.out ! test/tools/javac/generics/InheritanceConflict.java ! test/tools/javac/generics/InheritanceConflict2.java Changeset: 57ba4f70f0d8 Author: mcimadamore Date: 2008-04-09 13:53 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/57ba4f70f0d8 6365166: javac (generic) unable to resolve methods Summary: Unignore regression test as this bug has been fixed by CR 6278587 Reviewed-by: jjg + test/tools/javac/generics/inference/6356673/T6365166.java Changeset: 25338c55e458 Author: mcimadamore Date: 2008-04-09 14:05 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/25338c55e458 6481655: Parser confused by combination of parens and explicit type args Summary: Bug in the parser caused by the fact that explicit type arguments are disabled when parsing parenthesized expressions Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/parser/Parser.java + test/tools/javac/generics/T6481655.java Changeset: 447c300a24e7 Author: mcimadamore Date: 2008-04-09 14:45 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/447c300a24e7 6450290: Capture of nested wildcards causes type error Summary: A missing capture conversion makes javac to think that some expressions are well-formed even when they aren't Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/generics/wildcards/T6450290.java Changeset: e7bf2e39b8fe Author: mcimadamore Date: 2008-04-09 14:57 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/e7bf2e39b8fe 6657499: javac 1.6.0 fails to compile class with inner class Summary: Lookup of member inner classes silently fails leading to an unwanted erasure to take place Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Attr.java + test/tools/javac/generics/T6657499.java Changeset: 6522ea413d23 Author: mcimadamore Date: 2008-04-09 15:04 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/6522ea413d23 6683438: Bad regression test for CR 6611449 Summary: The regression test for CR 6611449 contains some inconstistencies Reviewed-by: jjg ! test/tools/javac/generics/inference/6611449/T6611449.java ! test/tools/javac/generics/inference/6611449/T6611449.out Changeset: a1d1f335633f Author: mcimadamore Date: 2008-04-09 15:30 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/a1d1f335633f 6559182: Cast from a raw type with non-generic supertype to a raw type fails unexpectedly Summary: Javac doesn't conform to JLS 4.8 - all the supertypes of a raw type must be erased Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Type.java ! src/share/classes/com/sun/tools/javac/code/Types.java + test/tools/javac/generics/Casting5.java Changeset: 627deea1ea4f Author: tbell Date: 2008-04-15 17:48 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/627deea1ea4f Merge Changeset: eb4c60ad2fa2 Author: tbell Date: 2008-04-25 15:22 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/eb4c60ad2fa2 Merge Changeset: ec29a1a284ca Author: mcimadamore Date: 2008-04-23 17:10 +0100 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/ec29a1a284ca 6682380: Foreach loop with generics inside finally block crashes javac with -target 1.5 Summary: A missing type-erasure in Lower.java causes the compiler to crash since JDK6 Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/comp/Lower.java + test/tools/javac/foreach/T6682380.java Changeset: a17265993253 Author: tbell Date: 2008-05-12 18:07 -0700 URL: http://hg.openjdk.java.net/jdk7/2d/langtools/rev/a17265993253 Merge From igor.nekrestyanov at sun.com Wed May 28 16:10:39 2008 From: igor.nekrestyanov at sun.com (igor.nekrestyanov at sun.com) Date: Wed, 28 May 2008 16:10:39 +0000 Subject: [OpenJDK 2D-Dev] hg: jdk7/2d/jdk: 6587560: OpenJDK problem handling bitmaps returned when LCD text is requested Message-ID: <20080528161057.6A683287F2@hg.openjdk.java.net> Changeset: 8f1a1b2f77a3 Author: igor Date: 2008-05-28 20:06 +0400 URL: http://hg.openjdk.java.net/jdk7/2d/jdk/rev/8f1a1b2f77a3 6587560: OpenJDK problem handling bitmaps returned when LCD text is requested Reviewed-by: bae, prr ! src/share/native/sun/font/freetypeScaler.c From roman.kennke at aicas.com Wed May 28 19:45:30 2008 From: roman.kennke at aicas.com (Roman Kennke) Date: Wed, 28 May 2008 21:45:30 +0200 Subject: [OpenJDK 2D-Dev] LCMS stale native method Message-ID: <1212003930.12790.99.camel@moonlight> I notice that there is a native method freeTransform() in LCMS.java, but LCMS.c doesn't have an implementation for that. There is only LCMS_freeTransform(), which of course isn't a JNI method. It could easily be implemented like this: JNIEXPORT void JNICALL Java_sun_java2d_cmm_lcms_LCMS_freeTransform(JNIEnv* env, jclass cls, jlong id) { LCMS_freeTransform(env, id); } Wondering, why this never showed up anywhere, I digged a little deeper an looked around for possible callers of freeTransform(), but found none. Considering this, I think this must be a stale method maybe left from some earlier experiments and could be removed now. Is this correct? In this case, I would propose to remove the native method declaration. Cheers, Roman -- Dipl.-Inform. (FH) Roman Kennke, Software Engineer, http://kennke.org aicas Allerton Interworks Computer Automated Systems GmbH Haid-und-Neu-Stra?e 18 * D-76131 Karlsruhe * Germany http://www.aicas.com * Tel: +49-721-663 968-0 USt-Id: DE216375633, Handelsregister HRB 109481, AG Karlsruhe Gesch?ftsf?hrer: Dr. James J. Hunt From Phil.Race at Sun.COM Wed May 28 20:02:22 2008 From: Phil.Race at Sun.COM (Phil Race) Date: Wed, 28 May 2008 13:02:22 -0700 Subject: [OpenJDK 2D-Dev] LCMS stale native method In-Reply-To: <1212003930.12790.99.camel@moonlight> References: <1212003930.12790.99.camel@moonlight> Message-ID: <483DBA4E.9060409@sun.com> Roman, Sounds right. The native method declaration in LCMS.java appears to be superseded by the non-JNI function which I see is used in LCMS.c Disposer_AddRecord(env, disposerRef, LCMS_freeTransform, sTrans.j); I filed 6708093 :Redundant unused native method declaration in LCMS.java -phil. Roman Kennke wrote: > I notice that there is a native method freeTransform() in LCMS.java, but > LCMS.c doesn't have an implementation for that. There is only > LCMS_freeTransform(), which of course isn't a JNI method. It could > easily be implemented like this: > > JNIEXPORT void JNICALL > Java_sun_java2d_cmm_lcms_LCMS_freeTransform(JNIEnv* env, jclass cls, > jlong id) { > LCMS_freeTransform(env, id); > } > > Wondering, why this never showed up anywhere, I digged a little deeper > an looked around for possible callers of freeTransform(), but found > none. Considering this, I think this must be a stale method maybe left > from some earlier experiments and could be removed now. Is this correct? > In this case, I would propose to remove the native method declaration. > > Cheers, Roman > From linuxhippy at gmail.com Fri May 30 08:13:00 2008 From: linuxhippy at gmail.com (Clemens Eisserer) Date: Fri, 30 May 2008 10:13:00 +0200 Subject: [OpenJDK 2D-Dev] Why does the OpenGL pipeline not use setupBlitVector? Message-ID: <194f62550805300113u5ac7c041o2de14721c3418863@mail.gmail.com> Hi, I've had a look at the doDrawGlyphList implementations of both the X11 and the OpenGL pipeline, however I have (as always) some questions: - Why does the OpenGL pipeline not use setupBlitVector, but instead does the work itself? - Are the values in GlyphInfo always the same, if the glyph does not change (x/y/width/height)? I ask, because XRender does store quite the same information on the server when caching the glyphs, and if these values would stay the same, I could avoid sending e.g. the position-fionrormation for every glyph drawn. Or could it happen that the same glyphs are rendered with different offset or width (e.g. "stretched" text)? Thanks, Clemens From Christopher.Campbell at Sun.COM Fri May 30 15:59:39 2008 From: Christopher.Campbell at Sun.COM (Chris Campbell) Date: Fri, 30 May 2008 08:59:39 -0700 Subject: [OpenJDK 2D-Dev] Why does the OpenGL pipeline not use setupBlitVector? In-Reply-To: <194f62550805300113u5ac7c041o2de14721c3418863@mail.gmail.com> References: <194f62550805300113u5ac7c041o2de14721c3418863@mail.gmail.com> Message-ID: <0AD523CC-8459-4783-9029-FFD0483C8726@sun.com> Hi Clemens, On May 30, 2008, at 1:13 AM, Clemens Eisserer wrote: > Hi, > > I've had a look at the doDrawGlyphList implementations of both the X11 > and the OpenGL pipeline, however I have (as always) some questions: > > - Why does the OpenGL pipeline not use setupBlitVector, but instead > does the work itself? > It's been a while since I wrote that code, but I think the primary reason was so that it plays better with single-threaded rendering (STR) and the relatively lightweight process of throwing things on the RenderQueue. As you know, one of the benefits from STR is that it avoids lots of JNI overhead. The setupBlitVector() method does a bunch of JNI field fetches from the native level, mallocs a GlyphBlitVector structure each time, fills it by doing a JNI Get/ ReleasePrimitiveArrayCritical, etc. This is all mostly necessary work for the software or X11 pipelines, but with STR, we realized that we already have a structure (the RenderQueue) that could be used to hold the glyph list information during the rendering process. Even better, all that information is available at the Java level, so we can easily stuff the GlyphInfos on the RenderQueue without dipping down into JNI (see BufferedTextPipe.enqueueGlyphList() method), and then when the queue is flushed (rendered), we can do the last little bit of massaging "inline" at the native level (see OGLTR_DrawGlyphList()). No need for setupBlitVector(), and overall it's quite an efficient process. > - Are the values in GlyphInfo always the same, if the glyph does not > change (x/y/width/height)? Phil will correct me if I'm wrong... When a String or GlyphVector or whatever is rendered, each time a new set of GlyphInfo "instances" are generated depending on the position of the text (i.e. the GlyphList) on the screen, etc. So once a GlyphList and its associated GlyphInfos has been created, those fields won't change, but of course it's a temporary structure, only valid for that one time that the GlyphList is rendered. > > I ask, because XRender does store quite the same information on the > server when caching the glyphs, and if these values would stay the > same, I could avoid sending e.g. the position-fionrormation for every > glyph drawn. I'm not sure at which level you (or rather XRender) are caching the glyphs. You can certainly cache the glyph images, as we do for OGL/ D3D (see AccelGlyphCache.c), but I don't see how you could (or would want to) cache position information, etc. Anyway, Phil's much more knowledgable with this stuff, so I'll stop talking now :) Thanks, Chris > > Or could it happen that the same glyphs are rendered with different > offset or width (e.g. "stretched" text)? > Thanks, Clemens From Phil.Race at Sun.COM Fri May 30 21:21:16 2008 From: Phil.Race at Sun.COM (Phil Race) Date: Fri, 30 May 2008 14:21:16 -0700 Subject: [OpenJDK 2D-Dev] Why does the OpenGL pipeline not use setupBlitVector? In-Reply-To: <0AD523CC-8459-4783-9029-FFD0483C8726@sun.com> References: <194f62550805300113u5ac7c041o2de14721c3418863@mail.gmail.com> <0AD523CC-8459-4783-9029-FFD0483C8726@sun.com> Message-ID: <48406FCC.8010301@sun.com> Chris Campbell wrote: > Hi Clemens, > > On May 30, 2008, at 1:13 AM, Clemens Eisserer wrote: >> Hi, >> >> I've had a look at the doDrawGlyphList implementations of both the X11 >> and the OpenGL pipeline, however I have (as always) some questions: >> >> - Why does the OpenGL pipeline not use setupBlitVector, but instead >> does the work itself? >> > > It's been a while since I wrote that code, but I think the primary > reason was so that it plays better with single-threaded rendering (STR) > and the relatively lightweight process of throwing things on the > RenderQueue. As you know, one of the benefits from STR is that it > avoids lots of JNI overhead. The setupBlitVector() method does a bunch > of JNI field fetches from the native level, mallocs a GlyphBlitVector > structure each time, fills it by doing a JNI > Get/ReleasePrimitiveArrayCritical, etc. > > This is all mostly necessary work for the software or X11 pipelines, but > with STR, we realized that we already have a structure (the RenderQueue) > that could be used to hold the glyph list information during the > rendering process. Even better, all that information is available at > the Java level, so we can easily stuff the GlyphInfos on the RenderQueue > without dipping down into JNI (see BufferedTextPipe.enqueueGlyphList() > method), and then when the queue is flushed (rendered), we can do the > last little bit of massaging "inline" at the native level (see > OGLTR_DrawGlyphList()). No need for setupBlitVector(), and overall it's > quite an efficient process. > >> - Are the values in GlyphInfo always the same, if the glyph does not >> change (x/y/width/height)? The GlyphInfo holds the image and data about a particular glyph It is a long-lived (until memory is needed) cache, and its contents do not change. It doesn't have an absolute "x/y" rendering position. It does have relative positioning information: ie where the image should be placed relative to the glyph origin. > > Phil will correct me if I'm wrong... When a String or GlyphVector or > whatever is rendered, each time a new set of GlyphInfo "instances" are > generated depending on the position of the text (i.e. the GlyphList) on > the screen, etc. So once a GlyphList and its associated GlyphInfos has > been created, those fields won't change, but of course it's a temporary > structure, only valid for that one time that the GlyphList is rendered. > Chris is actually describing the "ImageRef" struct which is a temporary structure used during blitting which holds the actual positions at which a glyph in a particular rendering call (ie drawString call) will appear on the surface. An array of these is the main constituent of the GlyphBlitVector. >> >> I ask, because XRender does store quite the same information on the >> server when caching the glyphs, and if these values would stay the >> same, I could avoid sending e.g. the position-fionrormation for every >> glyph drawn. Yes, I think you would want to use XRender's server side GlyphSet, otherwise I don't see how you can really use XRender for text. Should work, so long as it uses the same concepts as the JDK, which I expect it does. Basically that is the dimensions of the image, and where to position it relative to the glyph origin, and the image data itself. It also holds the "default advance", ie where the next glyph should be positioned, in the absence of opentype text layout for example. XRender probably has somewhere for this information too, but perhaps more importantly, you also need a way in the rendering call to optionally tell it where precisely each glyph should be displayed relative to the prevous one since otherwise you will find it hard to use a cache in such cases. If XRender requires that information to be in the glyph cache, then its not very useful for such cases. > > I'm not sure at which level you (or rather XRender) are caching the > glyphs. You can certainly cache the glyph images, as we do for OGL/D3D > (see AccelGlyphCache.c), but I don't see how you could (or would want > to) cache position information, etc. It makes sense to do the same as OGL, if you can. Note that the GlyphInfo struct has a field "struct _CacheCellInfo *cellInfo" which is used by OGL/D3D so that if the glyph is freed, it knows to tell the OGL/D3D and in Clemen's case, XRender cache to free it too. As Chris says, see AccelGlyphCache.c. This presumes that XRender and OpenGL aren't both in use at the same time, which I expect will be true, otherwise they'd be fighting over that field. > > Anyway, Phil's much more knowledgable with this stuff, so I'll stop > talking now :) > > Thanks, > Chris > > >> >> Or could it happen that the same glyphs are rendered with different >> offset or width (e.g. "stretched" text)? >> Thanks, Clemens > From Dmitri.Trembovetski at Sun.COM Fri May 30 21:28:18 2008 From: Dmitri.Trembovetski at Sun.COM (Dmitri Trembovetski) Date: Fri, 30 May 2008 14:28:18 -0700 Subject: [OpenJDK 2D-Dev] Why does the OpenGL pipeline not use setupBlitVector? In-Reply-To: <48406FCC.8010301@sun.com> References: <194f62550805300113u5ac7c041o2de14721c3418863@mail.gmail.com> <0AD523CC-8459-4783-9029-FFD0483C8726@sun.com> <48406FCC.8010301@sun.com> Message-ID: <48407172.8090206@Sun.COM> Phil Race wrote: >> I'm not sure at which level you (or rather XRender) are caching the >> glyphs. You can certainly cache the glyph images, as we do for >> OGL/D3D (see AccelGlyphCache.c), but I don't see how you could (or >> would want to) cache position information, etc. > > > It makes sense to do the same as OGL, if you can. Note that the > GlyphInfo struct has a field "struct _CacheCellInfo *cellInfo" which > is used by OGL/D3D so that if the glyph is freed, it knows to tell the > OGL/D3D and in Clemen's case, XRender cache to free it too. > As Chris says, see AccelGlyphCache.c. > This presumes that XRender and OpenGL aren't both in use at > the same time, which I expect will be true, otherwise they'd > be fighting over that field. In 6u10 the AccelGlyph has been improved to support multiple caches per glyph. For example, for the D3D pipeline the same glyph can be cached in a textures per screen (since each d3d device has its own cache). When this code makes it to openjdk it will make it possible to have both opengl and xrender caches at the same time. Thanks, Dmitri