Uploaded image for project: 'Batik'
  1. Batik
  2. BATIK-736

NullPointerException when painting GraphicsNode onto Graphics2D impl with no associated DeviceConfiguration (i.e. SVGGraphics2D)

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Resolution: Fixed
    • Affects Version/s: 1.7
    • Fix Version/s: None
    • Component/s: GVT
    • Labels:
      None
    • Environment:
      Operating System: All
      Platform: All

      Description

      When painting org.apache.batik.gvt.GraphicsNode uses utility class
      org.apache.batik.ext.awt.image.GraphicsUtil. This utility fails to check for
      null return values from Graphics2D.getDeviceConfiguration in at least two
      places.

      Steps two reproduce:
      Create a GraphicsNode from a SVGDocument, paint onto SVGGraphics2D (or any
      other Graphics2D impl whose getDeviceConfiguration returns null)

      java.lang.NullPointerException
      at
      org.apache.batik.ext.awt.image.GraphicsUtil.getDestination(GraphicsUtil.java:498)
      at
      org.apache.batik.ext.awt.image.GraphicsUtil.getDestinationColorModel(GraphicsUtil.java:511)
      at
      org.apache.batik.ext.awt.image.GraphicsUtil.getDestinationColorSpace(GraphicsUtil.java:533)
      at
      org.apache.batik.ext.awt.image.GraphicsUtil.drawImage(GraphicsUtil.java:131)
      at
      org.apache.batik.ext.awt.image.GraphicsUtil.drawImage(GraphicsUtil.java:451)
      at
      org.apache.batik.gvt.AbstractGraphicsNode.paint(AbstractGraphicsNode.java:522)
      at
      org.apache.batik.gvt.CompositeGraphicsNode.primitivePaint(CompositeGraphicsNode.java:159)
      at
      org.apache.batik.gvt.AbstractGraphicsNode.paint(AbstractGraphicsNode.java:488)
      at
      org.apache.batik.gvt.CompositeGraphicsNode.primitivePaint(CompositeGraphicsNode.java:159)
      at
      org.apache.batik.gvt.CanvasGraphicsNode.primitivePaint(CanvasGraphicsNode.java:158)
      at
      org.apache.batik.gvt.AbstractGraphicsNode.paint(AbstractGraphicsNode.java:488)
      at
      org.apache.batik.gvt.CompositeGraphicsNode.primitivePaint(CompositeGraphicsNode.java:159)
      at
      org.apache.batik.gvt.AbstractGraphicsNode.paint(AbstractGraphicsNode.java:488)

        Attachments

        1. GraphicsUtil.java
          62 kB
          Thomas Behr

          Issue Links

            Activity

              People

              • Assignee:
                batik-dev@xmlgraphics.apache.org Batik Developer's Mailing list
                Reporter:
                thomas.behr@yworks.com Thomas Behr
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: