Index: modules/awt/src/main/java/unix/org/apache/harmony/awt/gl/linux/XGraphics2D.java =================================================================== --- modules/awt/src/main/java/unix/org/apache/harmony/awt/gl/linux/XGraphics2D.java (revision 601629) +++ modules/awt/src/main/java/unix/org/apache/harmony/awt/gl/linux/XGraphics2D.java (working copy) @@ -438,6 +438,21 @@ X11Defs.CoordModeOrigin ); + if (composite instanceof XORComposite) { + XORComposite xor = (XORComposite)composite; + Color xorcolor = xor.getXORColor(); + xSetForeground(xorcolor.getRGB()); + x11.XDrawLines( + display, + drawable, + gc, + xPoints, + npoints+1, + X11Defs.CoordModeOrigin + ); + xSetForeground(fgColor.getRGB()); + } + Utils.memaccess.free(xPoints); } else { super.drawPolygon(xpoints, ypoints, npoints); @@ -480,6 +495,21 @@ X11Defs.CoordModeOrigin ); + if (composite instanceof XORComposite) { + XORComposite xor = (XORComposite)composite; + Color xorcolor = xor.getXORColor(); + xSetForeground(xorcolor.getRGB()); + x11.XDrawLines( + display, + drawable, + gc, + xPoints, + npoints, + X11Defs.CoordModeOrigin + ); + xSetForeground(fgColor.getRGB()); + } + Utils.memaccess.free(xPoints); } else { super.drawPolyline(xpoints, ypoints, npoints);